/* DtD semantic token registry, design system 1.0. No remote font dependency. */
:root {
  --canvas:#09131C; --bg:#0E1928; --panel:#172334; --panel-soft:#213043;
  --line:#34475C; --text:#EAF1F7; --muted:#A6B6C8;
  --accent:#6DD3CE; --accent-dark:#173D40; --success:#8ED5AD;
  --yellow:#F2C46D; --danger:#F28E98; --warning-border:#80673C; --error-border:#925560;
  --shadow-soft:#0005; --shadow-strong:#0009; --focus-surface:#6DD3CE25;
  --hint-surface:#173D40F2; --loading-surface:#0E1928CC; --backdrop:#09131CCC;
  --text-scale:1; --font-support:calc(12px * var(--text-scale));
  --font-control:calc(13px * var(--text-scale)); --font-body:calc(14px * var(--text-scale));
  --font-panel:calc(16px * var(--text-scale)); --font-metric:calc(18px * var(--text-scale));
  --font-featured:calc(24px * var(--text-scale)); --control-height:28px;
  --panel-padding:8px; --worklist-width:260px; --inspector-width:300px;
  font-family:Inter,"Segoe UI",system-ui,sans-serif; font-size:var(--font-body);
  line-height:1.4; color:var(--text); background:var(--bg); color-scheme:dark;
}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);padding:8px 11px;cursor:pointer;white-space:nowrap;transition:background .14s,border-color .14s}button:hover{background:var(--panel-soft);border-color:var(--line)}button:disabled{opacity:.4;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:600}button.primary:hover{background:var(--accent)}button.subtle{background:transparent;color:var(--muted);border-color:transparent}button.subtle:hover{color:var(--text);background:var(--panel-soft)}button.danger{color:var(--danger);border-color:var(--error-border)}button.icon-button{padding:5px 9px;font-size:var(--font-metric);background:transparent}input,select,textarea{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:9px;min-width:0;width:100%;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--focus-surface)}label{display:block;font-size:var(--font-support);color:var(--muted);margin:12px 0}label input,label select,label textarea{display:block;margin-top:6px}input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent);margin:0;box-shadow:none}h1,h2,h3,p{margin:0}h1{font-size:var(--font-panel);font-weight:600}h2{font-size:var(--font-body);font-weight:600}h3{font-size:var(--font-control);font-weight:600}.muted{color:var(--muted)}.small{font-size:var(--font-support);line-height:1.5}.wide{width:100%}[hidden]{display:none!important}.workspace{height:100dvh;min-height:610px;display:flex;flex-direction:column;overflow:hidden}.topbar{height:67px;flex-shrink:0;display:flex;align-items:center;gap:10px;padding:0 19px;border-bottom:1px solid var(--line);background:var(--panel)}.wordmark{display:flex;align-items:center;font-size:var(--font-metric);font-weight:600;letter-spacing:-.8px;white-space:nowrap}.wordmark>span:not(.brand-icon){color:var(--accent)}.brand-icon{display:inline-flex;align-items:center;justify-content:center;width:29px;height:31px;margin-right:10px;background:var(--accent);color:var(--bg);font-size:var(--font-metric);font-weight:600;border-radius:6px;letter-spacing:0}.wordmark small{font-size:var(--font-support);font-weight:600;letter-spacing:1.1px;color:var(--muted);margin:4px 20px 0 10px}.top-select{min-width:190px;max-width:350px}.top-select label{margin:0 0 3px;font-size:var(--font-support);letter-spacing:1.2px;font-weight:600;color:var(--muted)}.top-select select{padding:5px 25px 5px 0;background:transparent;border:0;border-radius:0;font-size:var(--font-control)}.preset-select{min-width:230px}.top-spacer{flex:1}.user-chip{color:var(--muted);font-size:var(--font-support);white-space:nowrap}.main-layout{flex:1;min-height:0;display:grid;grid-template-columns:255px minmax(300px,1fr) 290px}.worklist,.annotation-panel{min-height:0;display:flex;flex-direction:column;background:var(--panel)}.worklist{border-right:1px solid var(--line)}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 16px 12px}.count{font-size:var(--font-support);color:var(--muted);background:var(--panel-soft);border-radius:5px;padding:3px 6px}.import-controls{display:flex;gap:7px;padding:0 14px}.import-controls button:first-child{flex:1}.search-input{width:calc(100% - 28px);margin:11px 14px 0;font-size:var(--font-support);padding:9px 10px}.worklist-legend{display:flex;gap:15px;padding:12px 17px 10px;color:var(--muted);font-size:var(--font-support)}.status-dot{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:var(--line)}.status-dot.complete{background:var(--accent)}.status-dot.issue{background:var(--yellow)}.image-tree{flex:1;min-height:0;overflow:auto;padding:1px 7px 15px}.tree-folder{margin:3px 0}.tree-folder>summary{padding:8px 6px;border-radius:5px;font-size:var(--font-support);cursor:pointer;color:var(--muted);list-style:none;display:flex;gap:7px;align-items:center}.tree-folder>summary:before{content:"›";font-size:var(--font-body);line-height:1;width:8px;transform-origin:center}.tree-folder[open]>summary:before{transform:rotate(90deg)}.tree-folder>summary:hover{background:var(--panel-soft)}.tree-children{margin-left:12px;border-left:1px solid var(--line);padding-left:5px}.tree-image{display:block;width:100%;text-align:left;padding:8px 7px;margin:2px 0;border:1px solid transparent;background:transparent;font-size:var(--font-support);white-space:normal}.tree-image.active{background:var(--accent-dark);border-color:var(--line);color:var(--accent)}.tree-image .tree-image-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-image .tree-image-info{display:flex;justify-content:space-between;font-size:var(--font-support);color:var(--muted);margin:4px 0 0 11px;gap:4px}.empty-worklist{padding:20px 12px;line-height:1.6;color:var(--muted);font-size:var(--font-support)}.worklist-bottom{padding:10px 14px;border-top:1px solid var(--line)}.export-row{display:flex;gap:7px;margin-top:5px}.export-row button:first-child{flex:1}.export-row button{font-size:var(--font-support)}.viewer-column{min-width:0;display:flex;flex-direction:column;background:var(--canvas)}.image-heading{min-height:66px;padding:15px 20px 12px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--bg);border-bottom:1px solid var(--line)}.image-heading h1{font-size:var(--font-body);line-height:1.3;overflow:hidden;text-overflow:ellipsis;max-width:600px}.image-heading p{font-size:var(--font-support);color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.badge{border:1px solid var(--line);border-radius:5px;color:var(--muted);padding:4px 7px;font-size:var(--font-support);white-space:nowrap}.badge.complete{border-color:var(--line);color:var(--accent)}.viewer-toolbar{display:flex;align-items:center;gap:5px;min-height:49px;padding:8px 13px;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap}.viewer-toolbar>button{padding:6px 8px;font-size:var(--font-support)}.mode-toggle{display:flex;padding:2px;background:var(--bg);border:1px solid var(--line);border-radius:6px}.mode-toggle button{border:0;background:transparent;color:var(--muted);padding:5px 10px;font-size:var(--font-support)}.mode-toggle button.active{background:var(--accent-dark);color:var(--accent)}.toolbar-divider{height:20px;border-left:1px solid var(--line);margin:0 5px}.overlay-toggle{display:flex;align-items:center;gap:5px;font-size:var(--font-support);margin:0 0 0 6px;white-space:nowrap}.zoom-readout{margin-left:auto;font-size:var(--font-support);color:var(--muted)}.canvas-wrap{flex:1;min-height:0;position:relative;overflow:hidden;background:var(--canvas)}#image-canvas{display:block;width:100%;height:100%;outline:none;touch-action:none;cursor:crosshair}.canvas-wrap.edit-mode #image-canvas{cursor:default}.canvas-wrap.panning #image-canvas{cursor:grabbing}.viewer-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:13px;background:radial-gradient(ellipse at 50% 40%,var(--panel) 0,var(--bg) 55%)}.empty-symbol{width:58px;height:58px;border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:var(--font-featured);font-weight:300;color:var(--accent);background:var(--panel)}.viewer-empty h2{font-size:var(--font-metric)}.viewer-empty p{font-size:var(--font-support);line-height:1.7;color:var(--muted);margin-bottom:5px}.active-step-hint{position:absolute;top:15px;left:50%;transform:translateX(-50%);padding:9px 14px;border:1px solid var(--line);border-radius:7px;background:var(--hint-surface);font-size:var(--font-support);color:var(--text);pointer-events:none;max-width:95%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 4px 18px var(--shadow-soft)}.hint-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:7px}.loading-overlay{position:absolute;inset:0;background:var(--loading-surface);display:flex;align-items:center;justify-content:center;gap:13px;z-index:5}.spinner{width:23px;height:23px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.viewer-footer{height:35px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;color:var(--muted);font-size:var(--font-support);border-top:1px solid var(--panel-soft);background:var(--bg);white-space:nowrap}.viewer-footer b{font-weight:500;color:var(--muted)}.annotation-panel{border-left:1px solid var(--line);overflow:auto}.save-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 14px;border-bottom:1px solid var(--line)}.save-bar button{font-size:var(--font-support);padding:4px 7px}.save-state{font-size:var(--font-support);display:flex;align-items:center;gap:6px;color:var(--muted)}.save-state i{width:6px;height:6px;border-radius:50%;background:var(--line)}.save-state.saved{color:var(--accent)}.save-state.saved i{background:var(--accent)}.save-state.unsaved{color:var(--yellow)}.save-state.unsaved i{background:var(--yellow)}.save-state.error{color:var(--danger)}.save-state.error i{background:var(--danger)}.steps-section .panel-heading{padding-bottom:7px}.steps-section>p{padding:0 16px 10px}.step-list{max-height:255px;overflow:auto;padding:0 10px 8px}.step-button{padding:8px 8px;width:100%;border:1px solid transparent;background:transparent;display:flex;align-items:center;gap:9px;text-align:left;margin:1px 0;font-size:var(--font-support);white-space:normal}.step-number{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;font-size:var(--font-support);color:var(--muted)}.step-button.done .step-number{color:var(--accent);border-color:var(--line);background:var(--accent-dark)}.step-button.active{border-color:var(--line);background:var(--accent-dark)}.step-button.active .step-number{background:var(--accent);border-color:var(--accent);color:var(--bg)}.step-button span:last-child{line-height:1.4}.steps-section>#hips-button{width:calc(100% - 20px);margin:0 10px 10px;font-size:var(--font-support)}.measurements-section{border-top:1px solid var(--line)}.live-label{font-size:var(--font-support);font-weight:600;letter-spacing:.8px;color:var(--muted)}.measurement-list{padding:0 16px 15px}.measurement-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--panel-soft);gap:10px}.measurement-row:last-child{border-bottom:0}.measurement-name{font-size:var(--font-support);line-height:1.4;color:var(--text)}.measurement-value{font-size:var(--font-panel);font-weight:500;white-space:nowrap;letter-spacing:-.3px}.measurement-value small{font-size:var(--font-support);font-weight:400;color:var(--muted);margin-left:3px}.estimated-mark{color:var(--yellow);font-size:var(--font-support);margin-left:3px}.unavailable-measurement{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;color:var(--muted);font-size:var(--font-support)}.qc-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.qc-section>summary{padding:15px 16px;font-size:var(--font-support);font-weight:600;cursor:pointer;color:var(--muted);list-style:none}.qc-section>summary:before{content:"›";display:inline-block;margin-right:7px}.qc-section[open]>summary:before{transform:rotate(90deg)}#qc-badge{float:right;font-size:var(--font-support);color:var(--yellow);font-weight:400}.qc-content{padding:0 16px 15px}.qc-content label{font-size:var(--font-support)}.qc-content input,.qc-content textarea{font-size:var(--font-support);padding:7px}.qc-content button{font-size:var(--font-support)}.field-pair{display:flex;gap:8px}.field-pair label{flex:1;min-width:0}.check-label{display:flex;align-items:center;gap:7px;line-height:1.5}.check-label input{display:inline-block}.completion-controls{padding:15px 16px;margin-top:auto}.completion-controls p{margin-top:9px;font-size:var(--font-support);text-align:center}.notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:20px;background:var(--panel-soft);border:1px solid var(--line);color:var(--text);padding:12px 14px;border-radius:8px;max-width:min(680px,90vw);box-shadow:0 8px 40px var(--shadow-strong);z-index:100;font-size:var(--font-support)}.notice.error{border-color:var(--error-border)}.notice button{padding:0 4px;border:0;background:transparent;font-size:var(--font-metric);color:var(--muted)}dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:12px;width:420px;max-width:95vw;padding:24px;box-shadow:0 25px 100px var(--shadow-strong)}dialog::backdrop{background:var(--backdrop);backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.dialog-heading h2{font-size:var(--font-metric)}dialog label{margin:17px 0}dialog p{line-height:1.6}.dialog-actions{display:flex;gap:10px;margin-top:22px}.dialog-actions button{flex:1}.error-text{font-size:var(--font-support);color:var(--danger);line-height:1.5;margin:12px 0}.member-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.member-row span:last-child{font-size:var(--font-support);color:var(--muted)}#member-form h3{margin:22px 0 0}#create-user-details{border-top:1px solid var(--line);margin-top:22px;padding-top:17px}#create-user-details summary{color:var(--muted);font-size:var(--font-support);cursor:pointer}.auth-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 30%,var(--panel-soft),var(--bg) 65%);padding:25px}.auth-card{width:400px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:35px;box-shadow:0 18px 85px var(--shadow-soft)}.auth-card .wordmark{font-size:var(--font-featured);margin-bottom:23px}.eyebrow{font-size:var(--font-support);letter-spacing:1.6px;color:var(--accent);margin-bottom:12px}.auth-card h1{font-size:var(--font-featured);margin-bottom:10px}.auth-card>p.muted{font-size:var(--font-support);line-height:1.6;margin-bottom:23px}.auth-card label{margin:18px 0}.auth-card button{margin-top:7px}.auth-foot{font-size:var(--font-support);color:var(--muted);line-height:1.5;margin-top:23px}
@media(max-width:1200px){.main-layout{grid-template-columns:220px minmax(280px,1fr) 260px}.topbar{padding:0 12px;gap:7px}.wordmark{font-size:var(--font-panel)}.wordmark small{display:none}.top-select{min-width:140px;max-width:240px}.preset-select{min-width:195px}.viewer-footer>span:nth-child(2){display:none}.step-list{max-height:220px}}
@media(max-width:900px){.main-layout{grid-template-columns:180px minmax(240px,1fr) 230px}.topbar{height:auto;min-height:65px;flex-wrap:wrap;padding:10px}.topbar>.wordmark{margin-right:10px}.top-spacer{display:none}.user-chip{margin-left:auto}.topbar button{font-size:var(--font-support)}.top-select{flex:1}.preset-select{min-width:220px}.panel-heading{padding:14px 11px 10px}.measurement-list{padding:0 11px 10px}.viewer-toolbar{padding:6px}.overlay-toggle{display:none}.step-list{max-height:200px}.image-heading{padding:12px}.import-controls{padding:0 8px;gap:4px}.import-controls button{padding:7px;font-size:var(--font-support)}.search-input{width:calc(100% - 16px);margin-left:8px;margin-right:8px}.worklist-bottom{padding:8px}.completion-controls,.qc-content{padding:12px}.measurement-value{font-size:var(--font-body)}.viewer-footer{padding:0 7px;font-size:var(--font-support)}}
@media(max-width:680px){.workspace{height:auto;min-height:100dvh;overflow:visible}.main-layout{display:flex;flex-direction:column}.worklist{max-height:260px;border-bottom:1px solid var(--line)}.worklist .panel-heading{padding:10px}.worklist-legend{display:none}.worklist-bottom{display:flex;gap:8px}.worklist-bottom>#demo-button{width:auto;flex:1}.export-row{margin:0}.viewer-column{height:650px}.annotation-panel{max-height:none}.step-list{max-height:250px}.top-select{min-width:150px}.topbar .wordmark{width:100%}.annotation-panel .completion-controls{margin-top:0}}
.save-bar{flex-wrap:wrap}.reader-control{width:100%;margin:3px 0 0;font-size:var(--font-support);font-weight:600;letter-spacing:.8px}.reader-control select{margin-top:5px;font-size:var(--font-support);padding:6px}.workflow-tools{padding:0 12px 8px}.workflow-tools button{font-size:var(--font-support)}#slip-levels{display:flex;flex-wrap:wrap;gap:6px}#slip-levels label{display:flex;align-items:center;gap:4px;margin:2px 0;font-size:var(--font-support);background:var(--panel-soft);padding:5px 6px;border-radius:4px}.workflow-tools .small{padding:3px 0 7px}
.main-layout{grid-template-rows:minmax(0,1fr)}.viewer-column{min-height:0}
.status-dot.excluded{background:var(--yellow)}.badge.excluded{border-color:var(--warning-border);color:var(--yellow)}#exclude-button{font-size:var(--font-support);margin-top:5px}.curve-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 2px;border-bottom:1px solid var(--line)}.curve-row span{font-size:var(--font-support);line-height:1.5;color:var(--muted)}.curve-row button{padding:4px 6px;font-size:var(--font-support);color:var(--danger)}#curve-list{margin-bottom:5px}
/* Planning uses the original cached raster and independent fragment transforms. */
.planning-toggle{border-color:var(--line)!important;color:var(--accent)!important;font-weight:600}.planning-toggle.active{background:var(--accent-dark)!important;color:var(--accent)!important}.planning-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 12px;background:var(--panel);border-bottom:1px solid var(--line);min-height:43px}.planning-toolbar .mode-toggle{background:var(--canvas)}.planning-toolbar .mode-toggle button{font-size:var(--font-support);padding:5px 8px}.planning-toolbar .comparison-toggle{margin-left:auto}.plan-tool-hint{width:100%;font-size:var(--font-support);color:var(--muted);padding:1px 2px}.planning-alignment{background:var(--panel);border-bottom:1px solid var(--line);padding:10px 13px 12px}.alignment-heading{display:flex;justify-content:space-between;gap:10px;color:var(--text);font-size:var(--font-support);font-weight:600;letter-spacing:.7px;margin-bottom:8px}.alignment-heading>span:last-child{color:var(--muted);font-weight:400;letter-spacing:0;font-size:var(--font-support);text-align:right}.plan-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.plan-metric{background:var(--canvas);border:1px solid var(--line);border-radius:7px;padding:8px 9px;min-width:0}.plan-metric-label{color:var(--muted);font-size:var(--font-support);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-metric-values{display:flex;align-items:center;gap:7px;margin:5px 0;color:var(--muted);font-size:var(--font-support);white-space:nowrap}.plan-metric-values strong{color:var(--text);font-size:var(--font-panel);font-weight:600}.plan-metric-delta{font-variant-numeric:tabular-nums;font-size:var(--font-featured);font-weight:600;color:var(--accent);line-height:1.2;letter-spacing:-.5px}.plan-metric-delta small{font-size:var(--font-support);color:var(--muted);font-weight:400;letter-spacing:0;margin-left:3px}.plan-metric[data-unavailable=true] .plan-metric-delta{color:var(--muted);font-size:var(--font-metric)}.planning-panel{overflow:auto;min-height:0;flex:1;scrollbar-gutter:stable}.planning-panel>.panel-heading{padding-bottom:8px}.planning-disclaimer{font-size:var(--font-support);line-height:1.45;color:var(--muted);padding:0 15px 10px}.planning-controls{padding:0 14px 14px}.planning-controls label{font-size:var(--font-support);margin:10px 0 8px}.planning-controls input,.planning-controls select{font-size:var(--font-support);padding:7px}.planning-controls button{font-size:var(--font-support);padding:7px 8px}.plan-create{display:flex;gap:6px}.plan-create input{flex:1}.plan-save-line{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:var(--font-support);color:var(--accent);min-height:28px}.plan-save-line.error{color:var(--danger)}.plan-save-line button{padding:3px 6px}#plan-baseline{font-size:var(--font-support);padding-bottom:7px;line-height:1.45}.plan-history{display:flex;gap:5px;padding:4px 0 8px}.plan-history>button{flex:1}.plan-history>button:last-child{flex:1.3}.plan-section-label{font-size:var(--font-support);font-weight:600;letter-spacing:.9px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin-top:9px;margin-bottom:7px;display:flex;justify-content:space-between;gap:6px}.plan-section-label>span{font-size:var(--font-support);color:var(--muted);font-weight:400;letter-spacing:0}.plan-piece-list,.plan-operation-list{display:flex;flex-direction:column;gap:4px;max-height:150px;overflow:auto}.plan-piece-list button,.plan-operation-list button{text-align:left;display:flex;justify-content:space-between;white-space:normal;gap:8px;background:var(--panel);border-color:transparent;line-height:1.4}.plan-piece-list button.selected,.plan-operation-list button.selected{border-color:var(--accent);background:var(--accent-dark);color:var(--accent)}.plan-piece-list small,.plan-operation-list small{color:var(--muted);white-space:nowrap;font-size:var(--font-support)}.plan-piece-list .resected{opacity:.55}.plan-empty{font-size:var(--font-support);color:var(--muted);line-height:1.5;padding:7px 0}.plan-pose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.plan-pose-grid label{font-size:var(--font-support)}.plan-pose-grid input{padding:7px 4px}.plan-wedge-editor{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:0 10px 10px;margin:10px 0}.plan-wedge-editor .plan-section-label{border:0}.plan-wedge-step{display:flex;align-items:end;gap:5px;margin-bottom:8px}.plan-wedge-step label{flex:1;margin:0}.plan-wedge-step button{min-width:28px;margin-bottom:0;height:30px}.plan-wedge-step input{margin-top:3px}.plan-wedge-editor p{font-size:var(--font-support)}.plan-measurement-list{margin-bottom:9px}.plan-measurement-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px;padding:7px 0;border-bottom:1px solid var(--panel-soft);font-size:var(--font-support)}.plan-measurement-row>span:last-child{color:var(--accent);font-variant-numeric:tabular-nums;text-align:right;line-height:1.6}.plan-measurement-row small{display:block;font-size:var(--font-support);color:var(--muted)}.plan-export{display:flex;gap:6px;margin-top:10px}.plan-export>button:first-child{flex:1}.workspace.planning-active .annotation-panel>.save-bar,.workspace.planning-active .steps-section,.workspace.planning-active .measurements-section,.workspace.planning-active .qc-section,.workspace.planning-active .completion-controls{display:none}.workspace.planning-active .viewer-toolbar>.mode-toggle,.workspace.planning-active #undo-button,.workspace.planning-active #delete-button,.workspace.planning-active #skip-button{display:none}.workspace.planning-active .canvas-wrap{background:var(--canvas)}.workspace.planning-active #active-step-hint{display:none!important}
@media(max-width:1200px){.plan-metric-delta{font-size:var(--font-metric)}.plan-metric-values{font-size:var(--font-support);gap:4px}.plan-metric-values strong{font-size:var(--font-body)}.plan-metrics{gap:5px}.planning-alignment{padding:9px}.planning-controls{padding:0 11px 12px}}
@media(max-width:900px){.plan-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-toolbar .comparison-toggle{margin-left:0}.plan-metric:nth-child(n+3){display:none}.planning-toolbar{padding:6px}.plan-pose-grid{grid-template-columns:1fr}.plan-pose-grid label{display:grid;grid-template-columns:90px 1fr;align-items:center;margin:3px 0}.plan-pose-grid input{margin-top:0}.alignment-heading{font-size:var(--font-support)}}
@media(max-width:680px){.planning-panel{max-height:650px;min-height:400px}.planning-alignment .plan-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.planning-alignment .plan-metric:nth-child(n+3){display:block}.planning-alignment .plan-metric-values{font-size:var(--font-support)}.planning-alignment .plan-metric-delta{font-size:var(--font-metric)}.planning-toolbar .comparison-toggle{margin-left:auto}}
/* Shared shell, typography, responsive docking and reversible layout editor. */
button,input,select,textarea{min-height:var(--control-height);font-size:var(--font-control);line-height:1.2}
button{font-weight:500;padding:5px 9px;white-space:normal}
button.primary{color:var(--bg)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:none}
button:disabled{opacity:1;color:var(--muted);background:var(--panel);cursor:not-allowed;border-style:dashed}
input,select,textarea{border-color:var(--line);background:var(--bg)}
input[type=checkbox]{min-height:0}
h1,h2{font-weight:600;line-height:1.2}h2{font-size:var(--font-panel)}
label{font-size:var(--font-control)}
.technical{font-family:Consolas,monospace;overflow-wrap:anywhere}
.workspace{height:100dvh;min-height:0;overflow:hidden}
.topbar{height:auto;min-height:52px;padding:6px 12px;gap:6px;flex-wrap:wrap;background:var(--panel)}
.topbar .wordmark{font-size:var(--font-panel);letter-spacing:0}.brand-icon{width:24px;height:26px;margin-right:6px}
.wordmark small{display:none}.top-select{min-width:130px;max-width:260px}.preset-select{min-width:180px}
.top-select label{font-size:var(--font-support);letter-spacing:0;font-weight:500}.top-select select{font-size:var(--font-control)}
.user-chip{font-size:var(--font-support);color:var(--muted)}.header-tools{display:flex;gap:4px}
.main-layout{position:relative;grid-template-columns:var(--worklist-width) minmax(0,1fr) var(--inspector-width);grid-template-rows:minmax(0,1fr);min-height:0}
.worklist{grid-column:1;grid-row:1}.viewer-column{grid-column:2;grid-row:1;min-width:0;min-height:0}.annotation-panel{grid-column:3;grid-row:1;min-width:0}
.main-layout[data-worklist-dock=right]{grid-template-columns:var(--inspector-width) minmax(0,1fr) var(--worklist-width)}
.main-layout[data-worklist-dock=right]>.worklist{grid-column:3}.main-layout[data-worklist-dock=right]>.annotation-panel{grid-column:1}
.main-layout.ui-worklist-hidden{grid-template-columns:0 minmax(0,1fr) var(--inspector-width)}
.main-layout.ui-inspector-hidden{grid-template-columns:var(--worklist-width) minmax(0,1fr) 0}
.main-layout.ui-worklist-hidden.ui-inspector-hidden{grid-template-columns:0 minmax(0,1fr) 0}
.main-layout[data-worklist-dock=right].ui-worklist-hidden{grid-template-columns:var(--inspector-width) minmax(0,1fr) 0}
.main-layout[data-worklist-dock=right].ui-inspector-hidden{grid-template-columns:0 minmax(0,1fr) var(--worklist-width)}
.main-layout[data-worklist-dock=right].ui-worklist-hidden.ui-inspector-hidden{grid-template-columns:0 minmax(0,1fr) 0}
[data-ui-hidden=true]{display:none!important}
.worklist,.annotation-panel{position:relative;overflow:hidden;background:var(--panel);scrollbar-gutter:stable}
.annotation-panel{overflow:auto}.panel-heading{padding:var(--widget-padding,var(--panel-padding));gap:8px}.panel-heading h2{font-size:var(--font-panel)}
.count,.badge,.live-label{font-size:var(--font-support);font-weight:400;letter-spacing:0}
.image-heading{min-height:52px;padding:8px 12px;background:var(--bg)}.image-heading h1{font-size:var(--font-panel)}.image-heading p{font-size:var(--font-support)}
.viewer-toolbar{min-height:40px;padding:4px 8px;gap:4px;background:var(--panel)}.viewer-toolbar>button,.planning-toolbar button{font-size:var(--font-control);min-height:var(--control-height);padding:4px 8px}
.mode-toggle button.active,.planning-toggle.active{background:var(--accent-dark)!important;color:var(--accent)!important;border:1px solid var(--accent)}
.mode-toggle{padding:0}.mode-toggle button{font-size:var(--font-control);min-height:var(--control-height);border:1px solid transparent}
.overlay-toggle{font-size:var(--font-support);white-space:normal}.zoom-readout,.wheel-readout{font-size:var(--font-support);color:var(--muted);white-space:nowrap}
.wheel-readout{padding:2px 6px;border:1px solid var(--line);border-radius:4px}
.canvas-wrap,.viewer-column,.workspace.planning-active .canvas-wrap{background:var(--canvas)}
.viewer-empty,.auth-screen{background:var(--bg)}
.viewer-footer{height:auto;min-height:28px;flex-wrap:wrap;white-space:normal;gap:3px 12px;font-size:var(--font-support);padding:4px 8px;color:var(--muted)}
.viewer-footer>span:nth-child(2){display:none}.viewer-footer>span:last-child{margin-left:auto}
.save-state.saved,.save-state.saved i,.badge.complete{color:var(--success)}.save-state.saved i,.status-dot.complete{background:var(--success)}
.tree-folder>summary,.tree-image,.step-button{font-size:var(--font-control)}.tree-image .tree-image-info{font-size:var(--font-support)}
.tree-folder>summary{color:var(--text)}.tree-image.active,.step-button.active{background:var(--accent-dark);color:var(--text);border-color:var(--accent)}
.step-number{width:24px;height:24px;font-size:var(--font-support)}.step-list{max-height:250px}.save-bar{padding:var(--panel-padding)}
.measurement-row{padding:8px 0}.measurement-name{font-size:var(--font-control);color:var(--text)}.measurement-value{font-size:var(--font-metric);font-variant-numeric:tabular-nums;letter-spacing:0}
.measurement-value small,.unavailable-measurement{font-size:var(--font-support);color:var(--muted)}
.measurement-list,.qc-content,.completion-controls,.planning-controls{padding:var(--panel-padding)}
.qc-section>summary,.display-section>summary{padding:12px var(--panel-padding);font-size:var(--font-control);font-weight:600;color:var(--text);cursor:pointer}
.display-section{border-bottom:1px solid var(--line)}.display-section>div{padding:0 var(--panel-padding) var(--panel-padding)}
.qc-content label,.planning-controls label,.planning-controls button,.planning-controls input,.planning-controls select,.plan-pose-grid label,.plan-piece-list button,.plan-operation-list button{font-size:var(--font-control)}
.plan-section-label{font-size:var(--font-control);letter-spacing:0;font-weight:600}.plan-section-label>span,.plan-piece-list small,.plan-operation-list small,.plan-save-line,.plan-empty,.plan-measurement-row,.plan-measurement-row small,.planning-disclaimer,.plan-wedge-editor p,.plan-tool-hint{font-size:var(--font-support);letter-spacing:0}
.plan-pose-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-pose-grid label:first-child{grid-column:1/-1}
.plan-save-line{flex-wrap:wrap}.plan-measurement-row>span:last-child{color:var(--text)}
.planning-toolbar{background:var(--panel);min-height:40px;padding:4px 8px;border-color:var(--line)}
.planning-alignment{background:var(--panel);padding:8px 12px;border-color:var(--line);flex-shrink:0;min-width:0}
.alignment-heading{font-size:var(--font-support);color:var(--text);letter-spacing:0;font-weight:500;margin-bottom:4px}.alignment-heading>span:last-child{font-size:var(--font-support);color:var(--muted)}
.plan-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.plan-metric,.plan-metric:nth-child(n+3){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 6px;min-height:var(--summary-card-height,56px);padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--bg)}
.plan-metric-label{grid-column:1/-1;font-size:var(--widget-label-size,var(--font-support));white-space:normal;color:var(--muted)}
.plan-metric-values{font-size:var(--font-support);margin:0;gap:3px;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}
.plan-metric-values strong{font-size:var(--widget-value-size,var(--font-metric));font-weight:600;color:var(--text)}
.plan-metric-delta{font-size:var(--font-support);color:var(--text);font-weight:500;letter-spacing:0;white-space:nowrap}.plan-metric-delta small{font-size:var(--font-support);color:var(--muted);margin-left:2px}
.plan-metric[data-unavailable=true] .plan-metric-delta{font-size:var(--font-support);color:var(--muted)}
.planning-alignment[data-variant=expanded] .plan-metric{min-height:max(var(--summary-card-height),96px)}
.planning-alignment[data-variant=expanded] .plan-metric-values strong{font-size:var(--widget-value-size,var(--font-featured))}
.planning-alignment[data-variant=expanded] .plan-metric-delta{font-size:var(--font-metric)}
.planning-alignment[data-variant=table] .plan-metrics{grid-template-columns:1fr;gap:0}
.planning-alignment[data-variant=table] .plan-metric{display:grid;grid-template-columns:minmax(100px,1fr) auto auto;border-radius:0;border-width:0 0 1px;min-height:40px}
.planning-alignment[data-variant=table] .plan-metric-label{grid-column:auto}
.annotation-panel>.planning-alignment .plan-metrics{grid-template-columns:1fr}.annotation-panel>.planning-alignment .alignment-heading{flex-wrap:wrap}
.workspace.planning-active #redo-button,.workspace.planning-active #clear-annotations-button{display:none}
#ui-options-dialog{width:600px;max-height:90dvh;overflow:auto;padding:20px}
.options-section{border-bottom:1px solid var(--line);margin-top:12px}.options-section>summary{font-size:var(--font-panel);font-weight:600;cursor:pointer;padding:10px 0}.options-section-body{padding:0 0 14px}
.options-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.options-actions button{flex:1}
#ui-options-dialog label{margin:12px 0}input[type=color]{height:36px;padding:3px}
.layout-editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:6px 12px;background:var(--accent-dark);border-bottom:1px solid var(--accent);z-index:10;flex-shrink:0;font-size:var(--font-support)}
.layout-editor-toolbar strong{color:var(--accent);font-size:var(--font-control)}#layout-history-scope{margin-right:auto}
.layout-editor-inspector{position:fixed;right:12px;bottom:12px;width:min(290px,calc(100vw - 24px));max-height:70dvh;overflow:auto;background:var(--panel);border:2px solid var(--accent);border-radius:8px;padding:12px;z-index:50;box-shadow:0 10px 35px var(--shadow-strong)}
.layout-editor-inspector h2{font-size:var(--font-panel)}.layout-editor-inspector label{margin:12px 0}.layout-order-row{display:flex;align-items:center;gap:6px;padding:4px 0}.layout-order-row span{flex:1;font-size:var(--font-support)}
#layout-hidden-items{margin-top:16px}#layout-hidden-items button{display:block;width:100%;margin-top:6px}
.layout-drag-handle{display:none;width:100%;text-align:left;background:var(--accent-dark);color:var(--accent);border:1px dashed var(--accent);cursor:grab;min-height:28px;font-size:var(--font-support)}
.layout-editing .layout-drag-handle{display:block}.layout-editing [data-panel-id]{outline:1px dashed var(--line);outline-offset:-1px}
.layout-editing .layout-selected{outline:2px solid var(--accent);outline-offset:-2px}
.layout-editing [data-ui-hidden=true]{display:none!important}
.layout-editing #image-canvas{pointer-events:none;cursor:default}
.layout-dock-target{display:none;position:absolute;background:var(--accent-dark);color:var(--accent);border:1px dashed var(--accent);z-index:40;pointer-events:auto;font-size:var(--font-support);align-items:center;justify-content:center;padding:8px}
.layout-editing .layout-dock-target{display:flex}.dock-left{left:0;top:40%;width:70px;height:80px}.dock-right{right:0;top:40%;width:70px;height:80px}.dock-top{left:35%;top:0;width:150px;height:36px}.dock-bottom{left:35%;bottom:0;width:150px;height:36px}
.layout-drop-target{background:var(--accent)!important;color:var(--bg)!important;border:2px solid var(--accent)!important}
.panel-splitter{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:col-resize;z-index:20;touch-action:none}
.panel-splitter:hover,.panel-splitter:focus-visible{background:var(--focus-surface)}.annotation-panel>.panel-splitter{left:0;right:auto}
.main-layout[data-worklist-dock=right] .worklist>.panel-splitter{left:0;right:auto}.main-layout[data-worklist-dock=right] .annotation-panel>.panel-splitter{right:0;left:auto}
.compact-panel-switcher{display:none;gap:6px;padding:4px 8px;border-bottom:1px solid var(--line);background:var(--panel)}
.compact-panel-switcher.shown{display:flex}.compact-panel-switcher button[aria-expanded=true]{color:var(--accent);border-color:var(--accent);background:var(--accent-dark)}
@media(max-width:1199px){
  .main-layout,.main-layout[data-worklist-dock=right]{display:grid;grid-template-columns:minmax(0,1fr)!important}
  .main-layout>.viewer-column{grid-column:1;grid-row:1;height:auto}
  .main-layout>.worklist,.main-layout>.annotation-panel{display:none;position:absolute;top:0;bottom:0;width:min(420px,85vw);max-height:none;z-index:30;box-shadow:0 8px 32px var(--shadow-strong)}
  .main-layout>.worklist{left:0}.main-layout>.annotation-panel{right:0}
  .main-layout[data-compact-panel=worklist]>.worklist,.main-layout[data-compact-panel=inspector]>.annotation-panel{display:flex}
  .main-layout[data-compact-panel=worklist]>.worklist[data-ui-hidden=true],.main-layout[data-compact-panel=inspector]>.annotation-panel[data-ui-hidden=true]{display:flex!important}
  .top-spacer{display:none}.topbar>.wordmark{width:auto}.top-select{flex:1}.topbar button{font-size:var(--font-control)}
  .overlay-toggle{display:flex}.worklist-bottom{display:block}.export-row{margin-top:6px}.worklist-bottom>#demo-button{width:100%}
  .panel-splitter{display:none}.plan-metrics{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.planning-alignment{padding:8px}
}
@media(max-width:680px){
  .topbar{gap:4px;padding:6px}.top-select{min-width:130px}.user-chip{max-width:150px;overflow:hidden;text-overflow:ellipsis}.topbar .wordmark{width:auto}
  .workspace{height:100dvh;min-height:0;overflow:hidden}.main-layout{flex:1;min-height:0}.viewer-column{height:auto!important}.image-heading{padding:6px 8px;min-height:46px}
  .viewer-toolbar{max-height:120px;overflow:auto}.plan-metrics{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.planning-alignment .plan-metrics{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
  .planning-toolbar .comparison-toggle{margin-left:0}.plan-metric-delta,.planning-alignment .plan-metric-delta{font-size:var(--font-support)}
  .planning-alignment{max-height:210px;overflow:auto}.planning-panel{min-height:0;max-height:none;overflow:visible}
  .field-pair{flex-wrap:wrap}.field-pair label{min-width:120px}.dialog-actions{flex-wrap:wrap}.layout-editor-inspector{max-height:60dvh}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation-duration:.01ms!important}}
:root[data-reduced-motion=true] *, :root[data-reduced-motion=true] *::before,:root[data-reduced-motion=true] *::after{transition:none!important;animation-duration:.01ms!important}
.controls-settings-grid details{border-bottom:1px solid var(--line);padding:8px 0}.controls-settings-grid summary{cursor:pointer;font-weight:600;font-size:var(--font-control);padding:6px 0}
.controls-binding-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(110px,1fr) auto;align-items:center;gap:8px;margin:8px 0}
.controls-binding-row>span,.controls-binding-row>label{font-size:var(--font-support);margin:0}.controls-binding-row input{font-family:Consolas,monospace;font-size:var(--font-support)}
.controls-binding-row>kbd{font-size:var(--font-support);font-family:Consolas,monospace;padding:4px 6px;background:var(--bg);border:1px solid var(--line);border-radius:4px}
.controls-preview{padding:20px;background:var(--canvas);border:1px dashed var(--accent);border-radius:6px;touch-action:none;text-align:center}
#controls-help-dialog{width:660px;max-height:85dvh;overflow:auto}
#ui-options-dialog .dialog-actions{flex-wrap:wrap}
@media(max-width:680px){.controls-binding-row{grid-template-columns:minmax(100px,1fr) minmax(100px,1fr)}.controls-binding-row>button{grid-column:2}.controls-binding-row input{width:100%}}
.extensions-dialog{width:800px;max-width:95vw;max-height:80dvh;overflow:auto}
.extensions-dialog section{border-top:1px solid var(--line);padding-top:12px;margin-top:14px}.extensions-dialog section h3{font-size:var(--font-panel)}
.extensions-dialog label{font-size:var(--font-control)}.extensions-dialog .check-label{margin:8px 0}
#project-context-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:0;background:var(--panel);border-bottom:1px solid var(--line)}
#project-context-tools:empty{display:none}#project-context-tools:not(:empty){padding:5px 8px}
#project-context-tools button{font-size:var(--font-support)}
.project-summary{flex:1;min-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.data-menu{position:relative;font-size:var(--font-support)}
.data-menu>summary{cursor:pointer;padding:6px 9px;border:1px solid var(--line);border-radius:5px;white-space:nowrap}
.data-menu-panel{position:absolute;right:0;top:100%;z-index:60;width:min(310px,85vw);display:flex;flex-wrap:wrap;gap:7px;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:5px;box-shadow:0 8px 24px #0005}
.data-menu-panel label{display:flex;align-items:center;gap:6px;width:100%;margin:0;font-size:var(--font-support)}
.data-menu-panel select{width:100%;min-width:0;margin:0}.data-menu-panel input[type=checkbox]{width:auto;margin:0}
.case-data-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.case-data-tools label{display:flex;align-items:center;gap:5px;flex:1;min-width:150px;margin:4px 0}
.case-data-tools input,.case-data-tools select{margin:0;min-width:100px}.case-data-tools .check-label{min-width:auto;flex:0}
#plan-selected-status{padding:6px 0}#plan-unlock{color:var(--yellow);border-color:var(--warning-border)}
.planning-alignment[data-variant=compact]{padding-top:4px;padding-bottom:4px}.planning-alignment[data-variant=compact] .alignment-heading{margin-bottom:0}
/* v0.6: image-first workspace. The canvas never sits behind a toolbar. */
#viewer-tools{flex-shrink:0;min-width:0;background:var(--panel)}
.project-tools-disclosure{border-top:1px solid var(--line)}
.project-tools-disclosure>summary{cursor:pointer;color:var(--muted);font-size:var(--font-support);padding:3px 8px}
.image-heading{flex-shrink:0;min-height:24px;padding:3px 8px;gap:8px;border-top:1px solid var(--line)}
.image-heading>div{display:flex;align-items:baseline;gap:10px;min-width:0;flex:1}
.image-heading h1{font-size:var(--font-support);white-space:nowrap}
.image-heading p{font-size:calc(11px * var(--text-scale));margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.image-heading .badge{padding:2px 5px}
#planning-panel{--control-height:var(--plan-control-height,26px);--font-control:var(--plan-control-size,12px);flex-shrink:0;min-height:0}
#planning-panel>.panel-heading{padding:3px 8px;min-height:32px;border-top:1px solid var(--line)}
#planning-panel>.panel-heading h2{font-size:var(--font-control)}
#planning-panel button,#planning-panel input,#planning-panel select,#planning-panel label{font-size:var(--plan-control-size,12px);min-height:var(--plan-control-height,26px)}
#planning-panel input[type=checkbox]{min-height:0}
#planning-panel[data-collapsed=true]>#planning-drawer-body{display:none}
#planning-panel[data-dock=bottom]{border-top:1px solid var(--line);background:var(--panel);overflow:hidden}
#planning-panel[data-dock=bottom]>#planning-drawer-body{height:min(var(--drawer-height,170px),28dvh);overflow:auto}
#planning-panel[data-dock=bottom] .planning-disclaimer{padding:3px 8px;font-size:var(--font-support);margin:0}
#planning-panel[data-dock=bottom] .planning-controls{display:flex;gap:12px;align-items:flex-start;padding:4px 8px 8px;min-width:0}
.plan-control-group{flex:1;min-width:180px;margin:0;max-width:340px}
.plan-control-group>summary{cursor:pointer;color:var(--accent);font-size:var(--font-control);font-weight:600;padding:3px 0}
.plan-control-group label{margin:5px 0}
.plan-control-group input,.plan-control-group select{padding:4px 6px;margin-top:3px}
.plan-control-group .options-actions{margin-top:5px}.plan-control-group .plan-history{margin-top:6px}
.plan-control-group .plan-section-label{margin:6px 0;padding:4px 0}
.plan-control-group .plan-piece-list,.plan-control-group .plan-operation-list{max-height:100px;overflow:auto}
.plan-control-group .plan-pose-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.plan-control-group .plan-pose-grid label:first-child{grid-column:auto}
#planning-panel[data-dock=right] .planning-controls{display:block}
#planning-panel[data-dock=right] .plan-control-group{max-width:none;min-width:0}
.planning-alignment{padding:4px 8px;max-height:25dvh;overflow:auto}
.plan-metric{min-height:var(--summary-card-height,44px);padding:4px 8px}
.planning-toolbar .plan-tool-hint{flex-basis:auto;margin-left:8px}
.workspace.planning-active #viewer-tools{display:flex;align-items:center;flex-wrap:wrap;gap:0}
.workspace.planning-active .project-tools-disclosure{flex-basis:100%}
.workspace.planning-active .viewer-toolbar{flex:1;min-width:0;border-top:1px solid var(--line)}
.workspace.planning-active .planning-toolbar{flex:1;min-width:0;border-top:1px solid var(--line)}
@media(max-width:900px){
  #planning-panel[data-dock=bottom] .planning-controls{flex-wrap:wrap}
  .plan-control-group{min-width:200px;max-width:none}
  .planning-toolbar .plan-tool-hint{display:none}
}
