@import"https://fonts.googleapis.com/css2?family=Cairo:wght@500;700;800&family=IBM+Plex+Sans+Arabic:wght@400;500;600&display=swap";:root{font-family:IBM Plex Sans Arabic,Segoe UI,sans-serif;color:#1a1915;background:radial-gradient(circle at top right,rgba(15,118,104,.18),transparent 28%),linear-gradient(180deg,#f4efe4,#fbfaf7);color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink: #1d1c18;--muted: #706858;--line: rgba(102, 92, 74, .18);--paper: rgba(255, 252, 247, .9);--paper-strong: #fffdf9;--sand: #eee5d5;--sand-strong: #deceb0;--teal: #0f7668;--teal-deep: #0b5e53;--teal-soft: rgba(15, 118, 104, .12);--danger: #b0343d;--danger-soft: rgba(176, 52, 61, .12);--shadow: 0 24px 60px rgba(58, 46, 28, .12);--radius-xl: 28px;--radius-lg: 22px;--radius-md: 16px;--radius-sm: 12px}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}html{direction:rtl}body{margin:0;color:var(--ink)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img,video{max-width:100%;display:block}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fffdf9;padding:.85rem 1rem;color:var(--ink);outline:none;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}textarea{resize:vertical;min-height:110px}input:focus,textarea:focus,select:focus{border-color:#0f766885;box-shadow:0 0 0 4px #0f76681f}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#f4ece0;padding:.15rem .45rem;border-radius:.55rem}h1,h2,h3,h4{margin:0;font-family:Cairo,IBM Plex Sans Arabic,sans-serif;line-height:1.2}p{margin:0;color:var(--muted);line-height:1.7}#root{min-height:100svh}.shell{min-height:100svh;display:grid;grid-template-columns:292px minmax(0,1fr)}.shell-sidebar{position:sticky;top:0;height:100svh;padding:2rem 1.4rem;border-inline-start:1px solid var(--line);background:#fff9efb8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:1.5rem}.shell-main{display:flex;flex-direction:column;min-width:0}.page-container{width:min(1180px,100%);margin:0 auto;padding:2rem clamp(1rem,3vw,2rem) 5rem}.brand-block,.user-block{background:var(--paper);border:1px solid rgba(102,92,74,.14);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow)}.brand-block p,.user-block p{margin-top:.5rem}.nav-list{display:flex;flex-direction:column;gap:.55rem}.nav-link,.mobile-nav-link{display:inline-flex;align-items:center;gap:.7rem;border-radius:999px;padding:.9rem 1rem;color:var(--muted);transition:background-color .2s ease,color .2s ease,transform .2s ease}.nav-link:hover,.mobile-nav-link:hover{background:#ffffffa6;color:var(--ink)}.nav-link.is-active,.mobile-nav-link.is-active{background:var(--teal);color:#fff;transform:translate(-2px)}.mobile-header,.mobile-nav{display:none}.badge,.eyebrow{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.35rem .8rem;font-size:.86rem;font-weight:700;color:var(--teal-deep);background:var(--teal-soft)}.eyebrow{margin-bottom:.75rem}.button-row,.page-actions,.section-card-actions{display:flex;flex-wrap:wrap;gap:.7rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border:0;border-radius:999px;padding:.82rem 1.15rem;font-weight:600;transition:transform .2s ease,filter .2s ease,background-color .2s ease}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.6;cursor:wait;transform:none}.button-primary{background:var(--teal);color:#fff}.button-primary:hover{background:var(--teal-deep)}.button-secondary{background:#fffdf9;color:var(--ink);border:1px solid var(--line)}.button-danger{background:var(--danger);color:#fff}.button-block{width:100%}.icon-button{border:1px solid var(--line);background:#fffdf9;width:2.4rem;height:2.4rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}.icon-button.danger{color:var(--danger)}.panel,.hero-panel,.state-card,.stat-card{border:1px solid rgba(110,96,71,.14);border-radius:var(--radius-xl);background:var(--paper);box-shadow:var(--shadow)}.panel,.state-card{padding:1.4rem}.hero-panel{padding:1.4rem;display:grid;grid-template-columns:1.3fr .9fr;gap:1rem;align-items:end}.hero-copy h2{margin:.8rem 0 .7rem;font-size:clamp(1.6rem,2vw,2.2rem)}.search-box{display:flex;align-items:center;gap:.8rem;border:1px solid var(--line);border-radius:var(--radius-lg);padding:.8rem 1rem;background:#ffffffb3}.search-box input{border:0;background:transparent;padding:0;box-shadow:none}.search-form{display:grid;gap:.85rem;align-items:end}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.stat-card{padding:1.2rem 1.3rem}.stat-card strong{display:block;margin-top:.35rem;font-family:Cairo,IBM Plex Sans Arabic,sans-serif;font-size:2rem}.stat-label{color:var(--muted);font-weight:600}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.page-header h1{font-size:clamp(1.8rem,2.6vw,2.8rem);margin-bottom:.65rem}.section-card{display:flex;flex-direction:column;gap:1rem}.section-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.section-card-header p{margin-top:.45rem}.grid{display:grid;gap:1rem}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.stack{display:flex;flex-direction:column;gap:1rem}.stack-xl{display:flex;flex-direction:column;gap:1.4rem}.list-stack,.visit-timeline{display:flex;flex-direction:column;gap:.9rem}.list-card,.visit-card,.medication-card{border:1px solid rgba(102,92,74,.14);border-radius:var(--radius-lg);background:var(--paper-strong);padding:1rem 1.1rem}.list-card{display:flex;justify-content:space-between;gap:1rem;align-items:center;transition:transform .2s ease,border-color .2s ease}.list-card:hover{transform:translateY(-2px);border-color:#0f766847}.list-card strong{display:block;margin-bottom:.25rem}.list-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem;color:var(--muted);max-width:18rem;text-align:start}.visit-pill{display:inline-flex;align-items:center;gap:.35rem;background:var(--sand);padding:.5rem .8rem;border-radius:999px;color:var(--ink);font-weight:600}.field{display:flex;flex-direction:column;gap:.45rem}.field-label{font-weight:700}.field-hint{color:var(--muted);font-size:.92rem}.field-error{color:var(--danger);font-size:.92rem}.status-banner{border-radius:var(--radius-md);background:var(--teal-soft);color:var(--teal-deep);padding:.9rem 1rem;font-weight:600}.status-banner.error{background:var(--danger-soft);color:var(--danger)}.muted-text{color:var(--muted)}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.info-grid dt{font-weight:700;margin-bottom:.35rem}.info-grid dd{margin:0;color:var(--muted);line-height:1.8}.visit-card{display:flex;flex-direction:column;gap:1rem}.visit-card-header,.medication-card-header,.media-card-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.visit-body{display:flex;flex-direction:column;gap:.4rem}.media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.media-card{border:1px solid rgba(102,92,74,.14);border-radius:var(--radius-lg);background:#fffdf9;padding:1rem;display:flex;flex-direction:column;gap:.8rem}.media-chip{display:inline-flex;align-items:center;gap:.5rem;font-weight:600}.media-preview{border-radius:var(--radius-md);background:#f6f1e7;overflow:hidden;min-height:170px;display:flex;align-items:center;justify-content:center}.media-preview img,.media-preview video{width:100%;height:100%;max-height:260px;object-fit:cover}.media-placeholder{display:grid;gap:.6rem;justify-items:center;color:var(--muted)}.media-meta{display:flex;justify-content:space-between;gap:.6rem;color:var(--muted);font-size:.92rem}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.summary-box{min-height:52px;border:1px dashed rgba(15,118,104,.25);border-radius:var(--radius-sm);background:#0f76680d;padding:.85rem 1rem;color:var(--ink)}.visit-prescription-print-only{display:none}.catalog-form-grid{grid-template-columns:minmax(0,1fr) auto;align-items:end}.catalog-form-actions{display:flex;flex-wrap:wrap;gap:.7rem}.catalog-list{display:grid;gap:.9rem}.catalog-card{border:1px solid rgba(102,92,74,.14);border-radius:var(--radius-lg);background:var(--paper-strong);padding:1rem 1.1rem;display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.catalog-card-copy{display:grid;gap:.35rem}.catalog-card-copy small{color:var(--muted);line-height:1.6}.medication-card{display:flex;flex-direction:column;gap:1rem}.medication-card-compact{gap:.85rem}.medication-card-compact .medication-card-header{align-items:center}.medication-card-compact .field{gap:.3rem}.medication-card-compact .field-label{font-size:.9rem}.medication-card-compact input,.medication-card-compact select{padding:.7rem .85rem}.medication-card-compact textarea{min-height:84px}.medication-grid-compact,.medication-template-grid-compact{grid-template-columns:minmax(180px,240px) repeat(4,minmax(88px,118px));gap:.8rem;align-items:start;width:min(100%,760px)}.medication-grid-compact>.field,.medication-template-grid-compact>.field{min-width:0}.medication-template-grid-compact .field,.medication-grid-compact .field{gap:.3rem}.medication-template-grid-compact .field-label,.medication-grid-compact .field-label{font-size:.9rem}.medication-template-grid-compact input,.medication-template-grid-compact select,.medication-grid-compact input,.medication-grid-compact select{padding:.7rem .85rem}.state-card{display:grid;gap:.9rem;text-align:center;justify-items:center}.state-card h3,.state-card h1{font-size:1.35rem}.state-card-error{border-color:#b0343d2e}.state-card-loading{min-height:220px;align-content:center}.spinner{width:2.1rem;height:2.1rem;border-radius:50%;border:3px solid rgba(15,118,104,.16);border-top-color:var(--teal);animation:spin .9s linear infinite}.auth-page,.setup-page{min-height:100svh;width:min(1100px,100%);margin:0 auto;padding:2rem 1rem 3rem;display:grid;align-content:center;gap:1.2rem}.auth-page{grid-template-columns:1.1fr .9fr;align-items:center}.auth-hero,.setup-hero{padding:2rem}.auth-hero h1,.setup-hero h1{font-size:clamp(2.3rem,4vw,4rem);margin:1rem 0}.auth-card{max-width:30rem;width:100%;justify-self:start}.auth-page-compact{width:min(28rem,100%);grid-template-columns:1fr;justify-items:stretch}.auth-page-compact .auth-card{justify-self:stretch;max-width:none}.ordered-list{margin:0;padding-inline-start:1.1rem;display:grid;gap:.6rem}.toast-viewport{position:fixed;top:1rem;inset-inline-start:1rem;z-index:1000;width:min(24rem,calc(100vw - 2rem));display:grid;gap:.65rem;pointer-events:none}.toast{width:100%;border:1px solid rgba(102,92,74,.14);border-radius:var(--radius-md);background:#fffdf9fa;color:var(--ink);box-shadow:var(--shadow);padding:.9rem 1rem;text-align:start;line-height:1.6;pointer-events:auto}.toast-success{border-color:#0f76684d;background:#f2fbf8}.toast-error{border-color:#b0343d47;background:#fff5f6}.toast-info{border-color:#665c4a38;background:#fffdf9fa}.print-page{min-height:100svh;background:#f3ede1;padding:1.25rem}.print-toolbar{display:flex;justify-content:space-between;gap:1rem;width:min(900px,100%);margin:0 auto 1rem}.print-sheet{width:min(900px,100%);margin:0 auto;background:#fff;border-radius:1.5rem;box-shadow:var(--shadow);padding:2.25rem;display:grid;gap:1.6rem}.print-header,.print-footer{display:flex;justify-content:space-between;gap:1.5rem}.print-header{align-items:flex-start}.print-header h1{font-size:2rem;margin-bottom:.35rem}.print-header-meta{text-align:right}.print-visit-summary,.print-medications{border-top:1px solid #ece3d3;padding-top:1.2rem}.print-medications ol{margin:1rem 0 0;padding-inline-start:1.2rem;display:grid;gap:1rem}.print-medications li{display:grid;gap:.25rem}.print-medications strong,.print-visit-summary h2{color:#173b35}.print-footer{border-top:1px solid #ece3d3;padding-top:1.25rem;align-items:flex-end}.print-footer-inline{justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:.35rem 1.25rem;font-size:.88rem}.print-footer-inline p{color:#6c6457}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:920px){.shell{grid-template-columns:1fr}.shell-sidebar{display:none}.mobile-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;position:sticky;top:0;z-index:10;background:#fbfaf7eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.mobile-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;padding:.8rem 1rem calc(.8rem + env(safe-area-inset-bottom));position:sticky;bottom:0;background:#fbfaf7f5;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-nav-link{flex-direction:column;font-size:.78rem;padding:.6rem}.page-container{padding:1rem 1rem 5.8rem}.auth-page,.hero-panel,.two-columns,.stats-grid,.info-grid{grid-template-columns:1fr}.auth-card{justify-self:stretch;max-width:none}.page-header,.section-card-header,.visit-card-header,.medication-card-header,.media-card-top,.catalog-card,.print-header,.print-footer{flex-direction:column}.catalog-form-grid{grid-template-columns:1fr}.medication-template-grid-compact,.medication-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.list-card{flex-direction:column;align-items:flex-start}.list-meta{align-items:flex-start;max-width:none}.print-toolbar{flex-direction:column}.print-sheet{padding:1.35rem;border-radius:1.1rem}.print-footer-inline{flex-direction:row;align-items:flex-start}}@media print{@page{size:A4;margin:12mm}body,.print-page{background:#fff;margin:0;padding:0}.no-print,.app-chrome{display:none!important}.print-sheet{width:auto;margin:0;border-radius:0;box-shadow:none;padding:0}body.print-prescription-mode .visit-page>*:not(#prescription-section){display:none!important}body.print-prescription-mode .visit-page>#prescription-section{display:block!important}body.print-prescription-mode .visit-page>#prescription-section>:not(.visit-prescription-print-only){display:none!important}body.print-prescription-mode .visit-page>#prescription-section>.visit-prescription-print-only{display:block!important}body.print-prescription-mode .visit-prescription-print-only .print-sheet{width:auto;margin:0;border-radius:0;box-shadow:none;padding:0}.toast-viewport{display:none!important}}
