/* Consistent chalk-style browsing controls. */
.workflow-studio #catalog .catalog-source-native{display:none!important}
.workflow-studio #catalog :is(.search-wrap,#catalogDisclosure,#categoryDisclosure){width:100%;flex-shrink:0;margin:0 0 10px;border:1px solid #82b1d078;border-radius:11px;background:#174a7b}
.workflow-studio #catalog .search-wrap{height:48px;min-height:48px;padding:0 12px;display:flex;align-items:center;gap:8px}
.workflow-studio #catalog .search-wrap input{height:46px;min-height:0;padding:0;background:transparent;font-family:var(--draft-font)!important;font-size:var(--catalog-control-font,17px)!important;font-weight:700!important;line-height:1.3;color:#f1faff}
.workflow-studio #catalog .search-wrap input::placeholder{font:inherit;color:#b8d1e5;opacity:1}.workflow-studio #catalog .search-wrap kbd{display:none}
.workflow-studio #catalog :is(#catalogDisclosure,#categoryDisclosure)>summary{height:48px;min-height:48px;box-sizing:border-box;padding:10px 12px;font-family:var(--draft-font)!important;font-size:var(--catalog-control-font,17px)!important;font-weight:700!important;line-height:26px;cursor:pointer}
.workflow-studio #catalog :is(#catalogDisclosure,#categoryDisclosure) .categories{padding:8px;display:flex;flex-wrap:wrap;gap:6px;margin:0}
.workflow-studio #catalog :is(#catalogDisclosure,#categoryDisclosure) .categories button{font-family:var(--draft-font)!important;font-size:14px;padding:8px 10px;min-height:38px;border:1px solid var(--glass-line);border-radius:9px;background:var(--surface-raised);color:var(--ink);text-align:left}
.workflow-studio #catalog :is(#catalogDisclosure,#categoryDisclosure) .categories button.active{background:#087fcb;border-color:#a6e5ff;color:white}
.workflow-studio #catalog #catalogDisclosure[hidden]{display:none}
/* Reserve enough space for the widest two-digit history counts. */
.workflow-studio .topbar .adaptive-history{gap:6px;flex:0 0 auto}
.workflow-studio .topbar .adaptive-history :is(#undoBtn,#redoBtn){width:118px;min-width:118px;height:44px;min-height:44px;padding:8px 10px;font-family:var(--draft-font);font-size:13px;line-height:1.3;white-space:nowrap;text-align:center;box-sizing:border-box;flex:0 0 auto}
.workflow-studio .topbar .adaptive-history button:before{display:none!important}
.workflow-studio .topbar #importMenuBtn{order:3;min-height:44px;padding:8px 13px;border:1px solid var(--glass-line);border-radius:12px;background:var(--surface-raised);font:700 13px var(--draft-font);color:var(--ink);flex:0 0 auto}
.workflow-studio .topbar #exportBtn{order:4}.workflow-studio .topbar #toolsMenu{order:5}
.workflow-studio .topbar #importMenuBtn[aria-pressed=true]{background:#087fcb;border-color:#b9edff;color:white}
.import-dialog{width:min(500px,94vw);max-height:90dvh;overflow:auto}.import-section{padding:14px;border:1px solid var(--glass-line);border-radius:13px;margin:14px 0}.import-section h3{font:700 18px var(--draft-font);margin:0 0 12px}.import-section button{width:100%;min-height:46px;padding:10px 12px;margin:5px 0;border:1px solid #7dbbdb;border-radius:10px;background:#225d90;color:white;font:700 16px var(--draft-font);text-align:left}
.import-dialog .dialog-top{position:relative;justify-content:flex-start;gap:8px}
.import-dialog .dialog-top [data-close]{margin-inline-start:auto}
.workflow-studio .import-info-button{display:grid;place-items:center;flex:none;width:34px;height:34px;min-width:0;min-height:0;padding:0;border:1px solid #4a96c8;border-radius:50%;background:#07558e;color:#fff}
.import-info-button svg{display:block;width:24px;height:24px}
.workflow-studio .import-info-button:hover{background:#0866a8}
.import-info{position:absolute;z-index:1;inset:84px 18px auto auto;width:min(320px,calc(100% - 36px));padding:10px 14px;border:1px solid var(--glass-line);border-radius:10px;background:var(--surface);color:var(--ink);box-shadow:0 8px 24px #0005;font-size:13px;line-height:1.5}
.import-info p{margin:5px 0}
.workflow-studio .topbar #toolsMenu>summary svg{width:20px;height:20px;vertical-align:middle}
.workflow-studio #toolsMenu .shell-settings-row :is(#settingsBtn,#themeToggle,#hideControlsBtn,#catalogPacksBtn){
 background:var(--surface-raised);
 color:var(--ink);
 border:1px solid var(--glass-line);
 border-radius:12px;
 min-height:44px;
 text-align:left;
}
.workflow-studio #toolsMenu .shell-settings-row button:focus-visible,
.import-info-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}

.workflow-studio #deleteLevelConfirmation{text-align:center}.workflow-studio #floorDeleteTitle{font:700 21px var(--draft-font);margin:0 0 14px}.workflow-studio #deleteLevelConfirmation .field-row{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.workflow-studio #deleteLevelConfirmation .field-row button{flex:0 1 160px;min-height:44px;text-align:center}
@media(min-width:1081px){.workflow-studio .project-heading{max-width:calc(100% - 1030px);min-width:160px}}
@media(max-width:1080px){.workflow-studio .topbar{height:auto;min-height:64px;flex-wrap:wrap;padding-block:8px}.workflow-studio .topbar .top-actions{flex-wrap:wrap;justify-content:center;gap:6px;width:100%;margin:0}.workflow-studio .topbar .project-heading{flex:1;position:static;transform:none;max-width:none}.workflow-studio .topbar .adaptive-history :is(#undoBtn,#redoBtn){width:106px;min-width:106px;font-size:12px}.workflow-studio .topbar #importMenuBtn{font-size:12px;padding:8px 10px}.workflow-studio .topbar #exportBtn span{display:block}}
@media(max-width:430px){.workflow-studio .topbar .adaptive-history :is(#undoBtn,#redoBtn){width:92px;min-width:92px;font-size:11px;padding:6px}.workflow-studio .topbar .top-actions{gap:4px}.workflow-studio .topbar #exportBtn{font-size:11px;padding:6px}.workflow-studio .topbar #importMenuBtn{font-size:11px;padding:6px 9px}}
.planning-tabs[hidden]{display:none}
@media(max-width:1080px){.workflow-studio.plan-shell .topbar .top-actions{display:flex;order:2;flex:0 0 100%;width:100%}.workflow-studio.plan-shell .topbar .brand{order:0}.workflow-studio.plan-shell .topbar .project-heading{order:1}}
@media(max-width:700px){.workflow-studio.listing-layout:not(.tray-open) #workspaceTray{left:8px;right:8px;width:auto;border:1px solid var(--glass-line);border-radius:14px}.workflow-studio.listing-layout #workspaceTray .listing-banner{width:auto}.workflow-studio.listing-layout #workspaceTray .listing-banner>div{min-width:0}}
/* Compact category choices without a nested scrollbar. */
.workflow-studio #catalog :is(#catalogDisclosure,#categoryDisclosure) .categories{max-height:none!important;overflow:visible;padding:6px;gap:5px}
.workflow-studio #catalog :is(#catalogDisclosure,#categoryDisclosure) .categories button{min-height:34px;padding:5px 8px;line-height:20px}
/* Phone and compact tablet workspaces keep each toolbar in a single row. */
@media(max-width:1150px), (max-height:550px) {
 .workflow-studio .adaptive-dock{
  display:flex;flex-wrap:nowrap;justify-content:space-between;gap:6px;
  height:auto;min-height:0;padding:5px 6px calc(5px + env(safe-area-inset-bottom,0px));
  overflow-x:auto;overflow-y:hidden;scrollbar-width:none
 }
 .workflow-studio :is(.dock-floor-tools,.dock-center-tools,.dock-view-tools){
  flex:0 0 auto;flex-wrap:nowrap;justify-content:flex-start;gap:4px
 }
 .workflow-studio .dock-floor-tools .level-bar{flex-wrap:nowrap;gap:4px}
 .workflow-studio .dock-floor-tools .level-tabs{max-width:clamp(58px,12vw,112px)}
 .workflow-studio .dock-view-tools .dock-zoom{flex-direction:row;gap:4px}
 .workflow-studio .adaptive-dock :is(.dock-center-tools>button,#viewPanelBtn,.level-tabs button,.levels-menu>summary,.zoom-controls button){
  font-size:12px;white-space:nowrap;min-height:38px;height:38px;padding:4px 7px
 }
 .workflow-studio .adaptive-dock button svg{width:16px;height:16px;flex:none}
 .workflow-studio #workspaceTray #expandedToolbar{
  flex-wrap:nowrap;justify-content:flex-start;gap:5px;
  overflow-x:auto;overflow-y:hidden;scrollbar-width:none
 }
 .workflow-studio #expandedToolbar :is(.steps,.toolbar-floor-group,.mode-tools,.toolbar-selection,.workspace-view-modes){
  flex:0 0 auto;flex-wrap:nowrap;min-height:0;padding:3px;gap:4px
 }
 .workflow-studio #expandedToolbar :is(button,.floor-plan-menu>summary){
  font-size:12px;white-space:nowrap;min-height:36px;height:36px;padding:4px 7px
 }
 .workflow-studio .adaptive-dock .level-actions{position:fixed;left:8px;top:auto;bottom:calc(var(--bottom-dock-height,58px) + 6px)}
 .workflow-studio.plan-shell .topbar{
  flex-wrap:nowrap;height:auto;min-height:48px;padding:4px 8px;gap:6px
 }
 .workflow-studio.plan-shell .topbar .top-actions{
  flex:0 0 auto;width:auto;flex-wrap:nowrap;gap:4px;margin:0
 }
 .workflow-studio.plan-shell .topbar .project-heading{
  display:block;position:static;transform:none;flex:1;min-width:0;max-width:none;padding:0
 }
 .workflow-studio .topbar .project-name-button{max-width:100%;font-size:14px}
 .workflow-studio .topbar .adaptive-history :is(#undoBtn,#redoBtn){
  width:auto;min-width:0;min-height:38px;height:38px;padding:4px 7px;font-size:12px
 }
 .workflow-studio .topbar :is(#importMenuBtn,#exportBtn,#toolsMenu>summary){
  font-size:12px;min-height:38px;padding:4px 7px;white-space:nowrap
 }
}
@media(max-width:850px), (max-width:1080px) and (max-height:550px) {
 .workflow-studio .standard-dialog{font-size:14px;padding:14px;max-height:calc(100dvh - 16px);overflow-y:auto}
 .workflow-studio .standard-dialog h2{font-size:23px}
 .workflow-studio .standard-dialog :is(p,label,button,summary){font-size:14px}
 .workflow-studio .standard-dialog :is(input,select,textarea){font-size:16px}
 .workflow-studio .standard-dialog :is(.dialog-top,.field){margin-bottom:9px}
 .workflow-studio .standard-dialog .dialog-top .standard-close-action{min-height:38px;font-size:13px}
}
@media(max-width:520px) {
 .workflow-studio .topbar .brand-nav-label,.workflow-studio .topbar .save-status{display:none}
 .workflow-studio .topbar .adaptive-history :is(#undoBtn,#redoBtn){font-size:0;width:34px}
 .workflow-studio .topbar .adaptive-history :is(#undoBtn,#redoBtn)::after{font-size:17px}
 .workflow-studio .topbar .adaptive-history #undoBtn::after{content:'↶'}
 .workflow-studio .topbar .adaptive-history #redoBtn::after{content:'↷'}
}
/* Keep the workspace menus in the header and off the drawing. */
.workflow-studio .scale-readout{display:none!important}
.workflow-studio:not(.tray-open):not(.listing-layout) #workspaceTray{display:none}
.workflow-studio .topbar #trayHandle{
 display:inline-flex;align-items:center;justify-content:center;
 box-sizing:border-box;width:auto;min-height:38px;margin:0;padding:4px 8px;
 border:1px solid var(--glass-line);border-radius:10px;
 color:var(--ink);background:var(--surface-raised);
 font:700 12px var(--draft-font);white-space:nowrap;cursor:pointer
}
.workflow-studio .topbar #trayHandle{order:1;touch-action:manipulation}
.workflow-studio .topbar #trayHandle[aria-expanded=true]{background:#087fcb;color:white;border-color:#b9edff}
.workflow-studio.tray-open #workspaceTray #expandedToolbar{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding:5px}
.workflow-studio #expandedToolbar :is(.toolbar-floor-group,.mode-tools,.toolbar-selection,.workspace-view-modes){flex-wrap:nowrap}
@media(max-width:520px){
 .workflow-studio .topbar #trayHandle{padding-inline:5px;font-size:11px}
 .workflow-studio .topbar #exportBtn span{display:none}
}
@media(max-width:430px){
 .workflow-studio.plan-shell .topbar .top-actions{gap:3px}
 .workflow-studio .topbar .adaptive-history :is(#undoBtn,#redoBtn){width:28px;padding-inline:2px}
 .workflow-studio .topbar :is(#importMenuBtn,#exportBtn,#toolsMenu>summary){padding-inline:5px}
}
@media(max-width:360px){
 .workflow-studio .topbar #importMenuBtn{font-size:0;min-width:30px}
 .workflow-studio .topbar #importMenuBtn::after{content:'↓';font-size:17px}
}
@media(max-width:360px){
 .workflow-studio.plan-shell .topbar{padding-inline:4px;gap:3px}
 .workflow-studio.plan-shell .topbar .top-actions{gap:2px}
 .workflow-studio .topbar #importMenuBtn{width:28px;min-width:28px;padding-inline:3px}
}
.workflow-studio.layout-expanded .topbar #trayHandle{display:none}
@media(max-width:850px), (max-width:1080px) and (max-height:550px){
 .workflow-studio .standard-dialog{box-sizing:border-box;min-width:0;max-width:calc(100vw - 16px)}
}

/* Compact, non-modal side sheets share the drawing area. */
.workflow-studio.plan-shell {
  --compact-sheet-width: min(256px, max(208px, 32vw), 52vw);
}
.workflow-studio #inspectorDrawer {
  display: block;
  overflow: hidden auto;
  overscroll-behavior: contain;
}
.workflow-studio #inspectorDrawer .panel-heading {
  justify-content: flex-start;
  gap: 8px;
}
.workflow-studio #inspectorDrawer .panel-heading button {
  margin-inline-start: auto;
  flex-shrink: 0;
}
.workflow-studio #inspectorDrawer #inspector {
  overflow: visible;
  overflow-wrap: anywhere;
}
@media (max-width: 1099px), (max-height: 599px) {
  .workflow-studio.plan-shell :is(#catalog, #inspectorDrawer) {
    position: absolute !important;
    width: var(--compact-sheet-width);
    border-radius: 12px;
    transition: none;
  }
  .workflow-studio.plan-shell #catalog {
    padding: 8px 8px 0;
    --catalog-control-font: 14px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .workflow-studio.plan-shell .workspace:has(#catalog.mobile-open) > .editor {
    margin-left: calc(var(--compact-sheet-width) + 8px);
  }
  .workflow-studio.plan-shell .workspace:has(#inspectorDrawer.panel-open) > .editor {
    margin-right: calc(var(--compact-sheet-width) + 8px);
  }
  .workflow-studio #catalog .catalog-heading { gap: 4px; }
  .workflow-studio #catalog .catalog-heading h2 {
    margin: 0;
    font-size: 18px;
    overflow-wrap: anywhere;
  }
  .workflow-studio #catalog :is(.search-wrap, #catalogDisclosure, #categoryDisclosure) {
    margin-block-end: 6px;
  }
  .workflow-studio #catalog :is(.search-wrap, #catalogDisclosure > summary, #categoryDisclosure > summary) {
    height: auto;
    min-height: 44px;
    padding: 6px 8px;
  }
  .workflow-studio #catalog .search-wrap input { min-width: 0; height: 30px; }
  .workflow-studio #catalog .parts-scroll { flex: none; overflow: visible; }
  .workflow-studio #catalog .parts-grid { overflow: visible; }
  .workflow-studio #inspectorDrawer .panel-heading { padding: 3px 6px; gap: 4px; }
  .workflow-studio #inspectorDrawer .panel-heading strong { font-size: 14px; }
  .workflow-studio #inspectorDrawer .properties-wordmark { width: clamp(30px, 6vw, 50px); }
  .workflow-studio #inspectorDrawer #inspector { padding: 8px; }
  .workflow-studio #inspector .rotation-row :is(button, input) { min-width: 0; }
  .workflow-studio :is(button.standard-close-action, #closeCatalog, #collapseInspector, #closeViewPanel).responsive-close {
    font-size: 0 !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    flex-shrink: 0;
  }
  .workflow-studio button.responsive-close::after {
    content: "×" / "";
    font: 600 24px/1 system-ui;
  }
}

@media (max-width: 360px) {
  .workflow-studio #catalog #partsGrid {
    grid-template-columns: minmax(0, 1fr);
  }
}

#driveSyncPanel[hidden], #driveDisconnect[hidden] { display: none !important; }
#driveSyncStatus { overflow-wrap: anywhere; }

.workflow-studio :is(#catalog, #inspectorDrawer, #adaptiveViewPanel) {
  top: max(0px, calc(var(--workspace-tools-bottom, 76px) - 12px)) !important;
  bottom: var(--bottom-dock-height, 60px) !important;
  max-height: none;
  border-radius: 0;
}
.workflow-studio #catalog {
  bottom: calc(var(--bottom-dock-height, 60px) + var(--floor-menu-height, 0px)) !important;
}
.workflow-studio #adaptiveViewPanel {
  position: fixed;
  inset-inline: auto 0;
  width: 256px;
  overflow: auto;
  overscroll-behavior: contain;
}
.workflow-studio .workspace:has(#adaptiveViewPanel:not([hidden])) > .editor {
  margin-inline-end: 256px;
}
.workflow-studio .trace-file-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.workflow-studio #traceFile[hidden] { display: none; }
.workflow-studio #traceFileName { overflow-wrap: anywhere; }
.workflow-studio #traceFileName:empty { display: none; }
.workflow-studio .adaptive-view-panel .reference-options {
  border-bottom: 1px solid var(--line);
}
.workflow-studio .adaptive-view-panel .reference-options .reference-drawing-option {
  border-bottom: 0;
}
.reference-heading {position:relative}
.workflow-studio #adaptiveViewPanel .reference-heading .reference-drawing-option {padding-inline-end:0;gap:44px}
.reference-heading .reference-help {position:absolute;inset-inline-end:50px;top:50%;transform:translateY(-50%)}
.reference-help p {position:absolute;z-index:2;right:0;top:100%;width:180px;padding:10px;background:var(--panel,#164577);border:1px solid var(--line);border-radius:8px;margin:0;font:400 14px/1.4 var(--draft-font)}
.trace-area-selection {margin-block:10px}
.trace-area-selection summary {cursor:pointer}
.trace-area-preview {position:relative}
.trace-area-preview img {display:block;width:100%;height:auto}
.trace-area-preview svg {position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}
.trace-area-preview svg:not(.has-area) rect {display:none}
.trace-area-box {fill:#36baff33;stroke:#36baff;stroke-width:2;vector-effect:non-scaling-stroke;cursor:move}
.trace-area-handle {fill:#36baff;cursor:nwse-resize}
.trace-area-selection > p {margin:8px 0;font:400 14px/1.4 var(--draft-font)}
.trace-area-actions {display:flex;justify-content:center;margin-top:8px}

#firstFixtureCoach {
 position:fixed;
 z-index:1002;
 box-sizing:border-box;
 width:min(320px,calc(100vw - 24px));
 padding:12px;
 background:#172b40;
 color:#f5fbff;
 border:1px solid #69daef;
 border-radius:12px;
 box-shadow:0 5px 20px #0008;
}
#firstFixtureCoach header {display:flex;align-items:center;justify-content:space-between;gap:8px}
#firstFixtureCoach small {white-space:nowrap;color:#b3d4e8}
#firstFixtureCoach p {margin:8px 0 12px;line-height:1.35}
.first-fixture-actions {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.first-fixture-actions button {min-width:0;min-height:36px;padding:3px;font-size:13px}
.first-fixture-highlight {
 position:fixed;
 z-index:1001;
 pointer-events:none;
 outline:3px solid #e0fcff;
 outline-offset:2px;
 border-radius:9px;
 box-shadow:0 0 0 7px #00d9ff,0 0 22px 9px #00d9ff9c,inset 0 0 14px #00d9ff95;
}

html[data-theme=dark].workflow-studio :is(#nudgePad,#measurementCard) {
 background:#172b40;
 border-color:#425d75;
}
html[data-theme=dark].workflow-studio :is(#nudgeStep,#settingsForm #workspaceLayout,#inspector input:not([type]),#inspector input:is([type="text"],[type="number"])) {
 background:#102538;
 color:#f5fbff;
 border-color:#526d82;
 color-scheme:dark;
}
html[data-theme=dark].workflow-studio :is(#nudgeStep,#workspaceLayout) option {
 background:#172b40;
 color:#f5fbff;
}
html[data-theme=dark].workflow-studio #inspector .mode-protection {
 background:#102538;
 border-color:#425d75;
 color:#f5fbff;
}

.workflow-studio #heightMarkerDialog {
 width:min(480px,calc(100vw - 24px));
 max-height:calc(100dvh - 24px);
}
#heightMarkerDialog .dialog-top {margin-bottom:10px}
#heightMarkerDialog .dialog-top h2 {margin:0}
#heightMarkerDialog > p {margin:0 0 14px}
#heightMarkerRows {display:grid;gap:8px}
#heightMarkerDialog .height-marker-row {
 grid-template-columns:minmax(0,1fr) auto auto auto;
 align-items:end;
 gap:10px;
 padding:10px;
 border:1px solid var(--line);
 border-radius:10px;
}
#heightMarkerDialog .height-marker-row .field {margin:0;min-width:0;gap:4px}
#heightMarkerDialog .height-marker-row input[data-height],
#heightMarkerDialog .height-marker-row input[type=color] {
 box-sizing:border-box;
 height:40px;
 min-height:40px;
 margin:0;
}
#heightMarkerDialog .height-marker-row input[type=color] {
 width:44px;
 padding:3px;
 background:var(--surface-raised);
 border-radius:8px;
}
#heightMarkerDialog .height-marker-visibility {
 display:flex;
 align-items:center;
 gap:5px;
 min-height:40px;
}
#heightMarkerDialog .height-marker-row [data-remove] {
 grid-column:auto;
 min-height:40px;
 padding:4px 8px;
}
#heightMarkerDialog #addHeightMarker {display:block;margin:14px 0 0 auto}
#heightMarkerDialog #heightMarkerError {margin:10px 0 0}
#heightMarkerDialog #heightMarkerError:empty {display:none}
@media(max-width:440px) {
 #heightMarkerDialog .height-marker-row {grid-template-columns:minmax(0,1fr) auto;align-items:center}
 #heightMarkerDialog .height-marker-row [data-remove] {justify-self:end}
}

/* New Layout and the existing room editing form share the same preview. */
.workflow-studio #roomDialog {
 width:min(1080px, calc(100vw - 24px));
 max-width:none;
 max-height:calc(100dvh - 24px);
 padding:clamp(14px, 3vw, 30px);
}
.workflow-studio #roomForm .dialog-top {margin:0 0 16px;align-items:center}
.workflow-studio #roomForm h2 {margin:0;min-width:0;overflow-wrap:anywhere}
.room-form-body {
 display:grid;
 grid-template-columns:minmax(0, 44fr) minmax(0, 56fr);
 gap:clamp(14px, 2.5vw, 26px);
}
.room-form-fields {
 min-width:0;
 padding-inline-end:clamp(14px, 2.5vw, 26px);
 border-inline-end:1px solid #718ba366;
}
.workflow-studio #roomForm .field {margin:0 0 10px}
.workflow-studio #roomForm .measurement-help {margin:0 0 14px}
.workflow-studio #roomForm .exterior-wall-settings {margin:0;padding:0;border:0}
.workflow-studio #roomForm .exterior-wall-settings legend {margin-bottom:8px;padding:0}
.workflow-studio #roomForm .dimension-note {margin:8px 0 0}
.workflow-studio #roomForm .wall-color-presets {
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:8px;
}
.workflow-studio #roomForm .wall-color-presets button,
.workflow-studio #roomForm .wall-color-presets label {
 min-width:0;
 min-height:40px;
 padding:5px;
 justify-content:center;
 text-align:center;
 font:inherit;
}
.workflow-studio #roomForm .wall-color-presets label {
 border:1px solid #477199;
 border-radius:8px;
}
.workflow-studio #roomForm .wall-color-presets label:focus-within {outline:2px solid #6ae9fb;outline-offset:2px}
.workflow-studio #roomForm .wall-color-presets input[type=color] {width:24px;height:24px;padding:1px}
.workflow-studio #roomForm #roomPreview {
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 min-width:0;
 margin:0;
 padding:12px;
 border:1px solid #718ba366;
 border-radius:16px;
 color:#f5fbff;
 background-color:#102432;
 background-image:linear-gradient(#8bbddd15 1px,transparent 1px),linear-gradient(90deg,#8bbddd15 1px,transparent 1px);
 background-size:16px 16px;
 text-align:center;
}
.workflow-studio #roomPreview svg {display:block;width:100%;height:auto}
.workflow-studio #roomPreview svg[hidden] {display:none}
.workflow-studio #roomPreview svg text {fill:currentColor;font:600 19px system-ui,sans-serif}
.room-dimension-lines {fill:none;stroke:#b5ccde;stroke-width:2}
.workflow-studio #roomPreviewArea {font:700 clamp(22px, 4vw, 34px)/1.2 system-ui,sans-serif}
.workflow-studio #roomPreviewCaption {margin:4px 0 0;color:#c4d5e3}
.room-form-footer {
 display:flex;
 flex-wrap:wrap;
 align-items:center;
 justify-content:flex-end;
 gap:12px;
 margin-top:16px;
 padding-top:14px;
 border-top:1px solid #718ba366;
}
.workflow-studio #roomSubmit {width:min(100%, 260px);margin:0}
@media (max-width:640px) {
 .room-form-body {grid-template-columns:minmax(0,1fr)}
 .room-form-fields {padding-inline-end:0;border-inline-end:0}
 .workflow-studio #roomPreview svg {max-height:190px}
}
.workflow-studio #retailPlanningDialog[data-panel="trace"] .trace-footer .trace-next-step:not(:disabled) {
 outline:2px solid #54d8fb;
 outline-offset:2px;
}
.workflow-studio #retailPlanningDialog[data-panel="trace"] .trace-footer .trace-next-step:focus-visible {
 outline:3px solid #b9f1ff;
 outline-offset:4px;
}
.about-wordmark {display:block;width:min(180px,55%);height:auto}
.workflow-studio .adaptive-view-panel .reference-opacity-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 4ch;
  align-items: center;
  gap: 8px;
  padding: 0 0 8px;
  font-family: var(--draft-font);
}
.workflow-studio .reference-opacity-option[hidden] { display: none; }
.workflow-studio #referenceOpacity { width: 100%; min-width: 0; }
.workflow-studio #referenceOpacityValue { text-align: end; font: inherit; font-variant-numeric: tabular-nums; }

@media (max-width: 1099px), (max-height: 599px) {
  .workflow-studio.plan-shell #catalog { left: 0; }
  .workflow-studio.plan-shell #inspectorDrawer { right: 0; }
  .workflow-studio.plan-shell #adaptiveViewPanel { width: var(--compact-sheet-width); }
  .workflow-studio.plan-shell .workspace:has(#catalog.mobile-open) > .editor {
    margin-left: var(--compact-sheet-width);
  }
  .workflow-studio.plan-shell .workspace:has(#inspectorDrawer.panel-open, #adaptiveViewPanel:not([hidden])) > .editor {
    margin-right: var(--compact-sheet-width);
  }
  .workflow-studio :is(button.standard-close-action, #closeCatalog, #collapseInspector, #closeViewPanel).responsive-close {
    position: relative;
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none;
  }
  .workflow-studio button.responsive-close::after {
    position: absolute;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border: 1px solid #62ccec;
    border-radius: 50%;
    background: #0a8fb5;
    font: 700 16px/1 system-ui;
  }
}

/* Compact forms and action menus. The wider planning views keep their canvas or table space. */
.workflow-studio :is(#newLayoutDialog,#savePartDialog,#renamePlanDialog,#removeProjectDialog,#warningsDialog,#applyFinishDialog,#rotationDialog,#tutorialPrompt){
 width:min(380px,94vw);
}
#removeProjectDescription {
  overflow-wrap: anywhere;
  font-family: var(--draft-font);
}
.workflow-studio #removeProjectTitle {
  white-space: nowrap;
  font-size: clamp(18px, 6vw, 28px);
}
.workflow-studio #removeProjectDialog .field-row {
  display: flex;
  justify-content: center;
  gap: 16px;
}
#removeProjectDialog .field-row > button {
  flex: 0 0 auto;
  margin: 0;
}
.workflow-studio :is(#projectsDialog,#settingsDialog,#exportDialog,#levelDialog,#floorFinishDialog,#scaleDialog){
 width:min(410px,94vw);
}
.workflow-studio :is(#imagePickerDialog,#heightMarkerDialog){
 width:min(500px,94vw);
}
.workflow-studio #retailPlanningDialog[data-panel="trace"]{
 width:min(510px,94vw);
}
.workflow-studio #retailPlanningDialog[data-panel="trace"] :is(#planningBody > p, #traceFileLabel, #traceFileName) {
  font-family: var(--draft-font);
}
.workflow-studio #retailPlanningDialog[data-panel="trace"]:has(.manual-floorplan-import[open]){
 width:min(640px,94vw);
}

.workflow-studio #importDialog .import-section button {
 background:var(--surface-raised);
 color:var(--ink);
 border:1px solid var(--glass-line);
 text-align:center;
}

.workflow-studio #settingsDialog #helpOpenBtn{
 min-height:44px;background:var(--surface-raised);color:var(--ink);border:1px solid var(--glass-line);border-radius:12px;
}
.workflow-studio #helpDialog .help-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.workflow-studio #helpDialog .help-actions button{min-width:0;white-space:normal;text-align:center}
.accessibility-setting{position:relative;display:flex;align-items:center;gap:8px}
.accessibility-setting .checkbox-row{min-width:0}
.accessibility-setting .import-info{inset:100% 0 auto auto;width:min(320px,100%)}

.workflow-studio #adaptiveViewPanel .reference-drawing-option[hidden]{display:none}
.workflow-studio .adaptive-dock .level-tabs {
  --floor-tab-width: 120px;
}
.workflow-studio .adaptive-dock .level-tabs button {
  padding-inline: 6px;
}
.workflow-studio .adaptive-dock .level-tabs button > span {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 11px;
}
@media (max-width: 1099px), (max-height: 599px) {
  .workflow-studio .adaptive-dock .level-tabs {
    --floor-tab-width: clamp(108px, 17vw, 120px);
  }
}
.workflow-studio #inspector .rotation-nudges {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
}
.workflow-studio #inspector .access-side-card label {
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.workflow-studio #inspector .access-side-card label > span {
  white-space: nowrap;
}
.workflow-studio #inspector .rotation-nudges button[id] {
  display: grid;
  place-items: center;
  box-sizing: border-box;
  height: 44px;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: 4px 0;
  font-family: system-ui, sans-serif;
  font-size: clamp(11px, 1.2vw, 14px);
  font-weight: 700;
  white-space: nowrap;
}
.workflow-studio #inspector #clearOverlapRow[hidden] { display: none; }

/* Compact help controls and deliberate spacing between Settings actions. */
.workflow-studio .import-info-button{width:26px;height:26px}
.import-info-button svg{width:18px;height:18px}
.workflow-studio #settingsForm :is(#repositionReferenceBtn,#helpOpenBtn){
 display:block;margin:0 0 12px;border:1px solid var(--glass-line);
 background:var(--surface-raised);color:var(--ink)
}
.workflow-studio #settingsForm #repositionReferenceBtn:disabled{opacity:.55}
.workflow-studio #settingsForm :is(#helpOpenBtn, #aboutOpenBtn, button[type="submit"]){margin:12px 0 0}
.workflow-studio #settingsForm #aboutOpenBtn{border:1px solid var(--glass-line);background:var(--surface-raised);color:var(--ink)}
.group-spacing-heading{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px}
.group-spacing-heading .import-info{inset:calc(100% + 4px) 0 auto auto;box-sizing:border-box;width:min(320px,100%)}

.workflow-studio.plan-shell .adaptive-view-panel .reference-opacity-option{font-family:var(--draft-font);font-weight:700;min-height:0;cursor:default}
.workflow-studio .adaptive-view-panel .reference-opacity-option :is(span,output){font:inherit;color:inherit}
.workflow-studio #settingsForm select,.workflow-studio #settingsForm select option{font:700 1rem var(--draft-font)}
.workflow-studio #settingsForm .icon-reset-buttons button{background:var(--surface-raised);color:var(--ink);border:1px solid var(--glass-line);border-radius:10px;font:700 14px var(--draft-font);min-height:44px;padding:6px}
.workflow-studio #plan.reposition-reference,.workflow-studio #plan.reposition-reference *{cursor:move!important}
@media(min-width:1100px) and (min-height:600px){
 .workflow-studio.plan-shell #closeCatalog{min-width:0!important;min-height:0!important;padding:4px 9px!important;font-size:12px;line-height:1.4}
}
.workflow-studio #levelDialog .dialog-top h2{white-space:nowrap;font-size:clamp(16px,4vw,24px)}
.workflow-studio #levelDialog .dialog-top{gap:8px}
.workflow-studio #levelDialog .level-settings-actions{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 14px
}
.workflow-studio #levelDialog .level-settings-actions button{
 min-height:44px;margin:0;padding:8px 6px;border:1px solid var(--glass-line);border-radius:10px;
 background:var(--surface-raised);color:var(--ink);font:700 14px var(--draft-font)
}
.workflow-studio #levelDialog .level-plan-actions{margin-top:12px}
.workflow-studio .quick-unit-label[hidden]{display:none}

/* Keep file selection and import together, with more room for the manual preview. */
.workflow-studio #retailPlanningDialog[data-panel="trace"] .dialog-top{gap:8px;margin-bottom:12px}
.workflow-studio #retailPlanningDialog[data-panel="trace"] .dialog-top h2{font-size:clamp(17px,4.8vw,26px);white-space:nowrap}
.workflow-studio .trace-file-field{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:8px;font:600 14px var(--draft-font)}
.workflow-studio .trace-file-actions{min-width:0;gap:6px}
.workflow-studio .trace-file-actions #traceChoose{flex:none;white-space:nowrap}
.workflow-studio #traceFileName{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 13px var(--draft-font)}
.workflow-studio #retailPlanningDialog[data-panel="trace"] .trace-import-note{font:400 13px/1.4 var(--draft-font);margin:8px 0 12px}
.workflow-studio .trace-import-action #scanBrochure{margin:0}
.workflow-studio .trace-import-action #brochureStatus{margin:6px 0 0}
.workflow-studio #retailPlanningDialog[data-panel="trace"] :is(#brochureStatus,#planningMessage):empty{display:none}
.workflow-studio #retailPlanningDialog[data-panel="trace"] .manual-floorplan-import{margin-top:8px}

:is(#retailPlanningDialog, #importDialog, #projectsDialog, #exportDialog, #levelDialog, #settingsDialog)::backdrop {
  background-color: #081727eb;
  background-image: linear-gradient(#4593c022 1px, transparent 1px),
    linear-gradient(90deg, #4593c022 1px, transparent 1px);
  background-size: 24px 24px;
  backdrop-filter: none;
}

.workflow-studio :is(#retailPlanningDialog, #importDialog, #projectsDialog, #exportDialog, #levelDialog, #settingsDialog) {
  --surface: #171f2b;
  --surface-raised: #222b39;
  --glass-line: #465264;
  --ink: #f3f6fb;
  --muted: #bac4d3;
  background: linear-gradient(145deg, #1a2230, #121925);
  border-color: #616d80;
  color: var(--ink);
  color-scheme: dark;
}

.workflow-studio #retailPlanningDialog[data-panel="trace"] {
  --import-divider: #3a4352;
  --import-muted: #bac4d3;
  width: min(960px, 96vw);
  max-height: 94dvh;
  padding: 0;
  border: 1px solid #616d80;
  border-radius: 20px;
  background: linear-gradient(145deg, #1a2230, #121925);
  color: #f3f6fb;
  font: 400 15px/1.45 system-ui, sans-serif;
}

.workflow-studio #retailPlanningDialog[data-panel="trace"] .dialog-top {
  margin: 0;
  padding: 16px clamp(14px, 3vw, 26px);
  border-bottom: 1px solid var(--import-divider);
}

.workflow-studio #retailPlanningDialog[data-panel="trace"] .dialog-top h2 {
  font: 700 clamp(18px, 3vw, 27px)/1.2 system-ui, sans-serif;
}

.workflow-studio #retailPlanningDialog[data-panel="trace"] .dialog-top [data-dismiss] {
  display: grid;
  place-items: center;
  width: 50px;
  min-width: 50px;
  height: 50px;
  min-height: 50px;
  padding: 0 !important;
  border: 0;
  border-radius: 50%;
  background: #2b3544;
  color: inherit;
  font: 400 25px/1 system-ui, sans-serif;
}
#retailPlanningDialog[data-panel="trace"] .dialog-top [data-dismiss] svg {
  display: block;
  width: 25px;
  height: 25px;
}

#retailPlanningDialog[data-panel="trace"] .trace-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
}

.trace-preview-pane, .trace-sidebar { min-width: 0; padding: clamp(12px, 2.4vw, 24px); }
.trace-preview-pane { border-inline-end: 1px solid var(--import-divider); }
.trace-preview-pane h3 { margin: 0 0 12px; color: var(--import-muted); font: 600 15px/1.4 system-ui, sans-serif; }
.trace-preview-stage {
  display: grid;
  place-items: center;
  min-height: clamp(110px, 34vh, 310px);
  padding: 12px;
  overflow: hidden;
  border: 1px solid #566274;
  border-radius: 8px;
  background: #eef2f6;
  color: #415069;
  text-align: center;
}
.trace-preview-stage .trace-area-preview { width: fit-content; max-width: 100%; }
.trace-preview-stage .trace-area-preview img { width: auto; height: auto; max-width: 100%; max-height: 48dvh; }
.trace-preview-stage .trace-area-preview:not(.is-selecting) svg { pointer-events: none; }
.trace-preview-stage .trace-area-preview.is-selecting { cursor: crosshair; }
.trace-preview-stage .trace-area-box { stroke: #00cbdc; }
.trace-preview-stage .trace-area-handle { fill: #00cbdc; }

.workflow-studio #retailPlanningDialog[data-panel="trace"] .trace-file-field {
  display: flex;
  gap: 12px;
  padding: 10px;
  border: 1px solid var(--import-divider);
  border-radius: 10px;
  background: #222b39;
  font: inherit;
}
.trace-visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
#traceThumbnail { width: 54px; height: 44px; object-fit: contain; border-radius: 5px; background: #eef2f6; }
#traceThumbnail[hidden] { display: none; }
.workflow-studio #retailPlanningDialog[data-panel="trace"] .trace-file-actions { flex: 1; display: flex; align-items: center; }
.workflow-studio #retailPlanningDialog[data-panel="trace"] #traceFileName { order: -1; min-width: 0; flex: 1; overflow-wrap: anywhere; font: inherit; }
.workflow-studio #retailPlanningDialog[data-panel="trace"] #traceChoose {
  padding: 6px 8px;
  min-height: 36px;
  border: 0;
  background: transparent;
  color: #83beff;
  font: 600 14px/1.3 system-ui, sans-serif;
}

#retailPlanningDialog[data-panel="trace"] #traceSetup > details { margin: 10px 0 0; }
#retailPlanningDialog[data-panel="trace"] #traceSetup > details > summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--import-divider);
  border-radius: 9px;
  background: #222b39;
  font: 600 14px/1.4 system-ui, sans-serif;
  cursor: pointer;
}
#retailPlanningDialog[data-panel="trace"] #traceSetup > details > summary::after { content: '›'; color: var(--import-muted); font-size: 20px; line-height: 1; }
#retailPlanningDialog[data-panel="trace"] #traceSetup > details[open] > summary::after { transform: rotate(90deg); }
#retailPlanningDialog[data-panel="trace"] #traceSetup > .trace-area-selection[open] > summary {
  background: #285a80;
  border-color: #83beff;
  color: #fff;
}
#retailPlanningDialog[data-panel="trace"] #traceSetup > .trace-area-selection[open] > summary::after { color: inherit; }
#retailPlanningDialog[data-panel="trace"] #traceSetup > .manual-floorplan-import > summary {
  padding-inline: 0;
  border: 0;
  background: transparent;
  color: #83beff;
  text-decoration: underline;
}

.trace-footer, .trace-footer-buttons { display: flex; align-items: center; gap: 10px; }
.trace-footer {
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 12px clamp(14px, 3vw, 26px);
  border-top: 1px solid var(--import-divider);
}
.trace-footer-buttons { margin-inline-start: auto; flex-wrap: nowrap; justify-content: end; }
.trace-footer #brochureStatus { flex-basis: 100%; margin: 0; color: var(--import-muted); }
.trace-tips { color: var(--import-muted); }
.trace-tips summary { display: block; list-style: none; cursor: pointer; }
.trace-tips summary::-webkit-details-marker { display: none; }
.workflow-studio .adaptive-dock #levelsMenu > summary,
.workflow-studio .topbar #toolsMenu > summary {
  background: var(--surface-raised);
}
.workflow-studio #retailPlanningDialog .estimate-downloads {
  flex-wrap: nowrap;
  gap: clamp(4px, 1vw, 14px);
  overflow-x: auto;
}
.workflow-studio #retailPlanningDialog .estimate-downloads > button {
  flex: 0 0 auto;
  min-height: 44px;
  padding-inline: clamp(5px, 1.2vw, 14px);
  font-size: clamp(10px, 2.6vw, 15px);
  white-space: nowrap;
}
.trace-tips p { max-width: 34ch; }
.workflow-studio #retailPlanningDialog[data-panel="trace"] .trace-footer button {
  min-height: 40px;
  height: 40px;
  margin: 0;
  padding: 8px 14px;
  border: 1px solid #586478;
  border-radius: 8px;
  background: #303a49;
  color: #f3f6fb;
  font: 600 14px/1.3 system-ui, sans-serif;
  white-space: nowrap;
}
#retailPlanningDialog[data-panel="trace"] .trace-footer .primary { background: #0765cf; border-color: #2186ed; }
#retailPlanningDialog[data-panel="trace"] #planningMessage:not(:empty) { padding: 0 16px 12px; }

@media (max-width: 560px) {
  #retailPlanningDialog[data-panel="trace"] .trace-workspace { grid-template-columns: minmax(0, 1fr); }
  .trace-preview-pane { border-inline-end: 0; border-bottom: 1px solid var(--import-divider); }
  .trace-preview-stage .trace-area-preview img { max-height: 33dvh; }
}

/* Keep group widths tied to their controls and distribute spare room between groups. */
.workflow-studio #workspaceTray #expandedToolbar{
 flex-wrap:nowrap;
 justify-content:space-between;
 gap:clamp(5px,1.2vw,18px);
 overflow-x:auto;
 scrollbar-width:none;
}
.workflow-studio #workspaceTray #expandedToolbar :is(.steps,.mode-tools,.toolbar-selection,.workspace-view-modes){
 flex:0 0 auto;
 flex-wrap:nowrap;
 margin-inline:0;
}

/* Auto margins share spare width and keep the last group right aligned when it is alone. */
.workflow-studio #workspaceTray #expandedToolbar :is(.mode-tools,.toolbar-selection,.workspace-view-modes){
 margin-inline-start:auto;
}

.workflow-studio .trace-sizing{margin:0 0 10px}
.workflow-studio .trace-sizing summary{cursor:pointer;font-family:var(--draft-font)}
.workflow-studio .trace-sizing[open] summary{margin-bottom:8px}

.workflow-studio #inspector .connection-info{padding:8px;margin:8px 0}
.connection-card-heading{position:relative;display:flex;align-items:center;gap:6px;margin-bottom:6px}
.connection-card-heading>svg{width:22px;height:22px;flex:none;color:var(--teal)}
.connection-card-heading .connection-help{margin-inline-start:auto}
.connection-help summary{cursor:pointer;list-style:none}
.connection-help summary::-webkit-details-marker{display:none}
.connection-help .import-info{box-sizing:border-box;inset:calc(100% + 4px) 0 auto auto;width:100%;z-index:4}
.workflow-studio #inspector .connection-floors{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:4px}
.workflow-studio #inspector .connection-floors button{flex:1 0 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:5px 3px;font-size:clamp(10px,1vw,12px)}
.workflow-studio #inspector #editConnectionBtn{margin:4px 0 0;min-height:34px}

/* Keep dialog titles on one line while preserving room for header controls. */
.workflow-studio dialog h2{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workflow-studio dialog .dialog-top{gap:clamp(4px,1vw,10px)}
.workflow-studio dialog .dialog-top h2{font-size:clamp(16px,3.4vw,24px)}
.workflow-studio dialog .dialog-top > h2{flex:1 1 auto}
.workflow-studio dialog .dialog-top > button{flex-shrink:0}
.workflow-studio dialog .scale-dialog-brand{min-width:0}
.workflow-studio #newLayoutDialog #importProjectFloorPlan{
 margin-top:8px;min-height:44px;border:1px solid var(--glass-line);border-radius:12px;
 background:var(--surface-raised);color:var(--ink);text-align:center;
}

.workflow-studio :is(#renamePlanDialog,#warningsDialog,#roomBuilderDialog,#rotationDialog,#resetListingDialog) .dialog-top h2{
 font-size:clamp(16px,2.6vw,19px);
}



.workflow-studio #inspector .rotation-nudges button[id]{
 display:flex;flex-direction:column;align-items:center;justify-content:center;
 gap:2px;font-size:13px;line-height:1;text-align:center;
}
.workflow-studio #inspector .rotation-nudges button[id] > span{font:inherit;line-height:inherit}

.workflow-studio #inspector .access-heading h3{margin:0}

.workflow-studio #inspector .rotation-nudges button[id] > span:last-child{
 font-family:system-ui,sans-serif!important;font-size:15px!important;font-weight:700;letter-spacing:0.02em;
}
.workflow-studio #inspector :is(input[data-nonnegative],.access-side-card input[type=text]){min-width:0;white-space:nowrap}

.workflow-studio #inspector .property-section[data-section="placement"] > .inspector-section{
 display:grid;gap:8px;margin:0;
}
.workflow-studio #inspector .property-section[data-section="placement"] :is(h3,.field,.connection-card-heading){margin:0}
.workflow-studio #inspector .property-section[data-section="placement"] .access-controls{
 display:grid;gap:8px;margin:0;padding-top:8px;border-color:var(--glass-line);
}
.workflow-studio #inspector .access-side-grid{gap:8px}
.workflow-studio #inspector .access-side-card{padding:8px}
.workflow-studio #inspector .access-side-card label{margin-bottom:8px}

.workflow-studio #inspector #applyFinishTo{margin-top:8px;min-height:44px;border:1px solid var(--glass-line);border-radius:10px;background:var(--surface-raised);color:var(--ink);text-align:center}
/* Settings uses the charcoal dialog layout, with a compact tab strip on phones. */
.workflow-studio #settingsDialog{width:min(960px,calc(100vw - 24px));max-width:none;padding:0;overflow:auto;background:#111722;color:#f1f4fa}
.workflow-studio #settingsForm{padding:0;margin:0;display:block;--settings-line:#3a4352;--settings-muted:#aeb9cb}
.workflow-studio #settingsForm :is(h2,h3,h4,p,label,button,select,input,option){font-family:var(--draft-font)!important}
.workflow-studio #settingsForm .dialog-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px clamp(12px,3vw,28px);margin:0;border-bottom:1px solid var(--settings-line)}
.workflow-studio #settingsForm .dialog-top h2{font-size:clamp(22px,3vw,30px);margin:0}
.workflow-studio #settingsForm .dialog-top button{display:grid;place-items:center;min-width:0!important;min-height:0!important;width:40px;height:40px;padding:0!important;border:0;border-radius:50%;background:#29313e;color:#fff;font:400 29px/1 system-ui,sans-serif!important}
.workflow-studio #settingsForm .dialog-top img{display:none}
.settings-workspace{display:grid;grid-template-columns:minmax(175px,26%) minmax(0,1fr)}
.settings-nav{display:grid;align-content:start;gap:4px;padding:18px 12px;border-right:1px solid var(--settings-line)}
.workflow-studio #settingsForm .settings-nav button{display:flex;align-items:center;gap:12px;padding:10px 12px;min-height:44px;border:0;border-radius:9px;background:transparent;color:#f1f4fa;text-align:left;font-weight:500}
.workflow-studio #settingsForm .settings-nav button[aria-pressed="true"]{background:#17355d}
.settings-nav button span{display:grid;place-items:center;width:22px;flex:none;font-size:22px;line-height:1}
.settings-nav button svg{width:22px;height:22px}
.settings-panels{padding:clamp(12px,2.5vw,22px);min-width:0}
.settings-panels>section[hidden]{display:none!important}
.workflow-studio #settingsForm .settings-panels h3{margin:0 0 14px;font-size:24px}
.workflow-studio #settingsForm #settings-appearance>label{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border:1px solid var(--settings-line);border-radius:12px;background:#171e29;color:inherit;margin:0}
.workflow-studio #settingsForm #themeChoice{margin:0;width:auto;max-width:68%;background:#171e29;color:inherit;border:0}
.workflow-studio #settingsForm .icon-style-reset{margin:16px 0 0;padding:14px;border:1px solid var(--settings-line);border-radius:13px;background:#151c28}
.workflow-studio #settingsForm .icon-style-reset h4{margin:0 0 12px;font-size:19px}
.workflow-studio #settingsForm .icon-reset-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.workflow-studio #settingsForm .icon-reset-buttons button{display:grid;align-content:start;gap:5px;min-width:0;padding:0;border:0;background:none;color:#f1f4fa;font:500 clamp(11px,1.3vw,14px)/1.2 var(--draft-font)!important;text-align:center}
.settings-icon-preview{display:grid;place-items:center;aspect-ratio:1.08;min-width:0;background:#101620;border:1px solid #465160;border-radius:10px;overflow:hidden}
.settings-icon-preview :is(img,svg){width:88%;height:88%;object-fit:contain}
[aria-pressed="true"]>.settings-icon-preview{outline:2px solid #2387ff;outline-offset:-2px}
.settings-icon-actions,.settings-footer{display:flex;align-items:center;gap:12px}
.settings-icon-actions{margin-top:14px;flex-wrap:wrap}
.workflow-studio #settingsForm .settings-icon-actions p{margin:0;color:var(--settings-muted);font-size:13px}
.settings-footer{justify-content:flex-end;padding:9px clamp(12px,3vw,28px);border-top:1px solid var(--settings-line)}
.workflow-studio #settingsForm :is(#applySettingsIcons,#helpOpenBtn,#aboutOpenBtn,#repositionReferenceBtn,.settings-footer button){width:auto;margin:0;padding:8px 14px;border:1px solid var(--settings-line);border-radius:8px;background:#29313e;color:#f1f4fa}
.workflow-studio #settingsForm :is(#settings-workspace,#settings-help)>button{margin:0 8px 8px 0}
@media(max-width:620px){
 .settings-workspace{grid-template-columns:minmax(0,1fr)}
 .settings-nav{grid-template-columns:repeat(4,minmax(0,1fr));padding:6px;border:0;border-bottom:1px solid var(--settings-line)}
 .workflow-studio #settingsForm .settings-nav button{display:grid;justify-items:center;align-content:center;gap:2px;text-align:center;padding:4px;font-size:11px}
 .workflow-studio #settingsForm .icon-style-reset{padding:9px}
}
@media(max-width:390px){.workflow-studio #settingsForm .icon-reset-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
.workflow-studio #settingsForm .dialog-top button{inline-size:40px!important;block-size:40px!important;max-inline-size:none!important;max-width:none!important}
.workflow-studio #settingsForm .settings-nav button{font-weight:500!important}
.workflow-studio #settingsForm .settings-icon-preview>svg{width:88%;height:88%}
.workflow-studio #settingsForm .settings-icon-preview>svg svg{width:100%;height:auto}

.workflow-studio #settingsDialog{
 box-sizing:border-box;width:min(760px,calc(100vw - 24px));height:min(530px,calc(100dvh - 24px));max-height:none;overflow:hidden;
}
.workflow-studio #settingsForm .settings-icon-preview{width:min(100%,98px);justify-self:center}
.workflow-studio #projectsDialog :is(#demoProjectBtn,#newProjectBtn){background:#087da9;color:#fff;border-color:transparent}
.workflow-studio #settingsForm .dialog-top{padding-block:8px}
.workflow-studio #settingsForm .settings-panels{padding:16px}
.workflow-studio #settingsForm :is(label,button,select,input,option,p,small){
 font-family:var(--draft-font)!important;font-weight:500!important;letter-spacing:normal;
}
.workflow-studio #settingsForm .settings-panels :is(label,button,select){font-size:14px}
.workflow-studio #settingsForm .settings-panels :is(p,small){font-size:13px;line-height:1.45}
.workflow-studio #settingsForm .settings-panels h3{margin-bottom:8px;font-size:20px}
.workflow-studio #settingsForm .icon-style-reset{margin-top:8px;padding:8px}
.workflow-studio #settingsForm .icon-style-reset h4{margin-bottom:6px;font-size:16px}
.workflow-studio #settingsForm .settings-icon-actions{margin-top:8px;gap:6px}
.workflow-studio #settingsForm{
 height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;
}
.settings-workspace{min-height:0}
.settings-nav,.settings-panels{min-height:0;overflow:auto}
.settings-panels{scrollbar-gutter:stable}
.workflow-studio #settingsForm .dialog-top button svg{
 display:block;width:20px;height:20px;margin:0;
}
.workflow-studio .topbar #toolsMenu[hidden]{display:none!important}
.workflow-studio .topbar #settingsBtn{
 order:5;display:grid;place-items:center;flex:none;width:44px;height:44px;
 padding:0;border:1px solid var(--glass-line);border-radius:12px;background:var(--surface-raised);color:var(--ink);
}
.workflow-studio .topbar #settingsBtn svg{width:20px;height:20px}
.workflow-studio #settingsForm :is(#hideControlsBtn,#catalogPacksBtn){
 width:auto;margin:8px 8px 0 0;padding:8px 14px;min-height:40px;
 border:1px solid var(--settings-line);border-radius:8px;background:#29313e;color:#f1f4fa;
}
@media(max-width:620px){
 .settings-workspace{grid-template-rows:auto minmax(0,1fr)}
}

.workflow-studio #settingsForm .icon-reset-buttons button > span:last-child{font:inherit!important}

.workflow-studio{--plan-charcoal:#202731;--plan-charcoal-control:#29313e}
.workflow-studio.plan-shell :is(.topbar,.adaptive-dock,#workspaceTray,#expandedToolbar,#catalog,#inspectorDrawer,#adaptiveViewPanel){
 background:var(--plan-charcoal);
}
.workflow-studio #settingsDialog #settingsForm :is(#helpOpenBtn,#aboutOpenBtn,#catalogPacksBtn){
 background:var(--plan-charcoal-control);
}
.workflow-studio #settingsForm .dialog-top button:focus-visible{
 outline:2px solid #8bb8d0;outline-offset:2px;box-shadow:none;
}
.workflow-studio #settingsDialog{width:min(660px,calc(100vw - 24px));height:fit-content;max-height:calc(100dvh - 24px)}
.workflow-studio #settingsForm{height:auto;max-height:calc(100dvh - 26px)}
.workflow-studio #settingsForm .settings-panels{padding:12px;scrollbar-gutter:auto}
.workflow-studio #settingsForm .settings-icon-preview{width:min(100%,84px)}
.settings-panels{display:grid;align-items:start}
.settings-panels>section{grid-area:1 / 1}
.workflow-studio #settingsForm .settings-panels>section[hidden]{display:block!important;visibility:hidden}
.workflow-studio #inspector #clearOverlapRow[data-active-overlap]:has(input:not(:checked):not(:disabled)){
 background:#473324;color:#fff0cf;border-radius:8px;
 box-shadow:inset 0 0 0 2px #f2ba74;
}

.workflow-studio{--charcoal-matte:url("assets/charcoal-matte.png")}
.workflow-studio.plan-shell :is(.topbar,.adaptive-dock,#workspaceTray,#expandedToolbar,#catalog,#inspectorDrawer,#adaptiveViewPanel),
.workflow-studio :is(#retailPlanningDialog,#importDialog,#projectsDialog,#exportDialog,#levelDialog,#settingsDialog,#floorFinishDialog,#scaleDialog){
 background-image:var(--charcoal-matte);
 background-size:cover;
}
.workflow-studio #settingsForm :is(.dialog-top button,#applySettingsIcons,.settings-footer button){
 background-image:linear-gradient(#ffffff17,#ffffff17),var(--charcoal-matte);
 background-size:cover;
}
.workflow-studio #settingsDialog #settingsForm :is(#repositionReferenceBtn,#hideControlsBtn,#catalogPacksBtn,#helpOpenBtn,#aboutOpenBtn){
 display:flex;align-items:center;justify-content:center;text-align:center;
 width:100%;min-height:44px;margin:8px 0 0;padding:8px 14px;
 border:1px solid #627185;border-radius:12px;color:#f1f4fa;
 font-weight:700!important;
 background:#29313e linear-gradient(#ffffff1f,#ffffff1f);
 background-image:linear-gradient(#ffffff1f,#ffffff1f),var(--charcoal-matte);
 background-size:cover;
 box-shadow:inset 0 1px 2px #c6e6ff70,inset 0 -3px 3px #0009,0 3px 4px #0008;
}
.workflow-studio #settingsDialog #settingsForm :is(#repositionReferenceBtn,#hideControlsBtn,#catalogPacksBtn,#helpOpenBtn,#aboutOpenBtn):hover:not(:disabled){
 background-image:linear-gradient(#ffffff36,#ffffff36),var(--charcoal-matte);
 border-color:#99aec4;
}
html[data-theme=light].workflow-studio #settingsDialog #settingsForm :is(#repositionReferenceBtn,#hideControlsBtn,#catalogPacksBtn,#helpOpenBtn,#aboutOpenBtn){
 background:#eaf2fa linear-gradient(#ffffff80,#afc3d530);
 border-color:#a6bfd6;
 color:#173550;
 box-shadow:inset 0 1px 2px #fff,inset 0 -2px 3px #6a87a338,0 3px 4px #39536f40;
}
.workflow-studio #settingsDialog #settingsForm :is(#repositionReferenceBtn,#hideControlsBtn,#catalogPacksBtn,#helpOpenBtn,#aboutOpenBtn):active:not(:disabled){
 box-shadow:inset 0 2px 5px #0006;
}
.workflow-studio #catalog #partsGrid .part-card{
 grid-template-rows:72px auto auto;gap:4px;padding:6px;
}
.workflow-studio #catalog #partsGrid .part-image{
 height:72px;min-height:72px;border-radius:7px;
}

.workflow-studio{
 --panel-depth:inset 0 1px 0 #ffffff29,inset 0 -1px 0 #0007,0 4px 10px #0004;
 --elevator-surface:#132337;
}
.workflow-studio.plan-shell :is(.topbar,.adaptive-dock,#expandedToolbar,#catalog,#inspectorDrawer,#adaptiveViewPanel),
.workflow-studio dialog[open]{
 box-shadow:var(--panel-depth);
}
.workflow-studio #catalog .parts-scroll{scrollbar-gutter:stable;padding-inline-end:6px}
.workflow-studio #levelDialog #deleteLevelBtn{color:#ffada5;opacity:1}
.workflow-studio #levelDialog #deleteLevelBtn:disabled{color:#b7a2a5;opacity:1;cursor:not-allowed}
.workflow-studio #settingsForm #settings-accessibility>label:has(#themeChoice){
 display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;
}
.workflow-studio .adaptive-dock .level-bar{position:relative;overflow:visible}
.workflow-studio .adaptive-dock #levelTabs[hidden]{display:none!important}
.workflow-studio .adaptive-dock #levelTabs{
 position:absolute;z-index:8;inset:auto auto calc(100% + 10px) 0;
 display:grid;justify-items:center;gap:8px;width:max-content;max-width:none;
 max-height:min(55dvh,340px);overflow:auto;padding:8px;
 background:var(--elevator-surface);border:1px solid #6490b3;border-radius:18px;box-shadow:var(--panel-depth);
}
.workflow-studio .adaptive-dock :is(#elevatorFloorBtn,#levelTabs button){
 display:grid;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;
 padding:0;border:2px solid #8598a8;border-radius:50%;
 background:radial-gradient(circle at 50% 30%,#344c63,#101a27);
 color:white;font-size:16px;box-shadow:inset 0 2px 5px #0009;
}
.workflow-studio .adaptive-dock :is(#elevatorFloorBtn,#levelTabs button[aria-selected=true]){
 border-color:#72efff;box-shadow:inset 0 0 8px #25cce8a0,0 0 7px #23d4f5;
}
.workflow-studio .adaptive-dock #levelTabs button>span{max-width:none;font-size:inherit}
.workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock) .toolbar-line-icon{
 display:inline-grid;place-items:center;width:44px;min-width:36px;height:44px;
 padding:0;font-size:0!important;color:#edfaff;
}
.workflow-studio .topbar .adaptive-history .toolbar-line-icon{width:44px;min-width:36px}
.workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock) .toolbar-line-icon>*{display:none!important}
.workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock) .toolbar-line-icon::after{
 content:"";display:block;width:22px;height:22px;background:currentColor;
 mask:var(--toolbar-icon) center / contain no-repeat;
}
.workflow-studio :is(#expandedToolbar,.adaptive-dock) .toolbar-line-icon:is(.active,[aria-pressed=true],[aria-expanded=true]){
 background:#007b9f;border-color:#81edff;color:white;
}
.workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock) .toolbar-line-icon:focus-visible,
.workflow-studio .adaptive-dock :is(#elevatorFloorBtn,#levelTabs button):focus-visible{
 outline:2px solid #a1edff;outline-offset:2px;
}

.workflow-studio #barMove{--toolbar-icon:var(--icon-barMove)}
.workflow-studio #barDuplicate{--toolbar-icon:var(--icon-barDuplicate)}
.workflow-studio #barRotate{--toolbar-icon:var(--icon-barRotate)}
.workflow-studio #barLock{--toolbar-icon:var(--icon-barLock)}
.workflow-studio #barDelete{--toolbar-icon:var(--icon-barDelete)}
.workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock) .toolbar-line-icon{
 position:relative;padding:0!important;
}
.workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock) .toolbar-line-icon::after{
 position:absolute;inset:0;margin:auto;width:28px;height:28px;
}
.workflow-studio .topbar #settingsBtn{position:relative}
.workflow-studio .topbar #settingsBtn svg{position:absolute;inset:0;margin:auto;width:24px;height:24px}
.workflow-studio .adaptive-dock #levelTabs{
 left:50%;transform:translateX(-50%);background:var(--elevator-surface);
}
.workflow-studio .adaptive-dock .level-bar:has(#levelTabs:not([hidden]))::after{
 content:"";position:absolute;z-index:9;left:16px;bottom:calc(100% + 5px);
 width:10px;height:10px;transform:rotate(45deg);
 border-right:1px solid #6490b3;border-bottom:1px solid #6490b3;background:var(--elevator-surface);
}
.workflow-studio .adaptive-dock #levelTabs{left:0;transform:none}
.workflow-studio .adaptive-dock #levelTabs button[aria-selected=false]{
 border-color:transparent;background:radial-gradient(circle at 44% 30%,#374a61,#101c2d) padding-box,
 linear-gradient(135deg,#f5f8fa,#526675 42%,#263746 65%,#a7bac9) border-box;
}
.workflow-studio .adaptive-dock :is(#elevatorFloorBtn,#levelTabs button[aria-selected=true]){
 background:radial-gradient(circle at 50% 40%,#154a65,#092538);
}
.workflow-studio #settingsForm #settings-accessibility :is(label:has(#themeChoice),.accessibility-setting){
 padding:8px 12px;min-height:50px;border:1px solid var(--settings-line);border-radius:10px;
 background:var(--surface-raised);color:var(--ink);
}
.workflow-studio #settingsForm #settings-accessibility .accessibility-setting{
 position:relative;display:flex;align-items:center;gap:8px;
}
.workflow-studio #settingsForm #settings-accessibility .accessibility-toggle{
 display:flex;align-items:center;gap:8px;flex:1;margin:0;
}
.workflow-studio #settingsForm #settings-accessibility .accessibility-toggle input{order:2;margin-inline-start:auto}
.workflow-studio #settingsForm #settings-accessibility #themeChoice{max-width:65%;margin:0}
html[data-theme=dark].workflow-studio{
 --elevator-surface:#103a64;
}
html[data-theme=dark].workflow-studio.plan-shell :is(.topbar,.adaptive-dock,#workspaceTray,#expandedToolbar,#catalog,#inspectorDrawer,#adaptiveViewPanel),
html[data-theme=dark].workflow-studio :is(#retailPlanningDialog,#importDialog,#projectsDialog,#exportDialog,#levelDialog,#settingsDialog,#floorFinishDialog,#scaleDialog){
 background-size:auto,cover;
}
html[data-theme=light].workflow-studio{
 --plan-charcoal:#f6f9fd;--plan-charcoal-control:#e6edf5;
 --elevator-surface:#f4f8fd;--charcoal-matte:none;
}
html[data-theme=light].workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock) .toolbar-line-icon{color:#173550}
html[data-theme=light].workflow-studio :is(#expandedToolbar,.adaptive-dock) .toolbar-line-icon:is(.active,[aria-pressed=true],[aria-expanded=true]){
 background:#c5ddff;color:#0059be;border-color:#89bafa;
}
html[data-theme=light].workflow-studio :is(#catalog,#inspectorDrawer,#adaptiveViewPanel){color:#173550}
html[data-theme=light].workflow-studio #catalog :is(.search-wrap,#categoryDisclosure,#catalogDisclosure){
 background:#eaf2fa;color:#173550;border-color:#a6bfd6;
}
html[data-theme=light].workflow-studio #catalog .search-wrap input,
html[data-theme=light].workflow-studio #catalog .search-wrap input::placeholder{color:#294966}
html[data-theme=light].workflow-studio :is(#settingsDialog,#levelDialog,#projectsDialog,#importDialog,#exportDialog,#retailPlanningDialog,#floorFinishDialog,#scaleDialog){
 --surface:#f6f9fd;--surface-raised:#eaf2fa;--ink:#173550;--muted:#294966;
 --glass-line:#a6bfd6;--import-muted:#294966;
 background:var(--surface);color:var(--ink);
}
html[data-theme=light].workflow-studio #settingsForm{
 --settings-line:#9db7d0;--settings-muted:#294966;
}
html[data-theme=light].workflow-studio #settingsForm :is(button,.icon-style-reset,.settings-icon-preview,#themeChoice){
 background-color:#eaf2fa;color:#173550;
}
html[data-theme=light].workflow-studio #settingsForm .settings-nav button[aria-pressed=true]{background:#c5ddff;color:#073a76}
html[data-theme=light].workflow-studio .adaptive-dock #levelTabs button[aria-selected=false]{
 background:radial-gradient(circle at 40% 30%,#fff,#9da9b4);color:#173550;border-color:#9da9b4;
}
html[data-theme=light].workflow-studio .adaptive-dock :is(#elevatorFloorBtn,#levelTabs button[aria-selected=true]){
 background:#dfedff;color:#073a76;border-color:#0878ed;box-shadow:0 0 6px #0878ed70;
}
html[data-theme=light].workflow-studio #levelDialog #deleteLevelBtn{color:#9d252e}
html[data-theme=light].workflow-studio #levelDialog #deleteLevelBtn:disabled{color:#65515b}
@media(min-width:1320px){
 .workflow-studio.plan-shell .topbar{gap:10px}
 .workflow-studio.plan-shell .topbar .project-heading{
  position:static;transform:none;min-width:110px;max-width:220px;flex:0 1 220px;order:1;
 }
 .workflow-studio.plan-shell .topbar #workspaceTray{
  position:static;order:2;flex:1 1 auto;min-width:0;border:0;background:none;box-shadow:none;
 }
 .workflow-studio.plan-shell .topbar #expandedToolbar{width:100%;min-width:0}
 .workflow-studio.plan-shell .topbar .top-actions{order:3;flex:0 0 auto;width:auto;margin:0;gap:5px}
 .workflow-studio.plan-shell .topbar .adaptive-history :is(#undoBtn,#redoBtn){width:44px;min-width:44px}
}

html[data-theme=dark].workflow-studio {
 --navy-button:linear-gradient(180deg,#355c86 0%,#183c64 12%,#0b2545 84%,#05172a 100%);
 --cyan-button:var(--button-face-cyan);
 --button-relief:inset 0 1px 2px #c6e6ff70,inset 0 -3px 3px #0009,0 3px 4px #0008;
}
html[data-theme=dark].workflow-studio.plan-shell :is(.topbar,#expandedToolbar,.adaptive-dock) :is(.toolbar-line-icon,#projectsBtn,#settingsBtn),
html[data-theme=dark].workflow-studio dialog :is(button.button,button.icon-btn) {
 background:var(--navy-button);
 border:1px solid #477199;
 color:#f5fbff;
 box-shadow:var(--button-relief);
}
html[data-theme=dark].workflow-studio.plan-shell :is(.topbar,#expandedToolbar,.adaptive-dock) :is(.toolbar-line-icon,#projectsBtn,#settingsBtn):is(.active,[aria-pressed=true],[aria-expanded=true]),
html[data-theme=dark].workflow-studio dialog button.button.primary {
 background:var(--cyan-button);
 border-color:#6ae9fb;
 color:#fff;
}
html[data-theme=dark].workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock,dialog) button:not(:disabled):active {
 box-shadow:inset 0 2px 5px #0009;
}
html[data-theme=dark].workflow-studio .adaptive-dock #levelTabs button[aria-selected=false] {
 background:radial-gradient(circle at 45% 32%,#4b4c50,#15161a 75%) padding-box,
 linear-gradient(140deg,#f3f4f5,#777a80 40%,#26282d 75%,#a8abb2) border-box;
 border:3px solid transparent;
 box-shadow:inset 0 0 2px #fff9,0 3px 4px #0009;
}
html[data-theme=dark].workflow-studio .adaptive-dock :is(#elevatorFloorBtn,#levelTabs button[aria-selected=true]) {
 background:radial-gradient(circle,#072539 52%,#075f7c 83%,#02a1bd);
 border:2px solid #8af8ff;
 box-shadow:inset 0 0 5px #05d8ff,0 0 4px #16e5ff,0 3px 5px #0009;
}
html[data-theme=dark].workflow-studio dialog[open] {
 border-color:#4b5f77;
 box-shadow:inset 0 1px 0 #b2d8ff35,0 5px 0 #06111e,0 12px 30px #0008;
}

.workflow-studio #workspaceTray #expandedToolbar :is(.steps,.toolbar-floor-group,.mode-tools,.toolbar-selection,.workspace-view-modes){
 border-color:transparent;
 background:transparent;
 box-shadow:none;
}
.workflow-studio.plan-shell :is(.topbar #importMenuBtn,.topbar #exportBtn,.topbar #projectsBtn,.adaptive-dock #retailPlanningBtn,.adaptive-dock #levelsMenu>summary).toolbar-line-icon{
 width:44px;
 min-width:44px;
 font-size:0!important;
}
.workflow-studio #levelsMenu>summary.toolbar-line-icon::marker{content:""}
.workflow-studio #levelsMenu>summary.toolbar-line-icon::-webkit-details-marker{display:none}
.workflow-studio #levelsMenu>summary.toolbar-line-icon::before{content:none}
.workflow-studio :is(button.keycap-close,dialog[open] button.keycap-close){
 position:relative;
 box-sizing:border-box;
 display:inline-grid;
 place-items:center;
 width:40px!important;
 min-width:40px!important;
 max-width:40px;
 height:40px!important;
 min-height:40px!important;
 padding:0!important;
 flex:0 0 40px;
 border-radius:10px!important;
 font-size:0!important;
}
.workflow-studio button.keycap-close>*{display:none!important}
.workflow-studio :is(button.keycap-close,dialog[open] button.keycap-close)::before{content:none}
.workflow-studio :is(button.keycap-close,dialog[open] button.keycap-close)::after{
 content:""!important;
 position:absolute;
 inset:0;
 margin:auto;
 width:20px;
 height:20px;
 background:currentColor;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 4 12 12M16 4 4 16' stroke='black' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
html[data-theme=dark].workflow-studio :is(button.keycap-close,.topbar #importMenuBtn,.topbar #exportBtn,.topbar #projectsBtn,.adaptive-dock #retailPlanningBtn,.adaptive-dock #levelsMenu>summary){
 background:var(--navy-button)!important;
 border:1px solid #477199!important;
 color:#f5fbff!important;
 box-shadow:var(--button-relief);
}
html[data-theme=dark].workflow-studio :is(button.keycap-close,.topbar #importMenuBtn,.topbar #exportBtn,.topbar #projectsBtn,.adaptive-dock #retailPlanningBtn,.adaptive-dock #levelsMenu>summary):is(:active,[aria-expanded=true]){
 background:var(--cyan-button)!important;
 border-color:#6ae9fb!important;
}

.workflow-studio .topbar-brand-group{
 display:flex;
 align-items:center;
 flex:none;
 gap:8px;
 order:0;
}
.workflow-studio .topbar-logo{
 display:block;
 width:42px;
 height:42px;
 object-fit:contain;
 border-radius:8px;
}
.workflow-studio #projectsDialog .projects-header{
 display:grid;
 grid-template-columns:40px minmax(0,1fr) 40px;
 align-items:center;
 gap:8px;
}
.workflow-studio #projectsDialog .projects-wordmark{
 grid-column:2;
 justify-self:center;
 max-width:100%;
}
.workflow-studio #catalog .catalog-heading{
 display:flex;
 align-items:center;
 flex-wrap:wrap;
 gap:6px;
}
.workflow-studio #catalog .catalog-heading h2{margin:0}
.workflow-studio #catalog .catalog-mode-toggle{
 display:flex;
 flex:none;
 gap:4px;
}
.workflow-studio #catalog .catalog-mode-toggle button{
 position:relative;
 width:38px;
 min-width:38px;
 height:38px;
 padding:0;
 font-size:0!important;
 border:1px solid var(--glass-line);
 border-radius:9px;
}
.workflow-studio #catalog .catalog-mode-toggle button::after{
 content:"";
 position:absolute;
 inset:0;
 margin:auto;
 width:23px;
 height:23px;
 background:currentColor;
 mask:var(--toolbar-icon) center / contain no-repeat;
}
.workflow-studio #catalog #closeCatalog.keycap-close{
 margin-inline-start:auto;
 min-width:40px!important;
 min-height:40px!important;
 padding:0!important;
}
html[data-theme=dark].workflow-studio.plan-shell :is(.topbar,.adaptive-dock,#workspaceTray,#expandedToolbar,#catalog,#inspectorDrawer,#adaptiveViewPanel){
 background:#172b40;
}
html.workflow-studio:is([data-theme=dark],[data-theme=light]) .canvas-wrap{
 background:#294660 url("assets/workspace-slate.png") center / cover no-repeat;
}
html[data-theme=dark].workflow-studio #catalog .catalog-mode-toggle button,
html[data-theme=dark].workflow-studio #catalog #partsGrid .part-card{
 background:var(--navy-button);
 border-color:#477199;
 color:#f5fbff;
 box-shadow:var(--button-relief);
}
html[data-theme=dark].workflow-studio #catalog .catalog-mode-toggle button[aria-pressed=true]{
 background:var(--cyan-button);
 border-color:#6ae9fb;
}
html[data-theme=light].workflow-studio #catalog #partsGrid .part-card{
 background:linear-gradient(#fbfdff,#dfebf5);
 box-shadow:inset 0 1px 1px #fff,inset 0 -2px 3px #6a87a338,0 2px 3px #39536f40;
}
html[data-theme=light].workflow-studio #catalog .catalog-mode-toggle button[aria-pressed=true]{
 background:#c5ddff;
 color:#073a76;
}
.workflow-studio #catalog #partsGrid .part-card:active{box-shadow:inset 0 2px 5px #0006}
.workflow-studio #settingsForm #settings-accessibility .accessibility-setting{
 display:grid;
 grid-template-columns:auto auto minmax(0,1fr);
}
.workflow-studio #settingsForm #settings-accessibility .accessibility-toggle{display:contents}
.workflow-studio #settingsForm #settings-accessibility .accessibility-toggle input{grid-column:3;grid-row:1;justify-self:end}
.workflow-studio #settingsForm #settings-accessibility #accessibilityInfoBtn{grid-column:2;grid-row:1}
.workflow-studio #levelDialog #deleteLevelBtn{margin-block-start:12px}
.workflow-studio #levelDialog .dialog-top .menu-brand-logo{
 width:48px;
 height:48px;
 flex:0 0 48px;
}
.workflow-studio #deleteLevelConfirmation .field-row button{flex:1 1 120px;max-width:170px}

html[data-theme=dark].workflow-studio{
 --menu-navy:#172b40;
}
html[data-theme=dark].workflow-studio dialog[open]{
 background:var(--menu-navy)!important;
}
html[data-theme=dark].workflow-studio #threeDialog :is(.three-header,.three-tools,.three-footer,.three-appearance-controls){
 background:var(--menu-navy);
}
.workflow-studio #backupTextDialog #selectBackupText{margin-block-start:12px}

.workflow-studio #retailPlanningDialog[data-panel="estimate"]{
 --estimate-panel:#f7fbff;
 --estimate-raised:#e8f3fb;
 --estimate-selected:#d2eaf9;
 --estimate-rule:#9bb9cd;
 --estimate-accent:#006d96;
 --estimate-warning:#805000;
 width:min(1400px,96vw);
 max-width:none;
 font-family:var(--font);
}
html[data-theme=dark].workflow-studio #retailPlanningDialog[data-panel="estimate"][open]{
 --estimate-panel:#0e202e;
 --estimate-raised:#172f41;
 --estimate-selected:#1c3b50;
 --estimate-rule:#48687d;
 --estimate-accent:#31e4fa;
 --estimate-warning:#ffbe45;
 background:linear-gradient(145deg,#10283a,#081825)!important;
}
.workflow-studio #retailPlanningDialog[data-panel="estimate"] :is(h2,h3,h4,strong,summary,button,input,small){
 font-family:inherit!important;
}
.estimate-summary-bar{
 display:flex;
 align-items:center;
 flex-wrap:wrap;
 gap:10px 20px;
 padding:12px 16px;
 border:1px solid var(--estimate-rule);
 border-radius:12px;
 background:var(--estimate-raised);
}
.estimate-summary-bar>strong{font-size:clamp(17px,2vw,24px)}
.estimate-summary-bar .estimate-unpriced{
 color:var(--estimate-warning);
 font-weight:700;
}
.estimate-breakdown{position:relative}
.estimate-breakdown summary{
 cursor:pointer;
 padding:7px 12px;
 border:1px solid var(--estimate-rule);
 border-radius:8px;
}
.estimate-breakdown dl{margin:8px 0 0}
.estimate-breakdown dl div{display:flex;gap:10px;justify-content:space-between}
.estimate-breakdown dd{margin:0;text-align:end}
.estimate-summary-bar small,.estimate-fixture-button small,.estimate-detail-header p{color:var(--muted)}
.estimate-workspace{
 display:grid;
 grid-template-columns:minmax(0,5fr) minmax(0,3fr);
 gap:14px;
 margin-block:18px;
 align-items:start;
}
.estimate-list,.estimate-inspector{
 min-width:0;
 background:var(--estimate-panel);
 border:1px solid var(--estimate-rule);
 border-radius:12px;
}
.estimate-list{overflow:auto;max-height:57dvh}
.estimate-list table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.estimate-list :is(th,td){padding:9px 6px;text-align:center;border-bottom:1px solid var(--estimate-rule)}
.estimate-list th:first-child{text-align:start}
.estimate-list thead{position:sticky;top:0;background:var(--estimate-panel);z-index:1}
.estimate-list tr.is-selected{background:var(--estimate-selected)}
.estimate-list tbody th{border-inline-start:3px solid transparent}
.estimate-list tr.is-selected th{border-inline-start-color:var(--estimate-accent)}
.workflow-studio #retailPlanningDialog .estimate-fixture-button{
 display:flex;
 align-items:center;
 gap:10px;
 padding:3px;
 text-align:start;
 color:var(--ink);
 background:none;
 border:0;
 box-shadow:none;
}
.estimate-fixture-button small{display:block;margin-block-start:3px}
.estimate-art{display:grid;place-items:center;flex:none;width:56px;height:52px}
.estimate-art :is(svg,img){width:100%;height:100%;object-fit:contain}
.estimate-line-total{font-weight:700;white-space:nowrap}
.workflow-studio #retailPlanningDialog .estimate-list input[data-owned]{width:60px;padding:6px}
.estimate-inspector{padding:16px}
.estimate-detail[hidden]{display:none}
.estimate-detail-header{display:flex;align-items:center;gap:12px}
.estimate-detail-header .estimate-art{width:90px;height:80px;background:var(--estimate-raised);border-radius:10px}
.estimate-detail-header h3,.estimate-detail-section h4{margin:0 0 6px;color:var(--ink)}
.estimate-detail-header p{margin:2px 0}
.estimate-detail-section{border-top:1px solid var(--estimate-rule);margin-block-start:14px;padding-block-start:12px}
.estimate-detail-section summary{cursor:pointer}
.workflow-studio .estimate-detail .estimate-include{display:flex;justify-content:space-between;align-items:center;font-weight:600}
.workflow-studio .estimate-detail .estimate-include input[role=switch]{
 appearance:none;
 position:relative;
 width:36px;
 height:20px;
 border:1px solid var(--estimate-rule);
 border-radius:999px;
 background:var(--estimate-raised);
}
.workflow-studio .estimate-detail .estimate-include input[role=switch]:checked{background:var(--estimate-accent)}
.workflow-studio .estimate-detail .estimate-include input[role=switch]::after{
 display:block;
 content:"";
 position:absolute;
 top:2px;
 inset-inline-start:2px;
 width:14px;
 height:14px;
 border-radius:50%;
 background:white;
}
.workflow-studio .estimate-detail .estimate-include input[role=switch]:checked::after{inset-inline-start:auto;inset-inline-end:2px;transform:none}
.estimate-detail-actions{display:flex;align-items:start;gap:12px;flex-wrap:wrap}
.estimate-detail-actions summary{min-height:36px;align-content:center}
.estimate-detail .supplier-choice{padding:8px;border-radius:8px;border:1px solid transparent}
.estimate-detail .supplier-choice:has(input:checked){background:var(--estimate-selected);border-color:var(--estimate-rule)}
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] {
 --estimate-panel:#fff;
 --estimate-raised:#f4f6f8;
 --estimate-selected:#e6f2fa;
 --estimate-rule:#d9e2ea;
 --estimate-ink:#1d3044;
 --estimate-muted:#516477;
 --estimate-accent:#007b93;
 --ink:var(--estimate-ink);
 --muted:var(--estimate-muted);
 --line:var(--estimate-rule);
 background:var(--estimate-raised)!important;
 color:var(--estimate-ink);
 border-color:var(--estimate-rule);
 font-variant-numeric:tabular-nums;
}
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] .estimate-unpriced[data-count="0"] {
 color:var(--estimate-muted);
}
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] .estimate-list tr[data-estimate-row]:not(.is-selected):hover {
 background:#f3f8fc;
}
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] .estimate-list tr.is-selected {
 background:var(--estimate-selected);
}
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] .estimate-list :is(th,td):last-child {
 text-align:end;
 padding-inline-end:12px;
}
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] :is(.estimate-detail .supplier-choice,.estimate-list input[data-owned],.estimate-detail input[data-price]) {
 color:var(--estimate-ink);
}
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] :is(input[data-owned],input[data-price],.estimate-breakdown summary) {
 background:var(--estimate-panel);
 border:1px solid var(--estimate-rule);
}
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] :is(button,input,summary,.estimate-list):focus-visible {
 outline:2px solid #155db7;
 outline-offset:2px;
}
@media(max-width:760px){
 .estimate-workspace{grid-template-columns:minmax(0,1fr)}
 .estimate-list{max-height:45dvh}
 .estimate-list table{font-size:12px}
 .estimate-list :is(th,td){padding:7px 4px}
 .estimate-fixture-button .estimate-art{width:34px;height:34px}
 .workflow-studio #retailPlanningDialog .estimate-list input[data-owned]{width:44px;padding:4px}
}

.workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs){
 scrollbar-color:#6594ad #102030;
 scrollbar-width:thin;
}
.workflow-studio :is(.three-tools,.three-camera){scrollbar-width:none}
@media (forced-colors:active){
 .workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs){scrollbar-color:auto}
}
.workflow-studio.plan-shell #workspaceTray,
.workflow-studio.plan-shell #workspaceTray #expandedToolbar{
 border:0;
 border-radius:0;
 box-shadow:none;
}
.workflow-studio .topbar .divider,
.workflow-studio .adaptive-dock .floor-catalog-divider{visibility:hidden}
.workflow-studio #catalog .catalog-heading{
 display:grid;
 grid-template-columns:minmax(0,1fr) auto;
 grid-template-areas:"mode close";
 gap:8px;
 margin-block-end:10px;
}
.workflow-studio #catalog .catalog-heading h2{
 position:absolute;
 width:1px;
 height:1px;
 overflow:hidden;
 clip-path:inset(50%);
 white-space:nowrap;
}
.workflow-studio #catalog #closeCatalog{grid-area:close}
.workflow-studio #catalog .catalog-mode-toggle{
 grid-area:mode;
 justify-self:start;
 gap:0;
 border:1px solid var(--glass-line);
 border-radius:10px;
 padding:2px;
 box-shadow:inset 0 2px 4px #0005;
}
.workflow-studio #catalog .catalog-mode-toggle button:first-child{border-radius:9px 0 0 9px}
.workflow-studio #catalog .catalog-mode-toggle button:last-child{border-radius:0 9px 9px 0;border-inline-start:0}
.workflow-studio #catalog .search-wrap input{height:34px}
.workflow-studio #catalog :is(#catalogDisclosure,#categoryDisclosure)>summary{
 height:40px;
 min-height:40px;
 padding:6px 10px;
}
html[data-theme=dark].workflow-studio.plan-shell :is(#catalog,#inspectorDrawer){
 border-color:#334b63;
 box-shadow:inset 0 1px 1px #ffffff20,4px 0 12px #07111b66;
}
html[data-theme=dark].workflow-studio.plan-shell .workspace:has(#catalog.mobile-open,#inspectorDrawer.panel-open),
html[data-theme=dark].workflow-studio.plan-shell .workspace:has(#catalog.mobile-open,#inspectorDrawer.panel-open)>.editor{
 background-color:#294660;
}
html[data-theme=dark].workflow-studio.plan-shell #inspectorDrawer{
 box-shadow:inset 0 1px 1px #ffffff24,-4px 0 12px #07111b66;
}
html[data-theme=dark].workflow-studio.plan-shell #inspectorDrawer #inspector{
 background:transparent;
}
html[data-theme=dark].workflow-studio #catalog :is(.search-wrap,#catalogDisclosure,#categoryDisclosure){
 background:linear-gradient(#263e55,#192e42);
 border-color:#476178;
 box-shadow:inset 0 1px 1px #ffffff24,0 2px 3px #09142277;
}
@supports selector(::-webkit-scrollbar){
 @media (forced-colors:none){
  .workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs):not(.three-tools,.three-camera){scrollbar-color:auto;scrollbar-width:auto}
  .workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs)::-webkit-scrollbar{width:14px;height:14px}
  .workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs)::-webkit-scrollbar-track{
   background:
    repeating-linear-gradient(to bottom,#819bb238 0 1px,transparent 1px 14px) left / 3px 100% no-repeat,
    linear-gradient(90deg,transparent 3px,#0a1725 3px,#14283a 7px,#0a1725 11px,transparent 11px);
   border-radius:4px;
  }
  .workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs)::-webkit-scrollbar-thumb{
   border:3px solid transparent;
   border-radius:5px;
   background:
    linear-gradient(#a6f4ff,#48bdcf) left / 1px 100% no-repeat padding-box,
    linear-gradient(90deg,#8ce8ff,#6cb9d5) top / 100% 1px no-repeat padding-box,
    repeating-linear-gradient(to bottom,#173849 0 1px,#8fb7c570 1px 2px,transparent 2px 3px) center / 4px 8px no-repeat padding-box,
    repeating-linear-gradient(to bottom,#ffffff0e 0 1px,#0000000a 1px 3px) padding-box,
    linear-gradient(90deg,#2b4d65,#648aa0 46%,#3d6079 85%,#213b52) padding-box;
  }
  .workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs)::-webkit-scrollbar-thumb:active{box-shadow:inset 4px 4px 2px #a7f7ff80}
  .workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs)::-webkit-scrollbar-track:horizontal{
   background:linear-gradient(transparent 3px,#0a1725 3px,#14283a 7px,#0a1725 11px,transparent 11px);
  }
  .workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *,#adaptiveViewPanel,#adaptiveViewPanel *,#levelTabs)::-webkit-scrollbar-button{display:none}
 }
}
.workflow-studio.plan-shell #inspectorDrawer .panel-heading{
 display:grid;
 grid-template-columns:var(--properties-close-size) minmax(0,1fr) var(--properties-close-size);
 --properties-close-size:36px;
 align-items:center;
 gap:6px;
}
.workflow-studio.plan-shell #inspectorDrawer .properties-wordmark{
 grid-column:2;
 width:min(100%,140px);
 max-height:46px;
 margin:0;
 justify-self:center;
}
.workflow-studio.plan-shell #inspectorDrawer #collapseInspector.keycap-close{
 grid-column:3;
 display:grid!important;
 place-items:center;
 width:var(--properties-close-size)!important;
 min-width:0;
 height:var(--properties-close-size);
 min-height:0;
 padding:0!important;
}
.workflow-studio #inspectorDrawer .layout-overview-title {
 display:none;
}
.workflow-studio.plan-shell #inspectorDrawer:has(#inspector:not(.has-selection)) .panel-heading {
 grid-template-columns:minmax(0,1fr) var(--properties-close-size);
}
.workflow-studio.plan-shell #inspectorDrawer:has(#inspector:not(.has-selection)) .properties-wordmark {
 display:none;
}
.workflow-studio.plan-shell #inspectorDrawer:has(#inspector:not(.has-selection)) .layout-overview-title {
 display:block;
 grid-column:1;
 margin:0;
 font:700 clamp(1.125rem, 1.05rem + .45vw, 1.5rem)/1.2 var(--font);
}
.workflow-studio.plan-shell #inspectorDrawer:has(#inspector:not(.has-selection)) #collapseInspector {
 grid-column:2;
}
.layout-overview-stats,.layout-overview-units {
 border:1px solid var(--glass-line);
 border-radius:12px;
 background:color-mix(in srgb,var(--ink) 4%,transparent);
 padding:12px 14px;
}
.layout-overview-area {
 display:grid;
 gap:4px;
 margin-block-end:9px;
 padding-block-end:12px;
 border-block-end:1px solid var(--glass-line);
 color:var(--muted);
}
.layout-overview-area strong {
 color:var(--ink);
 font-size:clamp(1.35rem, 1rem + 1vw, 2rem);
 line-height:1.15;
 overflow-wrap:anywhere;
}
.workflow-studio #inspector .layout-overview-stats .summary-stat {
 border:0;
 padding:5px 0;
 gap:8px;
}
.workflow-studio #inspector .layout-overview-stats .summary-stat strong {
 font:700 1rem/1.3 var(--font);
}
.layout-overview-help {
 margin-block:16px;
 padding-block-start:12px;
 border-block-start:1px solid var(--glass-line);
}
.layout-overview-help h3 {margin:0}
.layout-overview-help #overviewHelp {
 border-color:var(--accent);
 border-radius:999px;
}
.layout-overview-units {margin-block-end:12px}
.layout-overview-units summary {
 display:grid;
 grid-template-columns:auto minmax(0,1fr) auto;
 align-items:center;
 gap:9px;
 cursor:pointer;
 list-style:none;
}
.layout-overview-units summary::-webkit-details-marker {display:none}
.layout-overview-units summary::after {content:"⌄"}
.layout-overview-units[open] summary::after {content:"⌃"}
.layout-overview-units small {
 display:block;
 margin-block-start:3px;
 color:var(--muted);
}
.workflow-studio #importDialog .import-section button {
 background:linear-gradient(#fff,#e4eff8);
 border-color:#a6bfd6;
 box-shadow:inset 0 1px 1px #fff,0 3px 5px #29496640;
}
html[data-theme=dark].workflow-studio #importDialog .import-section button {
 background:var(--cyan-button);
 border-color:#6ae9fb;
 color:#fff;
 box-shadow:var(--button-relief);
}
.workflow-studio #importDialog .import-section button:not(:disabled):active {
 box-shadow:inset 0 2px 5px #0006;
}
/* Shared layout for the project, import, save and help dialogs. */
.workflow-studio dialog.redesigned-dialog {
 width:min(880px,94vw);
 max-width:94vw;
 padding:clamp(14px,3vw,26px);
}
.workflow-studio .redesigned-dialog .dialog-top {
 display:flex;
 align-items:center;
 gap:14px;
 margin-block-end:20px;
}
.workflow-studio .redesigned-dialog :is(h2,h3) {
 margin:0;
 font-family:var(--font);
 font-weight:700;
}
.workflow-studio .redesigned-dialog .dialog-top h2 {flex:1}
.projects-mark,.redesigned-dialog .menu-brand-logo {
 width:42px;
 height:42px;
 object-fit:contain;
}
.dialog-pair {
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:12px;
}
.workflow-studio .redesigned-dialog .dialog-card {
 display:flex;
 flex-direction:column;
 align-items:stretch;
 gap:10px;
 min-width:0;
 padding:clamp(12px,2vw,20px);
 border:1px solid var(--glass-line);
 border-radius:14px;
 margin:0;
 background:color-mix(in srgb,var(--ink) 3%,transparent);
}
.redesigned-dialog .dialog-card p {margin:0 0 8px;color:var(--muted)}
.workflow-studio .redesigned-dialog .dialog-action {
 display:flex;
 align-items:center;
 gap:10px;
 width:100%;
 min-height:54px;
 padding:10px 12px;
 text-align:start;
 white-space:normal;
}
.workflow-studio .redesigned-dialog .dialog-action[hidden] {display:none}
.dialog-action span {font-size:1.2em;color:var(--muted)}
.dialog-action span:nth-child(2) {margin-inline-start:auto}
html[data-theme=dark].workflow-studio #exportDialog .dialog-action-accent {
 background:#163e50;
 border-color:#36d9ee;
}
.workflow-studio #exportDialog .dialog-action-accent span:last-child {color:#36d9ee}
.dialog-footnote {
 margin:18px 0 0;
 padding-block-start:12px;
 text-align:center;
 border-block-start:1px solid var(--glass-line);
}
.dialog-plan-art {
 color:#addcf1;
 background:#102b43 url("assets/dialog-floor-plan.svg") center / contain no-repeat;
 border:1px solid #547890;
 border-radius:9px;
 aspect-ratio:2/1;
 width:min(100%,320px);
 align-self:center;
 margin:4px auto;
}
#importDialog .dialog-card>small {text-align:center;color:var(--muted)}
.help-browser {
 display:grid;
 grid-template-columns:minmax(0,2fr) minmax(0,3fr);
 gap:20px;
}
.help-browser nav {
 min-width:0;
 border-inline-end:1px solid var(--glass-line);
 padding-inline-end:16px;
}
.workflow-studio #helpDialog .help-result {
 display:flex;
 justify-content:space-between;
 gap:8px;
 padding:9px 10px;
}
.workflow-studio #helpDialog .help-result[aria-pressed=true] {
 border-color:#38cce7;
 background:color-mix(in srgb,#38cce7 18%,transparent);
}
#helpTopicTitle {margin-block-end:10px}
#helpTopicSteps {padding-inline-start:26px}
#helpTopicSteps li {padding:0 0 8px 5px}
#helpTopicSteps li::marker {font-weight:700}
#helpTopicSteps p {margin:3px 0 0;color:var(--muted)}
.help-prompt-preference {
 justify-content:end;
 border-block-start:1px solid var(--glass-line);
 padding-block-start:12px;
}
.help-prompt-preference input {order:1}
.workflow-studio #projectsDialog .projects-header {
 display:flex;
 align-items:center;
 justify-content:start;
}
.workflow-studio #projectsDialog .projects-header [data-close] {
 position:relative;
 inset:auto;
 margin-inline-start:auto;
}
.workflow-studio #projectsDialog .project-card {
 position:relative;
 display:block;
 border-radius:12px;
 border:1px solid var(--glass-line);
 margin-block:0 10px;
 background:color-mix(in srgb,var(--ink) 4%,transparent);
}
.workflow-studio #projectsDialog [data-open-project] {
 display:grid;
 grid-template-columns:minmax(55px,26%) minmax(0,1fr) 22px;
 align-items:center;
 gap:12px;
 width:100%;
 padding:10px;
 text-align:start;
 background:none;
 border:0;
 color:var(--ink);
}
.project-preview {
 width:100%;
 height:90px;
 border-radius:7px;
 background:#102b43;
 fill:#234360;
}
.project-preview .preview-building {fill:#b4d5e7}
.project-preview .preview-fixture {fill:#62a9bc}
.project-open-badge {
 display:inline-block;
 margin-block-start:4px;
 border:1px solid var(--glass-line);
 border-radius:99px;
 padding:2px 7px;
 font-size:.8rem;
}
.project-overflow {
 margin:0 10px 8px;
 text-align:end;
}
.project-overflow summary {
 display:inline-block;
 cursor:pointer;
 padding-inline:10px;
}
.project-overflow summary::-webkit-details-marker {display:none}
.project-footer {
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:14px;
 padding-block-start:12px;
 border-block-start:1px solid var(--glass-line);
}
.workflow-studio #projectsDialog .project-footer > button {
 margin:0;
 min-height:44px;
}
.workflow-studio #applyFinishPreview .finish-swatch {
 display:inline-flex;
 flex-direction:row;
 align-items:center;
 gap:10px;
 width:auto;
 border:0;
 padding:0;
 background:none;
 opacity:1;
}
#applyFinishPreview .finish-swatch span {width:28px;height:28px;border-radius:6px}
.finish-filters,.finish-targets {
 border:1px solid var(--glass-line);
 border-radius:9px;
 padding:8px 10px;
}
.finish-filters .field {
 display:grid;
 grid-template-columns:1fr minmax(0,1.6fr);
 align-items:center;
 margin:0;
}
#applyFinishDialog .finish-target {
 display:grid;
 grid-template-columns:auto minmax(0,1fr) auto;
 align-items:center;
 gap:8px;
 padding:6px 3px;
 border:0;
 border-bottom:1px solid var(--glass-line);
}
#applyFinishDialog .finish-target:last-child {border-bottom:0}
.finish-footer {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:10px;
 margin-block-start:12px;
 border-block-start:1px solid var(--glass-line);
 padding-block-start:10px;
}
.workflow-studio #inspector .wall-dimensions {
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:6px;
}
.workflow-studio #inspector .wall-dimensions input {padding-inline:5px}
.workflow-studio #inspector .rotation-nudges button {
 display:flex;
 justify-content:center;
 align-items:center;
 gap:1px;
}
.workflow-studio #inspector .property-section>summary {font-weight:700}
@media(max-width:640px){
 .dialog-pair,.help-browser {grid-template-columns:minmax(0,1fr)}
 .help-browser nav {border-inline-end:0;padding:0}
 #helpResults {max-height:28vh;overflow:auto}
 .project-preview {height:60px}
}
.workflow-studio :is(#exportDialog,#importDialog,#projectsDialog,#helpDialog).redesigned-dialog {
 width:min(880px,94vw);
 max-width:94vw;
}
.workflow-studio #projectsDialog.redesigned-dialog {width:min(600px,94vw)}
.workflow-studio #exportDialog .dialog-action {
 height:auto;
 min-height:48px;
 line-height:1.25;
}
.workflow-studio #exportDialog .dialog-action:has(.export-action-label):not([hidden]) {
 display:grid;
 grid-template-columns:24px minmax(0,1fr) 24px;
 text-align:center;
}
.workflow-studio #exportDialog .export-action-label {
 margin:0;
 font:inherit;
 color:inherit;
}
.workflow-studio #exportDialog .dialog-action svg {
 width:24px;
 height:24px;
 flex:none;
 color:var(--muted);
}
.workflow-studio #exportDialog .dialog-action svg:nth-of-type(2) {margin-inline-start:auto}
.workflow-studio #exportDialog .dialog-action-accent svg:nth-of-type(2) {color:#36d9ee}
@media(max-width:640px){
 .workflow-studio #exportDialog .dialog-top {margin-block-end:12px}
 .workflow-studio #exportDialog .dialog-card {gap:7px}
 .workflow-studio #exportDialog .dialog-card p {margin-block-end:2px}
 .workflow-studio #exportDialog .dialog-action {font-size:14px}
}
.workflow-studio #importDialog #projectImportActions {display:contents}
.workflow-studio #importDialog .import-section button {margin:0}
.workflow-studio #importDialog #importDriveOptions:not([hidden]) {display:grid;gap:10px}
html[data-theme=dark].workflow-studio #levelDialog :is(button.button,button.keycap-close) {
 background:var(--navy-button);
 border-color:#477199;
 box-shadow:var(--button-relief);
}
html[data-theme=light].workflow-studio #levelDialog :is(button.button,button.keycap-close) {
 background:linear-gradient(#fff,#e4eff8);
 border-color:#a6bfd6;
 color:#173550;
 box-shadow:inset 0 1px 2px #fff,0 3px 4px #39536f40;
}
.workflow-studio #levelDialog button:not(:disabled):active {
 box-shadow:inset 0 2px 5px #0006;
}

/* Keep the mode switch and Close available while browsing the catalog. */
.workflow-studio.plan-shell #catalog {
 overflow:hidden!important;
}
.workflow-studio #catalog .parts-scroll {
 flex:1 1 0;
 min-height:0;
 overflow-x:hidden;
 overflow-y:auto;
}
.workflow-studio #catalog :is(#catalogDisclosure,#categoryDisclosure)>summary {
 height:auto;
 overflow-wrap:anywhere;
}

/* Match legacy form controls and cards to the current Blueprint surfaces. */
html[data-theme=dark].workflow-studio :is(#levelDialog,#roomBuilderDialog,#settingsDialog,#inspector,#nudgePad,#threeDialog) :is(input:not([type]),input[type="text"],input[type="number"],select,textarea) {
 background:#102337;
 border-color:#45617a;
 color:#edf6ff;
 color-scheme:dark;
}
html[data-theme=dark].workflow-studio #threeDialog select option {
 background:#142b40;
 color:#edf6ff;
}
html[data-theme=dark].workflow-studio #inspector :is(.access-side-card,.mode-protection,.supplier-detail),
html[data-theme=dark].workflow-studio :is(#nudgePad,#measurementCard) {
 background:#192f44;
 border-color:#45617a;
 color:#e2edf7;
}
.workflow-studio #inspector .supplier-detail {
 padding:10px 12px;
 overflow-wrap:anywhere;
}
html[data-theme=dark].workflow-studio #inspector .supplier-detail a {color:#8de3ff}
.workflow-studio #inspector .finish-picker-button {
 display:grid;
 grid-template-columns:auto minmax(0,1fr) auto;
 gap:clamp(4px,1vw,9px);
 padding-inline:8px;
 min-width:0;
}
.workflow-studio #inspector .finish-picker-button > span:first-child {
 width:20px;
 height:20px;
}
.workflow-studio #inspector .finish-picker-button > strong {
 overflow:hidden;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.workflow-studio #inspector .finish-picker-button > span:last-child {
 color:inherit;
 font-size:.85em;
 white-space:nowrap;
 margin:0;
}
.workflow-studio #retailPlanningDialog .estimate-fixture-button {
 width:100%;
 min-width:0;
 border:1px solid transparent;
 border-radius:9px;
 padding:5px 8px;
 overflow-wrap:anywhere;
}

.first-fixture-highlight.is-fixture {
 outline:2px solid #35d6ff;
 outline-offset:1px;
 border-radius:2px;
 box-shadow:0 0 6px #35d6ff80;
}
html[data-theme=dark].workflow-studio .help-mode-banner {
 background:#172b40;
 color:#f5fbff;
 border:1px solid #45617a;
 box-shadow:0 4px 12px #0006;
}

html[data-theme=dark].workflow-studio #helpDialog #helpSearch {
 background:#102337;
 border-color:#45617a;
 color:#edf6ff;
}
html[data-theme=dark].workflow-studio #helpDialog #helpSearch::placeholder {
 color:#aac0d2;
}
html[data-theme=dark].workflow-studio #helpDialog #helpSearch:focus-visible {
 outline:2px solid #69daef;
 outline-offset:2px;
}

html[data-theme=light].workflow-studio {
 --ink:#172b40;
 --muted:#475d73;
 --line:#c5d0dc;
 --surface:#f8fafc;
 --surface-raised:#f8fafc;
 --access-hatch:#475d73;
 --state-warning:#805000;
 color:#172b40;
 color-scheme:light;
}
html[data-theme=light].workflow-studio :is(.topbar,#expandedToolbar,.adaptive-dock,#catalog,#inspectorDrawer,#inspector,#adaptiveViewPanel,#threeDialog .three-header,#threeDialog .three-scene-tools) {
 background:#e4ebf3;
 color:#172b40;
 border-color:#c5d0dc;
}
html[data-theme=light].workflow-studio :is(dialog[open]:not(#threeDialog),#settingsForm,.supplier-detail,.mode-protection,.access-side-card,.estimate-list,.estimate-inspector) {
 background:#f8fafc;
 color:#172b40;
 border-color:#c5d0dc;
}
html[data-theme=light].workflow-studio :is(dialog,#catalog,#inspectorDrawer,#adaptiveViewPanel) :is(input:not([type]),input[type=text],input[type=number],input[type=search],select,textarea) {
 background:#fff;
 color:#172b40;
 border-color:#aabccd;
 color-scheme:light;
}
html[data-theme=light].workflow-studio :is(.editor,.plan-wrap) {
 background-color:#f3f6fa;
 background-image:linear-gradient(#dce4ed66 1px,transparent 1px),linear-gradient(90deg,#dce4ed66 1px,transparent 1px);
 background-size:24px 24px;
}
html[data-theme=light].workflow-studio #plan :is(#floorGrid,#footGrid,#fiveFootGrid) path {stroke:#aabccd}
html[data-theme=light].workflow-studio #plan #floorGrid path {stroke:#dce4ed}
html[data-theme=light].workflow-studio #plan :is(text:not(.warning-symbol),.accessible-warning-label) {
 fill:#243b53;
 stroke:#f3f6fa;
 paint-order:stroke;
 stroke-linejoin:round;
}
html[data-theme=light].workflow-studio #threeDialog :is(.three-heading,#threeSummary) {color:#172b40}
html[data-theme=light].workflow-studio #threeDialog :is(.three-header,.three-camera) svg {color:inherit}
html[data-theme=light].workflow-studio :is(dialog,dialog *,#catalog,#catalog *,#inspectorDrawer,#inspectorDrawer *)::-webkit-scrollbar-thumb {
 background-color:#57728b;
}
html[data-color-blind=on].plan-shell {
 --teal:#087fae;
 --lime:#ffd166;
 --active-bg:var(--button-face-cyan);
 --state-warning:#ffd166;
}
html[data-theme=light][data-color-blind=on].plan-shell {--state-warning:#805000}
html[data-color-blind=on].plan-shell #plan .selected-outline {
 stroke:#fff!important;
 stroke-dasharray:none;
 filter:drop-shadow(1px 1px 0 #172b40) drop-shadow(-1px -1px 0 #172b40);
}
.accessible-selection-handle {fill:#fff;stroke:#172b40;stroke-width:1.5px;vector-effect:non-scaling-stroke}
.accessible-hover-outline {visibility:hidden;stroke:currentColor;stroke-width:1.5px;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}
[data-object]:hover:not(:has(.selected-outline)) .accessible-hover-outline {visibility:visible}
.accessible-lock {fill:#fff;stroke:#172b40;stroke-width:1.5}
html[data-color-blind=on] #plan .warning-outline {stroke:var(--state-warning)}
html[data-color-blind=on] #plan .accessible-warning-label {fill:var(--state-warning);stroke:#172b40;stroke-width:2px;paint-order:stroke}
html[data-theme=light][data-color-blind=on] #plan .accessible-warning-label {stroke:#fff}
html[data-color-blind=on] #snapBtn:is(.active,[aria-pressed=true]) {position:relative}
html[data-color-blind=on] #snapBtn:is(.active,[aria-pressed=true])::after {
 content:"✓";
 position:absolute;
 right:3px;
 bottom:1px;
 font:700 10px/1 sans-serif;
}
html[data-color-blind=on].workflow-studio :is(button,input,select,a,summary):focus-visible {
 outline:2px solid currentColor;
 outline-offset:3px;
}

/* Compact tutorial navigation shares the desktop topic selection. */
.help-chapter-slider {display:none}
@media (max-width: 760px) {
 #helpResults {display:none}
 .help-chapter-slider {display:grid;gap:6px;margin-block:8px}
 .help-chapter-slider output {color:var(--text);font-weight:700}
 .help-chapter-slider > div {display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px}
 .help-chapter-slider button,.help-chapter-slider input {min-height:44px}
 .help-chapter-slider input {width:100%;margin:0;accent-color:#38cce7}
}
#firstFixtureCoach .first-fixture-actions:has([data-chapter]:not([hidden])) {display:flex;flex-wrap:wrap}
#firstFixtureCoach .first-fixture-actions button {
  border-radius: 8px;
  min-height: 38px;
  padding-inline: 8px;
}
@media (min-width: 641px) {
  #helpResults {
    max-block-size: min(56dvh, 36rem);
    overflow-y: auto;
    scrollbar-gutter: stable;
    padding: 5px 8px 6px 5px;
  }
}
.workflow-studio #outlineDialog :is(.outline-wall-card,.outline-footer,#outlineSvg) {
  background: var(--studio-panel, #172b40);
}
.workflow-studio #outlineDialog :is(input:not([type=checkbox]),select) {
  background-color: var(--studio-input, #10243a);
}
html[data-theme=light].workflow-studio #outlineDialog :is(.outline-wall-card,.outline-footer,#outlineSvg) {
  background: #e4ebf3;
}
html[data-theme=light].workflow-studio #outlineDialog :is(input:not([type=checkbox]),select) {
  background-color: #fff;
}
#firstFixtureCoach:has([data-chapter]:not([hidden])) {
  width: min(390px, calc(100vw - 16px));
}
#firstFixtureCoach .first-fixture-actions:has([data-chapter]:not([hidden])) {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(0, 1.6fr);
}
#firstFixtureCoach .first-fixture-actions:has([data-chapter]:not([hidden])) button {
  white-space: nowrap;
  padding-inline: 2px;
  font-size: clamp(10px, 2.9vw, 13px);
}
.workflow-studio #inspector .mode-protection { margin-block-end: 10px; }
.workflow-studio #inspector [data-section="dimensions"] .field-row {
 row-gap: 8px;
 margin-block: 8px;
}
.workflow-studio #inspector [data-section="dimensions"] .field-row > .field { margin-block: 0; }
.workflow-studio #inspector .product-placement-heading { text-align: center; }
.workflow-studio #inspector .supplier-detail.fixture-shop {
 display: grid;
 gap: 8px;
 padding: 10px 12px;
 border: 1px solid #557b9b;
 border-radius: 12px;
 background: #0b1c33;
 color: #f4f9ff;
}
.workflow-studio #inspector .fixture-shop h3 {
 display: flex;
 align-items: center;
 gap: 7px;
 margin: 0;
 color: inherit;
 font-size: 14px;
}
.fixture-shop h3 svg { flex: none; width: 17px; height: 17px; color: #22d3ee; }
html.workflow-studio #inspector .supplier-detail .fixture-shop-link {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 5px;
 min-height: 40px;
 padding: 6px 8px;
 border: 1px solid #24d8e5;
 border-radius: 9px;
 background: linear-gradient(#007d89, #00626c);
 box-shadow: inset 0 1px #ffffff42, 0 2px 4px #0004;
 color: #fff;
 text-align: center;
 text-decoration: none;
}
.workflow-studio #inspector .fixture-shop-disclosure {
 margin: 0;
 color: #b7cde0;
 font-size: 12px;
 line-height: 16px;
}
.workflow-studio #tutorialPrompt > button + button { margin-block-start: 8px; }
.workflow-studio #firstFixtureCoach .first-fixture-actions button { border-radius: 9px; }
.workflow-studio #helpDialog .help-browser nav > .field { margin-block-start: 0; }
.workflow-studio #projectsDialog .project-card { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: stretch; }
html.workflow-studio #projectsDialog .project-card [data-open-project] {
 grid-template-columns:minmax(55px,26%) minmax(0,1fr);
 background:none;
 box-shadow:none;
 border-radius:inherit;
}
.workflow-studio #projectsDialog .project-delete {
 align-self:center;
 margin-inline-end:10px;
 display:grid;
 place-items:center;
 min-width:40px;
 min-height:40px;
 padding:8px;
}
.project-delete svg { width:20px; height:20px; }
.workflow-studio #importDialog .dialog-pair section > .dialog-plan-art { margin-block:8px 0; }
.workflow-studio #inspector .dimension-components {
 display:grid;
 grid-template-columns:minmax(0, 2fr) minmax(0, 3fr);
 gap:6px;
}
.workflow-studio #inspector .dimension-components label { position:relative; min-width:0; }
.workflow-studio #inspector .dimension-components input { width:100%; padding-inline-end:18px; }
.workflow-studio #inspector .dimension-components span {
 position:absolute;
 inset-inline-end:7px;
 top:50%;
 transform:translateY(-50%);
 pointer-events:none;
}
.workflow-studio #inspector .dimension-components input.invalid { border-color:#eaa38c; }
.workflow-studio #inspector button.layout-overview-units { display:flex; width:100%; gap:10px; text-align:left; align-items:center; }
.workflow-studio #inspector button.layout-overview-units small { display:block; }
.workflow-studio .import-info-button svg { transform:scale(.8); }
#settingsWorkspaceActions,.workspace-unit-choices { display:grid; gap:8px; }
#settingsWorkspaceActions { grid-template-columns:repeat(2,minmax(0,1fr)); }
#settingsWorkspaceActions button { width:100%; min-width:0; margin:0; }
.workflow-studio #settingsDialog label:has(#displayUnit)[hidden] { display:none; }

.workflow-studio #settingsDialog #settingsForm :is(#settingsWorkspaceActions > button,#settings-help > button) {
 margin:0;
 width:100%;
 min-height:44px;
 font:700 14px/1.2 var(--draft-font)!important;
}
.workflow-studio #settingsForm .settings-icon-actions {
 flex-direction:column;
 align-items:center;
 text-align:center;
}
.workflow-studio #workspaceUnitsDialog {
 width:min(320px,calc(100vw - 24px));
 padding:18px;
}
.workflow-studio #workspaceUnitsDialog button { min-height:40px; }
html[data-theme=dark].workflow-studio #roomDialog :is(input:not([type=color]),select) {
 background:#102535;
 border-color:#49667c;
 color:#f4f9ff;
}
.first-fixture-highlight {
 box-shadow:0 0 0 7px #00d9ff,0 0 22px 9px #00d9ff9c,inset 0 0 14px #00d9ff95,0 0 0 150vmax #07111ca6;
}
.first-fixture-highlight.is-fixture {
 box-shadow:0 0 6px #35d6ff80,0 0 0 150vmax #07111ca6;
}
html[data-theme=dark].workflow-studio #connectionDialog :is(input,select) {
 background:#102535;
 border-color:#49667c;
 color:#f4f9ff;
}
.workflow-studio #inspector :is(.dimension-width-row,.dimension-height-row) {
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:8px;
}
.workflow-studio #inspector :is(.dimension-width-row,.dimension-height-row) > .field {
 min-width:0;
 margin:0;
 padding:6px;
 border:1px solid var(--glass-line);
 border-radius:10px;
 text-align:center;
}
.workflow-studio #inspector .dimension-components {
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:4px;
}
.workflow-studio #inspector .dimension-components input {
 padding-inline:4px 13px;
 text-align:center;
}
.workflow-studio #inspector .dimension-components span { inset-inline-end:4px; }
.workflow-studio #catalog #closeCatalog.keycap-close,
.workflow-studio.plan-shell #inspectorDrawer #collapseInspector.keycap-close,
.workflow-studio #levelDialog .dialog-top .keycap-close {
 width:34px!important;
 height:34px!important;
 min-width:34px!important;
 min-height:34px!important;
}
.workflow-studio #levelDialog {
 padding-block-end:clamp(12px,2vw,22px);
}
.workflow-studio #levelDialog .dialog-top {
 display:grid;
 grid-template-columns:48px minmax(0,1fr) 48px;
 align-items:center;
 margin-block-end:12px;
}
.workflow-studio #levelDialog .dialog-top h2 {
 text-align:center;
 justify-self:center;
}
.workflow-studio #levelDialog .dialog-top button { justify-self:end; }
.workflow-studio #levelDialog .local-note { margin-block-end:0; }

html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate],
html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] .estimate-list {
 scrollbar-color:#8ba6bc #f4f6f8;
 scrollbar-width:thin;
}
@media (forced-colors:active) {
 html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate],
 html[data-theme=light].workflow-studio #retailPlanningDialog[data-panel=estimate] .estimate-list {
  scrollbar-color:auto;
 }
}

.workflow-studio #settingsDialog #settingsForm #settings-help > button {
 display:block;
 width:100%;
 margin:0 0 8px;
}
.workflow-studio #settingsDialog #settingsForm #settings-help > #openDiagnostics:not([hidden]) {
 margin-bottom:12px;
}
html[data-theme=light] #settingsForm [data-settings-icon="classic"] .settings-cabinet-preview > g {
 stroke:#294660;
 stroke-width:1.8;
}
.workflow-studio #retailPlanningDialog[data-panel="estimate"] .dialog-top h2 {
 font-family:var(--draft-font),sans-serif!important;
}
.estimate-price-progress:not([hidden]) {
 display:flex;
 align-items:center;
 gap:12px;
 margin:10px 0;
 color:var(--estimate-muted);
 font:600 14px/1.4 var(--draft-font),sans-serif;
}
.estimate-price-progress progress {
 flex:1;
 max-width:240px;
 min-width:0;
 height:8px;
 accent-color:#168cb1;
}
#levelDialog { width: min(640px, calc(100vw - 24px)); }
#levelDialog section { margin-block: 12px; }
#levelDialog h3 { margin: 0 0 6px; }
#activeFloorName, #alignMovingFloor { margin: 0 0 10px; text-align: center; color: var(--muted); }
.level-action-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.level-action-grid .button { justify-content: center; text-align: center; white-space: normal; }
#levelDialog hr { border: 0; border-top: 1px solid currentColor; opacity: .2; margin-block: 12px; }
#levelDialog #deleteLevelBtn { width: 100%; color: #fff; background: #9d263d; }
#alignFloorsDialog { width: min(800px, calc(100vw - 24px)); }
#alignPreview { display: block; width: 100%; height: clamp(130px, 38dvh, 400px); touch-action: none; cursor: grab; border: 1px solid currentColor; border-radius: 8px; }
#alignPreview:active { cursor: grabbing; }
#alignPreview polygon { fill: none; vector-effect: non-scaling-stroke; }
#alignPreview .align-reference polygon { stroke: currentColor; stroke-width: 2; }
#alignPreview .align-moving polygon { stroke: #0089c9; stroke-width: 2; }
#alignPreview .align-object { stroke-width: 1.25 !important; }
.align-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.new-wall-attachment { border-radius: 8px; outline: 2px solid #00a9e9; outline-offset: 2px; }
.workflow-studio #exportDialog .dialog-card { display: grid; grid-row: span 4; grid-template-rows: subgrid; align-items: stretch; }
#exportDialog .dialog-card h3, #exportDialog .dialog-card p { margin: 0; text-align: center; align-self: center; }
#exportDialog .dialog-action { min-height: 48px; }
#exportDialog .export-copy { display: flex; justify-content: center; align-items: center; gap: 8px; min-height: 44px; margin: 8px auto; }
#exportDialog .export-copy svg { width: 20px; height: 20px; }
@media (max-width: 650px) {
 .workflow-studio #exportDialog .dialog-card { grid-row: auto; grid-template-rows: auto auto repeat(2, minmax(48px, auto)); }
}
