*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,SF Pro Text,Segoe UI,Roboto,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.45}button,a.button{font:inherit}h1,h2,h3,h4,p{margin:0}.tabular{font-variant-numeric:tabular-nums}.muted{color:var(--text-muted);font-size:12.5px}.small{font-size:11.5px}.grow{flex:1}.overline{letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);font-size:10.5px;font-weight:700}.wrap{max-width:1200px;margin:0 auto;padding:0 32px}.button{border:1px solid var(--border-stronger);background:var(--surface);color:var(--text-body);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13.5px;font-weight:500;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){border-color:var(--text-faint)}.button.primary{background:var(--accent);color:#fff;border-color:#0000;font-weight:600}.button.primary:hover:not(:disabled){background:var(--accent-pressed)}.button:disabled{opacity:.5;cursor:default}.logo{flex:none;align-items:center;gap:9px;display:inline-flex}.logo-mark{width:30px;height:30px;display:block}.logo-mark rect{fill:var(--accent)}.logo-mark path{fill:none;stroke:#fff;stroke-width:4.5px;stroke-linecap:round;stroke-linejoin:round}.logo-name{letter-spacing:-.02em;font-size:16px;font-weight:700}.banner{background:var(--text);color:var(--text-faint);font-size:12.5px}.banner-row{flex-wrap:wrap;align-items:center;gap:14px;padding-top:10px;padding-bottom:10px;display:flex}.banner-live{color:#fff;align-items:center;gap:7px;font-weight:600;display:inline-flex}.banner-live i{background:var(--accent);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 2px #ffffff40}.banner-note{color:var(--text-muted)}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;position:sticky;top:0}.topbar-row{align-items:center;gap:22px;height:64px;display:flex}.topbar-sep{background:var(--border-strong);width:1px;height:26px}.topbar-title{min-width:0;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;overflow:hidden}.topbar-actions{flex:none;gap:9px;display:flex}.layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:26px;padding-top:30px;padding-bottom:70px;display:grid}.main,.stack{flex-direction:column;gap:22px;min-width:0;display:flex}.aside{flex-direction:column;gap:18px;display:flex;position:sticky;top:90px}.narrow-only{display:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px}.error{color:var(--danger);font-size:13.5px}.case-head{flex-direction:column;gap:16px;padding:26px 28px;display:flex}.case-status{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.status{border-radius:20px;align-items:center;gap:7px;padding:5px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.status i{border-radius:50%;width:6px;height:6px}.case-head h1{letter-spacing:-.03em;text-wrap:pretty;font-size:37px;font-weight:700;line-height:1.08}.case-summary{color:var(--text-body);white-space:pre-line;max-width:70ch;font-size:16px;line-height:1.6}.stats{grid-template-columns:repeat(var(--stats,4), minmax(0, 1fr));background:var(--border);border:1px solid var(--border);border-radius:12px;gap:1px;display:grid;overflow:hidden}.stat{background:var(--surface);grid-template-rows:subgrid;grid-row:span 3;align-content:start;row-gap:4px;padding:14px 16px;display:grid}.stat-value{letter-spacing:-.02em;font-size:23px;font-weight:700}.stat-note{color:var(--text-muted);font-size:11.5px}.timeline{overflow:hidden}.timeline-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:14px;padding:18px 24px;display:flex}.timeline-head h2{letter-spacing:-.014em;font-size:16px;font-weight:700}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border-stronger);background:var(--surface);color:var(--text-body);cursor:pointer;border-radius:18px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:500;display:inline-flex}.chip i{border-radius:2px;width:7px;height:7px}.chip.on{background:var(--text);color:#fff;border-color:#0000}.timeline-body{padding:6px 24px 22px}.empty{color:var(--text-muted);padding:24px 0}.month-label{align-items:center;gap:12px;padding:18px 0 6px;display:flex}.month-label span{letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);font-size:12.5px;font-weight:700}.month-label i{background:var(--border);flex:1;height:1px}.entry-row{grid-template-columns:64px 30px minmax(0,1fr);align-items:start;display:grid}.entry-date{text-align:right;color:var(--text-muted);white-space:nowrap;padding:18px 10px 0 0;font-size:12.5px}.entry-rail{justify-content:center;align-self:stretch;display:flex;position:relative}.entry-rail .rail{background:var(--border);width:2px;position:absolute;top:0;bottom:0}.entry-rail .dot{border-radius:50%;width:13px;height:13px;margin-top:19px;position:relative}.entry-row.future .dot{opacity:.55}.entry{border:1px solid var(--border);border-radius:13px;flex-direction:column;gap:10px;min-width:0;margin:10px 0 12px 16px;padding:16px 18px;display:flex}.entry-head{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.entry-head h3{letter-spacing:-.014em;flex:220px;min-width:0;font-size:15.5px;font-weight:600}.tag{letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border-radius:5px;padding:3px 8px;font-size:10.5px;font-weight:700}.state{color:var(--text-muted);font-size:12px}.pill{color:var(--accent);background:var(--selected);border-radius:10px;padding:2px 8px;font-size:11.5px;font-weight:600}.entry-who,.entry-when{color:var(--text-secondary);font-size:13.5px}.entry-text,.entry-sub p{color:var(--text-body);white-space:pre-line;max-width:72ch;font-size:14px;line-height:1.6}.entry-sub{flex-direction:column;gap:4px;display:flex}.entry-sub h4{letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);font-size:10.5px;font-weight:700}.doc-chips{flex-wrap:wrap;gap:9px;display:flex}.doc-chip{border:1px solid var(--border);background:var(--surface-sunken);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:10px;max-width:100%;padding:8px 12px 8px 9px;display:flex}.doc-chip:hover:not(:disabled){border-color:var(--text-faint);background:var(--surface)}.doc-chip:disabled{cursor:default;opacity:.6}.doc-chip-text{flex-direction:column;gap:2px;min-width:0;display:flex}.doc-chip-title{color:var(--text);font-size:13px;font-weight:500}.doc-chip-meta{color:var(--text-tertiary);font-size:11.5px}.thumb{border:1px solid;border-radius:4px;flex:none;justify-content:center;align-items:flex-end;width:26px;height:32px;padding-bottom:3px;font-size:8px;font-weight:700;display:flex}.timeline-end{grid-template-columns:64px 30px minmax(0,1fr);display:grid}.timeline-end .rail-fade{background:linear-gradient(var(--border), transparent);justify-self:center;width:2px;height:30px}.timeline-end .muted{padding:8px 0 0 16px}.side{flex-direction:column;gap:14px;padding:20px;display:flex}.side.flush{gap:0;padding:0;overflow:hidden}.side-head{border-bottom:1px solid var(--border);align-items:center;gap:9px;padding:16px 20px;display:flex}.side-head h2{letter-spacing:-.012em;font-size:14.5px;font-weight:700}.patient{align-items:center;gap:12px;display:flex}.avatar{background:var(--segment);width:46px;height:46px;color:var(--text-body);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.avatar.small{width:36px;height:36px;font-size:13px}.patient-text{flex-direction:column;gap:3px;min-width:0;display:flex}.patient-name{letter-spacing:-.014em;font-size:16px;font-weight:600}.facts{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:12px;padding-top:12px;display:grid}.facts div,.allergies{flex-direction:column;gap:3px;font-size:13.5px;font-weight:500;display:flex}.allergies{border:1px solid var(--warn-border);background:var(--warn-bg);white-space:pre-line;border-radius:9px;padding:10px 12px}.allergies .overline{color:var(--warn)}.steps,.rows{margin:0;padding:0;list-style:none}.step{border-top:1px solid var(--border);grid-template-columns:20px 1fr auto;align-items:start;gap:11px;padding:13px 20px;display:grid}.step:first-child{border-top-color:#0000}.check{border:2px solid var(--chevron);border-radius:50%;width:18px;height:18px;margin-top:1px;position:relative}.step.urgent .check{border-color:var(--warn-dot)}.step.done .check{border-color:var(--accent);background:var(--accent)}.step.done .check:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:7px;height:3.5px;position:absolute;top:4px;left:3.5px;transform:rotate(-45deg)}.step-text{flex-direction:column;gap:3px;min-width:0;display:flex}.step-label{font-size:13.5px;font-weight:500;line-height:1.35}.step.done .step-label{color:var(--text-tertiary);text-decoration:line-through}.step-note{color:var(--text-muted);font-size:12px;line-height:1.4}.due{color:var(--text-body);background:var(--segment);white-space:nowrap;border-radius:5px;padding:3px 7px;font-size:11px;font-weight:600}.step.urgent .due{color:var(--warn);background:var(--warn-bg)}.step.done .due{color:var(--text-muted)}.row{border:0;border-top:1px solid var(--border);text-align:left;background:0 0;align-items:center;gap:11px;width:100%;padding:11px 20px;display:flex}.rows>li:first-child>.row,.rows>.row:first-child{border-top-color:#0000}.row.file{cursor:pointer}.row.file:hover:not(:disabled){background:var(--surface-sunken)}.row.file:disabled{cursor:default;opacity:.6}.row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row-title{color:var(--text);font-size:13.5px;font-weight:600}.row.file .row-title{font-size:13px;font-weight:500}.row-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.note{color:var(--text-paragraph);background:var(--segment);border:1px solid var(--border);border-radius:14px;padding:14px 16px;font-size:12px;line-height:1.5}.viewer{z-index:40;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.viewer-scrim{cursor:pointer;background:#0a12119e;border:0;padding:0;position:absolute;inset:0}.viewer-panel{background:var(--surface);border-radius:16px;flex-direction:column;width:100%;max-width:960px;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 80px #0006}.viewer-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 18px;display:flex}.viewer-title{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.viewer-name{letter-spacing:-.014em;white-space:nowrap;text-overflow:ellipsis;font-size:15.5px;font-weight:600;overflow:hidden}.viewer-close{background:var(--segment);width:32px;height:32px;color:var(--text-body);cursor:pointer;border:0;border-radius:9px;flex:none;font-size:18px;line-height:1}.viewer-body{background:var(--bg);flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.viewer-image{object-fit:contain;max-width:100%;max-height:100%;display:block}.viewer-pdf{background:var(--surface);border:0;width:100%;height:100%}.viewer-message{color:var(--text-secondary);text-align:center;align-items:center;gap:10px;padding:24px;font-size:14px;display:flex}.viewer-pages{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:14px;padding:10px;display:flex}.message{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.message-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:14px;max-width:460px;padding:28px;display:flex}.message-card h1{letter-spacing:-.02em;font-size:22px}.message-card p{color:var(--text-body);line-height:1.55}.message-card .button{align-self:flex-start}.spinner{border:2px solid var(--border-stronger);border-top-color:var(--accent);border-radius:50%;flex:none;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=980px){.layout{grid-template-columns:minmax(0,1fr);padding-top:18px}.wide-only{display:none}.narrow-only{display:flex}}@media (width<=640px){.wrap{padding:0 16px}.banner-note{display:none}.topbar{position:static}.topbar-row{flex-wrap:wrap;gap:12px;height:auto;padding-top:10px;padding-bottom:10px}.topbar-sep,.topbar-title{display:none}.topbar-actions{margin-left:auto}.topbar-actions .button{padding:7px 10px;font-size:12.5px}.logo-name{font-size:14.5px}.case-head{padding:20px 18px}.case-head h1{font-size:28px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:last-child:nth-child(odd){grid-column:1/-1}.timeline-head,.timeline-body{padding-left:14px;padding-right:14px}.entry-row,.timeline-end{grid-template-columns:44px 22px minmax(0,1fr)}.entry-date{white-space:normal;padding-right:6px;font-size:11.5px}.entry{margin-left:8px;padding:14px}.timeline-end .muted{padding-left:8px}.viewer{padding:0}.viewer-panel{border-radius:0}.viewer-head{flex-wrap:wrap}}@media print{body{background:#fff}.banner,.topbar-actions,.chips,.viewer{display:none!important}.topbar{border:0;position:static}.layout{padding:0;display:block}.wide-only{display:none!important}.narrow-only{display:flex!important}.main,.stack{gap:14px}.card,.entry{break-inside:avoid}.timeline{overflow:visible}}
