:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:#eef1f3;--surface:#fff;--sunk:#e3e8ec;--ink:#14212b;--muted:#5b6b77;--line:#d3dbe1;--lamp:#a45f00;--lamp-ink:#fff;--sage:#3f7a64;--sage-soft:#dcebe4;--danger:#b3261e;--serif:"Newsreader", "Iowan Old Style", Georgia, serif;--sans:"Schibsted Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--tap:44px;--gutter:max(16px, env(safe-area-inset-left,0px))}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#14212b;--surface:#1c2c38;--sunk:#172630;--ink:#e8edf0;--muted:#97a8b4;--line:#2a3d4b;--lamp:#f2a93b;--lamp-ink:#1a1206;--sage:#8fb9a8;--sage-soft:#1f3833;--danger:#ff8a80}}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#root{height:100%}body{background:var(--paper);color:var(--ink);font:16px/1.5 var(--sans);-webkit-text-size-adjust:100%;margin:0}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}:focus-visible{outline:2px solid var(--lamp);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.shell{grid-template:"top""stage"1fr/1fr;height:100dvh;display:grid}.topbar{grid-area:top}.rail{display:none}.stage{grid-area:stage;min-height:0;display:flex}@media (width>=960px){.shell{grid-template-columns:264px 1fr;grid-template-areas:"top top""rail stage"}.rail{border-right:1px solid var(--line);flex-direction:column;grid-area:rail;gap:2px;padding:16px 12px;display:flex;overflow-y:auto}}.topbar{padding:calc(10px + env(safe-area-inset-top,0px)) var(--gutter) 10px;border-bottom:1px solid var(--line);background:var(--paper);z-index:10;align-items:center;gap:10px;display:flex;position:relative}.brand{font-family:var(--serif);letter-spacing:-.01em;min-height:var(--tap);flex:none;font-size:22px;font-weight:600}.search{flex:1;min-width:0}.search input{width:100%;min-height:var(--tap);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;border-radius:12px;padding:0 14px;font-size:16px}.search input::placeholder{color:var(--muted)}.search input:focus{outline:2px solid var(--lamp);outline-offset:-1px}.search-results{background:var(--surface);border-bottom:1px solid var(--line);max-height:min(70dvh,520px);padding:4px var(--gutter) 12px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 24px 48px -24px #08101873}@media (width>=960px){.search{max-width:560px;position:relative}.search-results{border:1px solid var(--line);border-radius:14px;margin-top:6px;padding:4px 6px 8px;left:0;right:0}}.search-count{color:var(--muted);margin:8px 8px 4px;font-size:13px}.search-item{text-align:left;border-radius:10px;align-items:center;gap:12px;width:100%;min-height:52px;padding:6px 8px;display:flex}.search-item.is-active,.search-item:hover{background:var(--sunk)}.model{flex:none;position:relative}.model-button{min-height:var(--tap);border:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;border-radius:12px;max-width:34vw;padding:0 12px;font-size:14px;overflow:hidden}.model-menu{background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:190px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 24px 48px -24px #08101873}.model-menu button{text-align:left;width:100%;min-height:var(--tap);border-radius:10px;padding:10px 12px;display:block}.model-menu button:hover{background:var(--sunk)}.model-menu button[aria-checked=true]{color:var(--lamp);font-weight:600}.monogram{background:oklch(.46 .07 var(--hue));color:oklch(.96 .02 var(--hue));font-family:var(--serif);letter-spacing:.02em;border-radius:30%;flex:none;place-items:center;font-weight:600;display:inline-grid}.rail-title{color:var(--muted);margin:18px 10px 6px;font-size:13px}.rail-item{min-height:var(--tap);text-align:left;border-radius:10px;align-items:center;gap:10px;padding:6px 10px;font-size:15px;display:flex}.rail-item span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rail-item:hover{background:var(--sunk)}.rail-item.is-active{background:var(--surface);box-shadow:inset 3px 0 0 var(--lamp)}.rail-all{border:1px solid var(--line);width:28px;height:28px;color:var(--muted);border-radius:30%;place-items:center;display:inline-grid}.view{flex-direction:column;flex:1;width:100%;min-width:0;max-width:820px;margin:0 auto;display:flex}.patient{padding:20px var(--gutter) 8px;align-items:center;gap:14px;display:flex}.patient-id{flex:1;min-width:0}.patient h1{font-family:var(--serif);letter-spacing:-.015em;overflow-wrap:anywhere;margin:0;font-size:clamp(26px,6.5vw,36px);font-weight:500;line-height:1.1}.patient p{color:var(--muted);margin:4px 0 0;font-size:14px}.ghost{min-height:var(--tap);border:1px solid var(--line);color:var(--sage);border-radius:12px;flex:none;padding:0 14px;font-size:14px}.timeline{padding:0 var(--gutter) 14px;scrollbar-width:none;border-bottom:1px solid var(--line);margin:6px 0 0;list-style:none;display:flex;overflow-x:auto}.timeline li{flex:none;display:flex}.timeline li+li:before{content:"";background:var(--line);align-self:center;width:22px;height:1px;margin-top:-18px}.timeline button{min-width:var(--tap);color:var(--muted);font-variant-numeric:tabular-nums;flex-direction:column;align-items:center;gap:6px;padding:4px 2px;font-size:12px;display:flex}.timeline .dot{border:2px solid var(--muted);background:var(--paper);border-radius:50%;width:12px;height:12px}.timeline li:last-child .dot{border-color:var(--lamp);background:var(--lamp)}.timeline button:hover .dot{border-color:var(--lamp)}.log{overscroll-behavior:contain;min-height:0;padding:18px var(--gutter) 24px;flex-direction:column;flex:1;gap:18px;display:flex;overflow-y:auto}.empty{color:var(--muted);max-width:46ch;margin:auto 0}.empty p{margin:0 0 8px}.empty p:first-child{font-family:var(--serif);color:var(--ink);font-size:20px;line-height:1.35}.msg-user{background:var(--surface);border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px 16px 4px;align-self:flex-end;max-width:86%;margin:0;padding:10px 14px}.msg-agent{flex-direction:column;gap:8px;max-width:68ch;display:flex}.prose{font-family:var(--serif);overflow-wrap:anywhere;font-size:18px;line-height:1.6}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose p{margin:0 0 .75em}.prose h1,.prose h2,.prose h3,.prose h4{margin:1.1em 0 .35em;font-size:1.05em;font-weight:600}.prose ul,.prose ol{margin:0 0 .75em;padding-left:1.3em}.prose li{margin:.2em 0}.prose code{font-family:var(--sans);background:var(--sunk);border-radius:6px;padding:1px 6px;font-size:.8em}.prose blockquote{border-left:2px solid var(--line);color:var(--muted);margin:0 0 .75em;padding-left:14px}.tool{color:var(--muted);overflow-wrap:anywhere;align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.tool:before{content:"";background:var(--muted);border-radius:50%;flex:none;width:6px;height:6px}.tool.is-running:before{animation:1s ease-in-out infinite pulse}.tool.is-memory{color:var(--sage);font-weight:500}.tool.is-memory:before{background:var(--sage)}.tool.is-error{color:var(--danger)}@keyframes pulse{50%{opacity:.25}}.reasoning,.sources{color:var(--muted);font-size:13px}.reasoning summary,.sources summary{cursor:pointer;align-items:center;min-height:32px;display:inline-flex}.reasoning p{white-space:pre-wrap;border-left:2px solid var(--line);max-height:40vh;margin:4px 0 0;padding-left:12px;overflow-y:auto}.sources code{overflow-wrap:anywhere;padding:2px 0;font-size:12px;display:block}.pending{color:var(--muted);margin:0;font-size:14px}.pending:after{content:"…"}.error{color:var(--danger);margin:0;font-size:14px}.composer{padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--paper);align-items:flex-end;gap:8px;display:flex;position:relative}.composer textarea{resize:none;min-height:var(--tap);border:1px solid var(--line);background:var(--surface);max-height:40dvh;color:var(--ink);font:inherit;border-radius:14px;flex:1;padding:10px 14px;font-size:16px;line-height:1.4}.composer textarea::placeholder{color:var(--muted)}.composer textarea:focus{outline:2px solid var(--lamp);outline-offset:-1px}.send{width:var(--tap);height:var(--tap);background:var(--lamp);color:var(--lamp-ink);border-radius:14px;flex:none;font-size:20px;font-weight:700}.send:disabled{opacity:.35;cursor:default}.send.is-stop{background:var(--ink);color:var(--paper);font-size:14px}.slash{left:var(--gutter);right:var(--gutter);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:6px;position:absolute;bottom:calc(100% + 6px);box-shadow:0 24px 48px -24px #08101873}.slash button{text-align:left;width:100%;min-height:var(--tap);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:2px 10px;padding:9px 10px;display:flex}.slash button.is-active,.slash button:hover{background:var(--sunk)}.slash strong{font-weight:600}.slash em{color:var(--muted);font-style:normal;font-weight:400}.slash span{color:var(--muted);font-size:14px}.drawer-scrim{z-index:30;background:#08101880;justify-content:flex-end;align-items:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--paper);width:100%;max-height:88dvh;padding:18px var(--gutter) calc(24px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;animation:.2s ease-out rise;overflow-y:auto}@media (width>=960px){.drawer-scrim{align-items:stretch}.drawer{border-left:1px solid var(--line);border-radius:0;width:440px;max-height:none;animation-name:slide}}@keyframes rise{0%{opacity:.6;transform:translateY(24px)}}@keyframes slide{0%{opacity:.6;transform:translate(24px)}}.drawer header{justify-content:space-between;align-items:center;gap:12px;display:flex}.drawer h2{font-family:var(--serif);margin:0;font-size:28px;font-weight:500}.drawer h3{color:var(--sage);margin:24px 0 8px;font-size:14px;font-weight:600}.drawer .prose{font-size:16px}.toast{left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:40;background:var(--ink);width:min(92vw,520px);color:var(--paper);white-space:pre-line;border-radius:14px;padding:12px 16px;font-size:14px;position:fixed;transform:translate(-50%);box-shadow:0 24px 48px -24px #08101899}
