:root{--bg:#101011;--panel:#19191b;--panel-2:#242427;--panel-3:#2f2f33;--border:#333337;--border-strong:#4a4a50;--field:#121214;--text:#ececef;--muted:#a1a1a8;--accent:#ececef;--on-accent:#141416;--selected:#55555b;--danger:#ff6b61;--curve:var(--curve);--ui-font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--spring:cubic-bezier(.2, 0, 0, 1);--spring-ms:.46s;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{overscroll-behavior:none;background:var(--bg);height:100%;color:var(--text);font:13px/1.4 var(--ui-font);margin:0;overflow:hidden}#app{grid-template-rows:auto 1fr auto;height:100vh;display:grid}.hidden{display:none!important}button{background:var(--panel-2);color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;white-space:nowrap;border-radius:6px;padding:5px 10px;transition:background-color .12s,border-color .12s,color .12s}button:hover{border-color:var(--border-strong);background:var(--panel-3)}button:active{background:var(--border-strong)}button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}button.danger{color:#ff8a80;border-color:#5a2a28}button.active{background:var(--selected);border-color:var(--selected);color:var(--text)}button:disabled{opacity:.45;cursor:default}button:disabled:hover{background:var(--panel-2);border-color:var(--border)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:0}input[type=checkbox],input[type=radio],input[type=range]{accent-color:#d9d9de}input[type=number],.num,#status-cursor{font-variant-numeric:tabular-nums}@supports (animation-timing-function:linear(0, 1)){:root{--spring:linear(0, .0247, .0847, .1637, .2508, .3389, .4236, .5024, .5738, .6375, .6934, .742, .7839, .8196, .8499, .8756, .8971, .9151, .9301, .9426, .9529, .9615, .9685, .9743, .9791, .983, .9862, .9888, .9909, .9926, .994, .9952, .9961, .9968, .9974, .9979, .9983, .9987, .9989, .9991, 1)}}@keyframes qdp-fade-in{0%{opacity:0}}@keyframes qdp-rise{0%{opacity:0;transform:translateY(10px)scale(.98)}}@keyframes qdp-from-rail{0%{opacity:0;transform:translate(-6px)}}#sidebar>.panel:not(.hidden){animation:qdp-from-rail var(--spring-ms) var(--spring)}.modal-backdrop{animation:.18s ease-out qdp-fade-in}.modal-backdrop>*{animation:qdp-rise var(--spring-ms) var(--spring)}@media (prefers-contrast:more){:root{--border:#6c6c73;--border-strong:#93939a;--muted:#c8c8ce;--selected:#6c6c73}}@media (prefers-reduced-transparency:reduce){.view-tools button,.view-tools .seg,.view-thr.in-view,.view-toggle,.max-btn,.view-reset-btn{background:var(--panel)!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important;animation-iteration-count:1!important}.modal-backdrop,.modal-backdrop>*,#sidebar>.panel:not(.hidden){animation:.15s ease-out qdp-fade-in!important}}input[type=number]{background:var(--field);width:64px;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:6px;padding:3px 5px}#toolbar{background:var(--panel);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px 8px;padding:6px 10px;display:flex}.tb-sep{background:var(--border);flex:none;width:1px;height:22px}.icon-btn{justify-content:center;align-items:center;width:30px;height:28px;padding:0;display:inline-flex}button.open{border-color:var(--accent)}.patient-chip{border-radius:16px;align-items:center;gap:7px;max-width:340px;padding:4px 11px;display:inline-flex}.patient-chip .pc-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.patient-chip .pc-date{color:var(--muted);white-space:nowrap;font-size:12px}.patient-chip.empty .pc-name{color:var(--muted);font-weight:400}.brand{letter-spacing:.2px;color:var(--accent);font-weight:700}.group{align-items:center;gap:6px;display:flex}.wl{margin-left:auto}.wl label{color:var(--muted)}.tabs{border:1px solid var(--border);border-radius:6px;display:flex;overflow:hidden}.tabs button{border:0;border-radius:0}.mode-switch{background:#ececef14;border:1px solid #ececef80;border-radius:9px;align-items:center;gap:8px;padding:3px 3px 3px 9px;display:flex}.mode-label{text-transform:uppercase;letter-spacing:.8px;color:var(--accent);font-size:10px;font-weight:700}.mode-switch .tabs{border-color:#ececef73}.mode-switch .tabs button{align-items:center;gap:7px;padding:6px 14px;font-size:13px;font-weight:600;display:flex}.mode-switch .tabs button:not(.active):hover{color:#f2f2f4;background:#ececef33}.step{border:1.5px solid;border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.tabs button.nudge{animation:1.4s ease-in-out 4 mode-nudge}@keyframes mode-nudge{0%,to{box-shadow:inset 0 0 #ececef00}50%{background:#ececef40;box-shadow:inset 0 0 0 2px #ececefe6}}.mode-banner{background:#ececef12;border:1px solid #ececef66;border-radius:8px;flex-direction:column;gap:6px;margin:10px 0 4px;padding:9px 10px;display:flex}.mode-banner-title{color:var(--accent);align-items:center;gap:7px;font-weight:700;display:flex}.mode-go{align-self:stretch}#main{grid-template-columns:64px auto 1fr auto;min-height:0;display:grid}#rail{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;align-items:center;gap:4px;padding:8px 0;display:flex}#rail button{width:58px;height:46px;color:var(--muted);background:0 0;border-color:#0000;align-content:center;place-items:center;gap:3px;padding:0;display:grid;position:relative}#rail button svg{width:20px;height:20px}#rail button:hover{color:var(--text);background:var(--panel-2)}#rail button.on{background:var(--panel-3);color:var(--text);border-color:#0000}#rail button.on .rail-label{font-weight:600}#rail .rail-badge{background:var(--accent);color:#141416;border-radius:7px;min-width:13px;padding:0 3px;font-size:10px;font-weight:700;line-height:13px;position:absolute;top:2px;right:4px}#rail .rail-badge:empty{display:none}#rail .rail-label{font-size:10.5px;line-height:1}#rail .rail-bottom{height:38px;margin-top:auto}#rail .rail-bottom.flip svg{transform:scaleX(-1)}#sidebar{background:var(--panel);border-right:1px solid var(--border);width:272px;padding:10px 12px 16px;overflow-y:auto}.panel{flex-direction:column;gap:8px;display:flex}.panel .row,.panel>label.check{margin:0}.ph{justify-content:space-between;align-items:center;gap:8px;min-height:26px;display:flex}.ph h2{color:var(--text);margin:0;font-size:15px;font-weight:600;line-height:20px}.grow-btn{flex:1}.next-box{background:#ececef12;border:1px solid #ececef66;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding:8px 10px;display:flex}details.sub{border-top:1px solid var(--border);padding-top:8px}details.sub>summary{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none;font-size:12px}details.sub[open]>summary{margin-bottom:6px}details.sub>summary:hover{color:var(--text)}.ai-box .ai-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.popover{z-index:60;background:var(--panel);border:1px solid var(--border);border-radius:9px;flex-direction:column;gap:7px;min-width:230px;max-width:min(380px,100vw - 12px);max-height:calc(100vh - 20px);padding:10px 12px;display:flex;position:fixed;overflow-y:auto;box-shadow:0 14px 40px #0000008c}.popover.hidden{display:none}.popover .row{margin:0}.popover.menu{gap:0;padding:4px}.popover.menu>button,.popover.menu .recent-item{text-align:left;background:0 0;border:0;border-radius:5px;justify-content:space-between;align-items:baseline;gap:18px;width:100%;padding:7px 10px;display:flex}.popover.menu .mi{flex-direction:column;gap:2px;display:flex}.popover.menu .mi-sub{color:var(--muted);white-space:normal;font-size:11px}.popover.menu hr{border:0;border-top:1px solid var(--border);margin:4px 2px}.popover .recent-item .name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.popover .recent-item .dim,.kbd{color:var(--muted);white-space:nowrap;font-size:11px}.menu-hd,.pop-hd{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.menu-hd{padding:6px 10px 2px}.pop-hd{margin-top:4px}#pop-patient .field{grid-template-columns:80px 1fr;align-items:center;gap:6px;margin:3px 0;display:grid}#pop-patient #vol-info div{margin:1px 0}.view-tools{display:none}.view-tools.in-view{z-index:3;pointer-events:none;justify-content:flex-end;align-items:center;gap:4px;min-width:0;display:flex;position:absolute;top:4px;left:64px;overflow:hidden}.view-tools.in-view>*{pointer-events:auto;min-width:0}.view-tools.in-view>button{text-overflow:ellipsis;align-items:center;gap:5px;display:inline-flex;overflow:hidden}.view-tools .tb-ico{flex:none;width:13px;height:13px}@container (width<=300px){.view-tools.v3d .lbl{display:none}}.view-tools.in-view>.seg{flex:none}.view-tools.v3d{left:30px;right:60px}.view-tools.pano{left:88px;right:32px}.view-tools button{background:#1e1e20d9;border-color:#54545ae6;height:22px;padding:2px 8px;font-size:11px}.view-tools .seg{height:22px}.view-tools .seg button{border:0;height:20px}.start-screen{z-index:5;background:var(--bg);place-items:center;padding:20px;display:grid;position:absolute;inset:0}.start-drop{text-align:center;width:min(640px,100%);color:var(--accent);border:2px dashed #424247;border-radius:14px;flex-direction:column;align-items:center;gap:14px;padding:30px 28px;display:flex}.start-drop h2{color:var(--text);margin:0;font-size:20px}.start-drop .muted{max-width:50ch}.start-actions{justify-content:center}.start-recent{text-align:left;width:100%;color:var(--text)}.start-recent .obj-list li{justify-content:space-between;gap:12px;display:flex}.modal.help-sheet{max-width:900px}.help-cols{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px 22px;margin-top:10px;display:grid}.help-cols h4{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 6px;font-size:12px}.help-cols dl{grid-template-columns:auto 1fr;gap:4px 10px;margin:0;font-size:12px;display:grid}.help-cols dt{color:var(--accent);white-space:nowrap}.help-cols dd{margin:0}.panel h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 6px;font-size:11px;font-weight:600}.row{flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0;display:flex}.seg{border:1px solid var(--border);border-radius:6px;display:flex;overflow:hidden}.seg button{border:0;border-radius:0;flex:1}.muted{color:var(--muted)}.small{font-size:12px}.slider{color:var(--muted);margin:10px 0;display:block}.slider span{color:var(--text);float:right}.slider input{width:100%}details{color:var(--muted);margin-top:14px}summary{cursor:pointer;font-size:12px}.help{margin:6px 0;padding-left:16px;font-size:12px}.help li{margin:3px 0}.help b{color:var(--text);font-weight:600}#implant-list{margin:8px 0;padding:0;list-style:none}#implant-list li{border:1px solid var(--border);cursor:pointer;border-radius:5px;justify-content:space-between;margin:4px 0;padding:5px 8px;display:flex}#implant-list li.sel{background:#ffb81c1f;border-color:#ffb81c}#implant-list li>span:first-child{white-space:nowrap;margin-right:8px}#implant-list li .dim{color:var(--muted);text-align:right;font-size:11px}#implant-edit{background:#ffb81c0d;border:1px solid #5a4410;border-radius:6px;padding:6px 8px}#implant-edit label{color:var(--muted)}#implant-edit h4{color:var(--muted);margin:10px 0 4px;font-size:12px;font-weight:600}select{background:var(--field);color:var(--text);border:1px solid var(--border);font:inherit;border-radius:6px;padding:3px 4px}.check{color:var(--muted);align-items:center;gap:6px;margin:6px 0;display:flex}.slider span input{width:72px;padding:1px 4px}.presets button{flex:28%;padding:4px 6px}#angle-table{border-collapse:collapse;width:100%;font-size:12px}#angle-table th,#angle-table td{text-align:left;border-bottom:1px solid var(--border);padding:3px 4px}#angle-table th{color:var(--muted);font-weight:500}.seg.small button{padding:4px 8px;font-size:12px}#viewport{background:#000;min-width:0;min-height:0;position:relative}.layout{background:#202023;gap:3px;display:grid;position:absolute;inset:0}#layout-mpr{grid-template:"ax co"1fr"sa v3d"1fr/1fr 1fr}#layout-plan{grid-template-rows:1fr 1.15fr;grid-template-columns:repeat(20,1fr);grid-template-areas:"pax pax pax pax pax pano pano pano pano pano pano pano pano pano pano pano pano pano pano pano""cs1 cs1 cs1 cs1 cs2 cs2 cs2 cs2 cs3 cs3 cs3 cs3 tang tang tang tang v3d v3d v3d v3d"}#layout-plan.drawing-curve{grid-template-rows:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(0,11fr) repeat(3,minmax(0,3fr));grid-template-areas:"pax pano pano pano""pax cs1 cs2 cs3""pax tang v3d v3d"}#layout-plan.drawing-curve>.view.draw-target{box-shadow:0 0 0 1px #ffffff12, inset 0 0 0 1.5px color-mix(in srgb, var(--accent) 38%, transparent)}#layout-plan>.view{transition:box-shadow .35s}.layout.has-max>.view:not(.max){display:none}.layout.has-max>.view.max{grid-area:1/1/-1/-1!important}.max-btn{color:#c4c4ca;z-index:2;opacity:.65;background:#1e1e20bf;border-color:#54545acc;justify-content:center;align-items:center;width:24px;height:22px;padding:0;display:flex;position:absolute;top:4px;right:4px}.view:hover .max-btn,.view.max .max-btn,.view:hover .view-reset-btn{opacity:1}.view-reset-btn{color:#c4c4ca;z-index:2;opacity:.65;background:#1e1e20bf;border-color:#54545acc;justify-content:center;align-items:center;width:24px;height:22px;padding:0;display:flex;position:absolute;top:4px;right:32px}.view{background:#000;outline:1px solid #0000;min-width:0;min-height:0;position:relative;overflow:hidden;container-type:inline-size}.view:after{content:"";background:var(--view-color);opacity:.8;pointer-events:none;height:2px;position:absolute;top:0;left:0;right:0}.view canvas{width:100%;height:100%;position:absolute;inset:0}.view canvas.img{image-rendering:auto}.view canvas.ov{touch-action:none}#drop-overlay{border:3px dashed var(--accent);color:var(--accent);z-index:10;pointer-events:none;background:#121214bf;border-radius:12px;justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;inset:12px}#loading{z-index:11;background:#0000008c;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#loading .box{background:var(--panel);border:1px solid var(--border);border-radius:8px;min-width:280px;padding:16px 20px}#loading .bar{background:var(--field);border-radius:3px;height:6px;margin-top:10px;overflow:hidden}#loading-bar{background:var(--accent);width:0;height:100%}#status{background:var(--panel);border-top:1px solid var(--border);color:var(--muted);gap:14px;min-height:22px;padding:3px 12px;font-size:12px;display:flex}#status-msg.error{color:var(--danger)}.slider span.lbl{float:none;color:inherit}.dim-badge{color:#161006;cursor:text;z-index:3;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#ffb81cf2;border-radius:5px;padding:3px 7px;font:600 12px system-ui,sans-serif;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 6px #00000080}.dim-badge:hover{background:#ffd36e}.dim-badge input{color:#161006;background:#fff8e6;border:1px solid #8a6510;border-radius:3px;width:58px;padding:1px 3px;font:600 12px system-ui,sans-serif}.view-seg{z-index:2;border:1px solid #54545ae6;border-radius:5px;display:flex;position:absolute;top:4px;left:90px;overflow:hidden}.view-seg button{background:#1e1e20cc;border:0;border-radius:0;padding:2px 9px;font-size:11px}.view-seg button.active{background:var(--selected);color:var(--text)}.view-toggle{z-index:2;color:#9a9aa1;opacity:.8;background:#1e1e20cc;border:1px solid #54545ae6;border-radius:5px;padding:1px 8px;font-size:11px;position:absolute;top:24px;left:6px}.view-toggle.active{color:var(--accent);background:#ececef38;border-color:#ececefa6}.view:hover .view-toggle{opacity:1}.modal-backdrop{z-index:50;background:#000000b8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:100%;max-width:980px;max-height:100%;padding:18px 22px 16px;overflow-y:auto;box-shadow:0 20px 60px #0009}.modal header{justify-content:space-between;align-items:center;display:flex}.modal h2{margin:0;font-size:18px}.modal-close{padding:4px 10px;font-size:18px;line-height:1}.modal .intro{color:var(--muted);margin:8px 0 14px}.modal .intro b{color:var(--text)}.g-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;display:grid}.g-card{background:var(--panel-2);border:1px solid var(--border);border-radius:9px;align-items:flex-start;gap:12px;padding:10px;display:flex}.g-card h4{margin:2px 0 4px;font-size:13px}.g-card p{color:var(--muted);margin:0;font-size:12px}.g-svg{flex:0 0 110px;width:110px;height:77px}.g-pad{fill:#121214;stroke:#4a4a50;stroke-width:1.5px}.g-finger{fill:#ffb81c;fill-opacity:.9}.g-hover{fill:none;stroke:#ffb81c;stroke-width:1.6px;stroke-dasharray:3 2.5}.g-ring{fill:none;stroke:#ffb81c;stroke-opacity:.55;stroke-width:1.5px}.g-arrow{stroke:var(--accent);stroke-width:2.2px;stroke-linecap:round}.g-head{fill:var(--accent)}.g-key{fill:#333337;stroke:#6c6c73}.g-keytext{fill:#ececef;text-anchor:middle;font:600 12px system-ui,sans-serif}.g-tip{border-left:3px solid var(--accent);color:var(--muted);background:#ececef12;border-radius:4px;margin-top:12px;padding:10px 12px;font-size:12px}.g-tip b{color:var(--text)}.modal footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}#implant-edit label.grow{flex:100%;align-items:center;gap:6px;min-width:0;display:flex}#imp-name{background:var(--field);width:0;min-width:0;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:4px;flex:1;padding:3px 6px}.panel h4{color:var(--muted);margin:12px 0 4px;font-size:12px;font-weight:600}.help.steps{color:var(--muted);padding-left:18px}.seg-presets button{flex:28%;padding:4px 6px}.obj-list{margin:6px 0;padding:0;list-style:none}.obj-list li{border:1px solid var(--border);cursor:pointer;border-radius:5px;align-items:center;gap:6px;margin:3px 0;padding:4px 6px;display:flex}.obj-list li.sel{border-color:var(--accent);background:#ececef1a}.obj-list .swatch{border-radius:3px;flex:0 0 12px;width:12px;height:12px}.obj-list .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.obj-list .dim{color:var(--muted);white-space:nowrap;font-size:11px}.obj-list button{padding:1px 6px;font-size:11px}.obj-list button.off{opacity:.45}.obj-list button.seg-vis{min-width:0;color:var(--muted);border-color:var(--hairline,#ffffff1f);background:0 0;padding:1px 5px;font-size:10.5px;-webkit-text-decoration:line-through #ffffff59;text-decoration:line-through #ffffff59}.obj-list button.seg-vis.on{color:var(--text,#ececef);background:#ffffff1a;border-color:#ffffff47;text-decoration:none}.edit-box{background:#ececef0d;border:1px solid #3a3a3f;border-radius:6px;padding:6px 8px}.edit-box label{color:var(--muted)}.edit-box label.grow{flex:1;align-items:center;gap:6px;min-width:0;display:flex}#seg-name{background:var(--field);width:0;min-width:0;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:4px;flex:1;padding:3px 6px}#seg-color{background:var(--field);border:1px solid var(--border);border-radius:4px;width:34px;height:26px;padding:1px}.warn{color:#ff8a5c}a.btn-link{background:var(--panel-2);color:var(--text);border:1px solid var(--border);white-space:nowrap;border-radius:5px;padding:5px 10px;text-decoration:none}.view-scroll{z-index:2;cursor:pointer;touch-action:none;opacity:.55;background:#ffffff12;border-radius:5px;width:10px;transition:opacity .15s,width .15s;position:absolute;top:32px;bottom:10px;right:3px}.view:hover .view-scroll,.view-scroll.dragging{opacity:1}.view-scroll:hover,.view-scroll.dragging{background:#ffffff1f;width:12px}.view-scroll-thumb{background:var(--view-color,#ababb2);opacity:.75;border-radius:5px;height:30px;position:absolute;top:0;left:1px;right:1px}.view-scroll.dragging .view-scroll-thumb{opacity:1}.patient-badge{color:var(--text);background:var(--panel-2);border:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;border-radius:5px;max-width:260px;padding:3px 10px;font-weight:600;overflow:hidden}#panel-info label.field{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin:5px 0;display:flex}#panel-info label.field input{background:var(--field);width:150px;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:4px;padding:3px 6px}#pt-details{margin-top:4px}.tv-modal{flex-direction:column;max-width:1100px;height:100%;display:flex}.tv-tools{flex-wrap:nowrap}.tv-search{background:var(--field);min-width:0;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:5px;flex:1;padding:5px 8px}.tv-scroll{border:1px solid var(--border);border-radius:6px;flex:1;min-height:0;margin-top:6px;overflow:auto}.tv-table{border-collapse:collapse;width:100%;font-size:12px}.tv-table th{background:var(--panel-2);text-align:left;color:var(--muted);border-bottom:1px solid var(--border);padding:6px 8px;font-weight:600;position:sticky;top:0}.tv-table td{vertical-align:top;border-bottom:1px solid #34343899;padding:4px 8px}.tv-tag,.tv-vr{white-space:nowrap;color:#ababb2;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.tv-val{word-break:break-word}.tv-private td{color:var(--muted)}.tv-seq td{font-weight:600}.tv-item td{color:#93939a;background:#ececef0a;font-style:italic}.tv-empty{text-align:center;color:var(--muted);padding:20px}.tv-fallback{background:var(--field);width:100%;height:120px;color:var(--text);border:0;border-bottom:1px solid var(--border);font:11px ui-monospace,Menlo,monospace}#implant-list li .vis{flex:none;gap:3px;margin-right:6px;display:inline-flex}#implant-list li .nm{white-space:nowrap;text-overflow:ellipsis;flex:1;margin-right:8px;overflow:hidden}.vis-btn{color:var(--text);border:1px solid var(--border);background:0 0;border-radius:4px;align-items:center;padding:1px 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.vis-btn.mua{color:#c8c8ce}.vis-btn.off{color:var(--muted);opacity:.7}.vis-btn.mua.off{text-decoration:line-through}#implant-list li.hidden-imp .nm,#implant-list li.hidden-imp .dim{opacity:.45}.undo-row button{padding:4px 9px}#implant-list li{align-items:center}.curve-list{margin:4px 0 6px;padding:0;list-style:none}.curve-list li{border:1px solid var(--border);cursor:pointer;border-radius:5px;align-items:center;gap:8px;margin:3px 0;padding:5px 8px;display:flex}.curve-list li .dot{border:2px solid var(--curve);border-radius:50%;flex:none;width:9px;height:9px}.curve-list li.sel{border-color:var(--curve);background:#4fb3ff1f}.curve-list li.sel .dot{background:var(--curve)}.curve-list li .dim{color:var(--muted);margin-left:auto;font-size:11px}#curve-name-row label.grow{flex:1;align-items:center;gap:6px;display:flex}#curve-name{background:var(--field);min-width:0;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:4px;flex:1;padding:3px 6px}.launch-banner{z-index:12;background:var(--panel);border:1px solid var(--accent);border-radius:10px;align-items:center;gap:10px;max-width:calc(100% - 24px);padding:10px 12px 10px 16px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0000008c}.launch-banner .lb-text{flex-direction:column;gap:2px;min-width:0;display:flex}.launch-banner .lb-text b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.launch-banner .lb-text .muted{font-size:12px}.modal.install-help{max-width:560px}.install-help ol{margin:12px 0;padding-left:20px}.install-help li{margin:6px 0;line-height:1.45}.install-help p{line-height:1.45}.install-help .muted{color:var(--muted)}.install-help .muted b{color:var(--text)}.install-help a{color:var(--text);word-break:break-all}.install-help h3{border-top:1px solid var(--border);margin:16px 0 4px;padding-top:12px;font-size:14px}.install-help header+h3{border-top:none;padding-top:0}.launch-banner .lb-error{color:#ff8a80}.install-help .cmd-row{align-items:center;gap:8px;margin:8px 0 4px;display:flex}.install-help .cmd-row code{background:var(--panel-2);border:1px solid var(--border);word-break:break-all;-webkit-user-select:all;user-select:all;border-radius:6px;flex:1;min-width:0;padding:7px 9px;font-size:12px}.modal.export-stl{max-width:560px}.export-stl h4{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:14px 0 6px;font-size:13px}.export-stl label.check{align-items:center;gap:8px;margin:4px 0;display:flex}.export-stl select{margin-left:6px}.modal.scan-place{max-width:620px}.scan-place .opt{align-items:flex-start;gap:10px;margin:12px 0;line-height:1.45;display:flex}.scan-place .opt.disabled{opacity:.5}.scan-place .opt select{margin-left:6px}.scan-place label.row{align-items:center;gap:8px;display:flex}.modal.scan-align{flex-direction:column;width:96vw;max-width:none;height:92vh;display:flex;overflow:hidden}.scan-align header{gap:12px}.sa-tabs{gap:4px;margin-left:18px;margin-right:auto;display:flex}.sa-tabs button.active{background:var(--selected);color:var(--text);border-color:var(--selected)}.sa-bar{flex-wrap:wrap;align-items:center;gap:12px;margin:10px 0 8px;display:flex}.sa-bar select{max-width:380px}.sa-surface-only{display:none}.modal-backdrop.mode-surface .sa-surface-only{align-items:center;gap:6px;display:inline-flex}.modal-backdrop.mode-surface .sa-points-only{display:none}.sa-panes{flex:1;grid-template-columns:1fr 1fr;gap:8px;min-height:0;display:grid}.mv{border:1px solid var(--border);touch-action:none;cursor:crosshair;background:#101011;border-radius:8px;position:relative;overflow:hidden}.mv canvas{width:100%;height:100%;position:absolute;inset:0}.mv-ov{pointer-events:none}.mv-title{z-index:2;color:var(--muted);pointer-events:none;font-size:12px;position:absolute;top:6px;left:10px}.sa-help{min-height:2.8em;margin:8px 2px 0;line-height:1.45}.sa-help b{color:var(--text)}.scan-align footer .sa-actions{align-items:center;gap:10px;display:flex}#sa-result.warn{color:#ffb86b}.sa-tool{gap:0!important}.sa-tool button.active{background:var(--selected);color:var(--text);border-color:var(--selected)}.ai-box{border:1px solid var(--border);background:var(--panel-2);border-radius:8px;margin:4px 0 10px;padding:8px 10px}.ai-box button{width:100%;margin-bottom:4px}.ai-box a,.ai-credit a{color:var(--accent)}.modal.ai-seg{max-width:600px}.ai-seg h4{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:14px 0 6px;font-size:13px}.ai-seg label.check{align-items:center;gap:8px;margin:4px 0;display:flex}.ai-seg label.check.disabled{opacity:.5}.ai-run{margin:14px 0 6px}.ai-phase{margin-bottom:8px;font-weight:600}.ai-bar{background:var(--panel-2);border:1px solid var(--border);border-radius:4px;height:8px;margin-bottom:6px;overflow:hidden}.ai-bar>div{background:var(--accent);width:0;height:100%;transition:width .3s}.ai-notes{color:var(--warn,#ffb81c);margin:8px 0 0;padding-left:18px;font-size:12px}.ai-credit{border-left:3px solid var(--accent);color:var(--muted);background:#ececef0f;border-radius:4px;margin-top:14px;padding:8px 10px;line-height:1.45}.ai-credit b{color:var(--text)}.ai-pill{z-index:40;background:var(--panel);border:1px solid var(--accent);cursor:pointer;border-radius:18px;padding:8px 12px;font-size:12px;position:fixed;bottom:16px;right:16px;box-shadow:0 6px 20px #00000080}.ai-gpu{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;margin:8px 0;padding:7px 10px;line-height:1.45}.ai-gpu.warn{background:#ffb81c12;border-color:#ffb81c8c}.ai-gpu.ok{border-color:#50c87873}.ai-gpu details{margin-top:6px}.ai-gpu summary{cursor:pointer;color:var(--accent)}.ai-gpu ol{margin:6px 0;padding-left:20px}.ai-gpu code{word-break:break-all;font-size:11px}#status-hint{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}#status-hint b{color:var(--text);font-weight:600}#status-msg{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--text);flex:0 auto;overflow:hidden}#status-msg:empty{display:none}#status-cursor{flex:none}#status-msg:not(:empty)~#status-cursor{margin-left:auto}#status:has(#status-msg:not(:empty)) #status-hint{display:none}.ai-box .ai-head button{width:auto;margin:0;padding:4px 14px}.view-tools .seg button.active{background:var(--selected);color:var(--text)}#panel-plan>.row:first-of-type{flex-wrap:nowrap}#panel-plan .grow-btn{padding-inline:6px}.edit-box label.grow,.edit-box label.grow input{min-width:0}.edit-box input[type=color]{flex:none;width:34px;height:26px;padding:0 2px}.edit-box input[type=range]{flex:1;min-width:0}#scan-name,#imp-name{flex:1;width:0;min-width:0}#btn-save-project.dirty:after{content:"";background:var(--accent);vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-left:6px;display:inline-block}.ask-save{max-width:460px}.ask-save footer{gap:8px}.ask-save footer .grow{flex:1}.wax-chart{background:var(--panel-2,#ffffff08);border-radius:8px;flex-direction:column;gap:3px;padding:6px;display:flex}.wax-chart.disabled{opacity:.45;pointer-events:none}.wax-row{grid-template-columns:repeat(8,minmax(0,1fr)) 4px repeat(8,minmax(0,1fr));gap:2px;display:grid}.wax-row button{font-variant-numeric:tabular-nums;min-width:0;color:var(--muted,#a1a1a8);border-radius:4px;padding:3px 0;font-size:10px}.wax-row button.mid{grid-column-start:10}.wax-row.upper button{border-bottom-right-radius:9px;border-bottom-left-radius:9px}.wax-row.lower button{border-top-left-radius:9px;border-top-right-radius:9px}.wax-row button.on{color:#3a3320;background:#ece2c8;border-color:#ece2c8}.wax-row button.sel{color:#2a1d05;background:#ffbe5a;border-color:#ffbe5a}.wax-opts{flex-direction:column;gap:6px;display:flex}.wax-opts label.small{flex-direction:column;gap:2px;display:flex}.wax-help{color:var(--muted,#a1a1a8);grid-template-columns:auto 1fr;gap:2px 10px;margin:0;display:grid}.wax-help dt{color:var(--text,#d9d9de);white-space:nowrap}.wax-help dd{margin:0}.seg-manual{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:10px;display:flex}.sub-h{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0;font-size:12px;font-weight:600}.thr-row{grid-template-columns:auto 1fr 64px;align-items:center;gap:8px;display:grid}.thr-row input[type=range],.view-thr input[type=range]{width:100%;min-width:0}.thr-row input[type=number],.view-thr input[type=number]{font-variant-numeric:tabular-nums;width:100%;min-width:0}.view-thr{display:none}.view-thr.in-view{z-index:3;width:min(420px,100% - 140px);color:var(--text);background:#1e1e20d9;border:1px solid #54545ae6;border-radius:8px;grid-template-columns:auto 1fr 64px;align-items:center;gap:8px;padding:4px 10px;font-size:11px;display:grid;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.view-thr.in-view.hidden{display:none}.view-thr input[type=number]{height:20px;padding:0 4px;font-size:11px}#objects{background:var(--panel);border-left:1px solid var(--border);flex-direction:column;min-height:0;display:flex;position:relative}#objects.collapsed{cursor:pointer;width:30px}#objects.collapsed .obj-head h3,#objects.collapsed .obj-groups,#objects.collapsed .obj-resize{display:none}#objects.collapsed .obj-head{flex-direction:column;padding:8px 0}#objects.collapsed #obj-toggle svg{transform:scaleX(-1)}#objects.collapsed:after{content:"Objects";writing-mode:vertical-rl;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:6px auto;font-size:11px}.obj-resize{cursor:ew-resize;z-index:4;width:6px;position:absolute;top:0;bottom:0;left:-3px}.obj-resize:hover,#objects.resizing .obj-resize{background:var(--accent);opacity:.5}.obj-head{justify-content:space-between;align-items:center;gap:6px;padding:8px 8px 6px 12px;display:flex}.obj-head h3{color:var(--text);margin:0;font-size:15px;font-weight:600;line-height:20px}.obj-groups{flex-direction:column;flex:1;gap:10px;min-height:0;padding:0 8px 12px;display:flex;overflow-y:auto}.obj-group ul{margin:2px 0 0;padding:0;list-style:none}.obj-gh,.obj-group li{grid-template-columns:24px auto 1fr auto;align-items:center;gap:6px;min-height:24px;display:grid}.obj-gh{grid-template-columns:24px 1fr auto;font-size:12px}.obj-group li{border-radius:4px;padding-left:10px;font-size:12px}.obj-group li:hover{background:var(--panel-2)}.obj-group li.off .nm,.obj-group li.off .swatch{opacity:.45}.obj-group .swatch{border-radius:3px;width:10px;height:10px}.obj-group .nm{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.obj-group .nm[data-sel]:not([data-sel=""]){cursor:pointer}.obj-group .dim,.obj-gh .dim{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.obj-groups .vis-btn{width:22px;height:22px;color:var(--text);background:0 0;border:0;place-items:center;padding:0;display:grid}.obj-groups .vis-btn.off{color:var(--muted)}.view:has(.view-thr.in-view){container-type:inline-size}@container (width<=360px){.view-thr.in-view{grid-template-columns:1fr;width:calc(100% - 90px);left:70px;transform:none}.view-thr.in-view label,.view-thr.in-view input[type=number]{display:none}}.wax-window{border:1px solid var(--border);background:#ffffff04;border-radius:8px;flex-direction:column;gap:8px;padding:0 8px 8px;display:flex}.wax-tabs{border-bottom:1px solid var(--border);margin:0 -8px;display:flex}.wax-tabs button{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:1;padding:8px 4px 7px;font-size:11px;font-weight:600}.wax-tabs button:hover{color:var(--text)}.wax-tabs button.active{color:var(--text);border-bottom-color:#ff9b5a}.wax-page{flex-direction:column;gap:8px;display:flex}.wax-big{border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.wax-big.two{border:0;grid-template-columns:repeat(2,1fr);padding:0}.wax-big button{color:#c4c4ca;text-align:center;background:0 0;border-color:#0000;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:7px 2px 6px;font-size:11.5px;line-height:1.15;display:flex}.wax-big button:hover{background:var(--panel-2)}.wax-big button.active{color:#ffae73;background:#ff9b5a1a;border-color:#ff9b5a59}.wax-box{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:5px;min-width:0;margin:0;padding:6px 8px 8px;display:flex}.wax-box legend{color:var(--muted);padding:0 4px;font-size:11.5px}.wax-box label.small{flex-direction:column;gap:2px;display:flex}.wax-box .check.sep{border-top:1px solid var(--border);margin-top:3px;padding-top:6px}.wax-box .check{margin:0}.wax-box .check:has(input:disabled){opacity:.55}.wax-menu{border:1px solid var(--border);background:var(--panel);border-radius:8px;flex-direction:column;gap:3px;padding:4px;display:flex;box-shadow:0 8px 24px #00000073}.wax-menu button{text-align:left;background:0 0;border-color:#0000;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px;display:flex}.wax-menu button:hover{background:var(--panel-2)}.wax-menu button span{color:var(--muted);font-size:11px}.wax-undo button{flex:1}.ant-row{grid-template-columns:1fr auto auto auto;align-items:center;gap:4px;display:grid}.ant-row button{align-items:center;gap:3px;padding:3px 6px;font-size:12px;display:inline-flex}.ant-row button.active{color:#ffae73;background:#ff9b5a1a;border-color:#ff9b5a73}.ant-src{margin:-2px 0 2px}.wax-box label.ant-gap{flex-direction:row;justify-content:space-between;align-items:center;gap:6px;margin-top:2px;display:flex}.ant-gap input{width:64px}.abr-scale{color:var(--muted);justify-content:space-between;display:flex}#wax-abr-group{align-self:flex-start}.imp-model{flex-direction:column;gap:4px;margin:4px 0;display:flex}.imp-model label.small{align-items:center;gap:6px;display:flex}.imp-model select{flex:1;min-width:0}.imp-lib-row{gap:4px;display:flex}.imp-lib-row select{flex:1;min-width:0}.lib-status{color:var(--muted);margin:2px 0 6px;line-height:1.45}.lib-status b{color:var(--text);font-weight:600}.lib-badge{background:var(--accent);color:var(--on-accent);vertical-align:1px;border-radius:8px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:700}.lib-progress{background:var(--panel-3);border-radius:2px;height:4px;margin:0 0 6px;overflow:hidden}.lib-progress>div{background:var(--accent);width:0;height:100%;transition:width .2s}.error-text{color:var(--danger)}.tooth-head{justify-content:space-between;margin-bottom:2px;display:flex}.tooth-chart svg{width:100%;height:auto;display:block}.tooth circle{fill:var(--panel-3);stroke:var(--border-strong);stroke-width:1px;transition:fill .12s}.tooth text{fill:var(--muted);font:600 10px var(--ui-font);font-variant-numeric:tabular-nums;pointer-events:none}.tooth.free{cursor:pointer}.tooth.free:hover circle{fill:var(--selected)}.tooth.free:hover text{fill:var(--text)}.tooth.cur circle{fill:var(--accent);stroke:var(--accent)}.tooth.cur text{fill:var(--text)}.tooth.taken circle{fill:#40d68059;stroke:#40d680}.tooth.taken{cursor:not-allowed}.tooth:focus-visible{outline:none}.tooth:focus-visible circle{stroke:var(--accent);stroke-width:2.5px}.modal.patient-chooser{max-width:640px}.patient-chooser footer{align-items:center;gap:8px;margin-top:12px;display:flex}.patient-chooser .grow{flex:1}.patient-chooser .pc-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.patient-chooser .pc-card{border:1px solid var(--border);background:var(--panel-2);border-radius:10px;grid-template-columns:96px 1fr auto;align-items:center;gap:14px;padding:10px;display:grid}.patient-chooser .pc-preview{object-fit:contain;background:#000;border-radius:6px;width:96px;height:96px}.patient-chooser .pc-name{font-size:15px;font-weight:600}.patient-chooser .pc-facts{margin:2px 0 4px}.patient-chooser .pc-facts b{font-variant-numeric:tabular-nums;font-weight:600}.patient-chooser .pc-scan,.patient-chooser .pc-files{font-size:12px;line-height:1.4}.patient-chooser .pc-done{background:#40d6801f;border:1px solid #40d68080;border-radius:8px;margin:10px 0 0;padding:8px 10px}@media (width<=520px){.patient-chooser .pc-card{grid-template-columns:64px 1fr}.patient-chooser .pc-preview{width:64px;height:64px}.patient-chooser .pc-open{grid-column:1/-1}}:root{--bg:#0b0b0c;--panel:#18181a;--panel-2:#232326;--panel-3:#2e2e32;--border:#2c2c30;--border-strong:#46464c;--field:#0f0f10;--hairline:#ffffff14;--hairline-strong:#ffffff24;--titanium:linear-gradient(180deg, #fbfbfc 0%, #e6e6ea 55%, #d0d0d6 100%);--raised:linear-gradient(180deg, #2c2c30 0%, #242427 100%);--raised-hover:linear-gradient(180deg, #36363b 0%, #2c2c30 100%);--chosen:linear-gradient(180deg, #56565d 0%, #47474d 100%);--lit:inset 0 1px 0 #ffffff0f;--shadow-1:0 1px 2px #00000073;--shadow-2:0 6px 18px #0006, 0 1px 3px #00000073;--shadow-3:0 28px 70px #0009, 0 8px 22px #00000073}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}::selection{background:#ececef47}*{scrollbar-width:thin;scrollbar-color:#3d3d43 transparent}button{border-color:var(--hairline-strong);background:var(--raised);box-shadow:var(--lit), var(--shadow-1);border-radius:7px;transition:background-color .12s,border-color .12s,color .12s,box-shadow .12s,transform 80ms}button:hover{background:var(--raised-hover);border-color:#fff3}button:active{background:#202023;transform:scale(.98)}button.primary{background:var(--titanium);color:#111113;border-color:#0000;box-shadow:inset 0 1px #fff,0 0 0 .5px #00000080,0 1px 3px #00000080}button.primary:hover{background:linear-gradient(#fff 0%,#f0f0f3 55%,#dcdce1 100%);border-color:#0000}button.primary:active{background:linear-gradient(#dadade 0%,#c8c8ce 100%)}button.active{background:var(--chosen);box-shadow:inset 0 1px 0 #ffffff1f, var(--shadow-1);border-color:#ffffff2e}button.danger{border-color:#ff6b6159}button.danger:hover{color:#ffb0a8;background:linear-gradient(#4a2422 0%,#3a1d1c 100%);border-color:#ff6b6199}button:disabled,button:disabled:hover{background:var(--raised);border-color:var(--hairline);box-shadow:none;transform:none}#rail button,.seg button,.tabs button,.popover.menu>button,.popover.menu .recent-item,.modal-close,.max-btn,.view-reset-btn,.view-toggle,.view-tools button,.wax-row button,.wax-tabs button,.sa-tabs button,.vis-btn,.obj-list button,.obj-row button,.tv-item button{box-shadow:none}#rail button:active,.wax-row button:active,.popover.menu>button:active{transform:none}input[type=number],input[type=text],select,textarea{background-color:var(--field);border:1px solid #323236;border-radius:7px;transition:border-color .12s,box-shadow .12s;box-shadow:inset 0 1px 2px #0006}input[type=number]:hover,input[type=text]:hover,select:hover,textarea:hover{border-color:#4a4a50}input[type=number]:focus-visible,input[type=text]:focus-visible,select:focus-visible,textarea:focus-visible{border-color:#d0d0d6;outline:none;box-shadow:inset 0 1px 2px #0006,0 0 0 3px #ececef29}select{appearance:none;cursor:pointer;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath d='M2 3.6l3 3 3-3' fill='none' stroke='%23a1a1a8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding:3px 24px 3px 8px}input[type=checkbox],input[type=radio]{appearance:none;vertical-align:-3px;background:var(--field);cursor:pointer;border:1px solid #5a5a61;flex:none;place-content:center;width:16px;height:16px;margin:0 6px 0 0;transition:background-color .12s,border-color .12s;display:inline-grid;box-shadow:inset 0 1px 2px #0006}.check input[type=checkbox],.check input[type=radio]{margin:0}input[type=checkbox]{border-radius:4.5px}input[type=radio]{border-radius:50%}input[type=checkbox]:hover,input[type=radio]:hover{border-color:#8a8a92}input[type=checkbox]:before{content:"";clip-path:polygon(13% 50%,2% 63%,38% 96%,98% 24%,86% 13%,37% 70%);background:#111113;width:10px;height:10px;transition:transform .12s;transform:scale(0)}input[type=radio]:before{content:"";background:#111113;border-radius:50%;width:6px;height:6px;transition:transform .12s;transform:scale(0)}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--titanium);border-color:#0000;box-shadow:0 0 0 .5px #00000080,0 1px 2px #0006}input[type=checkbox]:checked:before,input[type=radio]:checked:before{transform:scale(1)}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.4;cursor:default}input[type=range]{appearance:none;cursor:pointer;--fill:50%;background:0 0;height:18px}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, #c9c9cf var(--fill), #3a3a40 var(--fill));border-radius:2px;height:4px}input[type=range]::-moz-range-track{background:linear-gradient(90deg, #c9c9cf var(--fill), #3a3a40 var(--fill));border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--titanium);border-radius:50%;width:14px;height:14px;margin-top:-5px;transition:transform .1s;box-shadow:0 0 0 .5px #0009,0 1px 3px #0009}input[type=range]::-moz-range-thumb{background:var(--titanium);border:0;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 .5px #0009,0 1px 3px #0009}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.12)}input[type=range]:disabled{opacity:.45;cursor:default}.seg,.mode-switch{background:var(--field);border:1px solid #2a2a2e;border-radius:9px;gap:2px;padding:2px;overflow:visible;box-shadow:inset 0 1px 2px #00000073}.seg button,.mode-switch .tabs button{color:var(--muted);background:0 0;border:0;border-radius:7px}.seg button:hover,.mode-switch .tabs button:not(.active):hover{color:var(--text);background:#ffffff0f}.seg button.active,.mode-switch .tabs button.active{background:var(--chosen);color:#fff;box-shadow:inset 0 1px #ffffff24,0 1px 3px #00000080}.mode-switch{border-radius:11px;padding:3px}.mode-switch .tabs{border:0;border-radius:0;gap:2px;overflow:visible}.mode-switch .tabs button{border-radius:8px;padding:5px 14px}.mode-switch .tabs button+button{border-left:0}.view-tools .seg{background:#0f0f10d9;border-radius:7px;padding:1px}.view-tools .seg button{border-radius:5px;height:18px}#toolbar{min-height:50px;box-shadow:var(--lit);background:linear-gradient(#1f1f22 0%,#18181a 100%);border-bottom:1px solid #000;gap:8px;padding:8px 12px}.brand{align-items:center;display:flex}.brand-mark{filter:drop-shadow(0 1px 2px #0009);width:28px;height:28px;display:block}.patient-chip{background:var(--field);border-color:#2e2e32;border-radius:999px;padding:4px 12px;box-shadow:inset 0 1px 2px #0006}.patient-chip:hover{background:#17171a}.tb-sep{background:linear-gradient(#0000,#3a3a40 30% 70%,#0000)}#rail{background:#141416;border-right:1px solid #000;gap:2px}#rail button{background:0 0;border:0;border-radius:10px}#rail button:hover{background:#ffffff0f}#rail button.on{background:var(--raised-hover);box-shadow:inset 0 1px 0 #ffffff17, var(--shadow-1)}#rail button.on:before{content:"";background:var(--titanium);border-radius:2px;width:3px;position:absolute;top:13px;bottom:13px;left:-3px}#rail .rail-badge{background:var(--titanium);box-shadow:0 0 0 2px #141416}#sidebar{border-right:1px solid #000;padding:12px 14px 18px;box-shadow:inset 1px 0 #ffffff08}#objects{box-shadow:inset 1px 0 #000}.ph h2,.obj-head h3{letter-spacing:-.012em;font-size:16px}.panel h3{letter-spacing:.07em}#implant-edit,.edit-box,.ai-box,.next-box{border:1px solid var(--hairline);box-shadow:var(--lit), var(--shadow-1);background:linear-gradient(#232326 0%,#1f1f22 100%);border-radius:11px;padding:10px 11px}#implant-list li,.obj-list li{border-color:var(--hairline);background:#ffffff06;border-radius:8px;transition:background-color .12s,border-color .12s}#implant-list li{padding:7px 10px}#implant-list li:hover,.obj-list li:hover{border-color:var(--hairline-strong);background:#ffffff0f}#implant-list li.sel{background:linear-gradient(#ffb81c21,#ffb81c12);border-color:#ffb81cb3;box-shadow:0 0 0 3px #ffb81c14}.obj-list li.sel{border-color:#ececef8c}details.sub>summary{align-items:center;gap:7px;list-style:none;display:flex}details.sub>summary::-webkit-details-marker{display:none}details.sub>summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;flex:none;width:6px;height:6px;margin:0 2px 0 3px;transition:transform .16s;transform:rotate(-45deg)}details.sub[open]>summary:before{transform:translateY(-2px)rotate(45deg)}.layout{background:var(--bg);gap:4px;padding:4px}.view{border-radius:9px;box-shadow:0 0 0 1px #ffffff12}.view:after{display:none}#status{min-height:26px;box-shadow:var(--lit);background:#141416;border-top:1px solid #000;align-items:center;padding:4px 12px;font-size:11.5px}.popover{-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%);box-shadow:var(--shadow-3), var(--lit);background:#202023d6;border:1px solid #ffffff1c;border-radius:12px}.popover.menu{padding:5px}.popover.menu>button,.popover.menu .recent-item{background:0 0;border-radius:7px}.popover.menu>button:hover,.popover.menu .recent-item:hover{background:#ffffff17}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080}.modal{box-shadow:var(--shadow-3), var(--lit);background:linear-gradient(#202023 0%,#19191b 100%);border:1px solid #ffffff1a;border-radius:16px;padding:20px 24px 18px}.modal h2{letter-spacing:-.015em;font-size:19px}.modal-close{background:var(--panel-3);width:28px;height:28px;color:var(--muted);border:0;border-radius:50%;padding:0;font-size:17px;line-height:1}.modal-close:hover{color:var(--text);background:#3d3d43}#loading{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000073}#loading .box{min-width:300px;box-shadow:var(--shadow-3), var(--lit);background:linear-gradient(#222225 0%,#1a1a1c 100%);border:1px solid #ffffff1a;border-radius:14px;padding:18px 22px}#loading .bar{border-radius:2px;height:4px;margin-top:12px}#loading-bar{background:var(--titanium);border-radius:2px;transition:width .15s}#drop-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:14px}.start-screen{background:radial-gradient(900px 520px at 50% 30%, #1c1c1f 0%, var(--bg) 72%);flex-direction:column;justify-content:safe center;align-items:center;gap:26px;display:flex;overflow:auto}.start-hero{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.start-hero .brand-mark{filter:drop-shadow(0 14px 28px #000000a6);width:84px;height:84px;margin-bottom:10px}.start-hero h1{letter-spacing:-.028em;background:linear-gradient(#fff 20%,#b9b9c1 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:30px;font-weight:650;line-height:1.15}.start-tag{color:var(--muted);margin:0;font-size:15px}.start-drop{width:min(600px,100%);box-shadow:var(--lit);color:#c9c9cf;background:linear-gradient(#ffffff0a,#ffffff04);border:1px dashed #fff3;border-radius:18px;flex:none;gap:12px;padding:26px 28px;transition:border-color .15s,background-color .15s}.start-drop:hover{border-color:#ffffff57}.start-drop>svg{opacity:.85;width:36px;height:36px}.start-drop h2{letter-spacing:-.01em;font-size:17px}.start-actions{margin-top:4px}.start-note{color:#8a8a92;align-items:center;gap:7px;margin:0;font-size:12px;display:flex}@media (prefers-reduced-transparency:reduce){.popover{background:var(--panel);-webkit-backdrop-filter:none;backdrop-filter:none}.modal-backdrop,#loading,#drop-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}.modal-backdrop{background:#000000b8}}@media (prefers-contrast:more){:root{--hairline:#ffffff4d;--hairline-strong:#ffffff73;--border:#6c6c73}.view{box-shadow:0 0 0 1px #ffffff59}}.help-cols{columns:3 250px;column-gap:28px;margin-top:14px;display:block}.help-cols section{break-inside:avoid;margin-bottom:18px}.help-cols h4{letter-spacing:.07em;border-bottom:1px solid var(--hairline);margin-bottom:8px;padding-bottom:6px;font-size:11px}.help-cols dl{gap:5px 12px;line-height:1.4}.help-cols dt{color:var(--text);font-weight:600}.help-cols dd{color:var(--muted)}
