*{box-sizing:border-box}html{min-height:100%}body{min-height:100%;margin:0;background:var(--color-bg)}button,input,select,textarea{font:inherit}a{color:inherit}body{font-family:var(--font-family);color:var(--color-text)}h1,h2,h3,p{margin-top:0}h1{margin-bottom:.65rem;color:var(--color-brand);font-size:clamp(2rem,4vw,3.6rem);line-height:1.05;letter-spacing:0}.lede{max-width:70ch;color:#5d6b82;font-size:1rem}.eyebrow{margin-bottom:.5rem;color:var(--color-primary);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}:root{--font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;--color-brand: #173766;--color-primary: #07599a;--color-success: #43a92f;--color-danger: #a61b1b;--color-bg: #f2f6fa;--color-border: #d9e2ec;--color-text: #172b4d;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-pill: 999px;--status-waiting-bg: #fff6e5;--status-waiting-fg: #93650a;--status-in-bg: #e7f1ff;--status-in-fg: #07599a;--status-out-bg: #f2f4f7;--status-out-fg: #475467;--status-done-bg: #eaf7ee;--status-done-fg: #1a7f37;--status-cancelled-bg: #fdecec;--status-cancelled-fg: #a61b1b}.auth-layout{display:grid;min-height:100vh;place-items:center;padding:1.25rem;background:var(--color-bg)}.auth-panel{width:min(100%,430px);padding:clamp(1.5rem,5vw,2.8rem);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;box-shadow:0 18px 44px #17376614}.auth-brand{display:grid;justify-items:center;margin-bottom:1.35rem}.auth-logo{display:block;width:min(230px,76%);aspect-ratio:1;object-fit:contain}.auth-panel h1{margin:0;text-align:center}.auth-panel .lede{text-align:center}.auth-product-mark{margin:2.25rem 0 0;color:#40577b;font-size:.84rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.app-layout{min-height:100vh;background:var(--color-bg)}.topbar{display:flex;position:sticky;z-index:2;top:0;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem 1rem;border-bottom:1px solid var(--color-border);background:#fff}.brand-inline{display:flex;align-items:center;gap:.6rem;min-width:0;font-weight:800}.brand-copy strong,.brand-copy span{display:block}.brand-copy span{color:#60738a;font-size:.78rem;font-weight:400}.brand-logo-mark{display:grid;flex:0 0 auto;width:3rem;height:2.45rem;place-items:center;border-radius:var(--radius-md);background:var(--color-brand);color:#fff;font-weight:900}.brand-logo-image{display:block;flex:0 0 auto;width:3.25rem;height:2.45rem;object-fit:contain}.nav-tabs{display:flex;gap:.4rem;padding:.55rem 1rem;overflow-x:auto;background:var(--color-brand)}.nav-tabs a{display:inline-flex;align-items:center;gap:.4rem;padding:.58rem .8rem;border-radius:7px;color:#fff;text-decoration:none;white-space:nowrap;font-weight:800}.nav-tabs a.active,.nav-tabs a:hover{background:#fff;color:var(--color-brand)}.session-card{display:flex;align-items:center;gap:.65rem;min-width:0}.session-card span{overflow:hidden;color:#60738a;font-size:.88rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.session-card button{flex:0 0 auto;padding:.52rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-brand);cursor:pointer;font-weight:800}.material-appbar{display:flex;position:sticky;z-index:2;top:0;align-items:center;gap:2rem;padding:.85rem 1.5rem;border-bottom:1px solid var(--color-border);background:#fff;color:#1c1b1f}.material-appbar-brand{display:flex;flex:0 0 auto;align-items:center;gap:.6rem;font-size:1.05rem;font-weight:800;white-space:nowrap}.material-appbar-logo{display:block;width:2rem;height:2rem;object-fit:contain;border-radius:var(--radius-sm)}.material-appbar-logo-mark{display:grid;width:2rem;height:2rem;place-items:center;border-radius:50%;background:var(--color-primary);color:#fff;font-size:.75rem;font-weight:900}.material-appbar-nav{display:flex;flex:1 1 auto;align-items:center;gap:.5rem;overflow-x:auto}.material-appbar-nav a{display:inline-flex;align-items:center;padding:.5rem 1rem;border-radius:var(--radius-pill);color:#6b6570;text-decoration:none;white-space:nowrap;font-weight:600;font-size:.92rem}.material-appbar-nav a:hover{color:#1c1b1f}.material-appbar-nav a.active{background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary)}.material-appbar-session{display:flex;flex:0 0 auto;align-items:center;gap:.4rem}.material-avatar{display:grid;width:2.1rem;height:2.1rem;place-items:center;border-radius:50%;background:var(--color-primary);color:#fff;font-size:.78rem;font-weight:800}.material-icon-button{display:grid;width:2.2rem;height:2.2rem;place-items:center;border:none;border-radius:50%;background:transparent;color:#6b6570;cursor:pointer}.material-icon-button:hover{background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:#1c1b1f}.sidebar-shell{display:flex;max-width:1600px;min-height:100vh;margin:0 auto}.sidebar{display:flex;position:sticky;top:0;flex:0 0 auto;flex-direction:column;gap:1.5rem;width:260px;height:100vh;padding:1.25rem 1rem;overflow-y:auto;border-right:1px solid var(--color-border);background:#fff}.sidebar-brand{display:flex;align-items:center;gap:.6rem;padding:0 .4rem;font-weight:800}.sidebar-logo{display:block;flex:0 0 auto;width:2.6rem;height:2.2rem;object-fit:contain}.sidebar-nav{display:flex;flex:1 1 auto;flex-direction:column;gap:.25rem}.sidebar-nav a{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border-radius:var(--radius-md);color:#526278;text-decoration:none;font-weight:700;font-size:.9rem}.sidebar-nav a.active,.sidebar-nav a:hover{background:var(--color-brand);color:#fff}.sidebar-session{display:flex;flex-direction:column;gap:.55rem;padding-top:1rem;border-top:1px solid var(--color-border)}.sidebar-session span{overflow:hidden;color:#60738a;font-size:.85rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.sidebar-session button{display:flex;align-items:center;gap:.5rem;padding:.55rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-brand);cursor:pointer;font-weight:800}.content{max-width:1440px;margin:0 auto;padding:1rem}.content-full{flex:1 1 auto;min-width:0;padding:1rem}.page-surface{width:min(100%,960px);padding:clamp(1.25rem,4vw,2.35rem);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;box-shadow:0 18px 44px #17376614}.route-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin:1.5rem 0 0}.route-facts div{padding:.9rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#f8fbfe}.route-facts dt{margin-bottom:.35rem;color:#65758b;font-size:.75rem;font-weight:800;text-transform:uppercase}.route-facts dd{margin:0}.dashboard-page{display:grid;gap:1rem}.module-section,.daily-summary{padding:1rem;border:1px solid var(--color-border);border-radius:12px;background:#fff;box-shadow:0 5px 18px #17376612}.dashboard-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--color-border);border-radius:12px;background:#fff;box-shadow:0 5px 18px #17376612}.subscription-banner{display:flex;gap:.45rem .8rem;align-items:center;flex-wrap:wrap;padding:.65rem .8rem;border:1px solid #b9ddb2;border-left:5px solid #2f8a27;border-radius:8px;background:#f0faed;color:#235f1e}.dashboard-greeting{padding:.25rem 0 1.5rem}.dashboard-greeting-text h1{margin:0 0 .5rem;font-size:2.5rem}.dashboard-greeting-text p{margin:0;color:#45536b;font-size:1.05rem}.daily-summary-heading,.module-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.daily-summary-heading h2,.module-section-heading h2{margin-bottom:.25rem}.muted{color:#60738a}.summary-date-controls{display:flex;align-items:center;gap:.45rem}.button-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:.45rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-brand);cursor:pointer;font-weight:800;text-decoration:none}.button-secondary.selected{border-color:var(--color-primary);background:#f3f9ff}.summary-metrics,.summary-statuses{display:grid;gap:.55rem}.summary-metrics{grid-template-columns:repeat(6,minmax(110px,1fr));margin-top:.75rem}.summary-statuses{grid-template-columns:repeat(4,minmax(110px,1fr));margin-top:.55rem}.summary-metric{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.65rem .75rem;border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:8px;background:#fff}.summary-metric span{color:#60738a;font-size:.76rem;font-weight:800}.summary-metric strong{font-size:1.18rem;white-space:nowrap}.summary-money{border-left-color:#2f8a27}.summary-metric.status-waiting{background:var(--status-waiting-bg);border-left-color:#d99b00;color:var(--status-waiting-fg)}.summary-metric.status-in{background:var(--status-in-bg);border-left-color:var(--color-primary);color:var(--status-in-fg)}.summary-metric.status-out{background:var(--status-out-bg);border-left-color:#7952c7;color:var(--status-out-fg)}.summary-metric.status-done{background:var(--status-done-bg);border-left-color:var(--color-success);color:var(--status-done-fg)}.stat-grid{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:.65rem;margin-top:.75rem}.stat-card{display:flex;align-items:flex-start;gap:.65rem;padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff}.stat-icon{display:grid;flex:0 0 auto;width:2.4rem;height:2.4rem;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--color-primary) 12%,transparent);color:var(--color-primary)}.stat-card-body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.stat-label{overflow:hidden;color:#60738a;font-size:.76rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.stat-value{font-size:1.3rem;white-space:nowrap}.stat-trend{display:inline-flex;width:fit-content;align-items:center;gap:.2rem;font-size:.74rem;font-weight:800}.stat-trend--up{color:var(--color-success)}.stat-trend--down{color:var(--color-danger)}.stat-trend--flat{color:#898781}.crowd-flow{margin-top:1.1rem}.crowd-flow h3{margin:0 0 .55rem;font-size:.95rem}.crowd-flow-bar{display:flex;overflow:hidden;height:.65rem;border-radius:var(--radius-pill);background:#eef1f6}.crowd-flow-segment{height:100%}.crowd-flow-segment+.crowd-flow-segment{border-left:2px solid #fff}.crowd-flow-empty{width:100%;background:#eef1f6}.crowd-flow-segment.status-waiting{background:var(--status-waiting-border)}.crowd-flow-segment.status-in{background:var(--status-in-border)}.crowd-flow-segment.status-out{background:var(--status-out-border)}.crowd-flow-segment.status-done{background:var(--status-done-border)}.crowd-flow-legend{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:.55rem;margin-top:.65rem}.crowd-flow-card{display:flex;align-items:center;gap:.5rem;padding:.65rem .75rem;border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:8px;background:#fff;font-size:.76rem;font-weight:800}.crowd-flow-card strong{margin-left:auto;font-size:1.05rem}.crowd-flow-card.status-waiting{border-left-color:var(--status-waiting-border);background:var(--status-waiting-bg);color:var(--status-waiting-fg)}.crowd-flow-card.status-in{border-left-color:var(--status-in-border);background:var(--status-in-bg);color:var(--status-in-fg)}.crowd-flow-card.status-out{border-left-color:var(--status-out-border);background:var(--status-out-bg);color:var(--status-out-fg)}.crowd-flow-card.status-done{border-left-color:var(--status-done-border);background:var(--status-done-bg);color:var(--status-done-fg)}.department-chart{margin-top:1.1rem}.doctor-summary-heading-row{display:flex;align-items:baseline;justify-content:space-between;margin-top:1.1rem}.doctor-summary-heading-row h3{margin:0;font-size:.95rem}.doctor-summary-heading-row a{color:var(--color-primary);font-size:.82rem;font-weight:800;text-decoration:none}.doctor-summary-heading-row a:hover{text-decoration:underline}.date-pill{position:relative;display:flex;align-items:center;gap:.5rem;padding:.52rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:#fff;color:var(--color-primary);cursor:pointer;font-weight:800;font-size:.85rem}.date-pill input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:pointer;opacity:0}.date-nav-button{display:grid;width:2.2rem;height:2.2rem;place-items:center;border:1px solid var(--color-border);border-radius:50%;background:#fff;color:var(--color-primary);cursor:pointer}.date-nav-button:hover{background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.doctor-summary-table{display:grid;gap:0;margin-top:.75rem;overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.doctor-summary-row{display:grid;grid-template-columns:minmax(120px,1fr) repeat(6,minmax(90px,.8fr));gap:.5rem;align-items:center;padding:.6rem .9rem}.doctor-summary-row:not(:last-child){border-bottom:1px solid var(--color-border)}.doctor-summary-row span:first-child{font-weight:800}.doctor-summary-head{background:#f6f8fb;color:#60738a;font-size:.76rem;font-weight:800}.doctor-summary-head span:first-child{font-weight:800}.founding-offer-banner{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .6rem;padding:.85rem 1.1rem;border:1px solid color-mix(in srgb,var(--color-success) 35%,var(--color-border));border-radius:var(--radius-md);background:var(--status-done-bg);color:var(--status-done-fg)}.founding-offer-banner strong{font-weight:900}.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;margin-top:.8rem}.module-card{display:grid;gap:.5rem;min-height:100%;padding:.9rem;border:1px solid var(--color-border);border-radius:10px;background:#fff;color:var(--color-text);text-decoration:none}.module-card:hover{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));box-shadow:0 8px 20px #17376614}.module-card svg{color:var(--color-primary)}.module-card h3{margin:0}.module-card p{margin:0;color:#60738a}.module-catalogue-card{align-content:start;cursor:default}.module-catalogue-card:hover{border-color:var(--color-border);box-shadow:none}.module-catalogue-card--locked{background:#f8fafc}.module-catalogue-card--locked h3{color:#60738a}.module-catalogue-badge{justify-self:start;padding:.28rem .6rem;border-radius:999px;font-size:.72rem;font-weight:800}.module-catalogue-badge.included{background:var(--status-done-bg);color:var(--status-done-fg)}.module-catalogue-badge.coming-soon{background:#eef1f6;color:#60738a}.module-catalogue-badge.available{background:var(--status-in-bg);color:var(--status-in-fg)}.workflow-page{display:grid;gap:1rem}.workflow-heading,.panel{padding:1rem;border:1px solid var(--color-border);border-radius:12px;background:#fff;box-shadow:0 5px 18px #17376612}.workflow-heading,.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.panel-heading{margin-bottom:.85rem}.panel-heading h2,.detail-stack h3{margin-bottom:.25rem}.split-workspace{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(420px,1.18fr);gap:1rem;align-items:start}.brand-settings-panel{max-width:780px}.brand-settings-grid{display:grid;grid-template-columns:180px minmax(0,1fr);gap:1rem;align-items:center}.skin-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-top:.75rem}.skin-template-card{display:flex;align-items:center;gap:.75rem;padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#f8fbfe}.skin-template-card--active{border-color:var(--color-brand);background:#fff}.skin-template-swatch{flex-shrink:0;width:2.2rem;height:2.2rem;border-radius:50%;border:1px solid var(--color-border)}.skin-template-body{display:flex;flex-direction:column;gap:.3rem;flex-grow:1}.settings-tabs{display:inline-flex;gap:.25rem;width:fit-content;padding:.3rem;border-radius:10px;background:#eef1f6}.settings-tabs button{padding:.55rem 1rem;border:none;border-radius:7px;background:transparent;color:#526278;cursor:pointer;font-weight:800}.settings-tabs button.active{background:var(--color-brand);color:#fff}.plan-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem;margin-top:.75rem}.plan-card{display:grid;gap:.4rem;align-content:start;padding:1rem;border:1px solid var(--color-border);border-radius:10px;background:#fff}.plan-card--highlight{border-color:color-mix(in srgb,var(--color-success) 35%,var(--color-border));background:var(--status-done-bg)}.plan-card-eyebrow{margin:0;color:var(--color-primary);font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.plan-card--highlight .plan-card-eyebrow{color:var(--status-done-fg)}.plan-card h3{margin:0}.plan-card-price{margin:0;font-size:1.05rem;font-weight:800}.plan-card-setup{margin:0;color:#60738a;font-size:.82rem;font-weight:700}.plan-card-list{margin:.3rem 0 0;padding-left:1.1rem;color:#435168;font-size:.85rem}.plan-card-list li{margin-bottom:.15rem}.plan-card-highlight-line{margin:0;font-size:1.05rem;font-weight:800}.plan-card-meta{margin:0;color:#435168;font-size:.82rem;font-weight:700}.plan-addons-heading{margin:1.1rem 0 0}.addon-row{grid-template-columns:minmax(200px,1.4fr) minmax(120px,.7fr) minmax(100px,.6fr)}.plan-footnotes{display:grid;gap:.2rem;margin-top:1rem;padding:.85rem 1rem;border-radius:8px;background:#f6f8fb}.plan-footnotes p{margin:0;color:#60738a;font-size:.8rem}.clinic-logo-preview{display:grid;min-height:130px;place-items:center;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#f8fbfe}.clinic-logo-preview img{display:block;max-width:100%;max-height:110px;object-fit:contain}.clinic-background-preview{overflow:hidden;min-height:160px;padding:0}.clinic-background-preview img{width:100%;height:100%;max-height:none;object-fit:cover}.clinic-logo-preview span{display:grid;width:4.2rem;height:4.2rem;place-items:center;border-radius:var(--radius-md);background:var(--color-brand);color:#fff;font-weight:900}.visit-workspace{grid-template-columns:minmax(280px,.7fr) minmax(520px,1.3fr)}.wide-panel{min-width:0}.data-form,.detail-stack,.compact-form{display:grid;gap:.8rem}.form-grid{display:grid;gap:.75rem}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;gap:.32rem;color:#526278;font-size:.78rem;font-weight:800}.compact-field{min-width:180px}.field input,.field select,.field textarea{width:100%;min-height:2.35rem;padding:.55rem .65rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;color:var(--color-text);font:inherit;font-weight:600}.field textarea{min-height:5rem;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-primary);outline:3px solid color-mix(in srgb,var(--color-primary) 18%,transparent)}.button-primary{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:.5rem .8rem;border:0;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;font-weight:900;text-decoration:none}.button-primary:disabled,.button-secondary:disabled{cursor:not-allowed;opacity:.58}.danger-button{background:var(--color-danger)}.danger-text{color:var(--color-danger)}.form-success{margin:0;color:#28761d;font-weight:800}.action-row,.row-actions,.stacked-actions{display:flex;gap:.5rem;flex-wrap:wrap}.action-row{justify-content:flex-end}.inline-alert{display:grid;gap:.25rem;padding:.7rem;border:1px solid #f0c36d;border-radius:var(--radius-sm);background:#fff8e8;color:#76520a}.table-list{display:grid;gap:.45rem;margin-top:.75rem}.table-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(110px,.75fr) minmax(90px,.6fr);gap:.65rem;align-items:center;padding:.62rem .7rem;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);text-align:left}.visit-row{grid-template-columns:minmax(110px,.85fr) minmax(80px,.45fr) minmax(100px,.55fr) minmax(110px,.65fr) minmax(210px,1fr)}.consult-row{grid-template-columns:minmax(90px,.6fr) minmax(150px,1.1fr) minmax(70px,.4fr) minmax(120px,.75fr) minmax(120px,.75fr) minmax(90px,.5fr) minmax(80px,.45fr)}.medicine-row{grid-template-columns:minmax(180px,1.1fr) minmax(160px,1fr) minmax(100px,.55fr) minmax(90px,.45fr)}.patient-row{grid-template-columns:minmax(90px,.55fr) minmax(150px,1fr) minmax(110px,.65fr) minmax(90px,.5fr) minmax(100px,.55fr) minmax(90px,.45fr) minmax(110px,.55fr)}.admin-visit-row{grid-template-columns:minmax(160px,1.1fr) minmax(110px,.7fr) minmax(80px,.45fr) minmax(100px,.55fr) minmax(100px,.55fr) minmax(100px,.55fr)}.staff-row{grid-template-columns:minmax(180px,1.2fr) minmax(120px,.7fr) minmax(100px,.55fr)}.table-row.selected{border-color:var(--color-primary);background:#f3f9ff}.table-head{background:#edf4fb;color:#526278;font-size:.76rem;font-weight:900;text-transform:uppercase}.table-row strong,.table-row small{display:block}.table-row small{margin-top:.1rem;color:#60738a;font-size:.76rem;font-weight:700}.selectable-row{width:100%;cursor:pointer}.selectable-row:hover,.selectable-row.selected{border-color:var(--color-primary);background:#f3f9ff}.status-chip{width:fit-content;padding:.22rem .46rem;border-radius:999px;font-size:.72rem;font-weight:900}.status-chip.status-waiting{background:var(--status-waiting-bg);color:var(--status-waiting-fg)}.status-chip.status-in{background:var(--status-in-bg);color:var(--status-in-fg)}.status-chip.status-out{background:var(--status-out-bg);color:var(--status-out-fg)}.status-chip.status-done{background:var(--status-done-bg);color:var(--status-done-fg)}.status-chip.status-cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled-fg)}.status-chip.status-pending,.status-chip.status-pending-choice{background:var(--status-waiting-bg);color:var(--status-waiting-fg)}.status-chip.status-opted,.status-chip.status-issued,.status-chip.status-active{background:var(--status-done-bg);color:var(--status-done-fg)}.status-chip.status-partly-issued,.status-chip.status-inactive,.status-chip.status-not-purchased,.status-chip.status-unavailable,.status-chip.status-not-opted{background:var(--status-out-bg);color:var(--status-out-fg)}.status-chip.status-locked{background:var(--status-cancelled-bg);color:var(--status-cancelled-fg)}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;margin-top:.85rem;font-size:.8rem;font-weight:700;color:#526278}.history-visits{display:grid;gap:.75rem}.previous-consultations{display:grid;gap:.75rem;margin-top:.75rem}.previous-consultation{padding:.85rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff}.previous-consultation h3{margin-bottom:.15rem}.copy-treatment-list{display:grid;gap:.4rem;margin:.6rem 0;padding:0;list-style:none}.history-visit{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;overflow:hidden}.history-visit-toggle{display:flex;align-items:center;gap:.6rem;width:100%;padding:.85rem;border:0;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit}.history-visit-toggle:hover{background:#f8fbff}.history-visit.expanded .history-visit-toggle{border-bottom:1px solid var(--color-border)}.history-visit-chevron{flex:0 0 auto;width:1rem;color:#60738a;font-size:.8rem}.history-visit-toggle h3{flex:1 1 auto;margin:0}.history-visit-body{padding:.85rem}.detail-grid{margin:.6rem 0 0}.detail-grid-row{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;margin-bottom:1.4rem}.detail-grid-row>div{flex:1 1 320px}.detail-grid dt{color:#60738a;font-size:.72rem;font-weight:900;text-transform:uppercase}.detail-grid dd{margin:.1rem 0 0;color:var(--color-text);font-weight:400}.prescription-list{margin:.6rem 0 0;padding-left:1.1rem;font-size:.85rem}.stat-bar{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:.5rem;margin-bottom:.75rem}.stat-bar div{display:flex;justify-content:space-between;gap:.5rem;padding:.55rem .65rem;border:1px solid var(--color-border);border-radius:8px;background:#f8fbfe}.stat-bar span{color:#60738a;font-size:.72rem;font-weight:900}.queue-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.queue-controls .compact-field{margin:0}.visit-progress{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:.65rem;margin-bottom:.85rem}.progress-card{display:flex;align-items:center;justify-content:space-between;padding:.8rem;border-radius:9px;border-left:5px solid}.progress-card strong{font-size:1.45rem}.progress-card span{font-weight:800;font-size:.76rem;letter-spacing:.04em}.progress-card.status-waiting{background:#fff5d8;border-color:#d99b00;color:#805c00}.progress-card.status-in{background:#e5f2ff;border-color:#1473c9;color:#07599a}.progress-card.status-out{background:#f0e9ff;border-color:#7952c7;color:#54369a}.progress-card.status-done{background:#e7f6e3;border-color:#43a92f;color:#28761d}.queue-counts{display:flex;gap:.8rem;margin-bottom:.85rem}.queue-counts .count{padding:.65rem .85rem;border-radius:8px;background:#eaf3fb;font-weight:800}.status-pill{display:inline-block;width:fit-content;padding:.3rem .55rem;border-radius:999px;font-weight:800;font-size:.76rem;letter-spacing:.04em}.status-pill.status-waiting{background:#fff5d8;color:#805c00}.status-pill.status-in{background:#e5f2ff;color:#07599a}.status-pill.status-out{background:#f0e9ff;color:#54369a}.status-pill.status-done{background:#e7f6e3;color:#28761d}.status-pill.status-cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled-fg)}.queue-row-clickable{cursor:pointer}.queue-row-clickable:hover{border-color:var(--color-primary);background:#f8fbff}.segmented-control{display:inline-grid;grid-auto-flow:column;gap:.25rem;width:fit-content;padding:.25rem;border:1px solid var(--color-border);border-radius:8px;background:#edf4fb}.segmented-control button{min-height:2rem;padding:.35rem .75rem;border:0;border-radius:6px;background:transparent;color:var(--color-brand);cursor:pointer;font-weight:900}.segmented-control button.active{background:#fff;box-shadow:0 1px 4px #1737661f}.modal-panel{max-width:560px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:3rem 1rem;background:#0f172a8c;overflow-y:auto}.modal-dialog{width:100%;max-width:980px;max-height:calc(100vh - 6rem);overflow-y:auto;padding:1.25rem;border-radius:14px;background:#fff;box-shadow:0 24px 60px #0f172a59}.modal-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.85rem;padding-bottom:.85rem;border-bottom:1px solid var(--color-border)}.modal-dialog-controls{display:flex;align-items:flex-end;gap:.6rem;flex-wrap:wrap}.history-visit-footer{display:flex;flex-wrap:wrap;gap:.35rem 1.2rem;margin-top:.65rem;font-size:.85rem;color:#475467}.treatment-block{margin-top:.6rem}.history-visit-footer+.button-secondary{margin-top:.65rem}.treatment-block h4{margin-bottom:.3rem;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.03em;color:#60738a}.billing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.key-values{display:grid;grid-template-columns:minmax(80px,.7fr) minmax(120px,1fr);gap:.5rem;align-items:center}.key-values span{color:#60738a;font-size:.76rem;font-weight:800}.consultation-form{display:grid;gap:1rem}.clinical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.clinical-field textarea{min-height:7.5rem}.field-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.check-inline{display:inline-flex;align-items:center;gap:.35rem;color:#526278;font-size:.78rem;font-weight:800}.check-inline input{width:1rem;height:1rem}.strong-check{color:var(--color-brand)}.medicine-lines{display:grid;gap:.65rem}.medicine-line{display:grid;grid-template-columns:minmax(180px,1.25fr) repeat(4,minmax(110px,.8fr)) auto;gap:.6rem;align-items:end;padding:.7rem;border:1px solid var(--color-border);border-radius:8px;background:#f8fbfe}.followup-row{display:flex;align-items:end;gap:.75rem;flex-wrap:wrap}.treatment-footer-row{display:flex;align-items:end;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:.85rem}.consult-complaint{margin:-.4rem 0 .85rem;font-weight:800}.sticky-actions{display:flex;position:sticky;z-index:1;bottom:0;justify-content:flex-end;gap:.6rem;padding:.75rem;border:1px solid var(--color-border);border-radius:12px;background:#fffffff5;box-shadow:0 -8px 20px #17376614}.pharmacy-queue{display:grid;gap:.9rem}.dispense-card{padding:.9rem;border:1px solid var(--color-border);border-radius:10px;background:#fff}.dispense-items{display:grid;gap:.6rem}.dispense-item{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(150px,.85fr) minmax(110px,.65fr) minmax(150px,.9fr);gap:.65rem;align-items:end;padding:.7rem;border:1px solid var(--color-border);border-radius:8px;background:#f8fbfe}.dispense-item strong,.dispense-item small{display:block}.dispense-item small{margin-top:.2rem;color:#60738a;font-size:.78rem;font-weight:700}.badge{width:fit-content;border-radius:999px;padding:.22rem .5rem;background:#e6f5e2;color:#28761d;font-size:.7rem;font-weight:800}code{border-radius:4px;background:#edf4fb;color:#102c4c;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.9em;padding:.1rem .32rem}.button-link{display:inline-flex;margin-top:.75rem;padding:.65rem .9rem;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font-weight:800;text-decoration:none}.auth-form{display:grid;gap:1rem;margin-top:1.25rem}.auth-form label{display:grid;gap:.35rem;color:#526278;font-weight:800}.auth-form input{width:100%;min-height:2.75rem;padding:.7rem .85rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text)}.auth-form input:focus{border-color:var(--color-primary);outline:3px solid color-mix(in srgb,var(--color-primary) 18%,transparent)}.auth-form button{min-height:2.75rem;border:0;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;font-weight:900}.auth-form button:disabled{cursor:wait;opacity:.72}.form-error{margin:0;padding:.75rem;border:1px solid color-mix(in srgb,var(--color-danger) 28%,#fff);border-radius:var(--radius-sm);background:#fff3f3;color:var(--color-danger);font-weight:800}.loading-screen{display:grid;min-height:100vh;place-items:center;color:var(--color-brand);font-weight:900}.print-shell{min-height:100vh;padding:1rem;background:#eef3f8}.print-toolbar{display:flex;gap:.5rem;align-items:center;width:min(100%,960px);margin:0 auto 1rem;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;color:var(--color-brand);font-weight:800}.print-shell .page-surface{margin:0 auto 1rem}.print-toolbar-actions{margin-left:auto;align-items:center}.page-surface{width:min(100%,210mm);min-height:297mm;padding:16mm;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;color:var(--color-text)}.prescription-letterhead{display:flex;align-items:center;gap:.75rem;padding-bottom:.85rem;border-bottom:2px solid var(--color-brand)}.prescription-logo{width:48px;height:48px;object-fit:contain}.prescription-letterhead h1{margin:0;color:var(--color-brand)}.prescription-parties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0;padding-bottom:1rem;border-bottom:1px dashed var(--color-border)}.prescription-parties div{display:grid;gap:.2rem}.prescription-clinical{display:grid;gap:.75rem;margin-bottom:1rem}.prescription-clinical h3,.prescription-rx h3{margin:0 0 .25rem;color:var(--color-brand);font-size:.85rem;text-transform:uppercase}.prescription-clinical p{margin:0;white-space:pre-wrap}.prescription-rx{margin-bottom:1rem}.prescription-table{width:100%;border-collapse:collapse}.prescription-table th,.prescription-table td{padding:.5rem .6rem;border:1px solid var(--color-border);text-align:left;font-size:.85rem}.prescription-table th{background:#edf4fb;color:#526278;text-transform:uppercase;font-size:.72rem}.prescription-followup{margin:0 0 1.5rem;font-weight:800;color:var(--color-brand)}.prescription-signature{display:flex;justify-content:flex-end;gap:2.5rem;margin-top:3rem;padding-top:.5rem;border-top:1px solid var(--color-border);font-weight:700}@media print{@page{size:A4;margin:12mm}.app-layout .topbar,.app-layout .nav-tabs,.print-toolbar{display:none!important}.print-shell{min-height:0;padding:0;background:#fff}.page-surface{width:auto;min-height:0;padding:0;border:0;border-radius:0}}@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.summary-metrics{grid-template-columns:repeat(3,minmax(110px,1fr))}}@media(max-width:820px){.topbar,.dashboard-heading,.daily-summary-heading,.module-section-heading,.workflow-heading,.panel-heading{align-items:flex-start;flex-direction:column}.session-card{width:100%;justify-content:space-between}.summary-date-controls{width:100%;flex-wrap:wrap}.crowd-flow-legend,.summary-statuses{grid-template-columns:repeat(2,minmax(110px,1fr))}.split-workspace,.visit-workspace,.billing-grid,.brand-settings-grid,.clinical-grid{grid-template-columns:1fr}.medicine-line,.dispense-item{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){input,select,textarea{font-size:16px}.content{padding:.7rem}.stat-grid,.crowd-flow-legend,.summary-metrics,.summary-statuses,.module-grid,.form-grid.two,.stat-bar,.visit-progress{grid-template-columns:1fr}.queue-counts{flex-wrap:wrap}.table-row,.visit-row,.consult-row,.medicine-row,.patient-row,.admin-visit-row,.staff-row{grid-template-columns:1fr}.row-actions{align-items:stretch;flex-direction:column}.medicine-line,.dispense-item{grid-template-columns:1fr}.sticky-actions{position:static;flex-direction:column}}[data-surface-style=glass] body{background-color:#eef3fa;background-image:var(--skin-bg-image, none),radial-gradient(circle at 8% 10%,color-mix(in srgb,var(--color-primary) 16%,transparent),transparent 45%),radial-gradient(circle at 95% 15%,color-mix(in srgb,var(--color-brand) 15%,transparent),transparent 42%),radial-gradient(circle at 20% 85%,color-mix(in srgb,var(--color-primary) 12%,transparent),transparent 40%),radial-gradient(circle at 85% 90%,color-mix(in srgb,var(--color-brand) 11%,transparent),transparent 42%);background-repeat:no-repeat;background-position:center;background-size:cover;background-attachment:fixed}[data-surface-style=glass] .app-layout,[data-surface-style=glass] .auth-layout{background:transparent}[data-surface-style=glass] .sidebar{border-right:1px solid rgba(255,255,255,.6);background:#ffffff9e;backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%)}[data-surface-style=glass] .topbar,[data-surface-style=glass] .material-appbar{border-bottom:1px solid rgba(255,255,255,.6);background:#ffffffad;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}[data-surface-style=glass] .nav-tabs{background:color-mix(in srgb,var(--color-brand) 75%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}[data-surface-style=glass] .panel,[data-surface-style=glass] .auth-panel,[data-surface-style=glass] .daily-summary,[data-surface-style=glass] .module-section,[data-surface-style=glass] .stat-card,[data-surface-style=glass] .module-card,[data-surface-style=glass] .skin-template-card,[data-surface-style=glass] .plan-card,[data-surface-style=glass] .clinic-logo-preview,[data-surface-style=glass] .table-list,[data-surface-style=glass] .doctor-summary-table{border:1px solid rgba(255,255,255,.65);background:#ffffffb3;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);box-shadow:0 8px 32px #1428501a,inset 0 1px #ffffffbf}[data-surface-style=glass] .crowd-flow-card{border-top:1px solid rgba(255,255,255,.65);border-right:1px solid rgba(255,255,255,.65);border-bottom:1px solid rgba(255,255,255,.65);background:#ffffffb3;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);box-shadow:0 8px 32px #14285024,inset 0 1px #ffffffbf}[data-surface-style=glass] .field input,[data-surface-style=glass] .field select,[data-surface-style=glass] .field textarea{border:1px solid rgba(255,255,255,.8);background:#ffffffb8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-surface-style=glass] .button-primary{border:1px solid rgba(255,255,255,.35);background:color-mix(in srgb,var(--color-primary) 90%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-surface-style=glass] .button-secondary,[data-surface-style=glass] .date-pill,[data-surface-style=glass] .date-nav-button,[data-surface-style=glass] .material-icon-button{border:1px solid rgba(255,255,255,.7);background:#ffffffb8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}[data-surface-style=glass] .button-secondary.selected{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 16%,rgba(255,255,255,.72))}
