:root{--ink:#253044;--muted:#718096;--paper:#f5f7fa;--cell:#e6eaf0;--sidebar:230px;--accent:#385de5;--line:#e0e5ed;--cell-size:78px;--gap:6px}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden;background:var(--paper);color:var(--ink);font-family:"PingFang TC","Noto Sans TC",system-ui,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button{border:0}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.app{height:100%;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);transition:grid-template-columns .2s}.app.collapsed{--sidebar:0px}.sidebar{width:var(--sidebar);min-width:0;overflow:hidden;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:22px 14px 0;white-space:nowrap}.app.collapsed .sidebar{padding:0;border:0;visibility:hidden}.brand{display:flex;align-items:center;gap:10px;padding:0 3px 30px}.brand strong{font-size:16px;font-weight:700;letter-spacing:-.03em}.brand>.icon-btn{margin-left:auto;font-size:23px;width:24px}.brand-mark{display:grid;grid-template-columns:9px 9px;grid-template-rows:9px 9px;gap:3px;background:#27334a;padding:5px;border-radius:7px}.brand-mark i{background:var(--surface);border-radius:1px}.brand-mark i:nth-child(2){grid-row:span 2;background:#9bb0ff}.side-label{font-size:12px;font-weight:600;color:var(--muted);padding:0 11px;margin-bottom:10px}.section-space{margin-top:30px}.project-entry{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:8px;padding:13px 10px;background:var(--raised)}.project-glyph{font-size:24px;color:var(--accent)}.project-entry strong{font-weight:600;font-size:14px}.project-entry small,.profile small{display:block;font-size:12px;color:var(--muted);margin-top:4px}.nav button{width:100%;display:flex;gap:10px;align-items:center;padding:11px 12px;border-radius:6px;background:transparent;text-align:left}.nav button.active{background:#edf1fd;color:var(--accent);font-weight:600}.nav-icon{font-size:17px}.nav-count{margin-left:auto;font-size:12px;background:#e0e7fb;padding:2px 6px;border-radius:4px}.stage-nav{margin:8px 0 0 18px;border-left:1px solid var(--line)}.stage-nav button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:10px 14px;background:transparent;color:var(--ink)}.stage-nav button:hover{background:var(--raised)}.stage-swatch{width:7px;height:7px;border-radius:2px;background:var(--swatch);flex:none}.run-nav{overflow:auto;max-height:230px}.run-nav button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;border-radius:6px;text-align:left;background:transparent;font-size:14px}.run-nav button.active{background:#edf1fd;color:var(--accent)}.run-nav small{font-size:12px;color:var(--muted)}.sidebar-bottom{margin-top:auto;padding-top:24px}.local-note{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);padding:10px}.local-note>span:first-child{width:6px;height:6px;background:#719986;border-radius:50%}.side-action{width:100%;background:transparent;display:flex;justify-content:space-between;padding:10px;color:var(--ink);font-size:14px}.side-action:hover{background:var(--raised)}.side-action kbd{font:inherit;font-size:12px;border:1px solid var(--line);padding:0 5px;border-radius:3px}.profile{margin-top:14px;border-top:1px solid var(--line);display:flex;gap:10px;align-items:center;padding:18px 7px}.avatar{width:32px;height:32px;background:#e8ecf5;color:#4a5e83;display:grid;place-items:center;border-radius:50%;font-size:13px}.profile strong{font-size:13px;font-weight:600}.main{grid-column:2;grid-row:1;height:100%;min-width:0;display:flex;flex-direction:column}.topbar{height:52px;flex:none;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 25px;gap:15px}.breadcrumbs{display:flex;align-items:center;gap:14px;font-size:13px;color:#7f8ba0;min-width:0;white-space:nowrap}.breadcrumbs strong{font-weight:500;color:#40506c}.crumb-sep{color:#bdc7d5}#sidebarReveal{display:none}.collapsed #sidebarReveal{display:grid}.search{margin-left:auto;display:flex;gap:7px;align-items:center;background:#f4f6f9;border:1px solid var(--raised);height:32px;width:200px;padding:0 10px;border-radius:6px;color:#92a0b2}.search>span{font-size:21px}.search input{border:0;background:transparent;width:100%;outline:0;font-size:13px}.project-header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 28px;background:var(--surface);flex:none}.project-kicker{font-size:12px;color:#8491a3;margin-bottom:5px}.project-header h1{font-size:25px;font-weight:680;letter-spacing:-.035em;margin:0}.mode-control{display:flex;align-items:center;gap:12px}.mode-control label{font-size:13px;color:#7c899b}.mode-control select{background:var(--raised);border:1px solid var(--line);padding:8px 11px;border-radius:6px;min-width:130px;outline:0}.toolbar{height:54px;flex:none;display:flex;align-items:center;gap:14px;padding:0 24px;border-top:1px solid var(--raised);border-bottom:1px solid var(--line);background:var(--surface);z-index:12}.tool-cluster{display:flex;gap:4px;align-items:center;flex-shrink:0}.tool-btn,.icon-btn{height:32px;background:transparent;border:1px solid transparent;border-radius:5px;display:flex;align-items:center;justify-content:center;gap:5px;padding:0 10px;white-space:nowrap;font-size:13px}.icon-btn{width:32px;padding:0;font-size:18px;flex:none}.tool-btn:hover,.icon-btn:hover{background:#f0f3f8}.tool-btn.active{background:#edf1fd;color:#385bd1;border-color:#dce4fc}.tool-symbol{font-size:18px;line-height:1}.tool-separator{width:1px;height:18px;background:var(--line);margin:0 7px}.toolbar-spacer{flex:1}.tool-btn.primary{background:var(--accent);color:var(--surface)}.tool-btn.primary:hover{background:#2947b3}.tool-btn:disabled,.icon-btn:disabled{opacity:.35;cursor:default}.zoom-group{display:flex;border:1px solid var(--line);border-radius:6px;align-items:center;flex:none}.zoom-group .zoom{font-variant-numeric:tabular-nums;min-width:49px;padding:0 4px}.zoom-group .fit{border-left:1px solid var(--line);border-radius:0;padding:0 9px}.run-controls select{max-width:125px;border:1px solid var(--line);border-radius:5px;background:var(--surface);padding:6px;font-size:13px}.workspace{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.map-shell{height:0;min-height:130px;flex:1 1 0;overflow:auto;overscroll-behavior:contain;position:relative;padding:40px 28px 26px;background:#f4f6f9;scrollbar-width:thin;scrollbar-color:#c7cfdd transparent}.map-viewport{position:relative;padding-top:20px;box-sizing:content-box}.grid{position:relative;display:grid;gap:6px;isolation:isolate;touch-action:none;user-select:none}.cell{background:#e8ecf2;border-radius:5px;z-index:1;transition:background .12s}.cell:hover{background:#dce3f0}.cell.stage-covered{background:color-mix(in srgb,var(--stage-cell) 16%,var(--raised))}.cell.stage-covered:hover{background:color-mix(in srgb,var(--stage-cell) 25%,var(--raised))}.stage{position:absolute;z-index:6;pointer-events:none;border:0;background:transparent}.stage-label{position:absolute;top:-29px;left:0;background:var(--surface);border:1px solid color-mix(in srgb,var(--stage) 45%,#e3e8f1);color:var(--ink);border-radius:5px;padding:5px 10px;font-size:13px;font-weight:600;pointer-events:auto;cursor:grab;box-shadow:0 1px 3px #25304408;white-space:nowrap}.stage-label::before{content:"";display:inline-block;width:7px;height:7px;background:var(--stage);border-radius:2px;margin-right:8px;vertical-align:1px}.stage.selected-stage{outline:1px dashed var(--stage);outline-offset:3px}.stage-resize-handle{display:none;position:absolute;width:18px;height:18px;right:0;bottom:0;border-right:2px solid var(--stage);border-bottom:2px solid var(--stage);pointer-events:auto;cursor:nwse-resize}.selected-stage .stage-resize-handle{display:block}.node{position:absolute;z-index:5;border:2px solid var(--node-color,var(--line));background:var(--surface);border-radius:7px;padding:14px;display:flex;flex-direction:column;cursor:grab;touch-action:none;box-shadow:0 2px 4px #34446005;transition:box-shadow .12s;overflow:visible}.node:hover{box-shadow:0 4px 12px #34446010}.node.selected{outline:2px solid #355cde;outline-offset:3px;z-index:7}.node.related{box-shadow:0 0 0 1px #b9c6e2}.node h3{margin:0;font-weight:650;letter-spacing:-.035em;line-height:1.3;overflow-wrap:anywhere;cursor:inherit}.node h3[contenteditable=true]{cursor:text;outline:none}.node.s1{padding:9px}.node.s1 h3{font-size:14px}.node.s2 h3{font-size:21px}.node.s3 h3{font-size:29px;max-width:92%}.node.s4 h3{font-size:35px;max-width:92%}.node-state{font-size:12px;color:#8a97aa;display:flex;align-items:center;gap:5px;margin-bottom:9px;height:15px}.node.s1 .node-state{position:absolute;right:5px;bottom:5px;margin:0}.node.s1 .node-state .status-label{display:none}.node-state i{display:block;width:6px;height:6px;border-radius:50%;background:#b5bfcd}.node-state.in_progress i{background:#d6993b}.node-state.waiting i{background:#a087b6}.node-state.completed i{background:#5b9a7c}.node-meta{margin-top:auto;color:#8793a5;display:flex;gap:8px;align-items:center;font-size:12px}.node-stage-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary{font-size:14px;line-height:1.65;color:var(--muted);margin:14px 0 0}.node .node-marker{position:absolute;right:9px;top:10px;font-size:17px;color:#b68027}.node.s1 .node-marker{font-size:12px;top:auto;bottom:4px;right:17px}.node.selected .resize-handle{display:block}.resize-handle{display:none;position:absolute;right:0;bottom:0;width:20px;height:20px;cursor:nwse-resize}.resize-handle::after{content:"";position:absolute;right:3px;bottom:3px;width:7px;height:7px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent)}.node.marquee-selected{outline:2px dashed var(--accent);outline-offset:-6px}.node.group-selected{outline:2px solid var(--accent);outline-offset:3px}.cell.grid-selected{outline:2px dashed #5270c6;outline-offset:-5px;background:#dae2f8}.port{display:none;position:absolute;width:10px;height:10px;background:#355bd2;border:2px solid var(--surface);border-radius:50%;z-index:9;cursor:crosshair;box-shadow:0 0 0 1px #aebee5}.node.selected .port{display:block}.port.t{top:-8px;left:50%;transform:translateX(-50%)}.port.b{bottom:-8px;left:50%;transform:translateX(-50%)}.port.r{right:-8px;top:50%;transform:translateY(-50%)}.port.l{left:-8px;top:50%;transform:translateY(-50%)}.port.output{border-radius:2px}.connections{position:absolute;inset:0;z-index:4;pointer-events:none;overflow:visible}.connections > path{fill:none;stroke:#7d8ea9;stroke-width:1.7;opacity:.45;marker-end:none;stroke-linejoin:round}.connections > path.related{stroke:var(--accent);opacity:1;stroke-width:2;marker-end:none}.connections > path.dim{opacity:.12}.connections .connection-draft{stroke:#3c63d4!important;opacity:1!important;stroke-dasharray:5 4;marker-end:none}.preview{position:absolute;border:2px dashed #4e6ed2;background:#edf2ffbf;border-radius:7px;z-index:20;pointer-events:none;display:grid;place-items:center;color:#3858bb;font-size:14px;font-weight:600}.preview.invalid{border-color:#c65d5d;color:#aa4444;background:#fff0f0bf}.marquee-box{position:absolute;z-index:20;border:1px solid #5274d8;background:#436ce51a;pointer-events:none}.map-shell.panning{cursor:grabbing}.map-shell.space-ready{cursor:grab}.canvas-status{flex:none;height:32px;border-top:1px solid var(--line);background:#fafbfd;display:flex;justify-content:space-between;align-items:center;padding:0 20px;gap:14px;color:var(--muted);font-size:12px}.canvas-status>div{display:flex;gap:9px;align-items:center;white-space:nowrap}.canvas-dot{width:5px;height:5px;border-radius:50%;background:#90a0b5}.status-separator{color:#c6cfdb}.grid-size{font-variant-numeric:tabular-nums;white-space:nowrap}.divider{display:none;height:7px;flex:none;background:var(--raised);border-top:1px solid #e0e5ee;align-items:center;justify-content:center;cursor:ns-resize}.divider i{width:30px;height:2px;background:#bdc7d6;border-radius:2px}.workspace.has-selection .divider{display:flex}.workbench{height:0;flex:none;overflow:hidden;background:var(--surface);z-index:11}.workspace.has-selection .workbench{height:42%}.workspace.maximized .map-shell,.workspace.maximized .canvas-status,.workspace.maximized .divider{display:none}.workspace.maximized .workbench{height:100%!important}.wb-head{height:65px;padding:0 24px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line)}.wb-symbol{height:34px;width:34px;background:#edf1f8;border-radius:7px;display:grid;place-items:center;color:#647797;font-size:20px;flex:none}.wb-title{min-width:0;flex:1}.wb-title input{border:0;font-size:18px;font-weight:600;outline:0;background:transparent;width:100%}.wb-meta{display:flex;gap:6px;color:#8490a2;font-size:12px;margin-top:3px}.pill{padding:4px 8px;border-radius:4px;font-size:12px;background:var(--raised);color:#6e7f96;white-space:nowrap}.marker-toggle{color:#8591a4}.marker-toggle.active{background:#fff6e8;color:#a97520;border-color:#efdcb7}.wb-body{height:calc(100% - 65px);display:flex;flex-direction:column;min-height:0}.tabs{display:flex;gap:24px;align-items:center;padding:0 26px;flex:none;height:42px;border-bottom:1px solid var(--raised);overflow:auto}.tab{height:100%;position:relative;background:transparent;font-size:14px;padding:0 1px;white-space:nowrap;color:#7b899d}.tab.active{color:var(--accent);font-weight:600}.tab.active::after{content:"";position:absolute;bottom:0;height:2px;background:#4567d4;left:0;right:0}.panel{display:none;padding:20px 27px;overflow:auto;flex:1;min-height:0}.panel.active{display:block}.panel-grid{display:grid;grid-template-columns:minmax(250px,1.35fr) minmax(230px,1fr);gap:36px;max-width:1200px}.field{margin-bottom:16px}.field label,.section-label{display:block;font-size:13px;font-weight:500;color:var(--ink);margin-bottom:8px}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:#fbfcfe;border-radius:5px;padding:9px 10px;outline:0}.field textarea{min-height:78px;resize:vertical;line-height:1.6;font-size:14px}.field textarea:focus,.field input:focus,.field select:focus{border-color:#7994e0;background:var(--surface)}.field-meta{font-size:12px;font-weight:400;color:#9aa5b6;margin-left:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check-head{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.check-head .section-label{margin:0}.text-btn{color:#637dc1;font-size:13px;background:transparent;padding:4px}.checklist{display:flex;flex-direction:column;gap:4px;margin-top:10px}.check{display:flex;align-items:center;gap:9px;font-size:14px;padding:6px 0}.check input[type=checkbox]{accent-color:#4666cc;flex:none}.check .check-name{border:0;background:transparent;min-width:0;width:100%;outline:0}.check.done .check-name{text-decoration:line-through;color:#9ca8b9}.check button{color:#b4bdcc;background:transparent;font-size:16px}.empty-note,.field-note{font-size:13px;color:var(--muted);line-height:1.65}.narrow{max-width:840px}.narrow textarea{min-height:130px}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.panel-heading h2{font-size:17px;font-weight:600;margin:0}.next-group h3{font-size:13px;color:var(--muted);font-weight:500;margin:0 0 10px}.next-group{margin-bottom:22px}.linked-row{width:100%;display:flex;justify-content:space-between;text-align:left;background:var(--raised);padding:12px;border:1px solid var(--line);border-radius:5px;margin-bottom:6px}.linked-row small{color:#8b98ad}.next-note{color:var(--muted);font-size:12px;margin:0 0 20px}/* Compact contextual stage strip */
.stage-dialog{display:none;position:fixed;top:auto;bottom:46px;left:50%;transform:translateX(-50%);z-index:55;max-width:calc(100vw - 24px)}.stage-dialog.open{display:block}.dialog-card{display:flex;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 24px);padding:8px 10px 8px 16px;background:var(--surface);border:1px solid #d7dfed;border-radius:999px;box-shadow:0 6px 28px #2530441a}.dialog-card h2,.dialog-card .field>label,#stageColorWrap>.section-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.dialog-card .field{margin:0}.stage-name-combo{width:170px;flex:none}.stage-name-combo input{height:32px;padding:4px 8px;border:0;background:#f3f5f9;border-radius:999px;font-size:13px}.colors{display:flex;gap:8px;padding:0 3px}.color{width:18px;height:18px;border:0;border-radius:50%;flex:none}.color.selected{outline:2px solid #4c6087;outline-offset:2px}.stage-size{display:flex;gap:5px}.stage-size .field{width:63px}.stage-size select{padding:5px!important;font-size:12px!important}.dialog-actions{display:flex;gap:4px;align-items:center;flex:none}.selection-count{font-size:11px;color:var(--muted);white-space:nowrap;margin-right:4px}.dialog-actions .tool-btn{border-radius:999px;height:32px;padding:0 10px;font-size:12px}#cancelStage{width:28px;padding:0;font-size:18px}.danger{color:#b35959}.stage-dialog.selection-mode #stageSizeWrap,.stage-dialog.selection-mode #removeStageRegion,.stage-dialog.edit-mode #removeFromStage{display:none}
.context-menu,.history-panel{display:none;position:fixed;z-index:80;background:var(--surface);border:1px solid var(--line);border-radius:7px;box-shadow:0 8px 30px #25304420;padding:5px}.context-menu.open,.history-panel.open{display:block}.context-menu{min-width:150px}.context-menu button{display:block;width:100%;text-align:left;background:transparent;padding:9px;border-radius:4px;font-size:14px}.context-menu button:hover{background:var(--raised)}.context-menu .remove{color:#bb6464}.history-panel{right:20px;top:45px;width:260px;max-height:350px;overflow:auto;padding:10px}.history-head{font-size:12px;color:var(--muted);padding:5px 7px 10px}.history-item{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:9px 7px;border-top:1px solid var(--raised)}.history-item span:last-child{color:#a3aec0;font-size:12px}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,10px);padding:10px 18px;background:#29364b;color:var(--surface);border-radius:6px;z-index:100;opacity:0;pointer-events:none;transition:.15s;box-shadow:0 5px 20px #25304420;font-size:14px}.toast.show{opacity:1;transform:translate(-50%,0)}.trash{position:fixed;right:24px;bottom:55px;width:52px;height:52px;display:grid;place-items:center;font-size:25px;background:var(--surface);border:1px solid var(--line);border-radius:8px;z-index:65;opacity:0;pointer-events:none;box-shadow:0 4px 20px #25304415}.trash.show{opacity:1}.trash.hover{background:#be5d5d;color:var(--surface);border-color:#be5d5d}.help-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}dialog{width:720px;max-width:calc(100vw - 32px);max-height:85dvh;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:26px;color:var(--ink);box-shadow:0 18px 80px #17243830}dialog::backdrop{background:#17243860}dialog h2{font-size:21px;margin:0}dialog h3{font-size:15px;margin:0 0 10px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px}.help-grid p{font-size:14px;line-height:1.75;color:var(--muted);margin:0 0 10px}.help-footer{font-size:12px;color:#92a0b3;margin:20px 0 0;border-top:1px solid var(--line);padding-top:16px}@media(max-width:1200px){:root{--sidebar:200px}.toolbar{gap:5px;padding:0 16px}.tool-btn{padding:0 7px}.run-controls{gap:0}.run-controls select{max-width:100px}.filter{display:none}.project-header{padding:0 22px}.canvas-status #hint{max-width:40%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}@media(max-width:800px){:root{--sidebar:0px}.sidebar{display:none}#sidebarReveal{display:none!important}.topbar{padding:0 14px}.search{width:150px}.breadcrumbs>span:first-of-type,.crumb-sep{display:none}.project-header{height:82px;padding:0 16px}.project-header h1{font-size:21px}.mode-control label{display:none}.mode-control select{min-width:110px}.toolbar{overflow-x:auto;height:52px;padding:0 10px;gap:9px}.toolbar-spacer{min-width:0}.fit{display:none}.canvas-status{padding:0 12px}.canvas-status #hint{display:none}.panel-grid{grid-template-columns:1fr;gap:10px}.wb-head{padding:0 14px;gap:8px}.wb-title input{font-size:16px}.wb-symbol{display:none}.wb-head .pill{display:none}.tabs{gap:20px;padding:0 16px}.panel{padding:18px}.workspace.has-selection .workbench{height:52%}.help-grid{grid-template-columns:1fr}.map-shell{padding:38px 20px}.stage-dialog{top:180px}.dialog-card{grid-template-columns:1fr}.dialog-card>*{grid-column:1!important}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

/* One project header, one compact command row */
.topbar{height:48px;padding:0 20px;gap:12px}.breadcrumbs h1{font-size:14px;font-weight:650;margin:0;color:var(--ink);overflow:hidden;text-overflow:ellipsis}.mode-control{margin-left:auto}.mode-control select{min-width:118px;padding:5px 8px;font-size:12px;height:30px}.search{margin-left:0;width:170px;height:30px}.toolbar{height:44px;padding:0 18px;gap:10px;border-top:0}.stage-label{border-radius:999px;padding:5px 12px}.stage-label::before{border-radius:50%}.map-shell{padding-top:32px}
.workspace.dock-right.has-selection{display:grid;grid-template-columns:minmax(0,1fr) 7px min(var(--wb-width,420px),65%);grid-template-rows:minmax(0,1fr) 32px}.dock-right.has-selection .map-shell{grid-column:1;grid-row:1;height:auto;min-height:0}.dock-right.has-selection .canvas-status{grid-column:1;grid-row:2;overflow:hidden;padding:0 12px}.dock-right .canvas-status #hint,.dock-right .canvas-status .grid-size{display:none}.dock-right.has-selection .divider{grid-column:2;grid-row:1/3;height:auto;width:7px;border-top:0;border-left:1px solid var(--line);cursor:ew-resize}.dock-right .divider i{width:2px;height:30px}.dock-right.has-selection .workbench{grid-column:3;grid-row:1/3;height:100%;min-width:0;width:100%}.dock-right .wb-head{padding:0 12px;gap:5px;height:76px;flex-wrap:wrap;align-content:center;row-gap:4px}.dock-right .wb-symbol,.dock-right .wb-head>.pill{display:none}.dock-right .wb-title{flex-basis:calc(100% - 115px)}.dock-right .wb-title input{font-size:16px}.dock-right .marker-toggle{height:26px;font-size:12px}.dock-right .wb-body{height:calc(100% - 76px)}.dock-right .tabs{gap:18px;padding:0 16px;font-size:13px}.dock-right .panel{padding:18px}.dock-right .panel-grid{grid-template-columns:1fr;gap:12px}.dock-right.maximized .workbench{grid-column:1/-1;grid-row:1/3}.dock-right.maximized .panel-grid{grid-template-columns:1fr 1fr}.dock-right.maximized .wb-head{flex-wrap:nowrap}.dock-right.maximized .wb-title{flex-basis:auto}
@media(max-width:800px){.topbar{height:46px;padding:0 12px;gap:8px}.breadcrumbs{gap:6px;flex:1}.breadcrumbs h1{font-size:13px}.mode-control select{min-width:0;max-width:112px;font-size:11px}.search{width:120px}.toolbar{height:44px}.canvas-status #modeSummary,.canvas-status .status-separator{display:none}.dialog-card{gap:8px;padding:8px 10px;border-radius:24px;flex-wrap:wrap;justify-content:center}.stage-name-combo{width:145px}.selection-count{display:none}.dialog-actions{margin-left:0}.stage-dialog{top:auto;bottom:42px}.workspace.dock-right.has-selection{grid-template-columns:minmax(0,1fr) 7px min(var(--wb-width,320px),65%)}.dock-right .wb-title{flex-basis:100%}.dock-right .wb-head{height:96px}.dock-right .wb-body{height:calc(100% - 96px)}.dock-right .tabs{gap:12px;padding:0 10px}.dock-right .panel{padding:12px}.dock-right.maximized .panel-grid{grid-template-columns:1fr}}
@media(max-width:480px){.search{width:32px;padding:0 7px}.search input{position:absolute;width:1px;opacity:0}.search:focus-within{width:130px}.search:focus-within input{position:static;opacity:1;width:100%}.mode-control select{max-width:102px}.breadcrumbs h1{max-width:115px}}

.app{grid-template-rows:minmax(0,1fr)}.main{min-height:0}.dock-right.has-selection .workbench{min-height:0}.dock-right .wb-head{display:grid;grid-template-columns:minmax(0,1fr) 60px repeat(3,28px);height:65px;gap:4px;align-content:center}.dock-right .wb-head>.icon-btn{width:28px}.dock-right .wb-body{height:calc(100% - 65px)}.dock-right .marker-toggle{padding:0;font-size:11px}.dock-right .wb-title{min-width:0}.dock-right .wb-title input{font-size:15px}.dock-right .wb-meta{overflow:hidden;white-space:nowrap;font-size:11px}@media(max-width:800px){.dock-right .wb-head{grid-template-columns:minmax(0,1fr) repeat(3,28px);height:85px}.dock-right .wb-title{grid-column:1/-1}.dock-right .marker-toggle{grid-column:1}.dock-right .wb-body{height:calc(100% - 85px)}}

.stage-dialog.edit-mode .selection-count{display:none}.stage-size .field{display:flex;align-items:center;gap:4px;width:65px}.stage-size .field>label{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;font-size:11px;color:var(--muted)}.stage-size select{width:48px}
/* Stage geometry follows the map; suggestions open upward inside its bounds. */
.stage-label{top:-38px;background:var(--stage);color:var(--stage-ink,#17243b);border-color:transparent;box-shadow:0 2px 5px #25304413}.stage-label::before{display:none}.stage-dialog .dialog-card{max-width:100%;flex-wrap:wrap;justify-content:center}.stage-name-combo{position:relative}.stage-options{position:absolute;bottom:calc(100% + 14px);left:0;width:240px;max-width:100%;padding:5px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 30px #25304420;overflow:auto;overscroll-behavior:contain}.stage-options button{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;background:transparent;border-radius:9px;text-align:left;font-size:14px}.stage-options button:hover,.stage-options button.keyboard-current{background:#edf1fd}.stage-options button i{width:8px;height:8px;border-radius:50%;flex:none}.stage-options-empty{font-size:12px;color:var(--muted);padding:10px}.stage-options[hidden]{display:none}.stage-size .field>label{clip:auto}
/* A node is a page, organized into editable tabs and typed fields. */
.editor-nav{display:flex;align-items:center;border-bottom:1px solid var(--line);flex:none;min-width:0}.editor-nav .tabs{flex:1;min-width:0;border:0;gap:22px;padding:0 22px;height:44px;scrollbar-width:thin}.editor-nav-actions{display:flex;gap:2px;padding:0 10px;flex:none;border-left:1px solid var(--raised)}.editor-nav-actions button{font-size:12px;color:#73829a}.add-page-tab{font-size:21px;color:#6b7f9f;min-width:25px}.editor-content{flex:1;min-height:0;overflow:auto;padding:22px 26px}.page-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px;max-width:1240px;align-items:start}.page-field{margin:0;min-width:0}.page-field label{font-size:14px}.page-field textarea{min-height:112px;font-size:15px}.type-flow,.type-checklist,.page-heading,.editor-empty{grid-column:1/-1}.type-flow{max-width:800px}.page-fields:has(>.page-field:only-child){grid-template-columns:minmax(0,1fr);max-width:900px}.page-heading{font-size:17px;font-weight:650;margin:8px 0 0;border-bottom:1px solid #e9edf3;padding-bottom:12px}.checkbox-field{padding-top:4px}.checkbox-field label{display:flex;align-items:center;gap:9px;color:#41516a;line-height:1.5}.checkbox-field input{width:17px;height:17px;accent-color:#385de5}.page-checklist{max-width:780px}.page-checklist .check-name{font-size:15px}.page-checklist .check{padding:8px 0}.editor-empty{color:var(--muted);padding:28px 0;font-size:14px}.editor-empty button{display:block;margin-top:12px}.field-link{display:inline-block;color:#4666b5;font-size:13px;margin-top:7px;text-decoration:none}.image-preview{min-height:115px;background:var(--raised);border:1px dashed var(--line);border-radius:7px;display:grid;place-items:center;overflow:hidden;color:var(--muted);font-size:13px;margin-bottom:9px}.image-preview.filled{border-style:solid;background:#f3f5f8}.image-preview img{display:block;width:100%;max-height:360px;object-fit:contain}.image-actions{display:flex;gap:8px;align-items:center;margin-bottom:8px}.image-actions>input{flex:1;min-width:0;font-size:13px}.upload-btn{position:relative;border:1px solid var(--line)!important;background:var(--surface)!important;flex:none;font-size:13px!important;margin:0!important;height:35px;padding:0 10px!important;cursor:pointer}.upload-btn input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.image-note{display:block;font-size:12px;color:#93a0b1;line-height:1.5;margin-top:7px}.type-image>input{font-size:13px}.dock-right .editor-nav{display:block}.dock-right .editor-nav .tabs{padding:0 16px;gap:18px}.dock-right .editor-nav-actions{border-left:0;border-top:1px solid var(--raised);justify-content:flex-end;height:34px}.dock-right .editor-content{padding:20px 18px}.dock-right .page-fields{grid-template-columns:minmax(0,1fr);gap:22px}.dock-right .page-field textarea{min-height:100px}.dock-right.maximized .editor-nav{display:flex}.dock-right.maximized .editor-nav-actions{border-top:0;border-left:1px solid var(--raised);height:auto}.dock-right.maximized .page-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.layout-dialog{width:920px;padding:0;max-height:88dvh;overflow:hidden}.layout-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--line)}.layout-head h2{font-size:20px}.layout-head small{display:block;margin-top:6px;color:var(--muted);font-size:12px}.layout-body{display:grid;grid-template-columns:220px minmax(0,1fr);height:min(500px,58dvh);min-height:240px}.layout-tab-list{background:var(--raised);border-right:1px solid var(--line);padding:14px 10px;overflow:auto}.layout-tab-row{display:flex;align-items:center;padding:5px 3px;border-radius:6px;gap:2px}.layout-tab-row.active{background:#eaf0fd}.layout-tab-row>button{background:transparent;color:var(--muted);padding:4px;font-size:13px}.layout-tab-row>button:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;color:var(--ink);font-size:14px;padding:6px}.layout-tab-row.active>button:first-child{color:var(--accent);font-weight:600}.layout-tab-list>.text-btn{margin:10px 4px}.layout-tab-editor{padding:20px 22px;overflow:auto}.layout-tab-editor>.field input{background:var(--surface);font-size:16px}.layout-columns{display:grid;grid-template-columns:minmax(100px,1fr) 106px 105px 78px;gap:7px;font-size:12px;color:var(--muted);margin-bottom:8px}.layout-field{margin-bottom:8px}.layout-field-main{display:grid;grid-template-columns:minmax(100px,1fr) 106px 105px repeat(3,22px);gap:7px;align-items:center}.layout-field input,.layout-field select,.template-save input{border:1px solid var(--line);border-radius:5px;padding:8px;background:var(--surface);font-size:13px;min-width:0;width:100%}.layout-field select:disabled{color:#8996a8;background:#f6f8fb}.layout-field button{height:28px;background:transparent;color:#8190a6;font-size:15px;padding:0}.layout-field button:disabled{opacity:.3}.layout-field button:hover{background:#edf1f7}.layout-field .field-options{margin-top:5px;font-size:12px}.layout-add-field{display:flex;gap:8px;padding-top:14px;margin-top:14px;border-top:1px solid var(--raised)}.layout-add-field select{border:1px solid var(--line);background:#f9fbfd;border-radius:5px;font-size:13px;padding:6px}.layout-add-field .tool-btn{border:1px solid var(--line);background:var(--surface);color:#4969b8}.layout-footer{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding:14px 22px;background:var(--surface)}.layout-footer p{margin:0;flex:1;font-size:12px;color:var(--muted);max-width:440px;line-height:1.6}.template-dialog{width:620px}.template-save{display:flex;gap:10px;margin:20px 0}.template-save input{flex:1}.template-row{display:flex;gap:10px;align-items:center;border-top:1px solid #e6ebf2;padding:14px 0}.template-row>div{flex:1;min-width:0}.template-row strong{font-size:14px;font-weight:600}.template-row small{display:block;margin-top:5px;color:#8795a9;font-size:12px}.template-row>.tool-btn{border:1px solid var(--line)}
@media(max-width:800px){.editor-nav{display:block}.editor-nav .tabs{padding:0 16px;gap:18px}.editor-nav-actions{border-left:0;border-top:1px solid var(--raised);height:32px;justify-content:flex-end}.editor-content{padding:18px}.page-fields,.dock-right.maximized .page-fields{grid-template-columns:minmax(0,1fr);gap:18px}.layout-dialog{max-width:calc(100vw - 16px)}.layout-head{padding:16px}.layout-body{grid-template-columns:180px minmax(0,1fr)}.layout-tab-editor{padding:16px}.layout-field-main{grid-template-columns:minmax(90px,1fr) repeat(3,22px);gap:5px}.layout-field-main>input{grid-column:1}.layout-field-main>select{grid-column:1/3;grid-row:auto}.layout-field-main>select:nth-of-type(2){grid-column:3/5}.layout-field-main>button{grid-row:1}.layout-field-main>button:nth-last-child(3){grid-column:2}.layout-field-main>button:nth-last-child(2){grid-column:3}.layout-field-main>button:last-child{grid-column:4}.layout-columns{display:none}.layout-footer{padding:12px 16px}.layout-footer p{max-width:230px}.stage-dialog .dialog-card{border-radius:24px}}
@media(max-width:540px){.layout-body{grid-template-columns:1fr;height:60dvh;display:block;overflow:auto}.layout-tab-list{border-right:0;border-bottom:1px solid var(--line);max-height:160px}.layout-footer{flex-wrap:wrap}.layout-footer p{max-width:none;flex-basis:100%}.layout-footer .primary{margin-left:auto}.template-save{flex-wrap:wrap}.template-save input{flex-basis:100%}}

.layout-footer p{max-width:none}.layout-footer .primary{margin-left:0}

@media(max-width:800px){.layout-field-main{grid-template-columns:repeat(6,minmax(0,1fr))}.layout-field-main>input{grid-column:1/4;grid-row:1}.layout-field-main>select{grid-column:1/4;grid-row:2}.layout-field-main>select:nth-of-type(2){grid-column:4/7;grid-row:2}.layout-field-main>button:nth-last-child(3){grid-column:4}.layout-field-main>button:nth-last-child(2){grid-column:5}.layout-field-main>button:last-child{grid-column:6}}
/* Persistent sidebar navigation, with independent disclosure and location actions. */
.sidebar{padding-top:20px}.brand{padding-bottom:24px}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;padding-bottom:18px}.sidebar-scroll .section-space{margin-top:26px}.map-nav-row{display:flex;align-items:center;border-radius:7px;background:#edf1fd;color:var(--accent)}.map-nav-row>#mapNav{flex:1;min-width:0;display:flex;align-items:center;gap:9px;background:transparent;text-align:left;padding:10px 9px;font-weight:600}.map-nav-row .nav-count{font-weight:500;font-size:11px}.tree-toggle{display:grid;place-items:center;width:28px;height:30px;flex:none;padding:0!important;border-radius:5px;background:transparent;color:var(--muted);font-size:18px}.tree-toggle:hover{background:#e4eafa}.map-nav-row>.tree-toggle{margin-right:5px;color:#7088c1}.stage-nav{margin:9px 0 0;border:0}.tree-stage{margin-bottom:5px}.tree-stage-row{display:flex;align-items:center;gap:0}.stage-nav .tree-stage-title{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:9px 6px 9px 10px;background:transparent;font-size:13px;text-align:left;color:var(--ink);border-radius:5px}.tree-stage-title>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-stage-title>small{margin-left:auto;color:var(--muted);font-size:11px}.stage-nav .tree-toggle{width:28px;display:grid;align-items:center;justify-items:center;text-align:center;background:transparent}.tree-nodes{margin:0 0 5px 14px;padding-left:9px;border-left:1px solid var(--line)}.stage-nav .tree-node{display:flex;align-items:center;gap:8px;width:100%;padding:8px 7px;background:transparent;border-radius:5px;text-align:left;color:var(--ink);font-size:13px;min-width:0}.stage-nav .tree-node:hover{background:var(--raised)}.stage-nav .tree-node.active{background:#edf1fd;color:var(--accent)}.tree-node-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-node>small{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.tree-node-glyph{display:block;width:8px;height:8px;border:1px solid #a7b4c8;border-radius:2px;flex:none}.tree-node.active .tree-node-glyph{background:var(--accent);border-color:var(--accent)}.tree-node-glyph.size-2{width:9px;height:9px}.tree-node-glyph.size-3{width:10px;height:10px}.tree-node-glyph.size-4{width:11px;height:11px}.tree-empty{display:block;padding:8px 10px;font-size:12px;color:#a2adbe}.sidebar-bottom{padding:12px 0 14px;margin-top:0;border-top:1px solid var(--line);flex:none}.settings-entry{width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:8px 5px;background:transparent;border-radius:7px}.settings-entry:hover{background:var(--raised)}.settings-profile{flex:1;min-width:0}.settings-profile strong{display:block;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis}.settings-profile small{display:block;font-size:11px;color:#99a5b6;margin-top:4px}.settings-gear{font-size:17px;color:#8191a8;flex:none}.settings-entry .avatar{flex:none}
.settings-dialog{width:820px;padding:0;overflow:hidden;max-height:88dvh}.settings-head{padding:22px 26px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.settings-head h2{font-size:21px}.settings-head p{margin:7px 0 0;font-size:12px;color:var(--muted)}.settings-body{display:grid;grid-template-columns:170px minmax(0,1fr);height:min(440px,57dvh);min-height:290px}.settings-nav{padding:18px 12px;border-right:1px solid var(--line);background:var(--raised);overflow:auto}.settings-nav button{display:block;width:100%;background:transparent;padding:10px 12px;border-radius:6px;text-align:left;font-size:14px;color:#6b7b92;margin-bottom:5px}.settings-nav button.active{background:#eaf0fd;color:var(--accent);font-weight:600}.settings-content{padding:24px 28px;overflow:auto;min-width:0}.settings-panel{display:none}.settings-panel.active{display:block}.settings-panel h3{font-size:17px;margin:0 0 23px}.settings-panel p{font-size:14px;line-height:1.8;color:#7f8da1}.settings-panel .field input,.settings-panel .field select{background:var(--surface);font-size:14px;max-width:410px}.settings-panel .local-note{padding:12px 0;font-size:14px;border-bottom:1px solid var(--raised);margin-bottom:20px}.settings-tree-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:30px}.settings-tree-actions>span{flex-basis:100%;font-size:13px;color:#65758c;margin-bottom:3px}.settings-tree-actions .tool-btn{border:1px solid var(--line)}.settings-data-action{display:flex;gap:15px;align-items:center;border-top:1px solid var(--line);padding-top:22px;margin-top:30px}.settings-data-action>div{flex:1}.settings-data-action strong{font-size:14px;font-weight:500}.settings-data-action small{display:block;font-size:12px;line-height:1.6;color:var(--muted);margin-top:7px}.settings-data-action button{border:1px solid #eddada}.settings-panel #helpBtn{border:1px solid var(--line);margin-top:20px}.settings-footer{display:flex;justify-content:flex-end;gap:8px;padding:15px 24px;border-top:1px solid var(--line);background:var(--surface)}.settings-shortcut{display:none}.app.collapsed .settings-shortcut{display:flex}
@media(max-width:800px){.settings-shortcut{display:flex}.settings-dialog{max-width:calc(100vw - 20px)}.settings-head{padding:18px}.settings-body{grid-template-columns:140px minmax(0,1fr);height:58dvh}.settings-content{padding:20px}.settings-nav{padding:15px 8px}}@media(max-width:540px){.settings-body{display:flex;flex-direction:column;min-height:320px}.settings-nav{display:flex;gap:4px;flex:none;border-right:0;border-bottom:1px solid var(--line);padding:8px;overflow:auto}.settings-nav button{width:auto;white-space:nowrap;font-size:12px;margin:0;padding:9px}.settings-content{flex:1;min-height:0;padding:20px}.settings-data-action{align-items:flex-start;flex-wrap:wrap}.settings-data-action>div{flex-basis:100%}}
/* Field-driven cards keep the grid geometry unchanged. */
.node{isolation:isolate}.node-background{position:absolute;inset:0;z-index:-1;overflow:hidden;border-radius:5px;pointer-events:none}.node-background img{width:100%;height:100%;object-fit:cover}.node-background+h3,.node-background~h3{background:#ffffffd9;border-radius:3px;padding:2px 4px;margin-left:-4px!important}.node-details{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:hidden;margin-top:12px}.node-detail{font-size:13px;line-height:1.45;display:flex;gap:5px;min-width:0;color:#5f6e84}.node-detail>span:last-child{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.detail-label{font-size:12px;color:#8b97a9;flex:none}.node-detail.description{display:block}.node-detail.description .detail-label{display:none}.node.s1 .node-details{display:none}.node.s2 h3{font-size:19px}.node.s2 .node-details{margin-top:8px;gap:5px}.node.s2 .node-detail{font-size:12px}.node.s2 .detail-label{display:none}.node.s2 .node-detail>span:last-child{-webkit-line-clamp:1}.node.s3 h3{font-size:26px}.node.s4 h3{font-size:32px}.node-more{position:absolute;bottom:6px;left:8px;color:#8a98ad;font-size:10px;background:#ffffffd9;border-radius:3px;padding:1px 3px}.node-loop{position:absolute;right:7px;top:6px;font-size:14px;color:#607da8;background:#ffffffd9;border-radius:50%;width:17px;height:17px;text-align:center}.node-loop~.node-marker{right:26px}.node.s1 .node-loop{font-size:11px;width:12px;height:12px;top:3px;right:3px}.node.s1 h3{font-size:13px;max-height:43px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;padding-right:3px}.node.s1 .node-more{left:3px;bottom:3px;font-size:9px}.node.s1 .node-state{bottom:5px}.node.s1 .node-marker{right:17px}
.compact-dialog{width:460px;padding:22px}.compact-dialog h2{font-size:19px}.compact-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.display-fixed,.display-choice{display:flex;gap:10px;align-items:center;padding:10px;border-radius:6px;font-size:14px}.display-fixed{background:#f1f4fa;color:#607594}.display-fixed small{margin-left:auto;color:#93a0b3;font-size:12px}.display-choice small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.display-choice input,.unit-members input{accent-color:var(--accent);flex:none}.display-choice:has(input:disabled){opacity:.55}.display-choice:has(input:checked){background:#f5f7fc}#displayFields{max-height:280px;overflow:auto;margin:6px 0 16px}.color-picker-row{display:flex;gap:16px;align-items:center}.color-picker-row input[type=color]{width:76px;height:64px;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.color-picker-row .field{margin:0;flex:1}.recent-colors{display:flex;gap:12px;min-height:30px;align-items:center}.recent-colors .color{width:28px;height:28px}.custom-color{display:grid;place-items:center;background:conic-gradient(#ff5dbb,#ff8a4c,#72c97b,#35b5ff,#a987ff,#ff5dbb);color:var(--surface);font-size:14px}.system-images{display:flex;gap:7px;align-items:center;margin-top:10px}.system-images>span{font-size:12px;color:#8996a9}.system-images button{width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:5px;overflow:hidden}.system-images img{width:100%;height:100%;object-fit:cover}.unit-empty{font-size:12px;line-height:1.65;color:var(--muted);padding:0 5px}.unit-card{padding:10px;border:1px solid var(--line);border-radius:8px;margin:8px 0;background:var(--surface)}.unit-card header{display:flex;align-items:center;gap:5px}.unit-card strong{flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unit-card .icon-btn{width:23px;height:23px;font-size:14px;flex:none}.unit-card>small{display:block;color:#98a5b8;font-size:11px;margin:3px 0 9px}.unit-card select{width:100%;min-width:0;border:1px solid var(--line);border-radius:5px;background:var(--raised);padding:6px;font-size:13px;color:#586d8a}.unit-card>div{display:flex;justify-content:space-between;margin-top:5px}.unit-card .text-btn{font-size:12px}.unit-members{max-height:260px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:6px}.unit-members>label{display:flex;gap:9px;align-items:center;padding:9px 5px;font-size:14px}.unit-members>label>span{flex:1}.unit-members small{color:var(--muted);font-size:11px}.unit-members label:has(input:disabled){opacity:.45}.unit-members label:has(input:checked){background:#f2f5fc;border-radius:4px}.run-nav [data-rename-legacy]{font-size:14px;padding:4px;color:#7387ad;flex:none}@media(max-width:800px){.compact-dialog{padding:18px}.unit-members small{max-width:100px}.node-details{gap:5px}}
.archived-unit{display:flex;align-items:center;justify-content:space-between;padding:8px;font-size:14px;border-top:1px solid var(--line)}
/* Keep disclosure buttons outside the scrollbar's hit area. */
.sidebar-scroll{scrollbar-gutter:stable;padding-right:8px}.node-background~.node-details{background:#ffffffcc;border-radius:3px;padding:3px}.node-background~.node-state{background:#ffffffcc;border-radius:3px;width:max-content;padding:0 3px}
/* Unified flow controls and member highlighting. */
.unit-card{display:grid;grid-template-columns:minmax(42px,1fr) minmax(58px,1.05fr) 22px 22px;align-items:center;gap:3px;padding:6px;border-radius:7px;cursor:pointer}.unit-card.focused{border-color:#a08bdd;background:#f6f2ff}.unit-card .unit-name{min-width:0;padding:5px 0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:transparent;font-size:12px;color:#4f5e76}.unit-card select{margin:0;padding:5px 2px;font-size:12px}.unit-card .icon-btn{width:22px;height:27px}.node.unit-highlight,.node.unit-highlight.selected{outline:2px solid #9167d9!important;outline-offset:2px;box-shadow:0 0 0 5px #9167d919!important}.node.unit-highlight .port{background:#9167d9}.node-state,.node.s1 .node-state{position:absolute;right:8px;bottom:7px;top:auto;height:auto;margin:0;padding:0;background:#ffffffd9;color:#7c889c;font-size:11px;line-height:1.3;z-index:2}.node.s1 .node-state{right:4px;bottom:4px;font-size:10px}.node.s1 .node-state .status-label{display:inline}.node-state i{display:none}.node-details{margin-top:10px;margin-bottom:19px}.node.s1 .node-details,.node.s1 .node-more,.node-loop{display:none!important}.node.s1 h3{max-height:39px;-webkit-line-clamp:2}.node-background~.node-state{padding:1px 3px}.node-background~.node-details{margin-bottom:20px}.node .resize-handle{width:14px;height:14px;right:-3px;bottom:-3px}.node.s1 .node-marker{display:none}.display-image-tools{border-top:1px solid var(--line);padding-top:14px}.display-image-tools .image-preview{margin-top:10px;min-height:80px;max-height:140px}.display-image-tools .image-preview img{max-height:140px}.display-image-tools>.upload-btn{display:inline-flex!important;align-items:center}.display-image-tools .field{margin-bottom:10px}.page-checklist{width:100%;min-width:0}.page-checklist .check{display:grid;grid-template-columns:18px minmax(0,1fr) 26px;gap:8px;width:100%;min-width:0}.page-checklist .check input[type=checkbox]{width:16px;height:16px;margin:0;padding:0;justify-self:start}.page-checklist .check .check-name{width:100%;min-width:0;border:1px solid transparent;padding:6px 3px;background:transparent;border-radius:4px;font-size:14px}.page-checklist .check .check-name:focus{border-color:#8fa6df;background:var(--surface)}.page-checklist .check button{width:26px;height:26px;padding:0;display:grid;place-items:center}.page-checklist .check .check-name:focus{outline:0}#unitPanel .unit-card{grid-template-columns:minmax(80px,1fr) minmax(100px,1.1fr) 28px 28px}
.topbar>.search{margin-left:auto}

.unit-card,#unitPanel .unit-card{display:block;padding:5px 7px}.unit-card header{display:flex;gap:2px;align-items:center}.unit-card .unit-name{flex:1;font-size:13px}.unit-card>.unit-rounds{display:flex;flex-direction:column;gap:3px;margin:4px 0 2px 8px;padding-left:8px;border-left:1px solid #e4dcef}.unit-card>.unit-rounds[hidden]{display:none}.unit-round{width:100%;text-align:left;background:transparent;padding:7px 8px;color:#7b8495;font-size:12px;border-radius:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unit-round:hover{background:#f5f2fb}.unit-round.active{background:#eee7fb;color:#7652ac}.round-name-input{width:100%;min-width:0;padding:6px 7px;font-size:12px;border:1px solid #a18acb;border-radius:5px;background:var(--surface);color:#57416f}.image-version-controls{display:grid;gap:8px;margin-top:14px}.image-version-controls>label{font-size:12px;color:var(--muted)}.image-actions{flex-wrap:wrap}.image-actions .tool-btn{white-space:nowrap}.display-core{background:var(--surface);border-bottom:1px solid var(--line);padding-bottom:4px}#displayFields{max-height:300px}.compact-actions>.field-note{margin-right:auto;align-self:center}

.node h3{width:max-content;max-width:100%;align-self:flex-start;text-align:left;border-radius:0!important;margin-left:0!important}.node-background~h3{margin-left:0!important;border-radius:0;padding:2px 4px}.node-details{align-items:flex-start;gap:9px;text-align:left}.node-background~.node-details{background:transparent;border-radius:0;padding:0}.node-detail{width:fit-content;max-width:100%;text-align:left;border-radius:0;flex:none}.node-background~.node-details .node-detail{background:#ffffffcc;padding:3px 5px;border-radius:0}.node-state,.node-background~.node-state,.node-more{border-radius:0!important;text-align:left}.background-enable{display:flex;gap:9px;align-items:center;font-size:13px;font-weight:500;color:var(--ink);margin-bottom:12px}.background-enable input{accent-color:var(--accent)}.display-image-tools fieldset{border:0;padding:0;margin:0;min-width:0}.display-image-tools fieldset:disabled{opacity:.4}.display-image-tools fieldset:disabled .upload-btn{cursor:not-allowed}#displayCount.limit-reached{color:#c43f4a;font-weight:500}.display-image-tools fieldset .upload-btn{display:inline-flex;align-items:center}

/* Image text backplates never consume the space available to the text. */
.node-background~h3{padding:0;background:var(--surface);box-shadow:0 0 0 3px var(--surface)}.node.s1 .node-background~h3{padding-right:3px}.node-background~.node-details .node-detail{padding:0;background:var(--surface);box-shadow:0 0 0 3px var(--surface)}.node-state,.node-background~.node-state,.node-more{background:var(--surface)}

/* Ordinary fields share a row; long text expands across it inside a clipped frame. */
.expanded-text-scroll{min-width:0;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;border:1px solid #dbe2ed;border-radius:8px;background:var(--surface);scrollbar-width:thin;scrollbar-color:#b5bfd2 var(--raised)}.expanded-text-scroll:focus-within{border-color:#6c83e2}.expanded-text{box-sizing:border-box;min-height:80px;width:100%;padding:12px 14px;border:0;border-radius:0;background:transparent;color:var(--ink,#243047);font:inherit;font-size:15px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere;column-gap:28px;column-fill:auto;outline:none}.expanded-text-scroll.has-columns::after{content:"← 左右捲動閱讀 →";display:block;position:sticky;left:0;width:max-content;font-size:12px;color:#7b89a2;padding:6px 14px;background:var(--surface)}.workspace.maximized .page-fields{max-width:none}.workspace.maximized .page-field.type-text{grid-column:auto}.workspace.maximized .page-field.text-wide{grid-column:1/-1}.workspace.maximized .expanded-text-scroll{width:100%}

.map-view-switch{display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;padding:2px;flex-shrink:0;gap:2px}.map-view-switch .tool-btn{height:30px;padding:0 10px;border:0;border-radius:5px;background:transparent;white-space:nowrap}.map-view-switch .tool-btn[aria-pressed="true"]{background:#edf1ff;color:#3458cc}.map-view-switch .tool-btn:focus-visible{outline:2px solid #7188e8;outline-offset:1px}

/* Drag handles replace directional buttons in the layout designer. */
.layout-tab-row>button.layout-drag-handle,.layout-field-main>button.layout-drag-handle{width:24px;min-width:24px;height:30px;display:grid;place-items:center;padding:0;background:transparent;color:#96a4b8;font-size:20px;cursor:grab;touch-action:none;user-select:none}.layout-drag-handle:active,.layout-sorting .layout-drag-handle{cursor:grabbing}.layout-tab-row>[data-layout-tab]{min-width:0;flex:1}.layout-tab-row>[data-delete-tab]{flex:none}.layout-field-main{grid-template-columns:24px minmax(100px,1fr) 106px 105px 24px}.layout-columns{grid-template-columns:minmax(100px,1fr) 106px 105px 24px;padding-left:31px}.layout-field,.layout-tab-row{position:relative}.sort-before::before,.sort-after::after{content:"";position:absolute;left:0;right:0;height:3px;background:#5273df;border-radius:2px;z-index:2}.sort-before::before{top:-4px}.sort-after::after{bottom:-4px}.is-sorting{opacity:.45}.layout-field .field-options{margin-left:31px;width:calc(100% - 31px)}
@media(max-width:800px){.layout-field-main{grid-template-columns:24px minmax(0,1fr) minmax(0,1fr) 24px}.layout-field-main>button.layout-drag-handle{grid-column:1;grid-row:1/3;align-self:start}.layout-field-main>input{grid-column:2/4;grid-row:1}.layout-field-main>select:nth-of-type(1){grid-column:2;grid-row:2}.layout-field-main>select:nth-of-type(2){grid-column:3;grid-row:2}.layout-field-main>button[data-delete-field]{grid-column:4;grid-row:1}}
.layout-tab-row>button.layout-drag-handle{flex:none}.layout-tab-row>[data-layout-tab]{text-align:left;color:var(--ink);font-size:14px;padding:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layout-tab-row.active>[data-layout-tab]{color:#385de5;font-weight:600}

/* Map gestures suppress native selection; inline renaming remains editable. */
.grid{-webkit-user-select:none}.grid [contenteditable="true"],.grid [contenteditable="plaintext-only"]{user-select:text;-webkit-user-select:text}

.map-shell{user-select:none;-webkit-user-select:none}

/* Directional focus and a forgiving hit area, independent of visible stroke width. */
.connections > .connection-line.outgoing{stroke:var(--accent);opacity:1;stroke-width:2}
.connections > .connection-line.incoming{stroke:#46505f;opacity:1;stroke-width:2}
.connections > .connection-line.connection-selected{opacity:1;stroke-width:3.2;filter:drop-shadow(0 0 2px #4164c640)}
.connections > .connection-line.connection-selected:not(.incoming){stroke:var(--accent)}
.connections > .connection-hit{stroke:transparent;stroke-width:12;vector-effect:non-scaling-stroke;opacity:1;pointer-events:stroke;cursor:pointer;marker-end:none}
.node.node-unrelated{opacity:.23}.grid:focus-visible{outline:none}
.flow-link-row{display:flex;align-items:stretch;gap:8px;margin-bottom:6px;min-width:0}.flow-link-row .linked-row{margin:0;min-width:0;flex:1;gap:12px}.flow-link-row .linked-row>span{min-width:0;overflow-wrap:anywhere}.flow-link-row small{flex:none}
.remove-flow-link{width:32px;flex:none;border:1px solid var(--line);border-radius:5px;background:var(--raised);color:var(--muted);font-size:18px}.remove-flow-link:hover{background:#fff0ef;color:#b34a45}

/* Opaque backing stays beneath each Node when the foreground is faded. */
.node-backing{position:absolute;z-index:5;background:var(--surface);border-radius:7px;pointer-events:none}

#backupStatus.error{color:#b63737}#backupDialog p{white-space:normal;overflow-wrap:anywhere}

.storage-fatal{position:fixed;inset:20px 20px auto;z-index:10000;padding:20px;background:#fff1f1;border:1px solid #be5d5d;border-radius:10px;color:#8e2d2d;white-space:normal}

.durability-notice{position:fixed;right:20px;bottom:20px;max-width:520px;width:calc(100% - 40px);box-sizing:border-box;z-index:10001;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 18px;border:1px solid #be5d5d;border-radius:10px;background:#fff1f1;color:#8e2d2d;font-size:14px}
.durability-notice[hidden]{display:none}.durability-notice span{flex:1 1 240px;min-width:0;overflow-wrap:anywhere}.durability-notice button{border:1px solid currentColor;border-radius:6px;background:white;color:inherit;padding:6px 12px;cursor:pointer}.durability-notice .durability-dismiss{margin-left:auto;font-size:20px;line-height:1;padding:6px 10px}

body.booting #app,body.booting #workspaceHome{display:none!important}#bootStatus{padding:40px;color:var(--ink);font-size:16px}#bootStatus[hidden]{display:none}.auth-actions{display:flex;gap:12px;margin-bottom:28px}#authDialog input{width:100%}#authMessage{color:var(--ink);white-space:normal;margin-top:20px;line-height:1.6}

.attachment-list{display:grid;gap:10px;margin-bottom:14px}.attachment-row{display:flex;align-items:center;gap:8px;border:1px solid #e0e6ef;border-radius:10px;padding:12px;min-width:0}.attachment-row>div{flex:1;min-width:0}.attachment-row strong{display:block;overflow-wrap:anywhere;font-size:14px}.attachment-row small{display:block;color:#8291a7;font-size:12px;margin:5px 0}.attachment-row select{max-width:100%}.attachment-row .tool-btn{font-size:12px;padding:6px 9px}.attachment-row input[type=file]{display:none}

.settings-data-action[hidden]{display:none}

.storage-fatal button{margin:12px 8px 0 0;padding:8px 12px;border:1px solid currentColor;background:var(--surface);border-radius:6px}

.recovery-dialog{width:min(1120px,94vw);padding:0;max-height:90dvh;overflow:hidden}.recovery-head,.recovery-toolbar{display:flex;align-items:center;gap:12px;padding:18px 24px;border-bottom:1px solid var(--line)}.recovery-head h2{margin:0;flex:1;font-size:20px}.recovery-toolbar select{min-width:0;max-width:400px;border:1px solid var(--line);padding:8px;border-radius:6px}.recovery-body{display:grid;grid-template-columns:260px minmax(0,1fr);height:58dvh}.recovery-list{overflow:auto;background:var(--raised);border-right:1px solid var(--line);padding:12px}.recovery-list button{display:block;width:100%;text-align:left;overflow-wrap:anywhere;margin-bottom:6px;white-space:normal}.recovery-preview{padding:20px;overflow:auto;min-width:0}.recovery-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.recovery-compare h3{font-size:15px}.recovery-compare p,.recovery-preview>p,.recovery-notice{font-size:13px;color:#63738a;line-height:1.7}.recovery-compare pre{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;background:var(--raised);border-radius:6px;max-height:280px;overflow:auto}.recovery-compare summary{font-size:13px;cursor:pointer}.recovery-diff{font:12px monospace;overflow-wrap:anywhere;max-height:160px;overflow:auto}.recovery-preview>button{margin:16px 8px 0 0;border:1px solid var(--line)}.recovery-notice{padding:12px 24px;margin:0;border-top:1px solid var(--line)}@media(max-width:700px){.recovery-body{grid-template-columns:170px minmax(0,1fr)}.recovery-compare{grid-template-columns:1fr}.recovery-toolbar{flex-wrap:wrap}}

.checkpoint-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.checkpoint-section select{max-width:100%;padding:8px;border:1px solid var(--line);border-radius:6px}.checkpoint-section p[data-status="backup_problem"]{color:#9b3c3c}

.desktop-close-dialog{width:min(460px,90vw);padding:24px;border:1px solid var(--line);border-radius:16px}.desktop-close-dialog h2{font-size:18px;margin:0 0 12px}.desktop-close-dialog p{font-size:14px;line-height:1.7}.desktop-close-dialog button{padding:10px 14px;margin:12px 8px 0 0;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink)}

.engineering-tools{margin-top:12px}.engineering-tools summary{cursor:pointer;color:#6e7f99;font-size:13px}.engineering-tools[open] summary{margin-bottom:12px}
/* Small cards can show one optional field alongside title and status. */
.node.s1 .node-details{display:block!important;position:absolute;left:8px;right:8px;bottom:20px;margin:0;max-height:14px;overflow:hidden}.node.s1 .node-detail{font-size:10px;line-height:14px;padding:0 2px;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.node.s1 .node-detail .detail-label{display:none}
.attachment-row .upload-btn,.type-attachment>.upload-btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;line-height:1.2;min-height:35px;margin:0!important}.attachment-row .tool-btn,.attachment-row .icon-btn{display:inline-flex;align-items:center;justify-content:center;min-height:35px;line-height:1.2}.page-field textarea{max-width:100%;box-sizing:border-box}
.date-field-control{display:flex;align-items:center;gap:6px}.date-field-control>input{flex:1;min-width:0}.date-field-control>button{flex:none;border:1px solid var(--line);min-height:35px}.node-date-picker{position:fixed;z-index:11000;width:280px;box-sizing:border-box;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 6px 24px #23344d22;overflow:auto;font-size:13px}.node-date-picker header{display:flex;align-items:center;gap:4px;margin-bottom:8px}.node-date-picker header input{width:68px;min-width:0;font-size:13px;padding:5px}.node-date-picker header select{width:65px;font-size:13px;padding:5px}.node-date-picker button{padding:5px;background:transparent;border-radius:4px;min-width:24px;font-size:13px}.node-date-picker button:hover{background:#edf2ff}.node-date-picker footer{display:flex;justify-content:space-between;border-top:1px solid var(--raised);padding-top:7px;margin-top:7px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}.calendar-grid span{padding:4px;color:#8c98aa}.calendar-grid button[aria-pressed=true]{background:#385de5;color:var(--surface)}
.node-management-dialog{width:560px;max-width:calc(100vw - 32px);height:min(520px,85dvh);padding:0;overflow:hidden;box-sizing:border-box}.node-management-dialog[open]{display:flex;flex-direction:column}.node-management-dialog header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line);flex:none}.node-management-dialog h2{font-size:19px}.node-management-list{flex:1;min-height:0;overflow:auto;padding:16px 20px}.node-management-dialog footer{display:flex;align-items:center;gap:12px;padding:14px 20px;border-top:1px solid var(--line);flex:none}.node-management-dialog footer small{flex:1;color:var(--muted);font-size:12px;line-height:1.5}.archived-node-row{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.archived-node-row>div{flex:1;min-width:0}.archived-node-row strong{display:block;font-size:14px;overflow-wrap:anywhere}.archived-node-row small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.node-management-dialog .tool-btn{border:1px solid var(--line);flex:none}.hidden-node-choice{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.hidden-node-choice span{flex:1;overflow-wrap:anywhere}.hidden-node-choice small{color:var(--muted)}.node-management-dialog.compact{height:auto}.node-management-dialog.compact>p{padding:10px 20px;font-size:14px;line-height:1.6}.context-menu button[hidden]{display:none}

.node.s1 .node-detail>span:last-child{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:unset}.node.s1 .node-detail.type-date{font-size:9px;padding:0;letter-spacing:-.15px}

/* Palette roles: surfaces, quiet canvas, explicit semantic statuses. */
:root{--surface:#fff;--raised:#edf0f5;--accent-ink:#fff;--canvas:#f4f6f9;--cell:#e8ecf2}
dialog{background:var(--surface)}.map-shell{background:var(--canvas);scrollbar-color:var(--line) transparent}.cell{background:var(--cell)}.tool-btn.primary{color:var(--accent-ink)}.node,.node-backing{background:var(--surface)}
html[data-color-scheme]:not([data-color-scheme="original"]) .nav button.active,html[data-color-scheme]:not([data-color-scheme="original"]) :is(.map-nav-row,.tree-node.active,.tabs .active,.page-tab.active,.tool-btn.active,.stage-options button:hover){background:var(--raised);color:var(--accent)}
html[data-color-scheme]:not([data-color-scheme="original"]) :is(input,textarea,select,.search,.canvas-status,.wb-head,.settings-head,.settings-footer,.home-header,.workspace-preview,.new-space-card){background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-color-scheme]:not([data-color-scheme="original"]) :is(.node-state,.pill){background:var(--raised)}
.theme-preview{display:flex;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--preview-surface);color:var(--preview-ink);margin:12px 0}
.theme-preview-side{width:76px;flex:none;display:flex;flex-direction:column;gap:18px;font-weight:600}.theme-preview-side span{font-size:11px}.theme-preview-map{display:flex;gap:10px;flex:1;background:var(--preview-canvas);padding:28px 12px 12px;border-radius:5px;flex-wrap:wrap}.theme-preview-map>span{position:relative;padding:12px 8px;background:var(--preview-surface);border:2px solid;border-radius:4px;font-size:11px}.theme-preview-map i{position:absolute;left:-2px;top:-19px;padding:2px 6px;color:#17243b;font-size:10px;font-style:normal;border-radius:3px;white-space:nowrap}.theme-stage-option{display:flex;align-items:center;gap:8px;margin:16px 0 8px;line-height:1.6}

.node-detail{color:var(--muted)}.detail-label{color:var(--muted)}.cell.stage-covered{background:color-mix(in srgb,var(--stage-cell) 8%,var(--cell))}.map-view-switch .tool-btn[aria-pressed="true"]{background:var(--raised);color:var(--accent)}.nav-count{background:var(--raised);color:var(--accent)}
html[data-color-scheme]:not([data-color-scheme="original"]) :is(.unit-card,.unit-round,.panel,.editor-tab,.page-tab,.field-note,.empty-note,.editor-empty,.layout-tab-list,.node-management-list){color:var(--ink)}

.settings-nav button{color:var(--muted)}.settings-nav button.active{background:var(--surface);color:var(--accent)}.node.selected{outline-color:var(--accent)}.port{background:var(--accent)}.wb-symbol{background:var(--raised);color:var(--muted)}.toast{background:var(--accent);color:var(--accent-ink)}.unit-card .unit-name{color:var(--ink)}.node-more{color:var(--muted)}

/* Workbench controls and repeat navigation follow each palette's surface roles. */
#nodeArchiveBtn{border:0;background:transparent;border-radius:0}
.cell:hover{background:color-mix(in srgb,var(--accent) 8%,var(--cell))}.cell.stage-covered:hover{background:color-mix(in srgb,var(--stage-cell) 18%,var(--cell))}
.unit-card.focused{background:var(--raised);border-color:var(--accent)}.unit-card .unit-name,.unit-card .icon-btn,.unit-card select{color:var(--ink)}
.unit-card>.unit-rounds{border-color:var(--line)}.unit-round{color:var(--muted)}.unit-round:hover{background:var(--raised);color:var(--ink)}.unit-round.active{background:var(--accent);color:var(--accent-ink)!important}.round-name-input{color:var(--ink);border-color:var(--accent)}
.repeat-heading{display:flex;align-items:center;gap:6px}.help-tip{position:relative;width:17px;height:17px;padding:0;border:1px solid var(--muted);border-radius:50%;background:transparent;color:var(--muted);font-size:11px;overflow:visible}.help-tip span{display:none;position:fixed;left:16px;top:105px;width:220px;z-index:120;padding:12px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:7px;font-size:12px;line-height:1.65;text-align:left;box-shadow:0 4px 18px #0002}.help-tip:hover span,.help-tip:focus span{display:block}
.node-status-select{width:94px;flex:none;padding:5px 7px;background:var(--raised);color:var(--ink);border:1px solid var(--line);border-radius:5px;font-size:12px}.template-row{flex-wrap:wrap}.template-row>div{min-width:140px}
/* Keep the independent status control readable in the narrow right workbench. */
.dock-right .wb-head{display:grid;grid-template-columns:minmax(70px,1fr) 94px repeat(3,28px);grid-template-rows:auto 30px;height:108px;padding:10px 12px;gap:5px;align-content:center}.dock-right .wb-symbol{display:none}.dock-right .wb-title{grid-column:1/-1;min-width:0}.dock-right .wb-title input{width:100%;min-width:0}.dock-right .marker-toggle{grid-column:1;justify-self:start}.dock-right .node-status-select{grid-column:2}.dock-right .wb-body{height:calc(100% - 108px)}
