:root{--bg: #0a0b0d;--surface: #111215;--raise: #17181c;--raise-2: #1e2025;--line: rgba(255, 255, 255, .06);--line-2: rgba(255, 255, 255, .11);--line-3: rgba(255, 255, 255, .2);--text: #eceef1;--text-2: #a4a9b1;--text-3: #6d727b;--accent: #8fb8ff;--accent-ink: #0b1630;--accent-soft: rgba(143, 184, 255, .14);--g-caries: #ff7b6e;--g-apical: #ffab5e;--g-endo: #b8a2ff;--g-restoration: #e3c27f;--g-implant: #74d5c7;--g-other: #a3aab4;--g-mih: #f29ac3;--ok: #7fd3a1;--warn: #f0c36d;--r: 7px;--side: 340px;--bar: 40px;--ease: cubic-bezier(.2, .8, .2, 1);--sans: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--serif: "Instrument Serif", Georgia, serif;--mono: "JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:400 12px/1.5 var(--sans);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;letter-spacing:-.003em;overflow:hidden}button{font:inherit;color:inherit}button:focus-visible,input:focus-visible,.slot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}kbd{font:500 10px/1 var(--mono);color:var(--text-3);border:1px solid var(--line-2);border-radius:4px;padding:2px 4px 1px;margin-left:7px;background:#ffffff05}.fine{font-size:10.5px;line-height:1.45;color:var(--text-3);margin:10px 0 0}.link{border:0;background:none;padding:0;color:var(--text-2);cursor:pointer;font-size:12px}.link:hover{color:var(--text)}.g-caries{--g: var(--g-caries)}.g-apical{--g: var(--g-apical)}.g-endo{--g: var(--g-endo)}.g-restoration{--g: var(--g-restoration)}.g-implant{--g: var(--g-implant)}.g-other{--g: var(--g-other)}.g-mih{--g: var(--g-mih)}.app{height:100%;display:flex;flex-direction:column}.bar{height:var(--bar);flex:none;display:flex;align-items:center;gap:14px;padding:0 10px 0 16px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:8px;color:var(--text)}.brand svg{animation:markin .9s var(--ease) both}@keyframes markin{0%{opacity:0;transform:rotate(-12deg) scale(.7)}}.brand-sub{font-size:12px;color:var(--text-3);padding-left:8px;border-left:1px solid var(--line-2);line-height:14px}.kinds{display:flex;gap:1px;padding:2px;border-radius:7px;background:var(--surface);border:1px solid var(--line)}.kinds button{border:0;background:none;height:22px;padding:0 10px;border-radius:5px;color:var(--text-3);cursor:pointer;font-size:12px;transition:color .2s,background .2s}.kinds button:hover{color:var(--text)}.kinds button.on{background:var(--raise-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--line-2)}.bar-sp{flex:1}.took{font-size:11px;color:var(--text-3);white-space:nowrap}.bar>*{flex:none}.bar .bar-sp{flex:1}.ghost{display:inline-flex;align-items:center;height:26px;min-width:26px;justify-content:center;padding:0 9px;border-radius:6px;border:1px solid var(--line-2);background:transparent;color:var(--text-2);cursor:pointer;font-size:12px;transition:.2s}.ghost:hover{color:var(--text);border-color:var(--line-3);background:#ffffff08}.work{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) var(--side)}.view{position:relative;min-width:0;overflow:hidden;background:radial-gradient(120% 90% at 50% 45%,#121318 0%,var(--bg) 70%)}.side{border-left:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;min-height:0}.side-body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.stage{position:absolute;top:0;right:0;bottom:0;left:0;cursor:default;touch-action:none;-webkit-user-select:none;user-select:none}.stage.pointing{cursor:pointer}.stage.dragging{cursor:grabbing}.stage canvas,.stage .overlay{position:absolute;left:0;top:0}.stage canvas{opacity:0;transform:scale(.985);transition:opacity .7s var(--ease),transform .9s var(--ease)}.stage.loaded canvas{opacity:1;transform:none}.overlay{overflow:visible;pointer-events:none}.tooth{opacity:0;animation:lock .5s var(--ease) forwards}.tooth-area{fill:transparent;transition:fill .2s}.tooth-corners{fill:none;stroke:#8fb8ff9e;stroke-linecap:round;transition:stroke .2s;stroke-dasharray:1;stroke-dashoffset:1;animation:draw .7s var(--ease) forwards;animation-delay:inherit}.tooth.cand .tooth-corners{stroke:#ffffff47}.tooth.hov .tooth-corners{stroke:#c9dcff}.tooth.hov .tooth-area{fill:#8fb8ff12}.tooth.sel .tooth-corners{stroke:var(--accent)}.tooth.fixed .tooth-corners{stroke:#eceef1d9}.tooth.scan .tooth-area{fill:#8fb8ff29}.tooth.scan .tooth-corners{stroke:#dfe9ff}@keyframes lock{0%{opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(1.12)}to{opacity:1;transform:none}}.finding{fill:var(--g);fill-opacity:.2;stroke:var(--g);stroke-opacity:.95;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw .9s var(--ease) forwards,fillin .9s var(--ease) both;transition:fill-opacity .25s,stroke-opacity .25s}.finding.quiet{fill-opacity:.05;stroke-opacity:.25}.finding.on{fill-opacity:.42;stroke-opacity:1}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fillin{0%{fill-opacity:0}}.spot{fill:#0607099e;animation:fade .5s var(--ease) both}@keyframes fade{0%{opacity:0}}.tags{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.tag{position:absolute;transform:translate(-50%,calc(-100% - 5px));display:inline-flex;align-items:center;gap:3px;height:16px;padding:0 4px;border-radius:4px;background:#0a0b0dc7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.1);font:500 10px/1 var(--mono);color:var(--text);white-space:nowrap;opacity:0;animation:tagin .45s var(--ease) forwards;transition:background .2s,color .2s,opacity .3s}.tag.unsure{color:var(--warn)}.tag.hov{background:#1e222ceb;border-color:#8fb8ff80}.tag.sel{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.tag.quiet{opacity:.28!important;animation:none}.tag-check{width:6px;height:6px;border-radius:50%;background:var(--ok)}.tag-dot{width:5px;height:5px;border-radius:50%;background:var(--g)}.tag.sel .tag-dot{box-shadow:none}@keyframes tagin{0%{opacity:0;transform:translate(-50%,calc(-100% - 1px))}to{opacity:1}}.sweep{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.sweep:after{content:"";position:absolute;top:0;bottom:0;width:28%;background:linear-gradient(90deg,transparent,rgba(143,184,255,.12),transparent);animation:sweep 1.6s var(--ease) infinite}@keyframes sweep{0%{left:-30%}to{left:102%}}.mini{position:absolute;right:16px;top:16px;width:168px;max-height:128px;border-radius:8px;overflow:hidden;border:1px solid var(--line-2);background:#000;cursor:pointer;animation:fade .3s both;box-shadow:0 10px 30px #0006}.mini img{width:100%;height:100%;display:block;object-fit:fill;opacity:.7}.mini span{position:absolute;border:1.5px solid var(--accent);border-radius:3px;background:var(--accent-soft)}.readout{position:absolute;right:18px;bottom:82px;font:500 11px var(--mono);color:var(--text-2);opacity:0;transition:opacity .4s}.readout.on{opacity:1}.wl-reset{position:absolute;left:68px;top:16px;border:1px solid var(--line-2);background:#0a0b0dcc;color:var(--text-2);border-radius:8px;height:28px;padding:0 10px;cursor:pointer;font-size:12px;display:flex;gap:8px;align-items:center}.step{position:absolute;left:50%;top:12px;transform:translate(-50%);display:flex;align-items:center;gap:8px;height:26px;padding:0 11px;border-radius:6px;background:#111215d1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line-2);font-size:11.5px;color:var(--text-2);animation:drop .4s var(--ease) both}.step i{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:breathe 1.1s ease-in-out infinite}@keyframes breathe{50%{opacity:.25;transform:scale(.7)}}@keyframes drop{0%{opacity:0;transform:translate(-50%,-6px)}}.toast{position:absolute;left:50%;top:60px;transform:translate(-50%);padding:8px 14px;border-radius:10px;background:var(--raise-2);border:1px solid var(--line-2);font:500 13px var(--mono);animation:drop .3s var(--ease) both}.toast.err{font-family:var(--sans);color:var(--g-caries);top:auto;bottom:90px}.tools{position:absolute;left:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:1px;padding:3px;border-radius:8px;background:#111215b8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);opacity:.55;transition:opacity .3s}.tools:hover,.tools:focus-within{opacity:1}.tools-sep{height:1px;margin:4px 6px;background:var(--line-2)}.tool{position:relative;width:28px;height:28px;border:0;border-radius:8px;background:none;color:var(--text-2);cursor:pointer;display:grid;place-items:center;transition:background .15s,color .15s}.tool svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.tool:hover{background:#ffffff0f;color:var(--text)}.tool.on{color:var(--accent)}.tip{position:absolute;left:calc(100% + 12px);top:50%;transform:translate(-4px,-50%);white-space:nowrap;pointer-events:none;padding:6px 8px 6px 10px;border-radius:7px;background:var(--raise-2);border:1px solid var(--line-2);font-size:12px;color:var(--text);opacity:0;transition:opacity .15s,transform .15s}.tool:hover .tip,.tool:focus-visible .tip{opacity:1;transform:translateY(-50%)}.cmd{position:absolute;left:50%;bottom:14px;transform:translate(-50%);width:min(440px,calc(100% - 120px));height:36px;display:flex;align-items:center;gap:4px;padding:0 6px 0 4px;border-radius:10px;background:#141519d6;-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2);border:1px solid var(--line-2);box-shadow:0 18px 50px #00000073,inset 0 1px #ffffff0a;transition:border-color .3s,box-shadow .3s,width .4s var(--ease)}.cmd:focus-within{border-color:#8fb8ff80}.cmd.listening{border-color:#8fb8ffb3;box-shadow:0 0 0 6px #8fb8ff14,0 18px 50px #00000073}.mic{flex:none;width:28px;height:28px;border-radius:7px;border:0;background:#ffffff0d;cursor:pointer;display:grid;place-items:center;color:var(--text-2);transition:.2s}.mic svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.mic:hover{color:var(--text);background:#ffffff17}.cmd.listening .mic{background:var(--accent);color:var(--accent-ink)}.cmd form{flex:1;min-width:0}.cmd input{width:100%;height:28px;border:0;background:none;color:var(--text);font:400 12px var(--sans);padding:0 6px}.cmd input:focus-visible{outline:none}.cmd input::placeholder{color:var(--text-3)}.cmd-keys{flex:none;display:flex}.cmd-keys kbd{margin-left:4px}.cmd-live,.cmd-said{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:0 8px;font-size:13.5px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.5px}.cmd-live.thinking{background:linear-gradient(90deg,var(--text-3) 0%,var(--text) 50%,var(--text-3) 100%) 0 0 / 200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 1.4s linear infinite}@keyframes shine{to{background-position:-200% 0}}.wave{display:inline-flex;align-items:center;gap:2.5px;height:22px}.wave i{width:2.5px;height:22px;border-radius:2px;background:var(--accent);transform:scaleY(.12);transition:transform .06s linear}.cmd-said q{color:var(--text);quotes:"„" "“";overflow:hidden;text-overflow:ellipsis}.cmd-reply{color:var(--text-3);overflow:hidden;text-overflow:ellipsis}.cmd.said,.cmd.error{animation:settle .4s var(--ease)}.cmd.error .cmd-reply{color:var(--g-caries)}@keyframes settle{0%{transform:translate(-50%,2px)}}.arch{display:block;width:100%;height:auto;padding:6px 16px 0;flex:none;border-bottom:1px solid var(--line)}.arch-side{font:400 10px var(--sans);fill:var(--text-3);letter-spacing:.04em}.arch-mid{stroke:var(--line-2);stroke-width:.75}.slot{cursor:default}.slot .glyph{fill:transparent;stroke:#ffffff12;stroke-width:.9;transition:fill .2s,stroke .2s}.slot .slot-n{font:500 7.4px var(--mono);fill:#ffffff24;transition:fill .2s}.slot.on,.slot.hov,.slot.sel{cursor:pointer}.slot.on .glyph{fill:#262931;stroke:#ffffff29}.slot.on .slot-n{fill:var(--text-2)}.slot.milk .glyph{fill:#2a2733}.glyph-milk{fill:var(--text-2)}.slot.hov .glyph{fill:#313643;stroke:#8fb8ff99}.slot.hov .slot-n{fill:var(--text)}.slot.sel .glyph{fill:var(--accent);stroke:var(--accent);filter:drop-shadow(0 0 6px rgba(143,184,255,.55))}.slot.sel .slot-n{fill:var(--accent);font-weight:600}.slot.fixed .slot-n{fill:var(--text)}.slot.gap .glyph{stroke:#ffffff47;stroke-dasharray:2 1.6}.slot.gap .slot-n{fill:var(--text-3)}.slot.target{cursor:copy}.slot.target:hover .glyph{stroke:var(--accent);stroke-dasharray:2 1.6;fill:var(--accent-soft)}.slot.target:hover .slot-n{fill:var(--accent)}.slot .dot{fill:var(--g)}.pane{padding:12px 14px 20px}.enter{animation:enter .45s var(--ease) both}@keyframes enter{0%{opacity:0;transform:translateY(6px)}}.pane-head{display:flex;align-items:center;justify-content:space-between;min-height:24px;margin-bottom:10px}.pane-head h2{margin:0;font-size:13px;font-weight:600;letter-spacing:-.01em}.pane-kind{font-size:11.5px;color:var(--text-3)}h3{margin:0;font-size:10.5px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3)}.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.stat{padding:7px 10px 6px;display:flex;align-items:baseline;gap:6px}.stat+.stat{border-left:1px solid var(--line)}.stat-n{font:500 15px/1.2 var(--sans);font-variant-numeric:tabular-nums;animation:enter .5s var(--ease) both}.stat-n.wait{color:var(--text-3)}.stat-l{font-size:11px;color:var(--text-3)}.filters{display:flex;flex-wrap:wrap;gap:4px;margin-top:10px}.filter{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:5px;border:1px solid var(--line-2);background:transparent;color:var(--text-3);cursor:pointer;font-size:11.5px;transition:.2s}.filter .mono{font-size:10.5px;color:var(--text-3)}.filter.on{color:var(--text);background:#ffffff08}.filter:not(.on) .sw{background:transparent;box-shadow:inset 0 0 0 1.5px var(--g)}.sw{width:7px;height:7px;border-radius:2px;background:var(--g);flex:none}.report{margin-top:16px}.report-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.report-body{font-size:13.5px;line-height:1.6;color:var(--text)}.report-body p{margin:0 0 10px;color:var(--text)}.report-body p:first-child{font-weight:500}.report-body h4{margin:18px 0 6px;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.report-body ul{list-style:none;margin:0;padding:0}.report-body li{position:relative;padding:3px 0 3px 12px;color:var(--text-2);border-bottom:1px solid var(--line)}.report-body li:before{content:"";position:absolute;left:0;top:11px;width:5px;height:1px;background:var(--text-3)}.report-body b{color:var(--text);font-weight:500}.report-body.writing>:last-child:after{content:"";display:inline-block;width:7px;height:14px;margin-left:3px;vertical-align:-2px;background:var(--accent);border-radius:1px;animation:breathe .9s ease-in-out infinite}.ref{border:0;padding:0 4px;margin:0 1px;border-radius:4px;background:var(--accent-soft);color:var(--accent);cursor:pointer;font:500 .92em var(--mono);transition:background .15s}.ref:hover{background:#8fb8ff47}.report-note{margin:0;color:var(--text-2);font-size:13px}.report-note .link{margin-left:6px;color:var(--accent)}.shimmer{display:flex;flex-direction:column;gap:9px}.shimmer-l{font-size:12px;color:var(--text-3);margin-bottom:4px}.shimmer i{height:9px;border-radius:5px;background:linear-gradient(90deg,var(--raise) 0%,var(--raise-2) 50%,var(--raise) 100%) 0 0 / 200% 100%;animation:shine 1.6s linear infinite}.tour-cta{margin-top:12px;width:100%;height:32px;display:flex;align-items:center;gap:9px;padding:0 10px;border-radius:var(--r);border:1px solid var(--line-2);background:var(--raise);cursor:pointer;font-size:12px;transition:.2s}.tour-cta:hover:not(:disabled){border-color:var(--line-3);background:var(--raise-2)}.tour-cta:disabled{opacity:.4;cursor:default}.tour-cta kbd{margin-left:auto}.tour-play{width:16px;height:16px;border-radius:4px;background:var(--accent);position:relative}.tour-play:after{content:"";position:absolute;left:6px;top:4.5px;border-left:5.5px solid var(--accent-ink);border-top:3.5px solid transparent;border-bottom:3.5px solid transparent}.quad{margin-top:14px;display:flex;align-items:center;gap:14px}.quad-pad{display:grid;grid-template-columns:26px 26px;gap:2px}.quad-pad button{height:22px;border:1px solid var(--line-2);background:none;border-radius:4px;font:500 11px var(--mono);color:var(--text-3);cursor:pointer}.quad-pad button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.quad .fine{margin:0}.back{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:var(--text-2);cursor:pointer;padding:0;font-size:12.5px}.back span{font-size:18px;line-height:1;margin-top:-2px}.back:hover{color:var(--text)}.walk{display:flex;gap:4px}.walk button{width:28px;height:28px;border-radius:8px;border:1px solid var(--line-2);background:none;color:var(--text-2);cursor:pointer}.walk button:hover{color:var(--text);border-color:var(--line-3)}.hero{display:flex;align-items:center;gap:14px;margin:2px 0 12px;animation:enter .45s var(--ease) both}.hero-n{font:500 28px/1 var(--sans);letter-spacing:-.03em;font-variant-numeric:tabular-nums;min-width:1.3em}.typing{color:var(--accent)}.typing i{display:inline-block;width:.42em;height:3px;background:var(--accent);margin-left:4px;animation:breathe .8s infinite}.hero-t{display:flex;flex-direction:column;gap:3px;min-width:0}.hero-name{font-size:12.5px;font-weight:500;color:var(--text)}.state{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-2)}.state.unsure{color:var(--warn)}.state.fixed{color:var(--ok)}.check{width:14px;height:14px;border-radius:7px;background:var(--ok);position:relative}.check:after{content:"";position:absolute;left:4.5px;top:2.5px;width:3.5px;height:6.5px;border:solid #0a2215;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}.meter{width:54px;height:3px;border-radius:2px;background:var(--line-2);overflow:hidden}.meter i{display:block;height:100%;background:currentColor}.acts{display:flex;gap:6px}.btn{flex:1;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--line-2);background:var(--raise);cursor:pointer;font-size:12px;font-weight:500;transition:.2s}.btn:hover{background:var(--raise-2);border-color:var(--line-3)}.btn.primary{background:var(--text);color:#0a0b0d;border-color:var(--text)}.btn.primary:hover{background:#fff}.btn.primary kbd{color:#5a5f68;border-color:#00000026}.btn.on{border-color:var(--accent);color:var(--accent)}.numbers{margin-top:14px;padding:12px;border-radius:var(--r);background:var(--raise);border:1px solid var(--line)}.numbers .fine{margin:0 0 8px}.numbers .fine+.grid{margin-top:0}.grid{display:grid;grid-template-columns:repeat(16,1fr);gap:2px;margin-bottom:2px}.grid.milk{grid-template-columns:repeat(10,1fr);padding:0 18.75%}.grid+.fine{margin-top:10px}.grid button{position:relative;height:22px;border:0;border-radius:4px;background:#ffffff08;color:var(--text-2);cursor:pointer;font:500 10px var(--mono);padding:0;transition:background .12s,color .12s}.grid button.mid{margin-left:4px}.grid button:hover{background:#ffffff1a;color:var(--text)}.grid button.sug:after{content:"";position:absolute;left:3px;right:3px;bottom:2px;height:2px;border-radius:1px;background:var(--accent);opacity:calc(.25 + var(--p) * .75)}.grid button.cur{background:var(--accent);color:var(--accent-ink)}.tfind{margin-top:18px}.tfind h3{margin-bottom:6px}.flist{list-style:none;margin:0;padding:0}.flist li{display:flex;gap:10px;align-items:flex-start;padding:7px 4px 7px 0;border-top:1px solid var(--line);animation:enter .4s var(--ease) both;cursor:default;border-radius:6px;transition:background .15s}.flist li:hover{background:#ffffff06}.fbar{width:3px;align-self:stretch;border-radius:2px;background:var(--g);flex:none;margin-left:2px}.f-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.f-name{font-size:12px;font-weight:500}.f-plain{font-size:11px;color:var(--text-3)}.f-p{font-size:11px;color:var(--text-2);padding-top:2px}.f-p.unsure{color:var(--warn)}.tour .pane-head{margin-bottom:8px}.tour-step{font-size:11.5px;color:var(--text-3)}.tour-n{display:block;font:400 72px/.95 var(--serif);letter-spacing:-.04em;color:var(--accent);animation:enter .6s var(--ease) both}.tour-name{margin:4px 0 14px;font:italic 400 19px/1.2 var(--serif);animation:enter .6s .08s var(--ease) both}.tour-list{list-style:none;margin:0;padding:0}.tour-list li{display:flex;gap:10px;align-items:baseline;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px;line-height:1.45;animation:enter .5s var(--ease) both}.tour-list .sw{transform:translateY(-1px)}.tour-ctl{display:flex;gap:6px;margin-top:18px}.tour-ctl button{width:32px;height:32px;border-radius:16px;border:1px solid var(--line-2);background:none;cursor:pointer;color:var(--text-2)}.tour-ctl button:hover{color:var(--text);border-color:var(--line-3)}.tour-ctl .play{background:var(--text);color:#0a0b0d;border-color:var(--text);font-size:11px}.tour-track{margin-top:18px;height:2px;border-radius:1px;background:var(--line-2);overflow:hidden}.tour-track i{display:block;height:100%;width:0;background:var(--accent)}.tour-track i.run{animation:track 5.2s linear forwards}@keyframes track{to{width:100%}}.hero-screen{flex:1;display:grid;grid-template-columns:minmax(0,420px) minmax(0,440px);align-content:center;justify-content:center;gap:24px 64px;padding:32px;background:radial-gradient(70% 60% at 60% 45%,#13151b 0%,var(--bg) 70%)}.hero-copy{align-self:center}.hero-screen h1{margin:0;font:400 40px/1.05 var(--serif);letter-spacing:-.02em}.hero-screen h1 span{display:block;animation:enter .8s var(--ease) both}.hero-screen h1 span+span{color:var(--text-2);font-style:italic;animation-delay:.1s}.hero-copy>p{margin:14px 0 20px;font-size:13.5px;line-height:1.55;color:var(--text-2);max-width:400px;animation:enter .8s .18s var(--ease) both}.hero-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.hero-steps li{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--text);animation:enter .6s var(--ease) both}.hero-steps i{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;font:500 10px var(--mono);font-style:normal;color:var(--accent);background:var(--accent-soft)}.drop{position:relative;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:14px;border:1.5px dashed rgba(255,255,255,.18);background:#ffffff04;color:var(--text);cursor:pointer;overflow:hidden;transition:border-color .25s,background .25s,transform .3s var(--ease);animation:enter .8s .2s var(--ease) both}.drop:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:14px;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(60% 60% at 50% 40%,rgba(143,184,255,.14),transparent 70%)}.drop:hover,.drop.over{border-color:#8fb8ffb3;background:#8fb8ff0a}.drop:hover:before,.drop.over:before{opacity:1}.drop.over{transform:scale(1.015);border-style:solid}.drop-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--raise-2);border:1px solid var(--line-2);margin-bottom:6px;transition:transform .3s var(--ease)}.drop-icon svg{width:20px;height:20px;fill:none;stroke:var(--text);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.drop:hover .drop-icon,.drop.over .drop-icon{transform:translateY(-3px)}.drop.over .drop-icon svg{animation:bob .9s ease-in-out infinite}@keyframes bob{50%{transform:translateY(-3px)}}.drop-title{font-size:15px;font-weight:500}.drop-sub{font-size:11.5px;color:var(--text-3)}.drop-btn{margin-top:12px;display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:7px;background:var(--text);color:#0a0b0d;font-size:12px;font-weight:500}.drop-btn kbd{color:#5a5f68;border-color:#00000026}.drop-mark{position:absolute;width:96px;height:96px;display:grid;place-items:center;color:var(--text);opacity:0;pointer-events:none}.drop.busy .drop-mark{position:relative;opacity:1;margin-bottom:10px}.drop.busy .drop-mark i{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid transparent;border-top-color:var(--accent);animation:spin 1.4s linear infinite}.drop.busy .drop-mark i+i{top:12px;right:12px;bottom:12px;left:12px;border-top-color:#ffffff59;animation-duration:2.2s;animation-direction:reverse}.drop.busy{cursor:progress;border-style:solid;border-color:#8fb8ff59}.dots:after{content:"";animation:dots 1.2s steps(4) infinite}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.hero-screen>.fine{grid-column:1 / -1;text-align:center;margin:4px 0 0;animation:enter .8s .4s var(--ease) both}@keyframes spin{to{transform:rotate(360deg)}}.spin{width:16px;height:16px;border-radius:50%;border:2px solid rgba(0,0,0,.2);border-top-color:#0a0b0d;animation:spin .8s linear infinite}.gate-wait{height:100%;display:grid;place-items:center;color:var(--text-3);animation:fade .4s both}.gate-wait svg{animation:markin .9s var(--ease) both}.signin{position:relative;display:flex;flex-direction:column;gap:14px;padding:30px 28px 26px;border-radius:14px;background:linear-gradient(180deg,#ffffff06,#ffffff02);border:1px solid var(--line-2);box-shadow:0 30px 80px #00000059;animation:enter .8s .2s var(--ease) both}.signin:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:14px;pointer-events:none;background:radial-gradient(60% 50% at 50% 0%,rgba(143,184,255,.1),transparent 70%)}.signin-mark{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--raise-2);border:1px solid var(--line-2);color:var(--text);margin-bottom:4px}.signin-field{display:flex;flex-direction:column;gap:6px}.signin-field span{font-size:11px;font-weight:500;color:var(--text-2);letter-spacing:.01em}.signin-field input{height:38px;padding:0 12px;border-radius:8px;border:1px solid var(--line-2);background:#0a0b0d99;color:var(--text);font:400 13px var(--sans);transition:border-color .2s,background .2s,box-shadow .2s}.signin-field input:hover{border-color:var(--line-3)}.signin-field input:focus{outline:none;border-color:#8fb8ffb3;background:#0a0b0dd9;box-shadow:0 0 0 3px var(--accent-soft)}.signin-field input:disabled{opacity:.6}.signin-msg{margin:0;font-size:11.5px;line-height:1.45;color:var(--text-2);padding:9px 11px;border-radius:8px;background:#ffffff08;border:1px solid var(--line);animation:enter .3s var(--ease) both}.signin-msg.err{color:#ffc2bb;background:#ff7b6e14;border-color:#ff7b6e40}.signin-go{margin-top:6px;height:38px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:8px;background:var(--text);color:#0a0b0d;font:500 13px var(--sans);cursor:pointer;transition:transform .2s var(--ease),opacity .2s,background .2s}.signin-go:hover:not(:disabled){background:#fff;transform:translateY(-1px)}.signin-go:active:not(:disabled){transform:translateY(0)}.signin-go:disabled{opacity:.45;cursor:default}.signin-go:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.account{gap:7px;padding-left:4px}.account-dot{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font:600 10px var(--sans);color:var(--accent-ink);background:var(--accent)}.dropzone{position:fixed;top:10px;right:10px;bottom:10px;left:10px;z-index:30;border-radius:18px;border:1.5px dashed rgba(143,184,255,.6);background:#0a0e18c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;font:400 30px var(--serif);animation:fade .2s both;pointer-events:none}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#04050799;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;animation:fade .2s both}.sheet{width:min(560px,calc(100% - 32px));max-height:calc(100% - 64px);overflow:auto;padding:24px 26px;border-radius:16px;background:var(--raise);border:1px solid var(--line-2);box-shadow:0 30px 80px #00000080;animation:enter .3s var(--ease) both}.sheet header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.sheet h2{margin:0;font:400 28px/1 var(--serif)}.sheet dl{margin:0}.sheet dl div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:8px 0;border-top:1px solid var(--line);align-items:baseline}.sheet dt kbd{margin:0;color:var(--text)}.sheet dd{margin:0;color:var(--text-2)}@media (max-width: 960px){:root{--side: 340px}.took{display:none}}@media (max-width: 860px){.hero-screen{grid-template-columns:minmax(0,440px)}}@media (max-width: 760px){body{overflow:auto}.work{grid-template-columns:1fr;grid-template-rows:62vh auto}.side{border-left:0;border-top:1px solid var(--line)}.kinds{display:none}.cmd{width:calc(100% - 32px)}.cmd-keys{display:none}.hero-screen h1{font-size:40px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}}.letter{margin-top:2px;padding:14px 15px 12px;border-radius:6px;background:#f3f2ee;color:#1b1c1f;box-shadow:0 10px 24px #0000004d;animation:enter .5s var(--ease) both}.letter-head{display:flex;flex-direction:column;gap:1px;padding-bottom:8px;margin-bottom:10px;border-bottom:1px solid rgba(0,0,0,.12)}.letter-title{font-size:12.5px;font-weight:600;letter-spacing:-.005em}.letter-meta{font-size:10.5px;color:#6b6a65}.letter .report-body{color:#24252a;font-size:11.5px;line-height:1.55}.letter .report-body p{color:#24252a;margin:0 0 7px}.letter .report-body p:first-child{font:inherit}.letter .report-body h4{color:#8a877f;margin:12px 0 4px;font-size:10px}.letter .report-body h4:first-child{margin-top:0}.letter .report-body b{color:#111;font-weight:600}.letter .report-body li{color:#33343a;border-bottom-color:#00000014}.letter .report-body li:before{background:#8a877f}.letter .ref{background:#2850aa1a;color:#24489c}.letter .ref:hover{background:#2850aa33}.letter .report-body.writing>:last-child:after{background:#24489c}.letter-foot{margin-top:10px;padding-top:8px;border-top:1px solid rgba(0,0,0,.12);font-size:10.5px;line-height:1.4;color:#6b6a65}.patient{display:flex;align-items:center;gap:8px;height:30px;padding:0 10px 0 4px;border-radius:7px;border:1px solid transparent;background:none;cursor:pointer;text-align:left;transition:.2s}.patient:hover{border-color:var(--line-2);background:#ffffff08}.patient-avatar{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;background:var(--raise-2);border:1px solid var(--line-2);font-size:9.5px;font-weight:600;letter-spacing:.02em;color:var(--text-2)}.patient-t{display:flex;flex-direction:column;line-height:1.15}.patient-name{font-size:12px;font-weight:500}.patient-no{font-size:10px;color:var(--text-3)}.patient.editing{display:flex;gap:4px;padding:0;cursor:default}.patient input{height:26px;border-radius:6px;border:1px solid var(--line-2);background:var(--raise);color:var(--text);padding:0 8px;font-size:12px;width:160px}.patient input.mono{width:110px;font-size:11.5px}.patient input:focus-visible{outline:none;border-color:var(--accent)}.letter-patient{font-size:11px;color:#3a3b40;margin-top:2px}.side{position:relative}.splitter{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:col-resize;z-index:5}.splitter:after{content:"";position:absolute;left:3.5px;top:0;bottom:0;width:1px;background:transparent;transition:background .2s}.splitter:hover:after,.splitter:focus-visible:after,body.resizing .splitter:after{background:var(--accent);width:2px;left:3px}.splitter:focus-visible{outline:none}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.resizing .stage{pointer-events:none}.tfind-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.tfind-head h3{margin:0}.tfind-head .link kbd{margin-left:5px}.add{margin:2px 0 6px}.add input{width:100%;height:28px;border-radius:6px;border:1px solid var(--accent);background:var(--raise);color:var(--text);padding:0 9px;font-size:12px;box-shadow:0 0 0 3px var(--accent-soft);animation:enter .25s var(--ease) both}.add input:focus-visible{outline:none}.f-x{flex:none;width:18px;height:18px;margin-top:1px;border:0;border-radius:4px;background:none;color:var(--text-3);cursor:pointer;font-size:14px;line-height:1;opacity:0;transition:opacity .15s,background .15s,color .15s}.flist li:hover .f-x,.f-x:focus-visible{opacity:1}.f-x:hover{background:#ff7b6e24;color:var(--g-caries)}.f-tag{flex:none;font-size:10px;color:var(--accent);border:1px solid rgba(143,184,255,.35);border-radius:4px;padding:0 5px;line-height:16px}.flist li.added{animation:added .5s var(--ease) both}.flist li.out{opacity:.5}.flist li.out .f-name{text-decoration:line-through;text-decoration-color:var(--text-3)}.flist+.flist li:first-child{border-top:1px solid var(--line)}@keyframes added{0%{opacity:0;transform:translate(-8px);background:var(--accent-soft)}60%{background:var(--accent-soft)}}.tag.sel:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:5px;border:1px solid var(--accent);animation:ripple 1.1s var(--ease) both}@keyframes ripple{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.9,2.3)}}.tag.chg{animation:tagin .45s var(--ease) forwards,renum 1.4s var(--ease)}@keyframes renum{0%,30%{background:var(--warn);color:#1a1406;border-color:var(--warn)}}.slot.on .glyph,.slot.sel .glyph,.slot.hov .glyph{animation:pop .5s var(--ease) both;animation-delay:var(--d, 0ms)}@keyframes pop{0%{transform-box:fill-box;transform-origin:center;opacity:0}}.report-body>*{animation:enter .45s var(--ease) both}.stats .stat-n{display:inline-block}.aura{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;transition:opacity .5s var(--ease)}.aura i{position:absolute;bottom:-38%;width:60%;height:70%;border-radius:50%;filter:blur(60px);mix-blend-mode:screen;transform:scale(calc(.65 + var(--lvl, 0) * .7));transition:transform .12s linear}.aura i:nth-child(1){left:2%;background:#6e96ff8c;animation:drift 6s ease-in-out infinite}.aura i:nth-child(2){left:22%;background:#a078ff73;animation:drift 7.5s ease-in-out infinite reverse}.aura i:nth-child(3){left:42%;background:#5ad2e666;animation:drift 5.2s ease-in-out infinite}@keyframes drift{50%{translate:8% -6%}}.view.listening .aura{opacity:1}.view.thinking .aura{opacity:.45}.view.thinking .aura i{transform:scale(.8);animation-duration:2.2s}.view.listening:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:0;box-shadow:inset 0 0 0 1px #8fb8ff59,inset 0 -60px 120px -60px #8fb8ff59;animation:fade .4s both}.view.listening .cmd{width:min(520px,calc(100% - 120px))}.stage.loaded canvas{animation:reveal 1.3s var(--ease) both}@keyframes reveal{0%{clip-path:inset(0 0 100% 0);filter:brightness(1.8) contrast(.6)}70%{filter:none}to{clip-path:inset(0 0 0 0)}}.reveal{position:absolute;left:0;right:0;top:0;height:2px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(190,214,255,.95) 20%,#fff 50%,rgba(190,214,255,.95) 80%,transparent);box-shadow:0 0 24px 6px #8fb8ff73,0 0 80px 20px #8fb8ff26;animation:scanline 1.3s var(--ease) both}@keyframes scanline{0%{top:0;opacity:1}92%{opacity:1}to{top:100%;opacity:0}}.field{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;animation:fade .6s both;background-image:radial-gradient(rgba(143,184,255,.22) 1px,transparent 1.2px);background-size:22px 22px;mask-image:radial-gradient(60% 55% at 50% 50%,#000 0%,transparent 75%);-webkit-mask-image:radial-gradient(60% 55% at 50% 50%,#000 0%,transparent 75%);animation:fieldpulse 1.6s ease-in-out infinite}@keyframes fieldpulse{50%{opacity:.35}}.tooth.sel .tooth-corners{animation:draw .7s var(--ease) forwards,lockon .6s var(--ease)}@keyframes lockon{0%{stroke-width:6px;stroke:#fff}}.finding{filter:none}.finding:not(.quiet){animation:draw .9s var(--ease) forwards,fillin .9s var(--ease) both,flare 1.6s var(--ease) both;animation-delay:inherit}@keyframes flare{0%,40%{stroke-opacity:1;fill-opacity:.45}}.slot .dot{animation:dotin .5s var(--ease) both;animation-delay:calc(var(--d, 0ms) + .2s);transform-box:fill-box;transform-origin:center}@keyframes dotin{0%{transform:scale(0)}60%{transform:scale(1.6)}}.hero-n{animation:rise .45s var(--ease) both;display:inline-block}@keyframes rise{0%{opacity:0;transform:translateY(10px);filter:blur(4px)}}.pane-head h2{animation:enter .4s var(--ease) both}.cmd-reply{animation:enter .4s .1s var(--ease) both}.letter{animation:sheet .7s var(--ease) both;transform-origin:top center}@keyframes sheet{0%{opacity:0;transform:translateY(10px) scale(.985)}}.chart{flex:none;border-bottom:1px solid var(--line)}.chart-head{width:100%;display:flex;align-items:center;gap:10px;height:32px;padding:0 12px 0 14px;border:0;background:none;cursor:pointer;text-align:left}.chart-head:hover h3{color:var(--text-2)}.chart-mixed{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;color:var(--text-3)}.chart-mixed i{width:10px;height:8px;border-radius:2px;background:linear-gradient(to bottom,#3a3550 50%,#6b5fa0 50%)}.chart-toggle{margin-left:auto;display:inline-flex;align-items:center;gap:4px;color:var(--text-3)}.chart-toggle kbd{margin:0}.chart-toggle svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s var(--ease);transform:rotate(-90deg)}.chart.open .chart-toggle svg{transform:none}.chart-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease),opacity .3s;opacity:0}.chart.open .chart-body{grid-template-rows:1fr;opacity:1}.chart-body>*{min-height:0;overflow:hidden}.chart .arch{border-bottom:0;padding-top:0}.slot .glyph.succ{fill:#23232b;stroke:#ffffff38;stroke-dasharray:1.6 1.2}.slot .glyph.prim{fill:#4a4170;stroke:#b8a2ffa6}.slot.both .slot-n{fill:#c9baff}.slot.milk:not(.both) .glyph{fill:#2e2a3c;stroke:#b8a2ff59}.slot.sel .glyph.prim,.slot.sel .glyph.succ{fill:var(--accent);stroke:var(--accent)}.mixed{width:100%;display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:7px 10px;border-radius:7px;cursor:pointer;text-align:left;border:1px solid rgba(184,162,255,.28);background:#b8a2ff0f;color:var(--text-2);font-size:11.5px;animation:enter .4s var(--ease) both}.mixed:hover{background:#b8a2ff1f;color:var(--text)}.mixed-g{position:relative;width:14px;height:16px;flex:none}.mixed-g i{position:absolute;left:0;right:0;height:7px;border-radius:2px}.mixed-g i:first-child{top:0;background:#23232b;border:1px dashed rgba(255,255,255,.35)}.mixed-g i+i{bottom:0;background:#6b5fa0}.mixed-go{margin-left:auto;color:#c9baff}.chart-head h3,.chart-mixed{white-space:nowrap}.mixed-t{flex:1;min-width:0}.mixed-go{white-space:nowrap}.report-acts{display:inline-flex;align-items:center;gap:12px}.send{position:relative}.send-btn{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 8px 0 9px;border-radius:6px;cursor:pointer;border:1px solid var(--line-2);background:var(--raise);color:var(--text);font-size:11.5px;font-weight:500;transition:.2s}.send-btn:hover,.send-btn.on{border-color:var(--accent);background:var(--accent-soft)}.send-btn svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round}.send-btn .chev{width:10px;height:10px;opacity:.6;transition:transform .25s var(--ease)}.send-btn.on .chev{transform:rotate(180deg)}.menu{position:absolute;right:0;top:calc(100% + 6px);z-index:20;width:248px;padding:4px;border-radius:9px;background:var(--raise-2);border:1px solid var(--line-2);box-shadow:0 18px 40px #00000080;display:flex;flex-direction:column;animation:menu .2s var(--ease) both;transform-origin:top right}@keyframes menu{0%{opacity:0;transform:translateY(-4px) scale(.97)}}.menu button{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 9px;border:0;border-radius:6px;background:none;cursor:pointer;text-align:left;font-size:12px;color:var(--text)}.menu button:hover,.menu button:focus-visible{background:#ffffff0f;outline:none}.menu-sub{font-size:10.5px;color:var(--text-3)}.menu-sep{height:1px;margin:4px 6px;background:var(--line-2)}html,body,#root{height:100dvh}.bar{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}.ico{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}.open .ico{display:none}.open{gap:6px}@media (max-width: 760px),(max-width: 1024px) and (orientation: portrait){body{overflow:hidden}.app.has{height:100dvh}.work{grid-template-columns:1fr!important;grid-template-rows:minmax(0,58fr) minmax(0,42fr)}.side{border-left:0;border-top:1px solid var(--line)}.splitter{display:none}.cmd{width:calc(100% - 28px);bottom:max(10px,env(safe-area-inset-bottom))}.tools{top:auto;bottom:64px;transform:none}.mini{width:120px;max-height:92px;right:10px;top:10px}.readout{bottom:60px}}@media (max-width: 760px){.kinds{display:flex;overflow-x:auto;scrollbar-width:none;max-width:46vw}.kinds::-webkit-scrollbar{display:none}.kinds button{padding:0 8px;white-space:nowrap}.brand-sub{display:none}}@media (max-width: 600px){.bar{gap:8px}.open .ico{display:block}.open .lbl,.open kbd,.account .lbl{display:none}.open,.account{padding:0;width:34px}.patient-t{display:none}.patient{padding:0 4px}.patient.editing input{width:110px}.patient.editing input.mono{width:80px}.hero-screen{padding:20px 16px max(20px,env(safe-area-inset-bottom));gap:20px;align-content:start;overflow-y:auto}.hero-screen h1{font-size:34px}.hero-copy>p{font-size:13px;margin:10px 0 14px}.drop{min-height:220px}.signin-screen .hero-steps{display:none}.signin{padding:22px 18px 18px}.sheet{padding:18px 16px}.sheet dl div{grid-template-columns:110px 1fr}.menu{width:min(248px,calc(100vw - 24px))}}@media (max-width: 380px){.kinds{max-width:40vw}.hero-screen h1{font-size:30px}}@media (max-height: 500px) and (orientation: landscape){.work{grid-template-columns:minmax(0,1fr) min(340px,42vw)!important;grid-template-rows:none}.side{border-top:0;border-left:1px solid var(--line)}.hero-screen{align-content:start;overflow-y:auto}.hero-screen h1{font-size:30px}.tools{top:50%;bottom:auto;transform:translateY(-50%)}}@media (pointer: coarse){.ghost{height:34px;min-width:34px}.kinds button{height:30px}.tool{width:38px;height:38px}.tools{opacity:1}.tip{display:none}.filter{height:30px;padding:0 10px}.quad-pad{grid-template-columns:34px 34px;gap:4px}.quad-pad button,.grid button{height:30px}.walk button{width:36px;height:36px}.btn{height:36px}.tour-cta{height:40px}.tour-ctl button{width:40px;height:40px;border-radius:20px}.send-btn{height:32px}.menu button{padding:10px 12px}.chart-head{height:40px}.mic{width:34px;height:34px}.cmd{height:44px}.f-x{opacity:1;width:28px;height:28px}.flist li{padding:9px 4px 9px 0}kbd,.cmd-keys,.chart-toggle kbd,.tour-cta kbd{display:none}.signin-field input,.cmd input,.add input,.patient input{font-size:16px}.signin-field input,.signin-go{height:44px}.side-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}}@media (hover: none){.f-x{opacity:1}.ghost:hover,.tool:hover{background:transparent}}@media (max-width: 1024px) and (orientation: portrait),(max-width: 900px){.brand-sub,.patient-t,.account .lbl{display:none}.account{padding:0;width:34px}.chart .arch,.arch{max-width:460px;margin:0 auto}}@media (max-width: 760px){.bar{flex-wrap:wrap;height:auto;row-gap:6px;padding-top:max(6px,env(safe-area-inset-top));padding-bottom:6px}.kinds{order:10;flex:1 0 100%;max-width:none;justify-content:space-between}.kinds button{flex:1}.tools{flex-direction:row;left:10px;right:auto;top:auto;bottom:calc(max(10px,env(safe-area-inset-bottom)) + 52px);transform:none}.tools-sep{width:1px;height:auto;margin:6px 4px}.readout{bottom:116px}.toast.err{bottom:120px}}@media (max-width: 760px) and (pointer: coarse){.tool{width:36px;height:36px}}.flist li:has(.fam){padding-bottom:11px}.fam{display:flex;flex-direction:column;gap:6px;margin-top:7px;animation:enter .5s var(--ease) both}.fam-cap{font-size:11px;color:var(--text-3);line-height:1.45}.fam-cap b,.fam-cap .on{color:var(--text);font-weight:500}.fam-cap .mono{font-size:10.5px}.depth{position:relative;padding-top:2px}.depth-zones{display:flex;gap:2px;height:34px}.depth-zone{flex:1;position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:4px 7px;border-radius:5px;overflow:hidden;background:var(--raise);border:1px solid var(--line)}.depth-zone.z0{background:linear-gradient(180deg,#ffffff0f,#ffffff05)}.depth-zone.z1{background:linear-gradient(180deg,#e3c27f1a,#e3c27f08)}.depth-zone.z2{background:linear-gradient(180deg,#ff7b6e1f,#ff7b6e0a)}.depth-zone i{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:bottom;background:var(--g);opacity:.16;transition:transform .8s var(--ease);animation:fillup .9s var(--ease) both}@keyframes fillup{0%{transform:scaleY(0)}}.depth-zone.on{border-color:color-mix(in srgb,var(--g) 70%,transparent)}.depth-zone.on i{opacity:.38}.depth-zone b{position:relative;font-size:10.5px;font-weight:500;color:var(--text-2);line-height:1.1}.depth-zone em{position:relative;font-style:normal;font-size:10px;color:var(--text-3)}.depth-zone.on b{color:var(--text)}.depth-zone.on em{color:var(--text-2)}.depth-mark{position:absolute;top:-3px;width:2px;height:40px;margin-left:-1px;border-radius:1px;background:var(--g);box-shadow:0 0 8px color-mix(in srgb,var(--g) 70%,transparent);transition:left .8s var(--ease);animation:fade .6s .3s both}.depth-mark:before{content:"";position:absolute;top:-4px;left:-3px;border:4px solid transparent;border-top-color:var(--g)}.dist{display:flex;gap:2px;height:8px}.dist i{min-width:3px;border-radius:2px;background:var(--g);opacity:.35;transition:flex-grow .8s var(--ease);animation:grow .7s var(--ease) both;transform-origin:left}.dist i.on{opacity:1;box-shadow:0 0 10px color-mix(in srgb,var(--g) 45%,transparent)}.dist i.rest{background:var(--text-3);opacity:.35}.dist i.none{background:repeating-linear-gradient(135deg,var(--line-3) 0 2px,transparent 2px 5px);opacity:1}@keyframes grow{0%{transform:scaleX(0)}}@media (pointer: coarse){.fam-cap{font-size:12px}.depth-zones{height:40px}.dist{height:10px}}
