@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-cyrillic-ext-400-normal-BwJdxs7r.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-ext-400-normal-Cd63HKDh.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-cyrillic-400-normal-DjhbW-4D.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-400-normal-7kQcAFpS.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-greek-ext-400-normal-CpIwTHMM.woff2) format("woff2"),url(/assets/source-sans-3-greek-ext-400-normal-BI1kUwmR.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-greek-400-normal-DZReXJla.woff2) format("woff2"),url(/assets/source-sans-3-greek-400-normal-DJm9Ud5h.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-vietnamese-400-normal-CwtaIDr2.woff2) format("woff2"),url(/assets/source-sans-3-vietnamese-400-normal-dYp9C364.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-ext-400-normal-UNsKFIBq.woff2) format("woff2"),url(/assets/source-sans-3-latin-ext-400-normal-BGPHfnm_.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-400-normal-DQi5PRDE.woff2) format("woff2"),url(/assets/source-sans-3-latin-400-normal-AFMiCETP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-cyrillic-ext-600-normal-6AhwUnSr.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-ext-600-normal-uAL1a5gb.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-cyrillic-600-normal-BnFu5nHC.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-600-normal-y-RO8wOd.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-greek-ext-600-normal-DynePNDL.woff2) format("woff2"),url(/assets/source-sans-3-greek-ext-600-normal-D7vJ4nVX.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-greek-600-normal-BSO157bq.woff2) format("woff2"),url(/assets/source-sans-3-greek-600-normal-BNF9LBpG.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-vietnamese-600-normal-B2sTNYey.woff2) format("woff2"),url(/assets/source-sans-3-vietnamese-600-normal-DpSexF-T.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-ext-600-normal-AEyhgUpm.woff2) format("woff2"),url(/assets/source-sans-3-latin-ext-600-normal-Wy7HIzqC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-3-latin-600-normal-DeckBYAU.woff2) format("woff2"),url(/assets/source-sans-3-latin-600-normal-BvDVuF-j.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-cyrillic-ext-700-normal-BhUSqjb8.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-ext-700-normal-B6RPsSdD.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-cyrillic-700-normal-CIuudVLB.woff2) format("woff2"),url(/assets/source-sans-3-cyrillic-700-normal-DYE6gq6k.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-greek-ext-700-normal-Dd6uIcuy.woff2) format("woff2"),url(/assets/source-sans-3-greek-ext-700-normal-C6ITAlBU.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-greek-700-normal-C8Tp2qRF.woff2) format("woff2"),url(/assets/source-sans-3-greek-700-normal-BWdBblwd.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-vietnamese-700-normal-Bgamivog.woff2) format("woff2"),url(/assets/source-sans-3-vietnamese-700-normal-BHxM10oo.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-latin-ext-700-normal-6Xi0A2be.woff2) format("woff2"),url(/assets/source-sans-3-latin-ext-700-normal-ChH_v7nA.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-latin-700-normal-CkzU-mV9.woff2) format("woff2"),url(/assets/source-sans-3-latin-700-normal-BBbVrHF_.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f2f5f9;--surface: #ffffff;--surface-2: #f7f9fc;--text: #13213b;--muted: #5b6b84;--border: #dbe3ee;--primary: #1d5fbf;--primary-strong: #154a97;--primary-soft: #e7effb;--focus: #1d5fbf;--booked: #64748b;--booked-soft: #eef2f6;--waiting: #b26a00;--waiting-soft: #fff4e0;--roomed: #6d4bc3;--roomed-soft: #f1ecfb;--provider: #1d5fbf;--provider-soft: #e7effb;--done: #237a4b;--done-soft: #e4f4ea;--noshow: #b4232a;--noshow-soft: #fdebec;--radius: 12px;--shadow: 0 1px 2px rgba(19, 33, 59, .06), 0 4px 14px rgba(19, 33, 59, .05);color-scheme:light;font-family:"Source Sans 3",Segoe UI,system-ui,sans-serif;font-size:16px;line-height:1.45;color:var(--text);background:var(--bg);font-variant-numeric:tabular-nums}*{box-sizing:border-box}body{margin:0;background:var(--bg)}h1{font-size:1.6rem;margin:0;font-weight:700;letter-spacing:-.01em}h2{font-size:1.1rem;margin:0;font-weight:700}a{color:var(--primary)}.muted{color:var(--muted)}.small{font-size:.88rem}.mono{font-family:ui-monospace,Consolas,monospace;font-size:.9em}.error{color:var(--noshow)}button,.button,input,select{font:inherit;color:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:40px;padding:.45rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-weight:600;text-decoration:none;white-space:nowrap}button:hover:not(:disabled){border-color:var(--primary)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--primary);border-color:var(--primary);color:#fff}button.primary:hover:not(:disabled){background:var(--primary-strong)}button.danger{background:var(--noshow);border-color:var(--noshow);color:#fff}button.quiet{border-color:transparent;background:transparent;color:var(--primary);min-height:32px;padding:.2rem .5rem}button.small{min-height:32px;padding:.2rem .7rem;font-size:.9rem}input,select{min-height:42px;padding:.45rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);width:100%}:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 45%,transparent);outline-offset:1px}label{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem;color:var(--muted);font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.topbar{display:flex;align-items:center;gap:1.5rem;padding:.6rem 1.5rem;background:var(--surface);border-bottom:1px solid var(--border);border-top:4px solid var(--primary);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:.6rem;font-weight:700;font-size:1.1rem}.brand-mark{width:30px;height:30px}.topbar nav{display:flex;gap:.25rem;flex:1}.topbar nav a{padding:.45rem .9rem;border-radius:10px;color:var(--muted);text-decoration:none;font-weight:600}.topbar nav a.active{background:var(--primary-soft);color:var(--primary-strong)}.who{display:flex;align-items:center;gap:.75rem}.who .name{font-weight:600}.demo-strip{background:var(--waiting-soft);color:var(--waiting);text-align:center;font-size:.9rem;padding:.3rem 1rem}.page{padding:1.25rem 1.5rem 2rem;max-width:1560px;margin:0 auto}.login{min-height:100vh;display:grid;place-items:center;padding:1.5rem 1rem;background:linear-gradient(180deg,var(--primary-soft),var(--bg) 45%)}.login-card{width:min(560px,100%);padding:2rem;display:flex;flex-direction:column;gap:1rem}.login-card .brand{font-size:1.5rem}.role-picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.6rem}.role-pick{flex-direction:column;align-items:flex-start;text-align:left;white-space:normal;min-height:72px;padding:.7rem .9rem}.role-pick span{font-weight:400;color:var(--muted);font-size:.9rem}.board-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.date-nav{display:flex;align-items:center;gap:.4rem}.kpis{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:.75rem;margin-bottom:1rem}.kpi{padding:.8rem 1rem;display:flex;flex-direction:column;gap:.1rem;border-left:5px solid var(--kpi, var(--border))}.kpi .value{font-size:1.8rem;font-weight:700;line-height:1.1}.kpi .label{color:var(--muted);font-weight:600;font-size:.9rem}.kpi .sub{color:var(--muted);font-size:.85rem}.board{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:1rem;align-items:start}.side{display:flex;flex-direction:column;gap:1rem;position:sticky;top:4.5rem}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid var(--border)}.filters{display:flex;gap:.4rem;flex-wrap:wrap;padding:.7rem 1rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.chip{min-height:32px;padding:.15rem .75rem;border-radius:999px;font-weight:600;font-size:.9rem}.chip.on{background:var(--primary);color:#fff;border-color:var(--primary)}.schedule{list-style:none;margin:0;padding:0}.hour{padding:.35rem 1rem;background:var(--surface-2);color:var(--muted);font-weight:700;font-size:.85rem;border-bottom:1px solid var(--border);position:sticky;top:4.1rem;z-index:1}.row{display:grid;grid-template-columns:64px minmax(200px,1.6fr) minmax(130px,1fr) minmax(140px,1fr) 150px 150px;gap:.75rem;align-items:center;padding:.6rem 1rem;border-bottom:1px solid var(--border);border-left:5px solid var(--status-color)}.row:hover{background:var(--surface-2)}.row .time{font-weight:700}.row .patient strong{display:block}.type-dot{display:inline-block;width:.65rem;height:.65rem;border-radius:50%;margin-right:.35rem;background:var(--type-color)}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.1rem .55rem;border-radius:999px;font-size:.8rem;font-weight:700;background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.badge.ohip{background:var(--done-soft);color:var(--done);border-color:transparent}.badge.rmb{background:var(--provider-soft);color:var(--provider);border-color:transparent}.badge.none{background:var(--waiting-soft);color:var(--waiting);border-color:transparent}.status{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .7rem;border-radius:999px;font-weight:700;font-size:.85rem;background:var(--status-soft);color:var(--status-color)}.status:before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:var(--status-color)}.s-Booked{--status-color: var(--booked);--status-soft: var(--booked-soft)}.s-Arrived{--status-color: var(--waiting);--status-soft: var(--waiting-soft)}.s-Roomed{--status-color: var(--roomed);--status-soft: var(--roomed-soft)}.s-WithProvider{--status-color: var(--provider);--status-soft: var(--provider-soft)}.s-Completed{--status-color: var(--done);--status-soft: var(--done-soft)}.s-NoShow,.s-Cancelled{--status-color: var(--noshow);--status-soft: var(--noshow-soft)}.row.s-Completed,.row.s-NoShow,.row.s-Cancelled{opacity:.72}.actions{display:flex;gap:.4rem;justify-content:flex-end}.walkin-tag{font-size:.75rem;font-weight:700;color:var(--waiting)}.waiting-list,.rooms{list-style:none;margin:0;padding:.4rem 0}.waiting-list li{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 1rem}.wait{font-weight:700;font-size:1.05rem}.wait.long{color:var(--noshow)}.rooms{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.75rem}.room{border:1px solid var(--border);border-radius:10px;padding:.55rem .7rem;min-height:66px;background:var(--surface-2)}.room.busy{background:var(--status-soft);border-color:transparent;border-left:4px solid var(--status-color)}.room .room-name{font-weight:700;font-size:.85rem;color:var(--muted)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#13213b59;display:grid;place-items:center;padding:1rem;z-index:50}.dialog{width:min(520px,100%);padding:1.4rem;display:flex;flex-direction:column;gap:1rem}.dialog .facts{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem}.dialog .facts dt{color:var(--muted);font-weight:600}.dialog .facts dd{margin:0}.result{padding:.8rem 1rem;border-radius:10px;font-weight:600}.result.ok{background:var(--done-soft);color:var(--done)}.result.warn{background:var(--waiting-soft);color:var(--waiting)}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem}.search-results{list-style:none;margin:0;padding:0;max-height:240px;overflow:auto;border:1px solid var(--border);border-radius:10px}.search-results button{width:100%;justify-content:space-between;border:0;border-bottom:1px solid var(--border);border-radius:0;font-weight:400}.search-results button.on{background:var(--primary-soft)}@media(max-width:1200px){.board{grid-template-columns:1fr}.side{position:static}.kpis{grid-template-columns:repeat(3,1fr)}.row{grid-template-columns:56px 1fr 1fr}.row .provider,.row .coverage{display:none}}@media(max-width:640px){.page{padding:1rem}.topbar{flex-wrap:wrap;padding:.5rem 1rem}.topbar nav{order:3;flex-basis:100%}.kpis{grid-template-columns:1fr 1fr}.row{grid-template-columns:1fr}.actions{justify-content:flex-start}}.kpis.kpis-4{grid-template-columns:repeat(4,minmax(140px,1fr))}.visit-list{list-style:none;margin:0;padding:0}.visit-row{width:100%;display:grid;grid-template-columns:110px minmax(200px,1.4fr) minmax(160px,1.2fr) 150px minmax(200px,1fr) 130px;gap:.75rem;align-items:center;justify-items:start;text-align:left;white-space:normal;font-weight:400;padding:.65rem 1rem;border:0;border-bottom:1px solid var(--border);border-left:5px solid var(--status-color);border-radius:0;min-height:0}.visit-row:hover:not(:disabled){background:var(--surface-2);border-color:var(--border);border-left-color:var(--status-color)}.visit-row .time{font-weight:700}.visit-row .patient strong{display:block}.checks{display:flex;gap:.35rem;flex-wrap:wrap}.check{font-size:.78rem;font-weight:700;padding:.05rem .45rem;border-radius:999px;background:var(--surface-2);color:var(--muted);border:1px solid var(--border)}.check.on{background:var(--done-soft);color:var(--done);border-color:transparent}.sign-state{font-weight:700;font-size:.85rem;padding:.25rem .7rem;border-radius:999px;background:var(--waiting-soft);color:var(--waiting)}.sign-state.Signed{background:var(--done-soft);color:var(--done)}.sign-state.Voided{background:var(--noshow-soft);color:var(--noshow)}.chart-link{display:inline-block;margin-top:.15rem;font-weight:600}.back{display:inline-block;margin-bottom:.6rem;font-weight:600;text-decoration:none}.banner{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;padding:1rem 1.25rem;margin-bottom:1rem;border-top:4px solid var(--provider)}.banner.Signed{border-top-color:var(--done)}.banner-who{display:flex;flex-direction:column;gap:.3rem}.banner .tags{display:flex;gap:.4rem;flex-wrap:wrap}.visit-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.visit-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.chart{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:1rem;align-items:start}.chart-main,.chart-side{display:flex;flex-direction:column;gap:1rem}.pad{padding:.9rem 1rem}h3{font-size:.95rem;margin:.2rem 0 .4rem}.vitals{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem;padding:.9rem 1rem}.tile{display:flex;flex-direction:column;padding:.5rem .65rem;border-radius:10px;background:var(--surface-2);border:1px solid var(--border)}.tile .label{font-size:.78rem;font-weight:700;color:var(--muted)}.tile .value{font-size:1.35rem;font-weight:700;line-height:1.2}.tile .unit{font-size:.75rem;color:var(--muted)}.tile.warn{background:var(--noshow-soft);border-color:transparent}.tile.warn .value,.tile.warn .label{color:var(--noshow)}.vitals-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;border-top:1px solid var(--border)}.earlier ul{margin:.4rem 0 0;padding-left:1.1rem;color:var(--muted)}.earlier{padding-top:0}.soap{display:grid;gap:.9rem;padding:.9rem 1rem}.soap label{color:var(--text);font-size:.95rem}.soap .req{color:var(--noshow)}textarea{font:inherit;color:inherit;width:100%;padding:.55rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);resize:vertical;line-height:1.45}.note-text{font-weight:400;white-space:pre-wrap;padding:.5rem .7rem;background:var(--surface-2);border-radius:10px}.addenda{border-top:1px solid var(--border)}.addendum{white-space:pre-wrap;margin:0 0 .6rem;padding:.5rem .7rem;border-left:3px solid var(--provider);background:var(--provider-soft);border-radius:0 8px 8px 0}.coding{display:flex;flex-direction:column;gap:.5rem}.code-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:10px}.code-list li{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;border-bottom:1px solid var(--border);min-height:42px}.code-list li:last-child{border-bottom:0}.code-list .code{font-weight:700;min-width:3.4rem}.code-list .desc{flex:1}.code-list .fee{font-weight:600}.code-list .units{width:4.2rem;min-height:32px;padding:.2rem .4rem}.typeahead{position:relative}.typeahead ul{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:5;list-style:none;margin:0;padding:.25rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.typeahead button{width:100%;justify-content:flex-start;border:0;font-weight:400;min-height:36px}.typeahead button:hover{background:var(--primary-soft)}.totals{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;margin:.4rem 0 0;padding-top:.5rem;border-top:1px solid var(--border)}.totals dt{color:var(--muted);font-weight:600}.totals dd{margin:0;font-weight:700;text-align:right}.todo{margin:0 0 .8rem;padding-left:1.2rem;color:var(--waiting);font-weight:600}button.wide{width:100%;margin-top:.4rem}.facts{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;margin:0}.facts dt{color:var(--muted);font-weight:600}.facts dd{margin:0}.history{list-style:none;margin:0;padding:.4rem 0}.history li{padding:.5rem 1rem;border-bottom:1px solid var(--border)}.history li:last-child{border-bottom:0}.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:1200px){.chart{grid-template-columns:1fr}.vitals{grid-template-columns:repeat(4,minmax(0,1fr))}.visit-row{grid-template-columns:90px 1fr 1fr}.visit-row .reason,.visit-row .checks{display:none}.kpis.kpis-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.vitals,.vitals-form{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-row{grid-template-columns:1fr}.visit-meta{align-items:flex-start}}.tabs{display:flex;gap:.25rem;margin-bottom:.75rem;border-bottom:1px solid var(--border)}.tab{border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:var(--muted)}.tab.on{color:var(--primary-strong);border-bottom-color:var(--primary)}.tab:hover:not(:disabled){border-color:transparent;border-bottom-color:var(--border)}.tab.on:hover:not(:disabled){border-bottom-color:var(--primary)}.inline-select{width:auto;min-height:32px;padding:.15rem .6rem;margin-left:auto}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:.93rem}table.data th{text-align:left;font-size:.8rem;color:var(--muted);font-weight:700;padding:.5rem .75rem;border-bottom:1px solid var(--border);background:var(--surface-2);white-space:nowrap}table.data td{padding:.5rem .75rem;border-bottom:1px solid var(--border);vertical-align:top}table.data .num{text-align:right;white-space:nowrap}table.data tr.clickable{cursor:pointer}table.data tr.clickable:hover{background:var(--surface-2)}table.data td.actions{justify-content:flex-end;gap:.35rem}button.link{border:0;background:none;padding:0;min-height:0;color:var(--primary);font-weight:700}a.button{color:inherit}.wide-dialog{width:min(720px,100%);max-height:90vh;overflow:auto}.file-dialog{width:min(900px,100%);max-height:90vh}pre.file{margin:0;padding:.75rem;background:#0f1b30;color:#dbe7ff;border-radius:10px;overflow:auto;font-size:.8rem;line-height:1.5;max-height:60vh}.ra{display:grid;grid-template-columns:360px minmax(0,1fr);gap:1rem;align-items:start}.ra-list{list-style:none;margin:0;padding:.25rem 0}.ra-list button{width:100%;justify-content:space-between;border:0;border-radius:0;text-align:left;font-weight:400;white-space:normal;padding:.55rem 1rem}.ra-list button.on{background:var(--primary-soft)}.ra-messages{padding:.5rem .75rem;border-left:3px solid var(--waiting);background:var(--waiting-soft);border-radius:0 8px 8px 0}.upload{position:relative;overflow:hidden}.upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}@media(max-width:1200px){.ra{grid-template-columns:1fr}}.clinic-switch{width:auto;min-height:36px;padding:.2rem .6rem;font-weight:700;color:var(--primary-strong);background:var(--primary-soft);border-color:transparent;max-width:280px}.clinic-name{font-weight:700;color:var(--primary-strong);background:var(--primary-soft);padding:.35rem .7rem;border-radius:10px;white-space:nowrap}.account-link{text-decoration:none;color:inherit;padding:.3rem .5rem;border-radius:8px}.account-link:hover,.account-link.active{background:var(--surface-2)}.account-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem;align-items:start}.account-card{display:grid;gap:.7rem}.two-factor ol{margin:0;padding-left:1.2rem;display:grid;gap:.8rem}.qr-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:.5rem}.qr-row img{border:1px solid var(--border);border-radius:8px;background:#fff}.code-row{display:flex;gap:.5rem;margin-top:.5rem}.code-row input{max-width:10rem}.admin-layout{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:1rem;align-items:start}.editor{display:grid;gap:.8rem;position:sticky;top:4.5rem;max-height:calc(100vh - 6rem);overflow:auto}.editor hr{border:0;border-top:1px solid var(--border);margin:.2rem 0;width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}fieldset.checks{border:1px solid var(--border);border-radius:10px;padding:.5rem .8rem .7rem;display:grid;gap:.35rem;margin:0}fieldset.checks legend{font-weight:700;font-size:.9rem;padding:0 .3rem}label.check{flex-direction:row;align-items:flex-start;gap:.5rem;font-weight:400;color:var(--text)}label.check input{width:auto;min-height:0;margin-top:.25rem}.badge-row{display:flex;gap:.3rem;flex-wrap:wrap}table.data tr.selected{background:var(--primary-soft)}.role-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.6rem}.role-card{display:grid;gap:.3rem;text-align:left;justify-items:start;white-space:normal;font-weight:400;padding:.8rem 1rem}.role-card.on{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.role-title{display:flex;justify-content:space-between;gap:.5rem;width:100%}@media(max-width:1200px){.admin-layout{grid-template-columns:1fr}.editor{position:static;max-height:none}}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.clinic-switch{max-width:100%}}@media(max-width:1100px){.topbar{flex-wrap:wrap;row-gap:.4rem}.topbar nav{order:3;flex-basis:100%;overflow-x:auto}.topbar .who{margin-left:auto}}.topbar nav a.app-link{color:var(--provider);border:1px dashed var(--border)}.topbar nav a .count{display:inline-block;margin-left:.35rem;min-width:1.3rem;padding:0 .35rem;border-radius:999px;background:var(--noshow);color:#fff;font-size:.75rem;text-align:center}.results{display:grid;gap:.75rem}.result-card{padding:.9rem 1rem;display:grid;gap:.5rem;border-left:5px solid var(--done)}.result-card.abnormal{border-left-color:var(--noshow)}.result-card header,.result-card footer{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap}.result-card footer{align-items:center;justify-content:flex-start}pre.result-text{margin:.3rem 0;white-space:pre-wrap;font-family:inherit;font-size:.9rem;background:var(--surface-2);padding:.5rem .7rem;border-radius:8px}fieldset.patient-form{border:0;padding:0;margin:0;display:grid;gap:.5rem;min-width:0}fieldset.patient-form legend{float:left;width:100%;font-weight:700;font-size:.9rem;margin-top:.4rem;padding:0}fieldset.patient-form legend+*{clear:both}.tab .count{display:inline-block;margin-left:.35rem;min-width:1.3rem;padding:0 .35rem;border-radius:999px;background:var(--waiting);color:#fff;font-size:.75rem;text-align:center}table.compare th[scope],table.compare tbody th{font-size:.8rem;color:var(--muted);white-space:nowrap;background:transparent}table.compare td.diff{background:var(--waiting-soft);font-weight:600}.consent-panel{display:grid;gap:.5rem;border-top:1px solid var(--border);padding-top:.8rem}.consent-panel h3{margin:0;font-size:1rem}.directives{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}.directives li{display:flex;justify-content:space-between;gap:.5rem;align-items:flex-start;padding:.5rem .7rem;border-left:3px solid var(--roomed);background:var(--roomed-soft);border-radius:0 8px 8px 0}.directives li.revoked{border-left-color:var(--border);background:var(--surface-2);color:var(--muted)}.consent-form{display:grid;gap:.6rem;padding:.7rem;border:1px solid var(--border);border-radius:10px}.withheld{display:grid;gap:.6rem;border-top:4px solid var(--roomed)}
