@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-latin.woff2) format("woff2")}:root{--navy: #0b2545;--teal: #14b8a6;--golden: #f5b800;--bg: #000;--t-app: #f2f7f8;--t-chrome: #ffffff;--t-panel: #ffffff;--t-panel-2: #f5f9fa;--t-field: #ffffff;--t-head: #ebf2f4;--t-hover: #e3eef1;--t-line: #d2dee3;--t-line-soft: #e3ebee;--t-edge: #c3d1d8;--t-text: #0b2545;--t-muted: #5a6b80;--t-faint: #66778c;--t-accent-text: #0b7a70;--t-primary: #0b2545;--t-on-primary: #ffffff;--t-warn: #8f6800;--t-error: #b42318;--t-shadow: 0 8px 24px rgba(11, 37, 69, .14);--t-st-not: #66778c;--t-st-prog: #8f6800;--t-st-done: #0b7a70;--t-st-ver: #0b2545;--t-ok: #15803d;--t-st-back: #b42318;--t-st-rej: #7a4fa0;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--t-app: #061a30;--t-chrome: #0b2545;--t-panel: #0d2a4b;--t-panel-2: #0a2341;--t-field: #071c35;--t-head: #123257;--t-hover: #163a63;--t-line: #24486f;--t-line-soft: #1a3b62;--t-edge: #04111f;--t-text: #e6eef5;--t-muted: #a3b5c9;--t-faint: #8599b1;--t-accent-text: #2ec4b0;--t-primary: #14b8a6;--t-on-primary: #0b2545;--t-warn: #f5b800;--t-error: #f97066;--t-shadow: 0 10px 28px rgba(0, 0, 0, .45);--t-st-not: #a3b5c9;--t-st-prog: #f5b800;--t-st-done: #14b8a6;--t-st-ver: #e6eef5;--t-st-back: #f97066;--t-st-rej: #c4a8e8;--t-ok: #4ade80;color-scheme:dark}}:root[data-theme=dark]{--t-app: #061a30;--t-chrome: #0b2545;--t-panel: #0d2a4b;--t-panel-2: #0a2341;--t-field: #071c35;--t-head: #123257;--t-hover: #163a63;--t-line: #24486f;--t-line-soft: #1a3b62;--t-edge: #04111f;--t-text: #e6eef5;--t-muted: #a3b5c9;--t-faint: #8599b1;--t-accent-text: #2ec4b0;--t-primary: #14b8a6;--t-on-primary: #0b2545;--t-warn: #f5b800;--t-error: #f97066;--t-shadow: 0 10px 28px rgba(0, 0, 0, .45);--t-st-not: #a3b5c9;--t-st-prog: #f5b800;--t-st-done: #14b8a6;--t-st-ver: #e6eef5;--t-st-back: #f97066;--t-st-rej: #c4a8e8;--t-ok: #4ade80;color-scheme:dark}:root,.pop,.dialog,.v3d-pop,.ref-pop{--app: var(--t-app);--ok: var(--t-ok);--chrome: var(--t-chrome);--panel: var(--t-panel);--panel-2: var(--t-panel-2);--field: var(--t-field);--head: var(--t-head);--hover: var(--t-hover);--line: var(--t-line);--line-soft: var(--t-line-soft);--edge: var(--t-edge);--text: var(--t-text);--muted: var(--t-muted);--faint: var(--t-faint);--accent: var(--teal);--accent-text: var(--t-accent-text);--primary: var(--t-primary);--on-primary: var(--t-on-primary);--warn: var(--t-warn);--error: var(--t-error);--shadow: var(--t-shadow)}.bar,.top{--panel: var(--navy);--head: rgba(255, 255, 255, .1);--hover: rgba(255, 255, 255, .1);--field: rgba(255, 255, 255, .07);--line: rgba(255, 255, 255, .2);--line-soft: rgba(255, 255, 255, .12);--text: #ffffff;--muted: #a9bbcf;--faint: #8ea3bb;--accent-text: #5eead4;--warn: #f5b800;--error: #fda29b}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}body{background:var(--app);color:var(--text);font:13px/1.45 DM Sans,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,select,input{font:inherit;color:inherit}ul{list-style:none;margin:0;padding:0}.muted{color:var(--muted)}.warn{color:var(--warn)}.error-text{color:var(--error);font-size:12px;margin:0}.grow{flex:1;min-width:0}.tnum{font-variant-numeric:tabular-nums}.swatch{width:12px;height:12px;border-radius:2px;flex:none;display:inline-block;box-shadow:inset 0 0 0 1px #00000059}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sep{width:1px;height:18px;margin:0 4px;background:var(--line)}.icon-btn{display:inline-grid;place-items:center;min-width:26px;height:26px;background:none;border:0;border-radius:3px;color:var(--muted);cursor:pointer}.icon-btn:hover:not(:disabled){color:var(--text);background:var(--head)}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn.small{min-width:22px;height:22px}.app{display:grid;grid-template:"top top" 36px "left center" minmax(0,1fr) / 360px minmax(0,1fr);height:100%}.app.no-panel{grid-template-columns:0 minmax(0,1fr)}.no-panel .module{display:none}.center{grid-area:center;position:relative;z-index:1;min-width:0;min-height:0;background:var(--bg)}.top{grid-area:top;display:grid;grid-template-columns:346px auto 1fr;align-items:center;gap:12px;padding:0 8px;background:var(--navy);color:var(--text);border-bottom:1px solid var(--t-edge);position:relative;z-index:5}.logo{display:flex;align-items:center;gap:6px;min-width:0;margin-left:-4px;color:var(--text);white-space:nowrap}.logo .home{padding:0 6px}.tb-group{display:flex;align-items:center;gap:2px;margin:0;padding:0;border:0;min-width:0}.tb-right{display:flex;align-items:center;justify-content:flex-end;gap:2px;min-width:0}.tb{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 8px;background:none;border:1px solid transparent;border-radius:3px;color:var(--text);white-space:nowrap;cursor:pointer;list-style:none}.tb:hover:not(:disabled){background:var(--head);border-color:var(--line)}.tb:disabled,fieldset:disabled .tb{opacity:.35;cursor:default;background:none;border-color:transparent}.tb svg{color:var(--muted)}.tb-menu{position:relative}.tb-menu>summary::-webkit-details-marker{display:none}.tb-menu[open]>summary{background:var(--head);border-color:var(--line)}.tb-menu .pop{position:absolute;left:0;top:calc(100% + 4px);z-index:20;display:grid;min-width:180px;padding:4px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow)}.tb-menu .pop button{display:grid;gap:1px;padding:5px 10px;text-align:left;background:none;border:0;border-radius:2px;cursor:pointer}.tb-menu .pop button:hover{background:var(--hover)}.tb-menu .pop .muted{font-size:11px}.tb:focus-visible,.btn:focus-visible,.tile:focus-visible,.seg button:focus-visible,.icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.help .pop{left:auto;right:0;width:320px;padding:10px 12px}.help dl{display:grid;grid-template-columns:auto 1fr;gap:5px 14px;margin:0;font-size:12px}.help dt{color:var(--accent);white-space:nowrap;font-variant-numeric:tabular-nums}.help dd{margin:0}.tb-count{min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:var(--primary);color:var(--on-primary);font-size:10px;font-weight:700;line-height:15px;text-align:center}.comments .pop{width:400px;gap:8px}.ct{display:grid;gap:8px;min-width:0}.ct-scroll{display:flex;flex-direction:column-reverse;max-height:min(50vh,420px);overflow:auto;overscroll-behavior:contain}.ct-list{display:grid;gap:12px;margin:0;padding:2px 2px 4px;list-style:none}.ct-msg{display:flex;gap:8px;align-items:flex-start}.ct .avatar{flex:none;width:24px;height:24px;font-size:10.5px}.ct-main{min-width:0}.ct-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;margin:0;color:var(--faint);font-size:11px;line-height:1.3}.ct-head strong{color:var(--muted);font-weight:600}.ct-tag{padding:0 6px;border:1px solid var(--line);border-radius:8px;font-size:10.5px}.ct-body{margin:3px 0 0;color:var(--text);font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45}.ct-empty{margin:4px 0}.ct-compose{position:relative}.ct-compose textarea{display:block;width:100%;min-height:38px;max-height:140px;field-sizing:content;padding:9px 42px 9px 10px;background:var(--field);color:var(--text);border:1px solid var(--line);border-radius:8px;font:inherit;font-size:13px;line-height:1.4;resize:none}.ct-compose textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}.ct-compose button.ct-send{position:absolute;right:6px;bottom:5px;display:grid;place-items:center;width:28px;height:28px;padding:0;background:var(--primary);color:var(--on-primary);border:0;border-radius:6px;cursor:pointer}.ct-compose button.ct-send:hover:not(:disabled){background:var(--primary);filter:brightness(1.12)}.ct-compose button.ct-send:disabled{background:var(--hover);color:var(--faint);cursor:default}.comments .pop-title{margin:0;font-weight:600}.save{display:inline-flex;align-items:center;gap:5px;padding:0 6px;color:var(--muted);font-size:12px}.save.error{color:var(--error)}.module{grid-area:left;display:flex;flex-direction:column;min-height:0;background:var(--panel);border-right:1px solid var(--edge)}.module-scroll{flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding:4px 0 12px}.sec{margin:6px 6px 0;border:1px solid var(--line-soft);border-radius:6px;background:var(--panel)}.sec>summary{display:flex;align-items:center;gap:6px;height:24px;padding:0 6px;list-style:none;cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--head);border-bottom:1px solid var(--line-soft);border-radius:5px 5px 0 0}.sec:not([open])>summary{border-bottom:0;border-radius:5px}.sec>summary::-webkit-details-marker{display:none}.sec>summary:before{content:"";border:4px solid transparent;border-left:5px solid var(--muted);margin-right:-1px;transition:transform .12s;transform-origin:2px 50%}.sec[open]>summary:before{transform:rotate(90deg) translate(-1px)}.sec-title{flex:1;font-weight:600;font-size:12px}.sec-body{display:grid;gap:7px;padding:8px 8px 9px}.sec-btn{display:inline-flex;align-items:center;gap:4px;height:18px;padding:0 6px;background:var(--field);border:1px solid var(--line);border-radius:3px;font-size:11px;color:var(--text);cursor:pointer}.sec-btn:hover:not(:disabled){border-color:var(--accent)}.sec-btn:disabled{opacity:.35;cursor:default}.note{margin:0;color:var(--muted);font-size:11.5px;display:flex;align-items:center;gap:5px;flex-wrap:wrap}.note.warn{color:var(--warn)}.note kbd{padding:0 4px;border:1px solid var(--line);border-radius:2px;background:var(--field);color:var(--text);font-size:11px}.note.box-note{display:block;line-height:1.7}.form{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:6px 8px}.form>span:nth-child(odd){color:var(--muted)}.ctl{display:flex;align-items:center;gap:6px;min-width:0;min-height:24px}.ctl input[type=range]{accent-color:var(--accent)}.ctl input[type=checkbox],.check input{accent-color:var(--accent);margin:0}.unit{color:var(--muted);font-size:11.5px}.num{width:64px;height:22px;padding:0 4px;background:var(--field);border:1px solid var(--line);border-radius:2px;font-variant-numeric:tabular-nums}.num:focus{outline:none;border-color:var(--accent)}.num:disabled{opacity:.4}.check{display:flex;align-items:center;gap:6px;white-space:nowrap}.check:has(input:disabled){opacity:.45}.seg{display:inline-flex;border:1px solid var(--line);border-radius:4px;overflow:hidden}.seg button{min-width:44px;height:22px;padding:0 10px;background:var(--field);border:0;cursor:pointer;white-space:nowrap}.seg button+button{border-left:1px solid var(--line)}.seg button:hover:not(:disabled){background:var(--hover)}.seg button[aria-pressed=true]{background:var(--primary);color:var(--on-primary)}.seg button:disabled{opacity:.35;cursor:default}.btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:24px;padding:0 9px;background:var(--field);color:var(--text);border:1px solid var(--line);border-radius:4px;cursor:pointer;white-space:nowrap}.btn:disabled{opacity:.35;cursor:default}.btn[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 18%,var(--field));border-color:var(--accent)}.btn-row{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.no-panel .top{grid-template-columns:auto auto 1fr}.case-nav{position:relative;display:flex;align-items:center;gap:2px;width:300px}.case-menu{position:relative;flex:1;min-width:0}.case-warn{position:absolute;left:100%;display:inline-grid;place-items:center;margin-left:4px}.case-menu>summary{position:relative;overflow:hidden}.case-menu>summary .tnum{font-size:11.5px}.case-menu>summary .meter{position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:0;background:transparent}.case-menu>summary{display:flex;align-items:center;gap:6px;height:26px;padding:0 8px;list-style:none;cursor:pointer;background:var(--field);border:1px solid var(--line);border-radius:4px}.case-menu>summary::-webkit-details-marker{display:none}.case-menu>summary>.grow{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.case-menu>summary:hover,.case-menu[open]>summary{border-color:var(--accent)}.case-menu .pop{position:absolute;left:-28px;top:calc(100% + 4px);z-index:20;width:340px;padding:4px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow)}.module-empty{padding:12px}.seg-pane{flex:none;padding-bottom:4px}.module-scroll{padding-top:0}.splitter{flex:none;position:relative;height:7px;cursor:row-resize;touch-action:none;border-block:1px solid var(--line);background:var(--panel-2)}.splitter:after{content:"";position:absolute;left:50%;top:1px;width:28px;height:3px;margin-left:-14px;border-block:1px solid var(--muted);opacity:.6}.splitter:hover,.splitter:focus-visible{background:color-mix(in srgb,var(--accent) 35%,var(--panel-2));outline:none}.splitter:hover:after,.splitter:focus-visible:after{border-color:var(--text);opacity:.9}.seg-pane:has(>.sec:not([open]))+.splitter{display:none}.segs{height:var(--seg-h);overflow-y:auto;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--line) transparent;background:var(--field);border:1px solid var(--line);border-radius:2px}.seg-row{display:grid;grid-template-columns:44px minmax(0,1fr) 24px 24px 14px;align-items:center;gap:4px}.seg-list{display:grid;gap:4px;padding:4px}.seg-card{position:relative;background:var(--panel-2);border:1px solid var(--line-soft);border-radius:4px}.seg-card>.seg-row{height:44px;padding:2px 5px 2px 3px;border-radius:3px;cursor:pointer}.seg-card>.seg-row:hover{background:var(--hover)}.seg-card>.seg-row:focus-visible{outline:1px solid var(--accent);outline-offset:-1px}.seg-text{display:grid;gap:2px;min-width:0}.seg-card .name{display:flex;align-items:center;gap:7px;min-width:0;font-weight:600}.seg-card .cat{padding-left:19px;color:var(--muted);font-size:11.5px}.seg-card .name,.seg-card .cat{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seg-card .swatch{background:var(--c)}.seg-card .chev{color:var(--muted)}.seg-card.dim{opacity:.5}.seg-card.locked .name{color:var(--muted)}.seg-card.sel{border-color:var(--c);background:color-mix(in srgb,var(--c) 7%,var(--panel-2));box-shadow:inset 2px 0 0 var(--c)}.seg-card.sel>.seg-row:hover{background:color-mix(in srgb,var(--c) 10%,var(--panel-2))}.seg-card.sel .name{color:var(--text)}.seg-card.verified{border-color:color-mix(in srgb,var(--ok) 70%,transparent);box-shadow:inset 3px 0 0 var(--ok);background:color-mix(in srgb,var(--ok) 6%,var(--panel-2))}.seg-card.verified.sel{border-color:var(--ok)}.seg-card.sel .chev{color:var(--text)}.seg-body{display:grid;gap:6px;padding:2px 6px 6px 3px;cursor:default}.seg-body>:not(.btn-row){margin-left:48px}.seg-meta{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:2px 10px;margin:0;font-size:11.5px;align-items:center}.seg-meta dt{color:var(--muted)}.seg-meta dd{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ref-thumb{flex:none;padding:0;background:#101011;border:1px solid var(--line);border-radius:3px;cursor:zoom-in}.ref-thumb:hover,.ref-thumb:focus-visible{border-color:var(--c, var(--accent));outline:none}.ref-thumb>img{display:block;width:100%;height:100%;object-fit:cover;border-radius:2px}.seg-thumb{display:grid;width:44px;height:36px;border-radius:4px;background:var(--field)}.seg-thumb>.ref-thumb{border-radius:4px}.ref-pop{position:fixed;z-index:40;display:grid;width:264px;padding:4px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow);pointer-events:none;text-align:left;cursor:default}.ref-pop>img{display:block;width:100%;aspect-ratio:1;object-fit:contain;border-radius:4px;background:#0a0f16}.ref-cap{display:grid;gap:2px;padding:6px 4px 2px;font-size:12px;color:var(--muted)}.ref-cap strong{color:var(--text);font-weight:600}.ref-credit{font-size:10.5px;opacity:.8}.seg-body .btn{height:22px;padding:0 6px;font-size:11.5px}.eye{display:grid;place-items:center;width:24px;height:24px;background:none;border:0;border-radius:2px;color:var(--muted);cursor:pointer}.eye:hover{color:var(--text);background:var(--hover)}.seg-card.sel .eye{color:var(--text)}.segs .num.op{width:48px;height:24px}.op-box{display:inline-flex;align-items:center;gap:3px}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:50px;padding:2px;background:var(--field);border:1px solid var(--line);border-radius:6px;cursor:pointer;font-size:11px;color:var(--text)}.tile svg{color:var(--muted)}.tile:hover:not(:disabled){border-color:var(--muted)}.tile[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 16%,var(--field));border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.tile[aria-pressed=true] svg{color:var(--accent-text)}.tile:disabled{opacity:.3;cursor:default}.effect-name{padding:6px 0 0;font-weight:600;text-align:center;border-top:1px solid var(--line-soft)}.sel-name{display:flex;align-items:center;gap:6px;min-width:0;font-weight:600}.sel-name .muted{font-weight:400}.stage{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--bg)}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px 20px;min-width:min(300px,100%);max-width:100%}.card h1{margin:0 0 8px;padding:0 10px;font-size:13px;font-weight:600}.card p{margin:4px 0}.card.error{border-color:var(--error);color:var(--error)}.card.error .muted{color:inherit;opacity:.8}.cases-card{width:min(400px,calc(100% - 32px));text-align:left}.case-items{display:grid;gap:1px}.case{display:grid;grid-template:"icon name meta" auto "icon bar bar" auto / 18px 1fr auto;align-items:center;gap:4px 8px;width:100%;padding:7px 10px;text-align:left;background:none;border:0;border-radius:4px;cursor:pointer}.case:hover{background:var(--hover)}.case[aria-current=true]{background:color-mix(in srgb,var(--accent) 16%,transparent)}.case>.st{grid-area:icon}.case .name{grid-area:name;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.case-meta{grid-area:meta;display:flex;gap:8px;font-size:11.5px}.case .meter{grid-area:bar}.panel{--view: #6a6a6a}.panel[data-mode=axial]{--view: #c64b4b}.panel[data-mode=coronal]{--view: #5fa25f}.panel[data-mode=sagittal]{--view: #d6c13f}.panel[data-mode=crossSection]{--view: #4fa0b8}.panel[data-mode=panorama]{--view: #b07acc}.panel>header{background:color-mix(in srgb,var(--view) 16%,var(--panel));box-shadow:inset 3px 0 0 var(--view);border-bottom-color:color-mix(in srgb,var(--view) 40%,var(--panel))}.panel>header>select{font-weight:600}.field{display:grid;grid-template-columns:44px 1fr 52px;align-items:center;gap:8px;margin:6px 0 0;font-size:12px;color:var(--muted)}.field output{text-align:right;color:var(--text);font-variant-numeric:tabular-nums}.viewers{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--app)}.gl{position:absolute;top:0;right:0;bottom:0;left:0}.grid{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template:1fr 1fr / 1fr 1fr;gap:4px;padding:4px}.grid.max{grid-template:1fr / 1fr}.panel{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--edge)}.panel[hidden]{display:none}.panel header{display:flex;align-items:center;justify-content:space-between;gap:8px;height:30px;padding:0 4px 0 6px;background:var(--panel-2);border-bottom:1px solid var(--line)}.panel select{background:none;border:0;padding:2px 4px;border-radius:4px;cursor:pointer}.panel select:hover{background:var(--line)}.panel option{background:var(--panel);color:var(--text)}.icon{display:inline-grid;place-items:center;width:24px;height:24px;background:none;border:0;color:var(--muted);cursor:pointer;border-radius:4px}.icon:hover{color:var(--text);background:var(--line)}.vp{position:relative;flex:1;min-height:0;overflow:hidden;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.vp .xh{position:absolute;left:0;top:0;background:color-mix(in srgb,var(--accent) 60%,transparent);pointer-events:none}.vp .xh-h{width:100%;height:1px}.vp .xh-v{width:1px;height:100%}.vp .dir,.vp .info{position:absolute;font-size:11px;color:#ffffffb8;pointer-events:none;text-shadow:0 0 3px #000}.dir-left{left:6px;top:50%}.dir-right{right:6px;top:50%}.dir-top{top:4px;left:50%}.dir-bottom{bottom:4px;left:50%}.info{left:6px;bottom:4px;font-variant-numeric:tabular-nums}.soon{position:absolute;top:0;right:0;bottom:0;left:0;display:none;place-items:center;margin:0;padding:24px;text-align:center;color:#a3b5c9;background:#000;pointer-events:none}.vp .arch{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.brush-cursor{position:absolute;left:0;top:0;display:none;border:1.5px solid rgba(255,255,255,.85);border-radius:50%;pointer-events:none;box-shadow:0 0 0 1px #00000080}canvas.pano{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.vp .arch{filter:drop-shadow(0 0 1.5px rgba(0,0,0,.9))}.trace{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.arch .curve{fill:none;stroke:var(--accent);stroke-width:2}.arch .tick-bg{fill:none;stroke:#000;stroke-width:4;stroke-linecap:round;opacity:.6}.arch .tick{fill:none;stroke:var(--golden);stroke-width:1.75;stroke-linecap:round}.arch .tick-dot{fill:var(--golden);stroke:#000;stroke-width:1}.arch circle{fill:var(--accent);stroke:#000;stroke-width:1.5}.arch circle.sel{fill:#fff;stroke:var(--accent);stroke-width:2.5}.hdr-tools{display:flex;align-items:center;gap:2px}.arch-switch{display:flex;gap:2px;margin-right:4px;padding:2px;border:1px solid var(--line);border-radius:6px}.arch-switch button{position:relative;display:grid;place-items:center;width:26px;height:20px;background:none;border:0;border-radius:4px;color:var(--muted);cursor:pointer}.arch-switch button:hover:not(:disabled){color:var(--text);background:var(--line)}.arch-switch button:disabled{opacity:.35;cursor:default}.arch-sep{width:1px;margin:2px 1px;background:var(--line)}.arch-switch button[aria-pressed=true]{color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent)}.arch-switch button[data-hidden=true]{color:var(--muted);background:none;opacity:.75}.arch-switch button[data-hidden=true]:after{content:"";position:absolute;left:5px;right:5px;top:50%;height:1.5px;background:currentColor;transform:rotate(-35deg)}.slab{display:flex;align-items:center;gap:6px;margin-right:4px;color:var(--muted);font-size:11px}.slab input{width:72px;accent-color:var(--accent)}.slab output{min-width:34px;text-align:right;color:var(--text);font-variant-numeric:tabular-nums}.vslider{position:absolute;right:4px;top:18px;bottom:18px;width:18px;cursor:pointer;touch-action:none}.vslider:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;border-radius:2px;background:#ffffff29;transition:background .15s}.vslider .thumb{position:absolute;left:50%;width:6px;height:20px;margin:-10px 0 0 -3px;border-radius:3px;background:#fff9;transition:background .15s,width .15s,margin .15s}.vslider:hover:before,.vslider.drag:before{background:#ffffff4d}.vslider:hover .thumb,.vslider.drag .thumb{width:8px;margin-left:-4px;background:var(--accent)}.vslider .val{position:absolute;right:22px;transform:translateY(-50%);padding:1px 6px;border-radius:4px;background:#000c;color:#e6eef5;border:1px solid rgba(255,255,255,.2);font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums;opacity:0;pointer-events:none;transition:opacity .15s}.vslider:hover .val,.vslider.drag .val{opacity:1}.vp .dir-right{right:28px}.vp .hint{position:absolute;left:50%;bottom:26px;transform:translate(-50%);padding:3px 10px;border-radius:999px;background:#000000bf;border:1px solid rgba(255,255,255,.2);color:#d5e1ec;font-size:11px;white-space:nowrap;pointer-events:none}.arch .slab-fill{fill:color-mix(in srgb,var(--accent) 10%,transparent);stroke:none}.arch .slab-edge{fill:none;stroke:color-mix(in srgb,var(--accent) 65%,transparent);stroke-width:1;stroke-dasharray:5 4}.toast{position:fixed;right:16px;bottom:16px;z-index:60;display:flex;align-items:flex-start;gap:10px;max-width:380px;padding:10px 10px 10px 14px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-left:3px solid var(--error);border-radius:8px;box-shadow:var(--shadow);font-size:13px}.vp.painting{cursor:none}.brush-cursor:after{content:"";position:absolute;left:50%;top:50%;width:3px;height:3px;margin:-1.5px 0 0 -1.5px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #0009}.brush-cursor.erase{border:1.5px dashed #fb7185;background:color-mix(in srgb,#fb7185 12%,transparent);box-shadow:0 0 0 1px #00000073}.brush-cursor .eraser-icon{display:none;position:absolute;left:72%;top:72%;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.7))}.brush-cursor.erase .eraser-icon{display:block}.v3d{position:relative}.v3d-pop{position:absolute;right:0;top:28px;z-index:20;width:288px;display:grid;gap:8px;padding:10px 12px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);font-size:12px;color:var(--muted)}.v3d-pop .field{grid-template-columns:96px 1fr 54px;margin:0}.v3d-pop .check{display:flex;align-items:center;gap:6px;color:var(--text)}.v3d-sec{display:grid;gap:8px}.v3d-sec.off{opacity:.4;pointer-events:none}.v3d-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.v3d-head .link{background:none;border:0;padding:0;color:var(--accent);cursor:pointer;font-size:12px}.v3d-head .link:disabled{color:var(--muted);opacity:.5;cursor:default}.clip-row{display:grid;grid-template-columns:12px 1fr 12px;align-items:center;gap:6px;text-align:center}.dual{--lo: 0;--hi: 1;--thumb: 12px;position:relative;height:18px}.dual:before,.dual:after{content:"";position:absolute;top:50%;height:4px;margin-top:-2px;border-radius:2px;pointer-events:none}.dual:before{left:calc(var(--thumb) / 2);right:calc(var(--thumb) / 2);background:var(--line)}.dual:after{left:calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--lo));right:calc(var(--thumb) / 2 + (100% - var(--thumb)) * (1 - var(--hi)));background:var(--accent)}.dual.single input{pointer-events:auto}.dual input{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;width:100%;margin:0;background:none;pointer-events:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.dual input::-webkit-slider-runnable-track{height:18px;background:none}.dual input::-moz-range-track{height:18px;background:none}.dual input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:var(--thumb);height:var(--thumb);margin-top:3px;border-radius:50%;border:2px solid var(--panel);background:var(--accent);cursor:pointer}.dual input::-moz-range-thumb{pointer-events:auto;width:calc(var(--thumb) - 4px);height:calc(var(--thumb) - 4px);border-radius:50%;border:2px solid var(--panel);background:var(--accent);cursor:pointer}.st-notStarted,.st-unassigned{--st: var(--t-st-not)}.st-inProgress{--st: var(--t-st-prog)}.st-completed{--st: var(--t-st-done)}.st-verified{--st: var(--t-st-ver)}.st-sentBack{--st: var(--t-st-back)}.st-rejectRequested,.st-rejected{--st: var(--t-st-rej)}.top .st-notStarted{--st: #a3b5c9}.top .st-inProgress{--st: #f5b800}.top .st-completed{--st: #14b8a6}.top .st-verified{--st: #e6eef5}.top .st-rejected{--st: #c4a8e8}.st,.st-text{color:var(--st);display:inline-grid;place-items:center}.meter{display:block;height:4px;border-radius:2px;background:var(--line);overflow:hidden}.meter i{display:block;height:100%;border-radius:2px;background:var(--st);transition:width .2s}@media (prefers-reduced-motion: reduce){.meter i{transition:none}}.st-pick{position:relative;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:var(--st);cursor:pointer}.st-pick:hover:has(select:enabled){background:color-mix(in srgb,var(--st) 16%,transparent)}.st-pick:focus-within{box-shadow:0 0 0 1px var(--st)}.st-pick select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;cursor:pointer}.st-pick select:disabled{cursor:default}.st-pick option{background:var(--panel);color:var(--text)}.rv{display:grid;gap:8px}.rv-acts{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px}.rv-act{flex-direction:column;gap:1px;padding:0 4px;font-size:11.5px;height:auto;min-height:40px}.rv-act>svg{color:var(--st)}.rv-act:hover:not(:disabled){border-color:var(--st);background:color-mix(in srgb,var(--st) 10%,var(--field))}.rv-next{justify-content:flex-start;width:100%}.rv-next .faint{margin-left:auto}.rv-bulk{display:grid;gap:4px}.rv-bulk>.btn{justify-content:flex-start}.rv-bulk>.btn .faint{margin-left:auto}.rv .feedback{grid-column:auto;display:grid;gap:2px;padding:6px 8px}.rv .feedback strong{display:inline-flex;align-items:center;gap:4px}.cm-field{display:grid;gap:3px}.cm-label{color:var(--muted);font-size:11.5px;font-weight:600}.cm-field textarea{width:100%;padding:4px 6px;background:var(--field);color:var(--text);border:1px solid var(--line);border-radius:4px;font:inherit;font-size:12px;resize:vertical}.cm-field textarea:focus{outline:none;border-color:var(--accent)}.cm-hint{color:var(--faint);font-size:11px}.cm .timeline,.rv .timeline{margin:0;font-size:12px}.brand{display:inline-flex;align-items:center;gap:10px;color:#fff;white-space:nowrap}.brand .cdx-mark{display:block;color:#fff}.brand-sep{width:1px;height:16px;background:#ffffff59}.brand-name{font-size:15px;font-weight:600;letter-spacing:.01em}.top .brand{gap:8px}.top .brand .cdx-mark{height:13px}.top .brand-name{font-size:13px}.top .brand-sep{height:13px}.page .btn,.dialog .btn{height:30px;padding:0 12px;font-weight:500}.role-tag{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 7px;border:1px solid var(--line);border-radius:4px;color:var(--muted);font-size:12px;white-space:nowrap}.btn:hover:not(:disabled){border-color:var(--accent)}.btn.cta{background:var(--golden);border-color:var(--golden);color:var(--navy);font-weight:600}.btn.cta:hover:not(:disabled){background:#ffc61a;border-color:#ffc61a}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary);font-weight:600}.btn.primary:hover:not(:disabled){filter:brightness(1.12);border-color:var(--primary)}.btn.danger{background:var(--error);border-color:var(--error);color:#fff;font-weight:600}:root[data-theme=dark] .btn.danger{color:var(--navy)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .btn.danger{color:var(--navy)}}.btn.ghost{background:none;border-color:transparent;color:var(--muted)}.btn.ghost:hover:not(:disabled){color:var(--text);background:var(--hover);border-color:transparent}.link{display:inline-flex;align-items:center;gap:4px;padding:0;background:none;border:0;color:var(--accent-text);font-weight:500;text-decoration:none;cursor:pointer}.link:hover{text-decoration:underline}.faint{color:var(--faint)}.small{font-size:12px}:focus-visible{outline-color:var(--accent)}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.shell{--side: 240px;height:100%;display:grid;grid-template:"bar bar" 56px "side page" minmax(0,1fr) / var(--side) minmax(0,1fr);background:var(--app)}.shell.collapsed{--side: 64px}.bar{grid-area:bar;display:flex;align-items:center;gap:12px;padding:0 16px 0 12px;background:var(--navy);color:var(--text);border-bottom:1px solid var(--t-edge);z-index:2}.bar-brand{display:inline-flex;align-items:center;gap:14px;height:100%;margin-right:auto;color:inherit;text-decoration:none}.bar-toggle{min-width:36px;height:36px;border-radius:6px;color:var(--muted)}.bar-toggle:hover:not(:disabled){color:var(--text);background:var(--hover)}.bar-sub{padding-left:14px;border-left:1px solid rgba(255,255,255,.2);color:var(--muted);font-size:12px;white-space:nowrap}.badge{display:inline-grid;place-items:center;min-width:20px;height:18px;padding:0 6px;border-radius:9px;background:var(--teal);color:var(--navy);font-size:12px;font-weight:600}.side{grid-area:side;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--panel);border-right:1px solid var(--line);transition:width .2s}.side nav{display:grid;align-content:start;gap:2px;flex:1;padding:12px 0;overflow-y:auto}.side-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);white-space:nowrap}.side-section{display:block;padding:18px 16px 6px}.nav-item{position:relative;display:flex;align-items:center;gap:12px;height:40px;padding:0 16px;color:var(--muted);font-weight:500;text-decoration:none;white-space:nowrap}.nav-item>svg{flex:none}.nav-item:hover{color:var(--text);background:var(--hover)}.nav-item[aria-current=page]{color:var(--accent-text);background:color-mix(in srgb,var(--teal) 12%,var(--panel));font-weight:600}.nav-item[aria-current=page]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--teal)}.nav-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.side-foot{position:relative;display:grid;gap:4px;padding:12px 16px 14px;background:var(--panel-2);border-top:1px solid var(--line)}.side-role{display:inline-flex;align-items:center;gap:8px;font-weight:600}.side-role .dot{width:8px;height:8px;border-radius:50%;background:var(--teal)}.side-foot p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.side-role-mini{display:none;place-items:center;width:32px;height:32px;margin:0 auto;border-radius:50%;background:color-mix(in srgb,var(--teal) 16%,var(--panel));color:var(--accent-text);font-weight:600}.collapsed .nav-text,.collapsed .side-section,.collapsed .side-foot>:not(.side-role-mini){display:none}.collapsed .nav-item{justify-content:center;padding:0}.collapsed .nav-item .badge{position:absolute;top:8px;right:14px;min-width:8px;height:8px;padding:0;font-size:0}.collapsed .side-foot{padding:12px 0}.collapsed .side-role-mini{display:grid}.page{grid-area:page;overflow:auto;padding:24px 32px 48px}.page-inner{max-width:1320px;margin:0 auto}.page-inner>*+*{margin-top:20px}.user-menu>summary{height:34px;padding:0 8px 0 4px}.top .user-menu>summary{height:26px}.avatar{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--teal);color:var(--navy);font-size:12px;font-weight:600}.top .avatar{width:20px;height:20px;font-size:10px}.tb .avatar{color:var(--navy)}.who{display:grid;text-align:left;line-height:1.2}.who-role{font-size:12px;color:var(--muted)}.top .who-role{display:none}.user-menu .pop{left:auto;right:0;width:260px;padding:6px}.pop-head{display:grid;gap:2px;padding:6px 8px 8px;border-bottom:1px solid var(--line-soft);margin-bottom:4px}.pop-label{margin:8px 8px 4px;font-size:12px;color:var(--muted)}.tb-menu .pop .pop-item{display:flex;align-items:center;gap:8px;padding:6px 8px}.pop-item .tick{visibility:hidden;color:var(--accent-text)}.pop-item[aria-checked=true] .tick{visibility:visible}.pop-item[aria-checked=true]{font-weight:600}.pop-item .muted{margin-left:auto;font-size:12px}.pop-sep{height:1px;margin:6px 0;background:var(--line-soft)}.theme-seg{display:flex;margin:0 8px 4px}.theme-seg button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:4px;height:26px}.tb-menu .pop .theme-seg button{display:inline-flex;gap:4px;padding:0 6px;border-radius:0}.tb-menu .pop .theme-seg button[aria-pressed=true]{background:var(--primary);color:var(--on-primary)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-head h1{margin:0;font-size:22px;font-weight:600;line-height:1.25;letter-spacing:-.01em}.page-head .lead{margin:4px 0 0;color:var(--muted);max-width:72ch}.page-actions{display:flex;align-items:center;gap:8px}.title-row{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.title-row .chip-st,.title-row .chip-pr{font-size:12px}.back{display:inline-flex;align-items:center;gap:4px;color:var(--muted);text-decoration:none;font-weight:500}.back:hover{color:var(--text)}.page-inner>.back+.page-head{margin-top:8px}.filters{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.filters-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stage-seg{background:var(--field)}.stage-seg button{height:30px;padding:0 12px}.seg .count{margin-left:6px;color:var(--muted);font-size:12px}.seg button[aria-pressed=true] .count{color:inherit;opacity:.8}.btn .count{color:var(--muted);font-size:12px}.select,.field-row select,.field-row input,.field-col textarea,.field-row input[type=date]{height:30px;padding:0 8px;background:var(--field);color:var(--text);border:1px solid var(--line);border-radius:4px}.field-col textarea{height:auto;padding:6px 8px;resize:vertical;font:inherit}.select:focus,.field-row select:focus,.field-row input:focus,textarea:focus{border-color:var(--accent);outline:none}.search{display:flex;align-items:center;gap:6px;height:30px;padding:0 10px;background:var(--field);border:1px solid var(--line);border-radius:4px;color:var(--muted)}.search:focus-within{border-color:var(--accent)}.search input{width:180px;background:none;border:0;outline:none;color:var(--text)}.bulk{display:flex;align-items:center;gap:12px;padding:8px 12px;background:color-mix(in srgb,var(--teal) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--teal) 45%,var(--line));border-radius:8px}.table-wrap{overflow-x:auto;background:var(--panel);border:1px solid var(--line);border-radius:8px}.table{width:100%;border-collapse:collapse}.table th{height:36px;padding:0 12px;text-align:left;font-size:12px;font-weight:600;color:var(--muted);background:var(--panel-2);border-bottom:1px solid var(--line);white-space:nowrap}.table td{height:52px;padding:0 12px;border-bottom:1px solid var(--line-soft);white-space:nowrap}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:not(.static){cursor:pointer}.table tbody tr:hover{background:var(--hover)}.table tbody tr.static:hover{background:none}.table tr[aria-selected=true]{background:color-mix(in srgb,var(--teal) 9%,var(--panel))}.table .col-check{width:40px;padding-right:0}.table .col-check input{width:16px;height:16px;accent-color:var(--teal);cursor:pointer}.table .col-prog{width:180px}.table .col-act{width:1%;text-align:right}.table .num-col{text-align:right;width:1%}.table .sub{display:block;max-width:280px;overflow:hidden;text-overflow:ellipsis;font-size:12px}.table.compact td{height:40px}.table tr.inactive td{color:var(--faint)}.case-link{color:var(--text);font-weight:600;text-decoration:none}.case-link:hover{color:var(--accent-text);text-decoration:underline}.prog{display:flex;align-items:center;gap:8px}.prog .meter{flex:1}.prog .tnum{min-width:34px;text-align:right;font-size:12px;color:var(--muted)}.late{color:var(--error);font-weight:600}.chip-st{display:inline-flex;align-items:center;gap:6px;color:var(--st);font-weight:500;white-space:nowrap}.chip-st>svg{flex:none}.chip-pr{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap}.pr-urgent{background:color-mix(in srgb,var(--error) 14%,transparent);color:var(--error)}.pr-high{background:color-mix(in srgb,var(--golden) 22%,transparent);color:var(--warn)}.pr-normal{padding:0;color:var(--muted);font-weight:400}.pr-low{padding:0;color:var(--faint);font-weight:400}.due.late{color:var(--error);font-weight:600}.empty{display:grid;justify-items:center;gap:8px;padding:48px 16px;text-align:center;background:var(--panel);border:1px dashed var(--line);border-radius:8px}.empty p{margin:0}.card-box{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px}.card-box>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-4px 0 12px}.card-box h2{margin:0;font-size:15px;font-weight:600}.detail{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:16px;align-items:start}.detail-main{display:grid;gap:16px}@media (max-width: 960px){.detail{grid-template-columns:1fr}}.small-prog{width:160px}.class-list{display:grid}.class-list li{display:grid;grid-template-columns:14px minmax(0,1fr) auto auto;align-items:center;gap:4px 12px;padding:10px 0;border-top:1px solid var(--line-soft)}.class-list li:first-child{border-top:0}.class-list .swatch{width:14px;height:14px;border-radius:4px;background:var(--c)}.feedback{grid-column:2 / -1;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;margin:0;padding:8px 10px;border-left:3px solid var(--error);border-radius:0 4px 4px 0;background:color-mix(in srgb,var(--error) 8%,var(--panel));color:var(--text);font-size:12px}.feedback strong{color:var(--error)}.seg-body .feedback{grid-column:auto;display:grid;gap:2px;padding:6px 8px}.seg-body .feedback strong{display:inline-flex;align-items:center;gap:4px}.facts{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px 16px;margin:0}.facts dt{color:var(--muted)}.facts dd{margin:0}.timeline{display:grid;gap:0;margin:0;padding:0;list-style:none}.tl{position:relative;padding:10px 0 10px 18px;border-top:1px solid var(--line-soft)}.tl:first-child{border-top:0}.tl:before{content:"";position:absolute;left:2px;top:16px;width:8px;height:8px;border-radius:50%;background:var(--line)}.tl-comment:before{background:var(--teal)}.tl-sendback:before{background:var(--error)}.tl-status:before{background:var(--muted)}.tl p{margin:0}.tl blockquote{margin:6px 0 0;padding:6px 10px;background:var(--panel-2);border:1px solid var(--line-soft);border-radius:4px;white-space:pre-wrap;overflow-wrap:anywhere}.tl time{display:block;margin-top:2px;font-size:12px}.kpis{display:grid}.legend{display:flex;flex-wrap:wrap;gap:4px 20px;margin-top:12px}.legend a{display:inline-flex;align-items:center;gap:6px;color:var(--st);text-decoration:none}.legend .legend-text{color:var(--text)}.legend strong{color:var(--text);font-weight:600}.legend a:hover .legend-text{text-decoration:underline}.flag{display:inline-flex;height:22px;align-items:center;padding:0 8px;border-radius:4px;font-size:12px;font-weight:600;background:color-mix(in srgb,var(--golden) 22%,transparent);color:var(--warn)}.flag-overdue,.flag-urgent,.flag-re-annotate{background:color-mix(in srgb,var(--error) 14%,transparent);color:var(--error)}.role-chips{display:inline-flex;gap:4px;flex-wrap:wrap}.role-chip{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:4px;background:var(--head);color:var(--text);font-size:12px;font-weight:500}.role-picks{display:flex;gap:12px;flex-wrap:wrap}.role-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.role-card p{margin:4px 0 0}.matrix .mx{width:120px;text-align:center}.matrix .yes{color:var(--accent-text)}.dialog{width:min(480px,calc(100% - 32px));padding:0;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.dialog::backdrop{background:#061a308c}.dialog form{display:grid}.dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 0}.dialog h2{margin:0;font-size:15px;font-weight:600}.dialog-lead{margin:4px 16px 0;color:var(--muted)}.dialog-body{display:grid;gap:12px;padding:16px}.dialog footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--line-soft);background:var(--panel-2);border-radius:0 0 8px 8px}.field-row{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;margin:0;padding:0;border:0}.field-row>span:first-child,.field-row>legend{color:var(--muted);padding:0}.field-row>legend{float:left;width:96px}.field-col{display:grid;gap:6px}.field-col>span{color:var(--muted)}.field-row .ctl{gap:8px}.signin{height:100%;display:grid;grid-template-columns:minmax(320px,5fr) 7fr;grid-template-rows:minmax(0,1fr);background:var(--app)}.signin-brand{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;padding:48px;background:var(--navy);color:#fff}.signin-brand .cdx-mark{color:#fff}.signin-brand h1{margin:8px 0 0;font-size:22px;font-weight:600}.signin-brand p{margin:0;max-width:34ch;color:#a9bbcf;font-size:15px}.signin-panel{display:flex;overflow-y:auto;padding:32px 16px}.signin-card{width:min(400px,100%);margin:auto}.signin-card h2{margin:0;font-size:22px;font-weight:600}.signin-card>.muted{margin:4px 0 16px}.signin-users{display:grid;gap:8px}.signin-users button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 14px;text-align:left;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:8px;cursor:pointer}.signin-users button:hover{border-color:var(--teal)}.signin-users button>span{display:grid;gap:2px}.signin-users button .muted{font-size:12px}.signin-users button>svg{color:var(--muted)}.reset-demo{margin-top:16px;font-size:12px;color:var(--muted)}@media (max-width: 720px){.signin{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.signin-brand{padding:24px}}.back-btn{margin:10px 10px 0}@media (prefers-reduced-motion: reduce){*{transition:none!important}}.avatar.small{width:24px;height:24px;font-size:11px;flex:none}.person{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.person.big .avatar{width:48px;height:48px;font-size:17px}.person.big h1{margin:0;font-size:22px;font-weight:600}.person.big p{margin:2px 0 0}.state-chip{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:11px;background:var(--head);color:var(--muted);font-size:12px;font-weight:600}.state-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.state-chip.on{background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--accent-text)}.role-count{display:inline-flex;align-items:center;gap:6px;margin-top:10px;color:var(--accent-text);font-size:12px;font-weight:600}.kpis{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.kpi{display:grid;gap:4px;padding:18px 20px;background:var(--panel);border:1px solid var(--line);border-radius:8px;color:var(--text);text-decoration:none}.kpi:hover{border-color:var(--teal)}.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.kpi .kpi-label{color:var(--muted);font-weight:500}.kpi-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px}.kpi .kpi-value{font-size:28px;font-weight:600;line-height:1.2;letter-spacing:-.01em}.kpi-delta{font-size:12px;color:var(--muted)}.kpi-primary .kpi-icon{background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--accent-text)}.kpi-warn .kpi-icon{background:color-mix(in srgb,var(--golden) 20%,transparent);color:var(--warn)}.kpi-success .kpi-icon{background:color-mix(in srgb,var(--t-st-ver) 12%,transparent);color:var(--t-st-ver)}.kpi-danger .kpi-icon{background:color-mix(in srgb,var(--error) 14%,transparent);color:var(--error)}.kpi-danger .kpi-value,.kpi-danger .kpi-delta{color:var(--error)}.kpi-muted .kpi-icon{background:var(--head);color:var(--muted)}.grid-7-5{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px;align-items:stretch}.grid-1-1{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}@media (max-width: 1100px){.grid-7-5,.grid-1-1{grid-template-columns:1fr}}.card-box p.small{margin:2px 0 0}.chart-empty{margin:0;padding:32px 0;text-align:center}.trend-pill{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border-radius:4px;background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--accent-text);font-size:12px;font-weight:600;white-space:nowrap}.tp{display:grid;grid-template:"y plot" 240px ". x" auto / 28px minmax(0,1fr);column-gap:8px;margin-top:8px}.tp-y{grid-area:y;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;font-size:11px;color:var(--faint);transform:translateY(-.5em);height:calc(100% + 1em);margin-bottom:-1em}.tp-plot{grid-area:plot;position:relative;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));align-items:end;border-bottom:1px solid var(--line)}.tp-grid{position:absolute;left:0;right:0;border-top:1px dashed var(--line-soft);pointer-events:none}.tp-col{position:relative;display:flex;align-items:flex-end;justify-content:center;height:100%;border-radius:4px 4px 0 0}.tp-col.on{background:color-mix(in srgb,var(--text) 6%,transparent)}.tp-stack{display:flex;flex-direction:column-reverse;gap:2px;width:min(28px,62%)}.tp-stack i{min-height:2px;background:var(--st)}.tp-stack i:last-child{border-radius:4px 4px 0 0}.tp-empty{position:absolute;left:0;right:0;top:40%;margin:0;text-align:center;pointer-events:none}.tp-tip{position:absolute;top:8px;z-index:2;display:grid;gap:4px;min-width:150px;padding:8px 10px;transform:translate(-50%);background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow);font-size:12px;pointer-events:none}.tp-tip>span{display:flex;align-items:center;gap:6px;color:var(--st)}.tp-tip b{margin-left:auto;color:var(--text)}.tp-x{grid-area:x;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));padding-top:6px;font-size:11px;color:var(--faint);text-align:center;white-space:nowrap}.tp-legend{justify-content:center;margin-top:14px}@media (max-width: 1280px){.tp-x span:nth-child(2n){visibility:hidden}}.legend li{display:inline-flex;align-items:center;gap:6px;color:var(--st)}.legend-dot{width:10px;height:10px;border-radius:2px;background:var(--st)}.dist{display:grid;gap:4px}.dist-row{display:grid;grid-template-columns:170px minmax(0,1fr) 72px;align-items:center;gap:12px;padding:6px 8px;border-radius:4px;color:var(--text);text-decoration:none}.dist-row:hover{background:var(--hover)}.dist-label{display:inline-flex;align-items:center;gap:8px;color:var(--st);font-weight:500}.dist-label span{color:var(--text)}.dist-track{height:10px;border-radius:5px;background:var(--head);overflow:hidden}.dist-track i{display:block;height:100%;border-radius:5px;background:var(--st)}.dist-n{text-align:right;font-weight:600}.dist-n .faint{font-weight:400;font-size:12px}.stream{display:grid}.stream li{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 0;border-top:1px solid var(--line-soft)}.stream li:first-child{border-top:0;padding-top:0}.stream p{margin:0;line-height:1.4}.filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:8px}.filter-bar .search.grow{flex:1;min-width:220px}.filter-bar .search.grow input{width:100%}.bulk{justify-content:space-between;flex-wrap:wrap}.bulk strong{color:var(--accent-text)}.bulk-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.th-sort{display:inline-flex;align-items:center;gap:4px;padding:0;background:none;border:0;color:inherit;font:inherit;cursor:pointer}.th-sort:hover{color:var(--text)}.row-actions{display:inline-flex;align-items:center;gap:4px}.count-pill{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:13px;background:color-mix(in srgb,var(--teal) 14%,transparent);color:var(--accent-text);font-size:12px;font-weight:600;white-space:nowrap}.empty>svg{margin-bottom:4px}.case-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.case-head h1{margin:0;font-size:22px;font-weight:600}.case-head p{margin:4px 0 0}.overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px;margin:0}.overview-grid dt{margin-bottom:4px;color:var(--muted);font-size:12px}.overview-grid dd{margin:0;min-height:24px;display:flex;align-items:center}.overview-grid .prog{gap:8px}.overview-grid .prog .meter{max-width:140px}.detail-side{display:grid;gap:20px}.dialog.wide{width:min(820px,calc(100% - 32px))}.dialog.wide .dialog-body{max-height:min(72vh,760px);overflow-y:auto}.note-box{display:flex;align-items:flex-start;gap:8px;margin:0;padding:8px 10px;border-radius:6px;background:color-mix(in srgb,var(--golden) 14%,var(--panel));color:var(--text);font-size:12px}.note-box svg{flex:none;margin-top:1px;color:var(--warn)}.up-sec{display:grid;gap:10px}.up-sec h3{margin:4px 0 0;font-size:13px;font-weight:600}.dropzone{display:grid;justify-items:center;gap:4px;padding:22px 16px;border:1.5px dashed var(--line);border-radius:8px;background:var(--panel-2);color:var(--muted);text-align:center;cursor:pointer}.dropzone:hover,.dropzone.on,.dropzone:focus-visible{border-color:var(--teal);background:color-mix(in srgb,var(--teal) 8%,var(--panel));color:var(--accent-text);outline:none}.dropzone strong{color:var(--text)}.up-files{display:grid;gap:4px}.up-files li{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line-soft);border-radius:6px;background:var(--panel-2)}.up-files li>svg{color:var(--accent-text);flex:none}.up-files .grow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.up-meter{width:120px}.up-pick{display:flex;gap:6px;margin-top:6px}.class-picker{display:grid;gap:8px}.cp-group{margin:0;padding:8px 10px 10px;border:1px solid var(--line-soft);border-radius:6px;background:var(--panel-2)}.cp-group legend{padding:0 4px}.cp-group legend .check{gap:8px}.cp-all{display:flex;align-items:center;gap:8px;padding:0 4px}.cp-items{display:flex;flex-wrap:wrap;gap:6px}.cp-item{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px 0 8px;border:1px solid var(--line);border-radius:14px;background:var(--panel);cursor:pointer;white-space:nowrap}.cp-item input{accent-color:var(--teal);margin:0}.cp-item .swatch{width:10px;height:10px;border-radius:50%;background:var(--c)}.cp-item.on{border-color:color-mix(in srgb,var(--c) 70%,var(--line));background:color-mix(in srgb,var(--c) 12%,var(--panel))}.cp-item:has(input:disabled){cursor:default;opacity:.85}.cp-thumb{width:20px;height:20px;margin-right:-4px;border-radius:50%}.cp-thumb>img{border-radius:50%}.list-thumb{width:32px;height:26px}.list-thumb-slot{display:grid;width:32px}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px;align-items:start}.cat-grid h2 .faint{font-weight:400;margin-left:4px}.cat-list li{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--line-soft)}.cat-list li:first-child{border-top:0}.cat-list .swatch{width:14px;height:14px;border-radius:4px;background:var(--c)}.head-aside{display:inline-flex;align-items:center;gap:12px}input[type=color]{width:40px;height:30px;padding:2px;border:1px solid var(--line);border-radius:4px;background:var(--field);cursor:pointer}.bulk-assign-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.bulk-assign-section{display:grid;gap:10px;align-content:start}.bulk-assign-section-title{margin:0;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.bulk-assign-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.bulk-assign-rand-ctl{display:flex;align-items:center;gap:4px}.bulk-assign-ms-row{display:flex;align-items:center;gap:6px}.bulk-assign-ms-row .ms-wrap{flex:1;min-width:0}.bulk-assign-rand-inline{display:flex;align-items:center;gap:6px;margin-left:4px}.bulk-assign-randomize-all{display:flex;align-items:center;gap:10px;padding:10px 0 2px;border-top:1px solid var(--line-soft)}.bulk-assign-slots{display:grid;gap:4px}.bulk-assign-slot{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:30px}.bulk-assign-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px}.bulk-assign-count{display:flex;align-items:center;gap:2px;flex:none}.bulk-assign-tally{font-size:12px}.bulk-assign-footer{display:flex;align-items:center;gap:12px;padding-top:4px;border-top:1px solid var(--line-soft);margin-top:4px}.count-btn{width:24px;height:24px;padding:0;border:1px solid var(--line);border-radius:4px;background:var(--panel-2);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:15px;line-height:1}.count-btn:hover:not(:disabled){background:var(--hover)}.count-btn:disabled{opacity:.4;cursor:default}.count-input{width:48px;height:24px;padding:0 4px;border:1px solid var(--line);border-radius:4px;background:var(--field);color:var(--text);text-align:center;-moz-appearance:textfield}.count-input::-webkit-outer-spin-button,.count-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ms-wrap{position:relative;flex:1;min-width:0}.ms-trigger{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;height:30px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:var(--field);cursor:pointer;text-align:left}.ms-trigger.open{border-color:var(--teal);outline:2px solid color-mix(in srgb,var(--teal) 30%,transparent);outline-offset:-1px}.ms-trigger svg{flex:none;color:var(--muted)}.ms-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px}.ms-drop{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;border:1px solid var(--line);border-radius:6px;background:var(--panel);box-shadow:var(--shadow);overflow:hidden}.ms-search{display:flex;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid var(--line-soft)}.ms-search input{flex:1;height:26px;padding:0 6px;border:1px solid var(--line);border-radius:4px;background:var(--field);min-width:0}.ms-search .link{flex:none;font-size:12px;color:var(--accent-text);background:none;border:none;cursor:pointer;padding:0}.ms-list{max-height:180px;overflow-y:auto;padding:4px 0}.ms-empty{padding:6px 10px;font-size:13px}.ms-item{display:flex;align-items:center;gap:8px;padding:5px 10px;cursor:pointer;width:100%;font-size:13px}.ms-item:hover{background:var(--hover)}.ms-item input{accent-color:var(--teal);flex:none}.matrix .group-row td{height:32px;background:var(--panel-2);color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.perm{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:4px;cursor:pointer}.perm input{width:16px;height:16px;margin:0;accent-color:var(--teal);cursor:pointer}.perm input:disabled{cursor:default}.perm.changed{background:color-mix(in srgb,var(--golden) 25%,transparent)}.unsaved-bar{margin:0;padding:8px 12px;border-radius:6px;background:color-mix(in srgb,var(--golden) 18%,var(--panel));color:var(--text);font-weight:500}.feedback.rej{border-left-color:var(--t-st-rej);background:color-mix(in srgb,var(--t-st-rej) 9%,var(--panel))}.feedback.rej strong{color:var(--t-st-rej)}.nav-sub{height:32px;padding-left:44px;font-size:13px}.collapsed .nav-sub{padding:0}.badge.quiet{background:var(--head);color:var(--text)}
