@charset "UTF-8";:root{--ink: #0f172a;--ink-soft: #334155;--muted: #64748b;--line: #e2e8f0;--line-strong: #cbd5e1;--canvas: #f1f5f9;--surface: #ffffff;--surface-soft: #f8fafc;--surface-elevated: #ffffff;--accent: #2158a8;--accent-deep: #163f7a;--accent-soft: #eaf2fb;--primary: var(--accent);--primary-interactive: var(--accent-deep);--active-mist: var(--accent-soft);--info: #2563eb;--info-soft: #eff6ff;--warn: #b45309;--warn-soft: #fff7ed;--danger: #dc2626;--danger-soft: #fef2f2;--ok: #15803d;--ok-soft: #f0fdf4;--critical: var(--danger);--critical-soft: var(--danger-soft);--success: var(--ok);--success-soft: var(--ok-soft);--warning: var(--warn);--warning-soft: var(--warn-soft);--clinical: var(--accent);--clinical-soft: var(--accent-soft);--shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 8px 20px rgba(15, 23, 42, .05);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--radius: 10px;--radius-sm: 8px;--ease: cubic-bezier(.22, 1, .36, 1);--motion-fast: .14s;--font-display: "Plus Jakarta Sans", "Noto Sans Arabic", "Segoe UI", sans-serif;--font-brand: "Plus Jakarta Sans", "Noto Sans Arabic", "Segoe UI", sans-serif;--font-body: "Plus Jakarta Sans", "Noto Sans Arabic", "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--text: .9375rem;--text-sm: .875rem;--text-xs: .75rem;--text-body: var(--text);--text-display: 1.35rem;--control-h: 38px;--control-h-compact: 34px;--control-h-touch: 44px;--nav-row-h: 44px;--topbar-height: 56px;--nav-width: 112px;--page-gutter: 16px;--bp-nav: 980px;--bp-stack: 960px;--bp-phone: 720px;--nav-bg: #ffffff;--nav-ink: var(--nav-bg);--nav-deep: #f8fafc;--nav-border: #e2e8f0;--nav-text: #334155;--nav-muted: #64748b;--nav-active: #163f7a;--nav-active-bg: #eaf2fb;--border: var(--line);--border-strong: var(--line-strong);--text-color: var(--ink);--text-secondary: var(--ink-soft);--text-muted: var(--muted);--brand: var(--accent);--brand-soft: var(--accent-soft);--worklist-selected: var(--accent-soft);--brand-bar: linear-gradient(120deg, #163f7a 0%, #2158a8 130%);--brand-bar-ink: #fff}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;color:var(--ink);font-family:var(--font-body);font-size:15px;font-weight:450;line-height:1.45;letter-spacing:-.011em;background:var(--canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}app-root{display:block;height:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent-deep);text-decoration:none}a:hover{color:var(--accent)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.03em;font-weight:650;color:var(--ink)}.brand,.logo{font-family:var(--font-brand);font-weight:700}h1{margin:0;font-size:1.4rem;line-height:1.2}h2{margin:0 0 .5rem;font-size:1.02rem;font-weight:600}p{margin:.2rem 0 0;color:var(--muted);font-size:var(--text-sm);line-height:1.45}.page,.workspace{animation:none;width:100%;max-width:none}.head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem}.head p,.title p{max-width:42rem}.eyebrow{margin:0 0 .25rem;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-deep)}.crumb{margin-bottom:.65rem;color:var(--muted);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;font-weight:600}.panel,.results,.quick,details,.booking,.appointments,.queue,.filters,.form,.details{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.panel,.results,.quick,.booking,.appointments,.form,.details,.queue{padding:1rem 1.1rem;margin:0 0 .85rem}.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;align-items:end;padding:.85rem 1rem;margin:0 0 .85rem}.filters.inline{display:flex;flex-wrap:wrap;align-items:end}details{padding:1rem 1.15rem;margin:0 0 1rem}details summary{cursor:pointer;font-weight:650;color:var(--ink-soft)}label{display:grid;gap:.35rem;font-size:.75rem;font-weight:650;letter-spacing:.01em;color:var(--ink-soft)}input,select,textarea{width:100%;min-height:var(--control-h);padding:.5rem .85rem;border:1px solid var(--line);border-radius:var(--radius-sm);background-color:var(--surface-soft);color:var(--ink);font-size:.9375rem;font-weight:500;line-height:1.3;box-shadow:inset 0 1px #ffffffb3;transition:border-color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease),background-color var(--motion-fast) var(--ease)}input::placeholder,textarea::placeholder{color:#94a3b8;font-weight:450}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background-color:#fff}input:focus,select:focus,textarea:focus{outline:none;background-color:#fff;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent),inset 0 1px #ffffffe6}input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed;background-color:#f1f5f9}select{appearance:none;-webkit-appearance:none;padding-right:2.35rem;background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);background-position:calc(100% - 16px) calc(50% - 2px),calc(100% - 11px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;cursor:pointer}select:hover,select:focus{background-image:linear-gradient(45deg,transparent 50%,var(--accent) 50%),linear-gradient(135deg,var(--accent) 50%,transparent 50%);background-position:calc(100% - 16px) calc(50% - 2px),calc(100% - 11px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}select option{background:#fff;color:var(--ink)}input[type=date],input[type=time],input[type=datetime-local],input[type=number],input[type=search],input[type=email],input[type=tel],input[type=text],input[type=password]{appearance:none;-webkit-appearance:none}input[type=checkbox],input[type=radio]{width:1.1rem;height:1.1rem;min-height:0;padding:0;accent-color:var(--accent);box-shadow:none;cursor:pointer}input[type=radio]{border-radius:50%}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:.75rem;top:-3rem;z-index:100;padding:.55rem .9rem;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-weight:650;text-decoration:none;transition:top .15s var(--ease)}.skip-link:focus{top:.75rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}textarea{min-height:5.5rem;resize:vertical;max-width:42rem;padding:.75rem .9rem;line-height:1.5}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,17rem));gap:.85rem;align-items:end}.grid .wide,.wide{grid-column:1/-1;max-width:36rem}.check{display:flex;align-items:center;gap:.55rem}.check input{width:auto}.inline{display:flex;flex-wrap:wrap;gap:.5rem;align-items:end;width:100%}.inline>input,.inline>select{flex:1 1 auto;min-width:0}.inline>button,.inline>.secondary,.inline>a.secondary,.inline>.primary{flex:0 0 auto}button,.secondary,a.secondary{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:0 1rem;min-height:var(--control-h);height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink-soft);font-family:var(--font-body);font-size:.875rem;font-weight:650;letter-spacing:-.01em;line-height:1.2;text-decoration:none!important;white-space:nowrap;cursor:pointer;box-shadow:var(--shadow-sm);transition:background var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}button:hover,.secondary:hover,a.secondary:hover{background:var(--surface-soft);border-color:color-mix(in srgb,var(--accent) 25%,var(--line));color:var(--ink);text-decoration:none!important}button:disabled,.secondary:disabled,a.secondary:disabled{opacity:.45;cursor:not-allowed}button.primary,.primary,a.primary,button[type=submit]:not(.secondary):not(.danger):not(.link){background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 1px 2px #0d948840,0 6px 16px #0d94882e}button.primary:hover,.primary:hover,a.primary:hover,button[type=submit]:not(.secondary):not(.danger):not(.link):hover{background:var(--accent-deep);color:#fff;text-decoration:none!important}.danger,button.danger,a.danger{background:var(--danger);color:#fff;border-color:transparent}.link,button.link,a.link{background:transparent;color:var(--accent-deep);border:0;box-shadow:none;min-height:auto;height:auto;padding:.25rem .15rem;font-weight:650}table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface)}th,td{text-align:left;padding:.7rem .85rem;border-bottom:1px solid var(--line);vertical-align:middle;font-size:.875rem}th{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:750;background:var(--surface-soft);border-bottom:1px solid var(--line-strong);white-space:nowrap}th:first-child{border-top-left-radius:10px}th:last-child{border-top-right-radius:10px}tbody tr{transition:background var(--motion-fast) var(--ease)}tbody tr:hover{background:color-mix(in srgb,var(--accent) 4%,#fff)}tbody tr:last-child td{border-bottom:0}tbody tr.active,tbody tr[aria-selected=true]{background:var(--accent-soft)}.table-wrap,.ops:has(>table),.panel:has(>table),.results:has(>table){border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--surface);box-shadow:var(--shadow-sm)}.table-wrap table,.ops>table,.panel>table,.results>table{border:0;min-width:32rem;box-shadow:none}footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem}.tabs,nav.tabs,nav.bar,.bar:not(div.bar){display:flex;flex-wrap:nowrap;align-items:center;gap:.25rem;margin:0 0 1rem;padding:.3rem;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-sm)}div.bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .85rem;padding:0;overflow:visible;background:transparent;border:0;box-shadow:none}div.bar>input,div.bar>select{width:auto;min-width:11rem;max-width:16rem;min-height:var(--control-h);height:var(--control-h)}.page>.tabs,.page>nav.bar,.page>nav.tabs{position:sticky;top:0;z-index:8}.tabs>button,nav.tabs>button,nav.bar>a,nav.bar>button,.tabs button,.bar a,.bar button{flex:0 0 auto;background:transparent;color:var(--ink-soft);border:1px solid transparent;border-radius:8px;box-shadow:none;padding:.45rem .85rem;font-size:.8125rem;font-weight:650;text-decoration:none;white-space:nowrap;min-height:36px;height:auto}.tabs>button:hover,nav.tabs>button:hover,nav.bar>a:hover,nav.bar>button:hover,.tabs button:hover,.bar a:hover,.bar button:hover{background:var(--accent-soft);color:var(--accent-deep)}.tabs>button.on,.tabs>button.active,nav.tabs>button.on,nav.tabs>button.active,nav.bar>a.active,nav.bar>a.on,.tabs button.on,.tabs button.active,.bar a.active,.bar a.on,.bar button.on,.bar button.active{background:var(--accent);color:#fff!important;border-color:transparent}.toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.45rem .65rem;margin:0 0 .85rem}.empty{padding:.85rem 1rem;text-align:left;color:var(--muted);font-size:var(--text-sm);background:var(--surface-soft);border:1px dashed var(--line);border-radius:var(--radius-sm)}.metrics{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 .85rem}.metrics article{flex:0 0 auto;min-width:8.5rem;padding:.65rem .85rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.metrics small{color:var(--muted);font-size:.7rem;font-weight:650}.metrics strong{display:inline;margin:0 .4rem 0 0;font-family:var(--font-display);font-size:1.15rem;font-weight:700;font-variant-numeric:tabular-nums}.page aside,.layout>aside,aside.panel,aside.form,aside.details{position:sticky;top:.75rem;margin-top:0;padding:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}@media(max-width:960px){.cards,dl{grid-template-columns:1fr}.grid,.filters,.metrics,.admin-grid{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}.page aside,.layout>aside,aside.panel,aside.form,aside.details{position:static}}@media(max-width:720px){.head{flex-direction:column;align-items:stretch}.grid,.filters,.metrics,.admin-grid{grid-template-columns:1fr}button,.primary,a.primary,.secondary,button.secondary,a.secondary{min-height:var(--control-h-touch);height:var(--control-h-touch)}input,select,textarea{font-size:16px}.bar{flex-wrap:wrap;gap:.45rem}.inline{flex-wrap:wrap}.table-wrap table,.ops>table,.panel>table,.results>table,table.appointments,table.dense{min-width:36rem}th,td{padding:.55rem .65rem}}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(90% 60% at 10% 0%,rgba(13,148,136,.16),transparent 55%),radial-gradient(70% 50% at 100% 100%,rgba(2,132,199,.1),transparent 50%),var(--canvas)}.auth-card{width:min(420px,100%);padding:1.75rem 1.6rem;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.auth-card .brand{margin-bottom:1rem}.auth-card .brand img{display:block;width:min(260px,100%);height:auto}.auth-card h1{margin-bottom:.35rem}.auth-card label{margin:.75rem 0}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.rows>div{display:grid;grid-template-columns:1.1fr 1.6fr auto;gap:.65rem;padding:.65rem 0;border-top:1px solid var(--line);align-items:center}.error,p[role=alert]{background:var(--danger-soft);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 22%,white);border-radius:var(--radius-sm);padding:.75rem .9rem;margin:.75rem 0}.allergy{background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 25%,white);color:#9a3412;border-radius:var(--radius-sm);padding:.75rem .9rem;margin:.75rem 0;font-weight:550}.overlay{position:fixed;inset:0;background:#0b12207a;display:grid;place-items:center;padding:1rem;z-index:40}.dialog,.governed{width:min(560px,100%);background:var(--surface);border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow);padding:1.25rem}.actions{display:flex;justify-content:flex-end;gap:.55rem;margin-top:1rem}html.rtl,html[dir=rtl]{direction:rtl}html.rtl body,html[dir=rtl] body,.rtl{font-family:Noto Sans Arabic,Plus Jakarta Sans,Segoe UI,sans-serif}html.rtl .actions,html[dir=rtl] .actions{justify-content:flex-start}
