
#furniture-workspace{--fw-bg:light-dark(#ffffff,#1c2227);--fw-text:light-dark(#26332f,#e3ebe6);--fw-muted:light-dark(#6c7772,#a2afa8);--fw-line:light-dark(#e1e7e3,#37413c);--fw-panel:light-dark(#fafbf9,#202823);--fw-stage:light-dark(#edf1ec,#161e1a);--fw-accent:light-dark(#356c51,#9dc7ac);--fw-accent-text:light-dark(#ffffff,#15251b);--fw-tint:light-dark(#e7efe8,#2c4032);--fw-wood:light-dark(#d9c5a6,#ae9678);--fw-front:light-dark(#dce3d8,#788a7a);--fw-metal:light-dark(#64716c,#becbc3);--fw-plastic:light-dark(#303a34,#8a9a8e);--fw-drill:light-dark(#bb7341,#ecc193);--fw-grid:light-dark(#d8e1d8,#29362e);--fw-wall:light-dark(#dfe5de,#35433a);--fw-window:light-dark(#c6dce1,#3b5965);--fw-left:182px;--fw-right:238px;color:var(--fw-text);background:var(--fw-bg);font:400 13px/1.45 system-ui,sans-serif;border:1px solid var(--fw-line);border-radius:12px;overflow:hidden;width:100%;box-sizing:border-box}
#furniture-workspace *{box-sizing:border-box}
#furniture-workspace [hidden]{display:none!important}
#furniture-workspace button,#furniture-workspace input,#furniture-workspace select{font:inherit;color:inherit}
#furniture-workspace button{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:transparent;border:1px solid var(--fw-line);border-radius:6px;padding:7px 10px;min-height:32px}
#furniture-workspace button:hover{background:var(--fw-tint)}
#furniture-workspace button[aria-pressed=true]{background:var(--fw-tint);color:var(--fw-accent);border-color:var(--fw-accent)}
#furniture-workspace button:focus-visible,#furniture-workspace input:focus-visible,#furniture-workspace select:focus-visible{outline:2px solid var(--fw-accent);outline-offset:2px}
#furniture-workspace svg[data-lucide],#furniture-workspace .lucide{width:16px;height:16px;flex-shrink:0}
#furniture-workspace strong{font-weight:500}
#furniture-workspace .fw-muted{color:var(--fw-muted)}
#furniture-workspace .fw-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 100px 13px 16px;border-bottom:1px solid var(--fw-line)}
#furniture-workspace .fw-brand{display:flex;align-items:center;gap:9px;font-weight:500}
#furniture-workspace .fw-prototype{font-size:11px;color:var(--fw-muted);white-space:nowrap}
#furniture-workspace .fw-project{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 16px 16px}
#furniture-workspace .fw-project strong{display:block;font-size:20px;letter-spacing:-.45px;margin-bottom:3px}
#furniture-workspace .fw-project .fw-muted{font-size:12px}
#furniture-workspace .fw-source{display:inline-flex;align-items:center;gap:5px;color:var(--fw-accent);font-size:11px}
#furniture-workspace .fw-modes{display:flex;gap:4px;padding:0 16px 12px;border-bottom:1px solid var(--fw-line)}
#furniture-workspace .fw-modes button{border-color:transparent;padding:9px 12px;font-weight:500}
#furniture-workspace .fw-modes button[aria-pressed=true]{background:var(--fw-accent);color:var(--fw-accent-text)}
#furniture-workspace .fw-grid{display:grid;grid-template-columns:var(--fw-left) minmax(0,1fr) var(--fw-right);align-items:stretch}
#furniture-workspace aside{min-width:0;background:var(--fw-panel)}
#furniture-workspace .fw-library{border-right:1px solid var(--fw-line)}
#furniture-workspace .fw-properties{border-left:1px solid var(--fw-line)}
#furniture-workspace .fw-panel-head{display:flex;justify-content:space-between;align-items:center;padding:14px 12px;border-bottom:1px solid var(--fw-line);font-weight:500}
#furniture-workspace .fw-panel-head .lucide{color:var(--fw-muted)}
#furniture-workspace .fw-section{padding:13px 12px;border-bottom:1px solid var(--fw-line)}
#furniture-workspace .fw-section h3{font-size:11px;color:var(--fw-muted);font-weight:500;letter-spacing:.7px;text-transform:uppercase;margin:0 0 11px}
#furniture-workspace .fw-library-item{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;padding:10px;margin:0 0 6px;gap:2px}
#furniture-workspace .fw-library-item small{font-size:11px;color:var(--fw-muted)}
#furniture-workspace .fw-part-list{padding:6px}
#furniture-workspace .fw-part-list button{width:100%;justify-content:flex-start;border-color:transparent;text-align:left;font-size:12px;padding:6px 8px;min-height:28px}
#furniture-workspace .fw-part-list .fw-number{color:var(--fw-muted);width:18px;font-size:11px;font-variant-numeric:tabular-nums}
#furniture-workspace .fw-list-row{display:flex;align-items:center;gap:8px;margin-bottom:9px;font-size:12px}
#furniture-workspace .fw-list-row .lucide{color:var(--fw-muted)}
#furniture-workspace .fw-center{min-width:0;background:var(--fw-stage)}
#furniture-workspace .fw-viewbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;border-bottom:1px solid var(--fw-line);background:var(--fw-bg)}
#furniture-workspace .fw-crumb{font-size:11px;color:var(--fw-muted)}
#furniture-workspace .fw-tools{display:flex;gap:4px}
#furniture-workspace .fw-tools button{padding:5px;border-color:transparent}
#furniture-workspace .fw-view-tabs{display:flex;gap:4px;padding:8px 10px 0;flex-wrap:wrap}
#furniture-workspace .fw-view-tabs button{font-size:11px;padding:5px 8px}
#furniture-workspace .fw-stage{position:relative;min-width:0}
#furniture-workspace canvas{width:100%;height:470px;display:block;touch-action:none;cursor:grab}
#furniture-workspace canvas:active{cursor:grabbing}
#furniture-workspace .fw-stage-tag{position:absolute;left:14px;top:13px;font-size:10px;letter-spacing:1px;color:var(--fw-muted);pointer-events:none}
#furniture-workspace .fw-view-help{position:absolute;left:12px;bottom:10px;right:12px;color:var(--fw-muted);font-size:11px;text-align:center;pointer-events:none}
#furniture-workspace .fw-bottom{padding:12px 14px;border-top:1px solid var(--fw-line);display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--fw-bg);min-height:54px}
#furniture-workspace .fw-bottom label{display:flex;align-items:center;gap:10px;font-size:12px;flex:1;min-width:180px}
#furniture-workspace input[type=range]{accent-color:var(--fw-accent);width:100%;min-width:40px}
#furniture-workspace .fw-selection{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 14px;background:var(--fw-panel);font-size:11px;min-height:40px}
#furniture-workspace .fw-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
#furniture-workspace .fw-edit-error{color:light-dark(#9d3029,#f0aca6);font-size:11px;min-height:16px;margin-top:7px}
#furniture-workspace .fw-param-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px}
#furniture-workspace label.fw-field{font-size:11px;color:var(--fw-muted);display:block;min-width:0}
#furniture-workspace input[type=number],#furniture-workspace select{background:var(--fw-bg);border:1px solid var(--fw-line);border-radius:5px;padding:6px 7px;min-width:0;width:100%;margin-top:5px;font-variant-numeric:tabular-nums;color:var(--fw-text)}
#furniture-workspace input[readonly]{background:var(--fw-panel)}
#furniture-workspace .fw-property-row{display:flex;justify-content:space-between;gap:9px;font-size:12px;margin:8px 0}
#furniture-workspace .fw-property-row span:first-child{color:var(--fw-muted)}
#furniture-workspace .fw-property-row span:last-child{text-align:right;font-variant-numeric:tabular-nums}
#furniture-workspace .fw-sub{display:block;color:var(--fw-muted);font-size:11px;margin-top:7px}
#furniture-workspace .fw-chip{display:inline-block;padding:3px 6px;background:var(--fw-tint);color:var(--fw-accent);border-radius:4px;font-size:11px}
#furniture-workspace .fw-swatches{display:flex;gap:7px;margin-top:10px}
#furniture-workspace .fw-swatch{width:28px;height:28px;min-height:28px;padding:0;background:var(--swatch);border-radius:5px}
#furniture-workspace .fw-swatch:hover{background:var(--swatch)}
#furniture-workspace .fw-hardware-title{font-weight:500;font-size:14px;margin-bottom:6px}
#furniture-workspace .fw-tag-row{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0}
#furniture-workspace .fw-proc{display:flex;gap:8px;margin-bottom:9px;align-items:center;font-size:12px}
#furniture-workspace .fw-proc i{color:var(--fw-accent)}
#furniture-workspace .fw-status{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:9px 13px;background:var(--fw-bg);border-top:1px solid var(--fw-line);font-size:11px;color:var(--fw-muted)}
#furniture-workspace .fw-status>span:first-child{display:flex;align-items:center;gap:7px}
#furniture-workspace .fw-status-dot{width:6px;height:6px;border-radius:50%;background:var(--fw-accent)}
#furniture-workspace .fw-label-preview{position:absolute;inset:65px 24px auto;background:var(--fw-bg);border:1px solid var(--fw-text);border-radius:3px;padding:20px;max-width:360px;margin:auto;font-size:13px}
#furniture-workspace .fw-label-preview strong{font-size:18px;display:block;margin:8px 0}
#furniture-workspace .fw-label-preview .fw-label-code{border-top:1px dashed var(--fw-line);padding-top:12px;margin-top:14px;font:12px ui-monospace,monospace}
@media(max-width:700px){#furniture-workspace .fw-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}#furniture-workspace .fw-center{grid-column:1/-1;grid-row:1}#furniture-workspace .fw-library{grid-column:1;grid-row:2;border-top:1px solid var(--fw-line)}#furniture-workspace .fw-properties{grid-column:2;grid-row:2;border-top:1px solid var(--fw-line)}#furniture-workspace canvas{height:370px}#furniture-workspace .fw-top{padding-right:90px}#furniture-workspace .fw-prototype{display:none}#furniture-workspace .fw-project{flex-wrap:wrap}#furniture-workspace .fw-modes{padding-inline:8px;gap:0}#furniture-workspace .fw-modes button{padding:8px 7px;gap:4px;font-size:12px}#furniture-workspace .fw-fields{grid-template-columns:1fr}#furniture-workspace .fw-property-row{flex-wrap:wrap}}

html,body{height:100%;margin:0;overflow:hidden;color-scheme:light dark}
#furniture-workspace{height:100%;display:flex;flex-direction:column;border:0;border-radius:0}
#furniture-workspace .fw-top{padding-right:16px;flex-wrap:wrap;justify-content:flex-start}
#furniture-workspace .fw-brand{order:-1;margin-right:auto}
#furniture-workspace .fw-file-actions{display:flex;gap:5px;flex-wrap:wrap}
#furniture-workspace .fw-file-state{font-size:11px;color:var(--fw-muted);width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#furniture-workspace .fw-project{padding:10px 16px}
#furniture-workspace .fw-project strong{font-size:17px}
#furniture-workspace .fw-grid{flex:1;min-height:0}
#furniture-workspace aside{overflow-y:auto}
#furniture-workspace .fw-center{display:flex;flex-direction:column;min-height:0}
#furniture-workspace .fw-stage{flex:1;min-height:180px}
#furniture-workspace canvas{height:100%;min-height:180px}
#furniture-workspace .fw-bottom,#furniture-workspace .fw-selection,#furniture-workspace .fw-viewbar,#furniture-workspace .fw-view-tabs{flex-shrink:0}
#furniture-workspace input[type=number]{font-size:14px}
@media(max-width:850px){html,body{overflow:auto}#furniture-workspace{height:auto;min-height:100vh}#furniture-workspace .fw-grid{display:flex;flex-direction:column}#furniture-workspace .fw-center{order:-1}#furniture-workspace .fw-stage{height:460px;flex:auto}#furniture-workspace aside{overflow:visible}}

#furniture-workspace .fw-stage{overflow:hidden;touch-action:none}
#furniture-workspace .fw-tools button{min-width:30px}
#furniture-workspace [data-zoom-value]{min-width:53px;font-variant-numeric:tabular-nums}
#furniture-workspace .fw-label-preview{inset:auto;left:50%;top:50%;width:360px;max-width:none;margin:0;transform-origin:center;cursor:grab;user-select:none}
#furniture-workspace canvas{touch-action:none}
#furniture-workspace .fw-opening-fields{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0}#furniture-workspace .fw-opening-add{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px}#furniture-workspace [data-action="projection"]{padding:5px 9px;white-space:nowrap}
#furniture-workspace .fw-fov{display:flex;align-items:center;gap:6px;white-space:nowrap}#furniture-workspace .fw-fov input{width:125px}#furniture-workspace .fw-bottom{flex-wrap:wrap;gap:10px}#furniture-workspace [data-snap-status]{font-size:11px;color:var(--fw-muted)}
#furniture-workspace .fw-wall-buttons{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:8px 0}#furniture-workspace .fw-context-menu{position:fixed;z-index:1000;width:225px;max-height:90vh;overflow:auto;padding:7px;background:var(--fw-bg);border:1px solid var(--fw-line);border-radius:8px;box-shadow:0 6px 25px #0003}#furniture-workspace .fw-context-menu strong{display:block;padding:6px}#furniture-workspace .fw-context-menu button{display:flex;width:100%;justify-content:flex-start;border:0}
#furniture-workspace [data-active-module]{max-width:160px;font-size:12px;padding:4px}#furniture-workspace [data-module-title]{display:inline-block;margin-right:8px}
#furniture-workspace .fw-project>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}#furniture-workspace .fw-project>div>.fw-muted{white-space:nowrap}#furniture-workspace .fw-project strong{margin-bottom:0}#furniture-workspace .fw-viewbar{flex-wrap:wrap}#furniture-workspace .fw-tools{flex-wrap:wrap}
#furniture-workspace .fw-top-space{flex-shrink:0;background:var(--fw-bg)}#furniture-workspace .fw-doc-tabs{display:flex;gap:5px;align-items:center;padding:5px 12px;border-bottom:1px solid var(--fw-line);flex-wrap:wrap}#furniture-workspace .fw-doc-tabs button{min-height:28px;padding:4px 9px}#furniture-workspace .fw-toolbars{display:flex;flex-wrap:wrap;gap:3px;padding:4px 8px;border-bottom:1px solid var(--fw-line);background:var(--fw-panel)}#furniture-workspace .fw-commandbar{display:flex;align-items:center;gap:2px;border-right:1px solid var(--fw-line);padding-right:5px}#furniture-workspace .fw-commandbar>span{font-size:10px;color:var(--fw-muted);padding:0 3px}#furniture-workspace .fw-commandbar button{font-size:11px;min-height:26px;padding:3px 6px}#furniture-workspace .fw-context-menu label{display:flex;align-items:center;gap:8px;padding:5px}#furniture-workspace .fw-file-actions{display:none!important}#furniture-workspace dialog{color:var(--fw-text);background:var(--fw-bg);border:1px solid var(--fw-line);border-radius:10px;max-width:450px;padding:22px}#furniture-workspace dialog input{display:block;width:100%;padding:8px;margin:8px 0}#furniture-workspace dialog::backdrop{background:#0005}
#furniture-workspace .fw-hardware-warning{padding:7px;background:#fff0cf;color:#704b10;border:1px solid #d7bb82;margin:6px 0;font-size:11px}#furniture-workspace .fw-machining-table{overflow:auto;max-height:330px}#furniture-workspace .fw-machining-table table{width:100%;font-size:10px;border-collapse:collapse}#furniture-workspace .fw-machining-table td,#furniture-workspace .fw-machining-table th{padding:4px;border-bottom:1px solid var(--fw-line);text-align:right}#furniture-workspace .fw-machining-table td:first-child{max-width:90px;text-align:left}#furniture-workspace details{margin-top:10px}#furniture-workspace details summary{cursor:pointer}

.fw-drill-faces{display:flex;flex-wrap:wrap;gap:4px;padding:5px 12px;border-bottom:1px solid var(--fw-line)}
.fw-drill-faces[hidden]{display:none}
.fw-drill-faces button[aria-pressed="true"]{background:#dbeade;border-color:#3b7058}
.fw-machining-table td small{display:block;font-size:9px;color:#64746a;white-space:normal}
/* Compact movable command bars. Their layout is local UI state, independent of projects. */
#furniture-workspace .fw-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#furniture-workspace .fw-toolbars{gap:5px;padding:4px 8px;min-height:40px;align-items:center}
#furniture-workspace .fw-commandbar{flex:none;gap:1px;padding:2px;border:1px solid var(--fw-line);border-radius:5px;background:var(--fw-bg);user-select:none;max-width:calc(100vw - 12px)}
#furniture-workspace .fw-commandbar button{width:28px;height:28px;min-height:28px;padding:4px;border-color:transparent;flex:none;gap:0;border-radius:4px}
#furniture-workspace .fw-commandbar button:hover{border-color:var(--fw-line)}
#furniture-workspace .fw-commandbar .fw-toolbar-grip{width:29px;cursor:grab;touch-action:none;background:var(--fw-panel);border-right:1px solid var(--fw-line);margin-right:2px;position:relative;padding-left:8px}
#furniture-workspace .fw-toolbar-grip:active{cursor:grabbing}
#furniture-workspace .fw-grip-dots{position:absolute;left:0;top:5px;font-size:12px;line-height:14px;color:var(--fw-muted)}
#furniture-workspace .fw-toolbar-dock{display:none}
#furniture-workspace .fw-floating-toolbars{position:fixed;inset:0;z-index:500;pointer-events:none}
#furniture-workspace .fw-commandbar.is-floating{position:fixed;width:max-content;pointer-events:auto;box-shadow:0 5px 18px #172d2533;border-color:var(--fw-accent);overflow-x:auto}
#furniture-workspace .is-floating .fw-toolbar-dock{display:inline-flex;border-left:1px solid var(--fw-line);margin-left:3px;color:var(--fw-accent)}
#furniture-workspace .fw-dock-hint{position:fixed;z-index:499;border:2px dashed var(--fw-accent);border-radius:4px;background:var(--fw-tint);color:var(--fw-accent);pointer-events:none;text-align:center;padding:5px;font-size:12px}
#furniture-workspace .fw-toolbars.is-dock-target{background:var(--fw-tint)}
#furniture-workspace .fw-toolbars.is-empty::before{content:'Влачи лента тук, за да я закрепиш горе';color:var(--fw-muted);font-size:11px;padding:4px 6px}
#furniture-workspace .fw-bottom .fw-fov{gap:8px;flex:1 1 340px;min-width:250px}
#furniture-workspace .fw-fov input[type=range]{width:auto;min-width:90px;flex:1;touch-action:none;cursor:ew-resize;padding:0;height:24px}
#furniture-workspace .fw-fov input:disabled{cursor:not-allowed;opacity:.4}
#furniture-workspace .fw-fov output{min-width:38px;text-align:right;font-variant-numeric:tabular-nums}
#furniture-workspace .fw-fov-limit{color:var(--fw-muted);font-size:10px}
/* Panels dock independently; both panels on one side share the resizable column. */
#furniture-workspace .fw-grid{display:grid;grid-template-columns:var(--fw-panel-left,182px) minmax(240px,1fr) var(--fw-panel-right,238px);position:relative}
#furniture-workspace .fw-center{grid-column:2;grid-row:1}
#furniture-workspace .fw-panel-dock{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;gap:1px;background:var(--fw-line);z-index:10}
#furniture-workspace .fw-panel-dock-left{grid-column:1;grid-row:1}
#furniture-workspace .fw-panel-dock-right{grid-column:3;grid-row:1}
#furniture-workspace .fw-panel-dock.is-empty{pointer-events:none;overflow:hidden}
#furniture-workspace aside[data-panel]{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1 1 0;border:1px solid var(--fw-line)}
#furniture-workspace .fw-panel-body{min-height:0;overflow:auto;flex:1;overscroll-behavior:contain}
#furniture-workspace .fw-panel-head{padding:4px 5px;gap:3px;flex:0 0 auto;min-height:32px;font-size:12px;cursor:grab;user-select:none;touch-action:none;background:var(--fw-panel)}
#furniture-workspace .fw-panel-head>span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#furniture-workspace .fw-panel-head-actions{display:flex;gap:1px;flex:none}
#furniture-workspace .fw-panel-head button{width:20px;height:22px;min-height:22px;padding:1px;border:0;border-radius:3px;flex:none;cursor:pointer}
#furniture-workspace .fw-panel-head .fw-panel-grip{width:15px;cursor:grab;color:var(--fw-muted);font-size:17px}
#furniture-workspace .fw-panel-head button svg{width:14px;height:14px}
#furniture-workspace .fw-panel-column-resize{position:absolute;top:0;bottom:0;width:7px;z-index:4;cursor:ew-resize;touch-action:none}
#furniture-workspace .fw-panel-dock-left>.fw-panel-column-resize{right:-3px}
#furniture-workspace .fw-panel-dock-right>.fw-panel-column-resize{left:-3px}
#furniture-workspace .fw-panel-column-resize:hover,#furniture-workspace .fw-panel-column-resize:focus-visible{background:#1686b855}
#furniture-workspace .fw-floating-panels{position:fixed;inset:0;z-index:450;pointer-events:none}
#furniture-workspace aside.is-floating-panel{position:fixed;pointer-events:auto;box-shadow:0 7px 24px #172d253d;border:1px solid var(--fw-accent);border-radius:6px}
#furniture-workspace .fw-panel-float-resize{display:none;position:absolute;z-index:3;touch-action:none;cursor:ew-resize;top:32px;bottom:0;width:6px}
#furniture-workspace .is-floating-panel .fw-panel-float-resize{display:block}
#furniture-workspace .fw-panel-float-resize-left{left:0}
#furniture-workspace .fw-panel-float-resize-right{right:0}
#furniture-workspace .fw-panel-float-resize-bottom-right{top:auto;left:auto;right:0;bottom:0;width:18px;height:18px;cursor:nwse-resize;background:repeating-linear-gradient(135deg,transparent 0 4px,#548a7477 4px 5px)}
#furniture-workspace .fw-panel-dock-guide{position:fixed;z-index:460;pointer-events:none;background:#2090bc18;border:2px dashed #1684b0;color:#0878ac;text-align:center;padding-top:25px;font-size:12px;font-weight:600}
#furniture-workspace .fw-panel-dock-guide.is-active{background:#2090bc44;border-style:solid}
#furniture-workspace .fw-selection.has-module-selection{border-left:4px solid #0878ac;background:#e8f4f8;color:#075e86;font-weight:500}
#furniture-workspace .fw-inline-dimension{border:0;border-bottom:1px dashed currentColor;border-radius:0;padding:0 2px;min-height:22px;min-width:48px;color:#a85b19;white-space:nowrap;font-variant-numeric:tabular-nums}
#furniture-workspace .fw-dimension-dialog{width:390px;max-width:calc(100vw - 40px)}
#furniture-workspace .fw-dimension-dialog h3{font-weight:600;margin:0 0 10px}
#furniture-workspace .fw-dimension-dialog p{font-size:12px;line-height:1.5}
#furniture-workspace .fw-dimension-dialog input{font-size:18px;font-variant-numeric:tabular-nums}
#furniture-workspace [data-dimension-error]{color:#a53c23;min-height:18px}
#furniture-workspace .fw-dimension-actions{display:flex;justify-content:flex-end;gap:6px}
#furniture-workspace .fw-dimension-actions button[type=submit]{background:var(--fw-accent);color:var(--fw-accent-text)}
#furniture-workspace .fw-dimension-inline-editor{position:absolute;z-index:60;margin:0;height:24px;user-select:text}
#furniture-workspace .fw-dimension-inline-editor input{display:block;width:100%;height:24px;min-width:0;margin:0;padding:1px 23px 1px 3px;border:2px solid #0878ac;border-radius:4px;background:var(--fw-bg);color:var(--fw-text);font:500 12px system-ui;text-align:center;outline:0;user-select:text;box-shadow:0 1px 5px #0002}
#furniture-workspace .fw-dimension-inline-editor.is-neighbor input{border-color:#a85b19}
#furniture-workspace .fw-inline-unit{position:absolute;right:5px;top:4px;font-size:10px;pointer-events:none;color:var(--fw-muted)}
#furniture-workspace .fw-dimension-inline-editor [data-dimension-error]{position:absolute;top:28px;left:0;min-height:0;width:270px;margin:0;padding:6px 8px;background:var(--fw-bg);border:1px solid #b14528;border-radius:4px;box-shadow:0 3px 12px #0002;font-size:11px;line-height:1.4}
#furniture-workspace .fw-dimension-inline-editor [data-dimension-error]:empty{display:none}
#furniture-workspace .fw-dimension-inline-editor.error-above [data-dimension-error]{top:auto;bottom:28px}
#furniture-workspace .fw-selection-marquee{position:absolute;z-index:30;border:1px solid #0878ac;background:#0878ac20;pointer-events:none;overflow:hidden;color:#075e86;font-size:10px;white-space:nowrap;padding:2px 4px;user-select:none}
#furniture-workspace .fw-selection-marquee.is-crossing{border-style:dashed;background:#25986d22;border-color:#25986d;color:#126044}
#furniture-workspace .fw-inline-dimension.is-wall{color:#0878ac}
#furniture-workspace .fw-fov output{min-width:64px;white-space:nowrap;font-weight:600;background:var(--fw-tint);border:1px solid var(--fw-line);border-radius:4px;padding:3px 5px;text-align:center}
#furniture-workspace .fw-fov [data-lens-reset]{min-height:26px;padding:3px 6px;font-size:11px;white-space:nowrap}
#furniture-workspace .fw-fov-limit{white-space:nowrap}
#furniture-workspace .fw-bottom .fw-fov{min-width:0;flex:1 1 440px;flex-wrap:wrap}

.fw-graphics{position:relative;flex:none}.fw-graphics summary{cursor:pointer;padding:8px;border:1px solid #9bb7aa;border-radius:5px}.fw-graphics>div{position:absolute;right:0;bottom:42px;min-width:280px;padding:16px;background:var(--panel,#fff);color:var(--text,#203139);border:1px solid #9bb7aa;border-radius:7px;box-shadow:0 5px 20px #0003;z-index:20}.fw-graphics label{display:flex;align-items:center;gap:8px;margin:8px 0}.fw-graphics output{min-width:36px}.fw-graphics input[type=range]{min-width:100px;max-width:150px}

/* Neutral, consistently light application chrome. Scene materials remain independent. */
html,body{color-scheme:light}
#furniture-workspace{color-scheme:light;--fw-bg:#fff;--fw-text:#252525;--fw-muted:#707070;--fw-line:#d2d2d2;--fw-panel:#f5f5f5;--fw-stage:#efefef;--fw-accent:#454545;--fw-accent-text:#fff;--fw-tint:#e7e7e7;--fw-grid:#d6d6d6}
#furniture-workspace button,#furniture-workspace input,#furniture-workspace select{border-radius:2px;accent-color:#707070}
#furniture-workspace .fw-modes button[aria-pressed=true]{background:#dedede;color:#222;border-color:#aaa}
#furniture-workspace .fw-source{color:#666}
#furniture-workspace .fw-selection{background:#ededed!important;color:#333!important;border-color:#aaa!important}
#furniture-workspace .fw-graphics summary,#furniture-workspace .fw-graphics>div{border-color:#bbb;border-radius:2px;background:#fff;color:#333}
#furniture-workspace .fw-inline-dimension,#furniture-workspace .fw-dimension-inline-editor{background:#fff!important;color:#333!important;border-color:#999!important}
#furniture-workspace [role=alert],#furniture-workspace .fw-edit-error{color:#333}
#furniture-workspace .fw-finish-wall{display:flex;gap:8px;align-items:center;margin:6px 0}
#furniture-workspace .fw-finish-wall select{flex:1;min-width:0}

#furniture-workspace .fw-dimension-inline-editor input,#furniture-workspace .fw-dimension-inline-editor.is-neighbor input{border-color:#666}
#furniture-workspace .fw-selection-marquee,#furniture-workspace .fw-selection-marquee.is-crossing{border-color:#666;background:#7772;color:#333}
#furniture-workspace .fw-panel-drop-zone,#furniture-workspace .fw-toolbar-drop-zone{background:#8883!important;border-color:#777!important;color:#333!important}
#furniture-workspace input[type=range]{accent-color:#777}

/* Compact shared project/module editor. */
#furniture-workspace .fw-top-space{display:grid;grid-template-columns:auto minmax(200px,1fr);grid-template-rows:auto auto auto}
#furniture-workspace .fw-top{grid-column:1/-1;min-height:24px;padding:3px 10px;gap:10px;flex-wrap:nowrap}
#furniture-workspace .fw-file-state{width:auto;margin-left:auto;font-size:10px}
#furniture-workspace .fw-brand{font-size:11px;margin-right:4px}
#furniture-workspace .fw-prototype{font-size:10px}
#furniture-workspace .fw-doc-tabs{grid-column:1;grid-row:2;padding:3px 8px;gap:3px}
#furniture-workspace .fw-project{grid-column:2;grid-row:2;padding:3px 8px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--fw-line)}
#furniture-workspace .fw-project>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#furniture-workspace .fw-project strong{font-size:12px;margin:0}
#furniture-workspace .fw-project .fw-muted{font-size:10px}
#furniture-workspace .fw-project select{max-width:150px;min-height:25px}
#furniture-workspace .fw-project .fw-source{font-size:9px;margin-left:auto}
#furniture-workspace .fw-modes{display:none}
#furniture-workspace .fw-toolbars{grid-row:3;grid-column:1/-1;padding:2px 7px}
#furniture-workspace .fw-doc-tabs button{min-height:25px;padding:3px 6px;font-size:11px}
#furniture-workspace .fw-view-tabs{padding:3px 8px;gap:3px}
#furniture-workspace .fw-view-tabs button{min-height:26px;padding:3px 8px;font-size:11px}
#furniture-workspace .fw-schedule{position:absolute;inset:0;overflow:auto;padding:16px;background:#fff;z-index:4;user-select:text}
#furniture-workspace .fw-schedule table{border-collapse:collapse;width:100%;margin:12px 0}
#furniture-workspace .fw-schedule th,#furniture-workspace .fw-schedule td{border:1px solid #ddd;text-align:left;padding:7px}
#furniture-workspace .fw-schedule th{background:#eee}
@media(max-width:1100px){#furniture-workspace .fw-project .fw-muted,#furniture-workspace .fw-project .fw-source{display:none}}

#furniture-workspace .fw-toolbar-title{display:none}
#furniture-workspace .fw-commandbar.is-floating{display:grid;grid-auto-flow:column;grid-template-rows:23px 30px;gap:2px;padding:3px;max-width:calc(100vw - 16px)}
#furniture-workspace .fw-commandbar.is-floating>.fw-toolbar-grip{grid-row:1;grid-column:1/-1;width:100%;justify-content:flex-start;background:#e9e9e9;min-height:22px;height:22px;padding:2px 5px;border-bottom:1px solid #ccc}
#furniture-workspace .fw-commandbar.is-floating>.fw-toolbar-grip .fw-toolbar-title{display:inline;font-size:11px;font-weight:600}
#furniture-workspace .fw-commandbar.is-floating>.fw-toolbar-grip .fw-grip-dots{margin-left:auto}
#furniture-workspace .fw-commandbar.is-floating>button:not(.fw-toolbar-grip){grid-row:2}
#furniture-workspace .fw-drawing{position:absolute;inset:0;overflow:auto;background:#e8e8e8;z-index:4;padding:10px}
#furniture-workspace .fw-drawing-tools{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;gap:4px;background:#f6f6f6;padding:5px;border:1px solid #ccc}
#furniture-workspace .fw-drawing-sheet{margin:12px auto;background:#fff;box-shadow:0 1px 6px #0002;width:min(100%,1100px);transform-origin:50% 0}
#furniture-workspace .fw-drawing-sheet svg{display:block;width:100%;height:auto}

#furniture-workspace .fw-commandbar.is-floating{grid-template-columns:repeat(var(--fw-toolbar-cols),max-content)}

/* Catalog: one dockable sidebar, restrained desktop appearance. */
#furniture-workspace.fw-unified-sidebar .fw-library{display:flex}
#furniture-workspace .fw-catalog-tabs{display:flex;flex:none;gap:1px;padding:3px;background:#ededed;border-bottom:1px solid #bbb}
#furniture-workspace .fw-catalog-tabs button{padding:5px 7px;min-height:28px;font-size:11px;border-radius:0;flex:1}
#furniture-workspace .fw-catalog-tabs [data-catalog-layout]{flex:0 0 25px;padding:3px}
#furniture-workspace .fw-catalog-tabs button[aria-pressed=true],#furniture-workspace .fw-catalog-subtabs button[aria-pressed=true]{background:white;border-bottom:2px solid #555}
#furniture-workspace .fw-catalog-body{padding:10px;min-height:0;overflow:auto;user-select:text}
#furniture-workspace .fw-catalog-subtabs{display:flex;gap:1px;margin:-10px -10px 10px;padding:4px;background:#f4f4f4;border-bottom:1px solid #ccc;position:sticky;top:-10px;z-index:1}
#furniture-workspace .fw-catalog-subtabs button{flex:1;font-size:11px;padding:5px 3px;border-radius:0}
#furniture-workspace .fw-catalog-search{display:block;font-size:11px;color:#555;margin:8px 0}
#furniture-workspace .fw-catalog-search input{display:block;width:100%;margin-top:4px;padding:6px;border:1px solid #bbb;border-radius:0;background:white}
#furniture-workspace .fw-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}
#furniture-workspace .fw-catalog-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;padding:7px 4px;background:#fafafa;border:1px solid #c8c8c8;border-radius:0;white-space:normal;text-align:center;gap:4px;min-height:90px}
#furniture-workspace .fw-catalog-card:hover{background:#eee;border-color:#666}
#furniture-workspace .fw-catalog-card[aria-pressed=true]{outline:2px solid #666;outline-offset:-2px;background:#eaeaea}
#furniture-workspace .fw-catalog-card svg{width:100%;height:85px}
#furniture-workspace .fw-catalog-card>i,#furniture-workspace .fw-catalog-card>.lucide{width:35px;height:35px;margin:10px}
#furniture-workspace .fw-catalog-card strong{font-size:11px;font-weight:500;line-height:1.4}
#furniture-workspace .fw-catalog-card small{font-size:10px;line-height:1.35;color:#666}
#furniture-workspace .fw-material-swatch{height:53px;width:100%;border:1px solid #aaa}
#furniture-workspace .fw-catalog-breadcrumb{font-size:11px;color:#555;margin:3px 0 10px}
#furniture-workspace .fw-material-detail{border-top:1px solid #ccc;margin-top:12px;padding-top:7px}
#furniture-workspace .fw-material-detail h3{font-size:12px;margin:5px 0}
#furniture-workspace .fw-catalog-body .fw-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#furniture-workspace .fw-catalog-body .fw-field{margin:7px 0;min-width:0}
#furniture-workspace .fw-catalog-body input,#furniture-workspace .fw-catalog-body select{max-width:100%;min-width:0}
#furniture-workspace .fw-catalog-actions{display:flex;gap:4px;flex-wrap:wrap;margin:10px 0}
#furniture-workspace .fw-catalog-body details{margin:8px 0}
#furniture-workspace .fw-catalog-body details>button,#furniture-workspace .fw-structure-part{display:block;width:100%;text-align:left;margin:3px 0;white-space:normal}
#furniture-workspace .fw-structure-part small{display:block;font-size:10px;color:#777}
#furniture-workspace .fw-catalog-notice{font-size:11px;line-height:1.5;padding:8px 0;white-space:normal}
#furniture-workspace .fw-properties>[hidden]{display:none!important}

#furniture-workspace .fw-material-grid{max-height:245px;overflow:auto;padding:2px}
/* Compact two-level tabs: primary navigation has a stronger band than subcategories. */
#furniture-workspace .fw-catalog-tabs{gap:0;padding:2px 3px;background:#dcdcdc;min-height:25px}
#furniture-workspace .fw-catalog-tabs button{flex:0 1 auto;min-height:21px;height:21px;padding:2px 8px;font-size:11px;font-weight:600;border:1px solid transparent;border-radius:0;border-right-color:#c5c5c5}
#furniture-workspace .fw-catalog-tabs [data-catalog-layout]{margin-left:auto;flex:0 0 22px}
#furniture-workspace .fw-catalog-tabs button[aria-pressed=true]{background:#fff;border:1px solid #aaa;border-bottom-color:#fff}
#furniture-workspace .fw-catalog-subtabs{gap:0;padding:2px 5px;background:#f5f5f5;border-bottom:1px solid #ccc;min-height:25px}
#furniture-workspace .fw-catalog-subtabs button{flex:0 1 auto;min-height:20px;height:20px;padding:1px 9px;font-size:10.5px;font-weight:400;border:0;border-right:1px solid #d7d7d7;border-radius:0}
#furniture-workspace .fw-catalog-subtabs button[aria-pressed=true]{background:#e7e7e7;border-bottom:1px solid #777}
#furniture-workspace .fw-properties .fw-panel-head{min-height:25px;padding:2px 4px;font-size:11px}
#furniture-workspace .fw-properties .fw-panel-head button{min-height:20px;height:20px}
#furniture-workspace .fw-properties button:not(.fw-catalog-card){gap:4px}
#furniture-workspace .fw-properties .fw-section button,#furniture-workspace .fw-catalog-actions button,#furniture-workspace .fw-material-detail button{min-height:24px;padding:3px 6px;font-size:11px;border-radius:1px}
#furniture-workspace .fw-scene-view-tabs{display:flex;gap:0;flex:0 0 auto;overflow-x:auto;background:#ddd;border-top:1px solid #aaa;min-height:25px;padding:2px 5px}
#furniture-workspace .fw-scene-view-tabs button{font-size:11px;line-height:16px;min-height:20px;height:20px;padding:1px 10px;white-space:nowrap;border:0;border-right:1px solid #b9b9b9;border-radius:0;flex:none}
#furniture-workspace .fw-scene-view-tabs button[aria-pressed=true]{background:#fff;border-top:1px solid #888;color:#111}
#furniture-workspace .fw-scene-view-tabs button:hover{background:#f2f2f2}

#furniture-workspace .fw-drawing-tools{align-items:center;gap:7px;font-size:11px;min-height:34px}
#furniture-workspace .fw-drawing-tools label{display:inline-flex;align-items:center;gap:4px;margin:0}
#furniture-workspace .fw-drawing-tools select{width:auto;min-width:95px;max-width:130px;min-height:24px;padding:2px 5px;font-size:11px;margin:0}
#furniture-workspace .fw-drawing-tools button{min-height:25px;height:25px;padding:3px 7px;border-radius:1px;font-size:11px}
#furniture-workspace .fw-catalog-notice:empty{display:none}
#furniture-workspace .fw-drawing-dimensions{display:flex;gap:12px;flex-basis:100%;align-items:center;flex-wrap:wrap;padding:3px 0;border-top:1px solid #ddd}
#furniture-workspace .fw-drawing-dimensions label{font-size:11px;gap:4px;white-space:nowrap;cursor:pointer}
#furniture-workspace .fw-drawing-dimensions input{width:12px;height:12px;margin:0;min-height:0;accent-color:#666}
#furniture-workspace .fw-drawing-tools input[type=range]{width:100px;height:18px;min-height:0;margin:0}
#furniture-workspace .fw-product-dialog,#furniture-workspace .fw-transform-dialog{width:min(540px,90vw);max-height:85vh;overflow:auto;border-radius:2px;padding:16px}
#furniture-workspace .fw-product-dialog .fw-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#furniture-workspace .fw-product-dialog input,#furniture-workspace .fw-product-dialog select,#furniture-workspace .fw-transform-dialog input{min-width:0;width:100%;margin:3px 0 9px;padding:5px;border:1px solid #bbb}
#furniture-workspace .fw-product-dialog input[type=color]{width:65px;height:28px;padding:2px}
#furniture-workspace .fw-catalog-tree details{margin:5px 0 5px 8px;padding-left:5px;border-left:1px solid #ddd}
#furniture-workspace .fw-catalog-tree summary{cursor:pointer;font-size:12px;padding:4px 0}
#furniture-workspace .fw-catalog-leaf{display:flex;align-items:center;gap:2px;padding:2px 0 2px 10px}
#furniture-workspace .fw-catalog-leaf button{min-height:24px;padding:2px 4px;border:0;border-radius:0;font-size:11px;text-align:left;justify-content:flex-start;white-space:normal}
#furniture-workspace .fw-catalog-leaf button:first-child{flex:1}
#furniture-workspace .fw-reports{position:absolute;inset:0;z-index:12;background:white;padding:12px;overflow:auto;user-select:text}
#furniture-workspace .fw-reports table{border-collapse:collapse;width:100%;font-size:11px}
#furniture-workspace .fw-reports td,#furniture-workspace .fw-reports th{border:1px solid #ccc;text-align:left;padding:5px;white-space:nowrap}
#furniture-workspace .fw-reports th{background:#eee;position:sticky;top:47px}
#furniture-workspace .fw-report-tools{display:flex;gap:7px;align-items:center;flex-wrap:wrap;position:sticky;top:0;background:#f4f4f4;z-index:2;padding:7px;border:1px solid #ccc}
#furniture-workspace .fw-report-tools button,#furniture-workspace .fw-report-tools select{min-height:25px;font-size:11px;padding:3px 6px;border-radius:0}
#furniture-workspace .fw-report-tools details{position:relative}
#furniture-workspace .fw-report-tools details[open]{padding:8px;background:white;box-shadow:0 2px 5px #0002}
#furniture-workspace .fw-report-tools details label{display:block;font-size:11px}
#furniture-workspace [data-cabinet-code],#furniture-workspace [data-element-number],#furniture-workspace [data-element-param=name]{display:block;width:100%;min-height:27px;padding:4px;border:1px solid #bbb;background:white}
#furniture-workspace .fw-report-tools [data-report-type]{width:230px;max-width:100%}
#furniture-workspace .fw-report-tools [data-report-search]{width:180px;padding:4px;border:1px solid #bbb}

#furniture-workspace .fw-report-tools [data-report-grouping]{width:auto;min-width:160px;max-width:260px}
#furniture-workspace .fw-report-totals{margin-top:18px;border-top:1px solid #bbb;padding-top:8px}

#furniture-workspace .fw-browser-search{display:block;padding:7px;position:sticky;top:0;background:#f4f4f4;z-index:1}
#furniture-workspace .fw-browser-search input{width:100%;padding:4px 6px;border:1px solid #bbb;border-radius:0;font-size:11px}
#furniture-workspace .fw-browser-tree{padding:3px 4px;font-size:11px;line-height:1.5}
#furniture-workspace .fw-browser-tree details>div{padding-left:11px;border-left:1px solid #ddd;margin-left:4px}
#furniture-workspace .fw-browser-tree summary{padding:4px 2px;cursor:pointer;white-space:nowrap}
#furniture-workspace .fw-browser-tree>details>summary{font-weight:600;border-bottom:1px solid #ddd;margin-top:3px}
#furniture-workspace .fw-browser-tree button{display:block;width:100%;text-align:left;border:0;border-radius:0;background:transparent;padding:3px 5px;min-height:22px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#furniture-workspace .fw-browser-tree button:hover{background:#e9e9e9}
#furniture-workspace .fw-browser-tree button[aria-pressed=true]{background:#ddd;outline:1px solid #aaa;outline-offset:-1px}
#furniture-workspace .fw-browser-empty{display:block;padding:4px;color:#777;font-size:10px}
#furniture-workspace .fw-move-input{position:absolute;left:12px;bottom:34px;z-index:65;display:flex;align-items:center;flex-wrap:wrap;gap:6px;max-width:min(550px,calc(100% - 24px));padding:8px;background:#fff;border:1px solid #999;box-shadow:0 2px 9px #0002;font-size:11px}
#furniture-workspace .fw-move-input[hidden]{display:none}
#furniture-workspace .fw-move-input label{display:flex;align-items:center;gap:5px}
#furniture-workspace .fw-move-input input{width:100px;padding:4px;border:1px solid #888;border-radius:0}
#furniture-workspace .fw-move-input button{min-width:26px;min-height:25px;padding:3px 6px;font-size:11px;border-radius:0}
#furniture-workspace .fw-move-axes{display:flex;gap:2px}
#furniture-workspace .fw-move-axes button[aria-pressed=true]{background:#ddd;outline:1px solid #555}
#furniture-workspace .fw-move-input small,#furniture-workspace [data-move-error]{flex-basis:100%}
#furniture-workspace [data-move-error]:empty{display:none}
#furniture-workspace [data-move-error]{color:#8b2020}
#furniture-workspace .fw-layout-editor{position:absolute;inset:0;z-index:45;background:#e8e8e8;display:flex;flex-direction:column;min-height:0}
#furniture-workspace .fw-layout-editor[hidden]{display:none}
#furniture-workspace .fw-layout-tools{display:flex;align-items:center;flex-wrap:wrap;gap:5px;padding:5px 7px;background:#f5f5f5;border-bottom:1px solid #ccc;font-size:11px}
#furniture-workspace .fw-layout-tools input,#furniture-workspace .fw-layout-tools select,#furniture-workspace .fw-layout-tools button{font-size:11px;min-height:25px;padding:3px 5px;border-radius:0;width:auto;max-width:220px}
#furniture-workspace .fw-layout-tools input[data-layout-param]{width:66px}
#furniture-workspace .fw-layout-tools input[data-layout-name]{width:140px}
#furniture-workspace .fw-layout-tools label{display:flex;align-items:center;gap:3px}
#furniture-workspace .fw-layout-notice{margin:0;padding:4px 8px;background:#f5f5f5;color:#555;font-size:10px}
#furniture-workspace .fw-layout-scroll{flex:1;overflow:auto;padding:12px;min-height:0}
#furniture-workspace .fw-layout-paper{position:relative;background:white;box-shadow:0 2px 7px #0003;margin:auto;flex-shrink:0}
#furniture-workspace .fw-layout-paper>svg{display:block;width:100%;height:100%}
#furniture-workspace .fw-layout-frames{position:absolute;inset:0;pointer-events:none}
#furniture-workspace .fw-layout-frame{position:absolute;border:1px dashed #aaa;cursor:move;pointer-events:auto;touch-action:none;box-sizing:border-box}
#furniture-workspace .fw-layout-frame:hover,#furniture-workspace .fw-layout-frame.selected{outline:1px solid #555;background:#00000004}
#furniture-workspace .fw-layout-frame>span{position:absolute;top:-14px;right:0;font-size:9px;background:#fff;color:#666}
#furniture-workspace .fw-resize-input{position:absolute;bottom:34px;left:12px;z-index:66;display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:8px;background:#fff;border:1px solid #888;box-shadow:0 2px 7px #0002;max-width:calc(100% - 24px);font-size:11px}
#furniture-workspace .fw-resize-input[hidden]{display:none}
#furniture-workspace .fw-resize-input label{display:flex;align-items:center;gap:5px}
#furniture-workspace .fw-resize-input input{width:95px;padding:4px;border:1px solid #888}
#furniture-workspace .fw-resize-input small,#furniture-workspace [data-resize-error]{flex-basis:100%}
#furniture-workspace [data-resize-error]:empty{display:none}
#furniture-workspace .fw-layout-title-fields{display:flex;gap:7px;flex-wrap:wrap;padding:7px;background:#f4f4f4;border-bottom:1px solid #ccc;font-size:11px}
#furniture-workspace .fw-layout-title-fields label{display:flex;flex-direction:column;gap:3px}
#furniture-workspace .fw-layout-title-fields input{font-size:11px;padding:4px;width:160px;border:1px solid #aaa}
#furniture-workspace .fw-part-drawing-status{font-size:11px;margin:5px 9px;color:#666}
#furniture-workspace [data-part-page]{max-width:310px}
#furniture-workspace [data-part-stock]{width:100%;font-size:11px;padding:5px}

#furniture-workspace .fw-part-common-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(85px,1fr));gap:6px}
#furniture-workspace .fw-part-common-fields .fw-field,#furniture-workspace .fw-part-common-fields input{min-width:0;width:100%;box-sizing:border-box}
#furniture-workspace [data-properties] .fw-property-row span{min-width:0;overflow-wrap:anywhere}
#furniture-workspace [data-module-stock]{width:100%;min-width:0;font-size:11px}

#furniture-workspace .fw-viewcube{position:absolute;right:10px;top:40px;width:140px;z-index:5;background:#ffffffb8;border:1px solid #d5d5d5;border-radius:3px;user-select:none;touch-action:none}
#furniture-workspace .fw-viewcube[hidden]{display:none}
#furniture-workspace .fw-viewcube svg{display:block;width:140px;height:116px;overflow:visible}
#furniture-workspace .fw-viewcube polygon,#furniture-workspace .fw-viewcube path,#furniture-workspace .fw-viewcube circle{stroke:#777;stroke-width:.8}
#furniture-workspace .fw-viewcube circle{fill:#fafafa}
#furniture-workspace .fw-viewcube text{fill:#444;text-anchor:middle;font:8px system-ui;pointer-events:none}
#furniture-workspace .fw-viewcube g[role=button]{cursor:pointer;outline:none}
#furniture-workspace .fw-viewcube g[role=button]:hover polygon,#furniture-workspace .fw-viewcube g[role=button]:focus polygon,#furniture-workspace .fw-viewcube g[role=button]:hover circle{fill:#cfcfcf;stroke:#333}
#furniture-workspace .fw-cube-buttons{display:flex;border-top:1px solid #ddd}
#furniture-workspace .fw-cube-buttons button{flex:1;font-size:9px;padding:3px 1px;min-height:20px;border:0;border-right:1px solid #ddd;background:#f7f7f7}
/* Crisp, high-contrast light UI. Keep native Windows font hinting and GPU edge antialiasing. */
#furniture-workspace{--fw-text:#111;--fw-muted:#3b3b3b;--fw-line:#a6a6a6;--fw-accent:#202020;font-family:"Segoe UI",Tahoma,sans-serif;font-weight:400;text-rendering:auto}
#furniture-workspace button,#furniture-workspace input,#furniture-workspace select,#furniture-workspace textarea{font-family:"Segoe UI",Tahoma,sans-serif;color:#111;font-weight:500}
#furniture-workspace input:not([type=range]):not([type=checkbox]),#furniture-workspace select,#furniture-workspace textarea{border:1px solid #888;background:#fff}
#furniture-workspace button:not(:disabled):hover{background:#dedede;border-color:#5c5c5c}
#furniture-workspace .fw-panel-head,#furniture-workspace strong,#furniture-workspace .fw-section h3{color:#171717;font-weight:600}
#furniture-workspace .fw-section h3{letter-spacing:.35px}
#furniture-workspace .fw-field,#furniture-workspace .fw-sub,#furniture-workspace .fw-prototype,#furniture-workspace .fw-source,#furniture-workspace .fw-muted{color:#3b3b3b}
#furniture-workspace .fw-toolbar,#furniture-workspace .fw-panel-head,#furniture-workspace .fw-scene-views{border-color:#969696}
#furniture-workspace .lucide{color:#222;stroke-width:1.8;shape-rendering:geometricPrecision}
#furniture-workspace .fw-viewcube polygon,#furniture-workspace .fw-viewcube path,#furniture-workspace .fw-viewcube circle{stroke:#333;stroke-width:1}
#furniture-workspace .fw-viewcube text{fill:#111;font-family:"Segoe UI",sans-serif;font-weight:600}
#furniture-workspace .fw-viewcube{background:#fffffff2;border-color:#999}
#furniture-workspace button:disabled{color:#777;opacity:.65}

#furniture-workspace .fw-component-move-form{position:absolute;z-index:35;left:12px;bottom:45px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;max-width:430px;padding:10px;background:#fff;border:1px solid #777;box-shadow:0 2px 8px #0002;font-size:12px}
#furniture-workspace .fw-component-move-form label{display:flex;align-items:center;gap:5px}
#furniture-workspace .fw-component-move-form input{width:100px;padding:4px}
#furniture-workspace .fw-component-move-form small,#furniture-workspace .fw-component-move-form [role=status]{flex-basis:100%}
#furniture-workspace .fw-component-move-form.has-error [role=status]{font-weight:600}

#furniture-workspace .fw-browser-node-row{display:flex;align-items:center;min-width:0}
#furniture-workspace .fw-browser-node-row>[data-browser-route]{flex:1;min-width:0;width:auto}
#furniture-workspace .fw-browser-tree .fw-browser-eye{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:21px;height:21px;min-height:21px;flex:0 0 21px;margin:0 3px 0 0;padding:2px;border:0;outline:none;background:transparent;color:#222}
#furniture-workspace .fw-browser-eye svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
#furniture-workspace .fw-browser-eye.is-hidden{color:#777}
#furniture-workspace .fw-browser-node-row.is-hidden>[data-browser-route]{color:#777}
#furniture-workspace .fw-browser-tree .fw-browser-eye:hover,#furniture-workspace .fw-browser-tree .fw-browser-eye:focus-visible{background:#ddd;outline:1px solid #888;outline-offset:-1px}
#furniture-workspace .fw-browser-tree .fw-browser-eye[aria-pressed=true]{background:transparent;outline:none}
/* Material library */
#furniture-workspace .fw-stock-picker{width:min(1120px,95vw);height:min(760px,90vh);max-width:min(1120px,95vw);padding:0;border-radius:2px;overflow:hidden;border:1px solid #555;color:#111;background:#fafafa;box-shadow:0 8px 35px #0005}#furniture-workspace .fw-stock-picker::backdrop{background:#0004}#furniture-workspace .fw-stock-picker>header,#furniture-workspace .fw-stock-picker>footer{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #aaa}#furniture-workspace .fw-stock-picker>header>strong{flex:1}#furniture-workspace .fw-stock-picker>footer{border-top:1px solid #aaa;border-bottom:0;justify-content:flex-end}#furniture-workspace .fw-stock-picker [data-stock-error]{flex:1;color:#111}#furniture-workspace .fw-picker-layout{height:calc(100% - 94px);display:grid;grid-template-columns:225px minmax(250px,1fr) 230px}#furniture-workspace .fw-picker-layout nav,#furniture-workspace .fw-picker-layout main,#furniture-workspace .fw-picker-layout aside{overflow:auto;padding:10px}#furniture-workspace .fw-picker-layout nav{border-right:1px solid #aaa;font-size:12px}#furniture-workspace .fw-picker-layout aside{border-left:1px solid #aaa;font-size:12px}#furniture-workspace .fw-picker-layout summary{font-weight:600;margin:6px 0}#furniture-workspace .fw-picker-layout nav button{display:block;text-align:left;border:0;width:100%;padding:4px 7px;margin:1px 0;background:transparent}#furniture-workspace .fw-picker-layout button[aria-pressed=true]{outline:1px solid #333;background:#ddd}#furniture-workspace .fw-picker-search{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12px;margin-bottom:12px}#furniture-workspace .fw-picker-search input{min-width:130px;flex:1}#furniture-workspace .fw-picker-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:8px}#furniture-workspace .fw-picker-cards button{text-align:left;padding:6px;display:flex;flex-direction:column;gap:4px;border:1px solid #aaa;background:white;min-width:0}#furniture-workspace .fw-picker-cards button>span{width:100%;height:65px;border:1px solid #aaa}#furniture-workspace .fw-picker-cards strong{font-size:12px}#furniture-workspace .fw-picker-cards small{font-size:11px;line-height:1.25}#furniture-workspace .fw-picker-swatch{display:block;height:140px;width:100%;border:1px solid #aaa}#furniture-workspace .fw-stock-field{display:block;width:100%;text-align:left;font-size:12px!important;white-space:normal;border:1px solid #888!important;min-height:27px}#furniture-workspace .fw-edge-row{display:grid;grid-template-columns:76px minmax(70px,1fr) 22px 22px;gap:3px;align-items:center;margin:5px 0;font-size:11px}#furniture-workspace .fw-edge-row button{padding:3px!important;font-size:11px!important;white-space:normal}#furniture-workspace .fw-cut-sheets{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:18px}#furniture-workspace .fw-cut-sheets figure{margin:0;padding:10px;border:1px solid #aaa}#furniture-workspace .fw-cut-sheets svg{width:100%;max-height:400px}#furniture-workspace .fw-cut-sheets figure>div{font-size:11px;columns:2}#furniture-workspace .fw-cut-group{margin:20px 0}#furniture-workspace .fw-cut-excluded{padding:10px;border:1px solid #aaa}#furniture-workspace .fw-report-tools [data-cut-option]{width:58px}

#furniture-workspace .fw-picker-layout aside{overflow-wrap:anywhere}#furniture-workspace select[data-picker-ready]{display:none!important}
#furniture-workspace .fw-print-preview,dialog.fw-print-preview{width:95vw;max-width:1400px;height:92vh;padding:10px;border:1px solid #555;border-radius:2px;background:#f6f6f6;color:#111}dialog.fw-print-preview header{display:flex;gap:8px;align-items:center}dialog.fw-print-preview strong{flex:1}dialog.fw-print-preview p{font:12px Arial}dialog.fw-print-preview iframe{width:100%;height:calc(100% - 85px);border:1px solid #aaa;background:#ddd}dialog.fw-print-preview::backdrop{background:#0005}dialog.fw-print-preview button{padding:5px 9px}#furniture-workspace [data-production-export-status]{font-size:11px}

.fw-construction-actions{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0}.fw-construction-dialog{width:min(620px,94vw);max-height:88vh;overflow:auto}.fw-construction-dialog fieldset{border:1px solid #aaa;margin:8px 0;padding:8px}.fw-construction-dialog legend{color:#111}

.fw-aa-icon{font-size:11px;font-weight:700;letter-spacing:-.5px}
.fw-construction-graphics{position:absolute;inset:0;pointer-events:none;z-index:7;color:#111;font-size:12px}
.fw-construction-graphics[hidden]{display:none}.fw-construction-points{position:absolute;inset:0;pointer-events:none}
.fw-construction-points>button{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);white-space:nowrap;background:#fff;border:1px solid #444;border-radius:2px;box-shadow:0 1px 3px #0002;min-height:25px;padding:3px 6px;color:#111}
.fw-construction-points>.fw-corner-point{width:28px;height:28px;padding:0;font:700 22px/24px 'Segoe UI',sans-serif;border-color:#333;background:#fff}
.fw-construction-points>button:hover,.fw-corner-options button:hover{background:#e1e1e1;border-color:#111}
.fw-corner-popover,.fw-construction-inline{position:absolute;pointer-events:auto;background:#fff;border:1px solid #777;box-shadow:0 4px 16px #0003;padding:10px;color:#111;z-index:4;max-width:calc(100% - 16px)}
.fw-corner-popover{width:296px}.fw-corner-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.fw-corner-title strong{font-weight:600}.fw-corner-title button{min-width:24px}
.fw-corner-options{display:flex;gap:6px;margin:4px 0 10px}.fw-corner-options button{flex:1;min-width:0;padding:5px 3px;border:1px solid #aaa;background:#fff;line-height:1.3;text-align:center}.fw-corner-options button[aria-pressed=true]{border:2px solid #111;padding:4px 2px;background:#f1f1f1}
.fw-corner-options svg{display:block;width:86px;height:66px;margin:0 auto 4px}.fw-corner-options rect{stroke:#111;stroke-width:1}.fw-corner-popover p{font-size:11px;margin:8px 0 0;line-height:1.4}.fw-corner-popover label{display:flex;align-items:center;gap:5px}
.fw-construction-inline{width:230px;display:grid;grid-template-columns:minmax(90px,1fr) 25px 25px;gap:4px;align-items:end}.fw-construction-inline label{min-width:0}.fw-construction-inline input{display:block;width:100%;min-width:0;margin-top:3px;border:1px solid #555;padding:4px}.fw-construction-inline>span{grid-column:1/-1;font-size:11px;max-width:100%;overflow-wrap:anywhere}.fw-construction-inline button{min-height:28px}
.fw-construction-tip{position:absolute;top:8px;left:50%;transform:translateX(-50%);max-width:75%;padding:5px 9px;border:1px solid #aaa;background:#fffffff2;color:#111;text-align:center;pointer-events:none;font-size:11px}
@media(pointer:coarse){.fw-construction-points>.fw-corner-point{width:40px;height:40px}.fw-construction-points>button{min-height:38px}.fw-corner-options button{min-height:110px}}

#furniture-workspace .fw-corner-options button{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:120px}
#furniture-workspace .fw-corner-options svg{width:86px!important;height:66px!important;min-width:86px;max-width:86px;flex:none;display:block}
.fw-graphical-construction .fw-view-help{display:none}

.fw-machining-preview{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}
#furniture-workspace .fw-back-popover,#furniture-workspace .fw-joint-popover{width:350px;max-height:calc(100% - 16px);overflow:auto;box-sizing:border-box}
#furniture-workspace .fw-back-options{display:flex;gap:4px;margin:8px 0}
#furniture-workspace .fw-back-options button{display:flex;flex-direction:column;align-items:center;flex:1;white-space:normal;min-height:95px;font-size:11px}
#furniture-workspace .fw-back-options svg{width:80px!important;height:60px!important;flex:none}
#furniture-workspace .fw-joint-options{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:8px}
#furniture-workspace .fw-back-popover input,#furniture-workspace .fw-joint-popover input,#furniture-workspace .fw-joint-popover select{box-sizing:border-box;width:100%;padding:5px;margin:3px 0 6px}
#furniture-workspace .fw-back-popover label,#furniture-workspace .fw-joint-popover label{font-size:11px;display:block}
#furniture-workspace .fw-back-options [aria-pressed=true],#furniture-workspace .fw-joint-options [aria-pressed=true]{background:#ddd;outline:1px solid #222}

#furniture-workspace .fw-construction-points>.fw-rule-marker{width:28px;height:28px;min-height:28px;padding:0;border:1px solid transparent;background:#ffffff99;box-shadow:none;border-radius:3px;line-height:1}
#furniture-workspace .fw-rule-marker svg{display:block;width:26px!important;height:26px!important;min-width:26px;max-width:26px;pointer-events:none}
#furniture-workspace .fw-rule-marker path{fill:none;stroke:#111;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
#furniture-workspace .fw-construction-points>.fw-rule-marker:hover,#furniture-workspace .fw-construction-points>.fw-rule-marker:focus-visible{background:#fff;border-color:#333;box-shadow:0 1px 4px #0003;outline:1px solid #555}

#furniture-workspace .fw-relation-popover{width:360px;box-sizing:border-box;max-height:calc(100% - 16px);overflow:auto}
#furniture-workspace .fw-relation-popover h4{margin:8px 0 5px;font-size:12px;border-top:1px solid #bbb;padding-top:7px}
#furniture-workspace .fw-relation-popover input:not([type=checkbox]),#furniture-workspace .fw-relation-popover select{width:100%;box-sizing:border-box;padding:4px;margin-top:3px}
#furniture-workspace .fw-relation-popover label{font-size:11px;display:block}
#furniture-workspace .fw-relation-schemes{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-bottom:6px}
#furniture-workspace .fw-relation-schemes button{font-size:11px;padding:4px 2px}
#furniture-workspace .fw-relation-schemes [aria-pressed=true]{border:1px solid #111;background:#ddd;box-shadow:inset 0 0 0 1px #111}
#furniture-workspace .fw-relation-popover .fw-corner-options button{min-height:92px}

#furniture-workspace .fw-relation-popover{display:flex;flex-direction:column;overflow:hidden;gap:5px}
#furniture-workspace .fw-relation-page{overflow:auto;min-height:0}
#furniture-workspace .fw-relation-page[hidden]{display:none}
#furniture-workspace .fw-relation-tabs{display:flex;gap:3px;flex:none;border-bottom:1px solid #aaa;padding-bottom:4px}
#furniture-workspace .fw-relation-tabs [aria-pressed=true]{background:#ddd;border-color:#222}
#furniture-workspace .fw-relation-popover>.fw-corner-title,#furniture-workspace .fw-relation-popover>[data-graphic-status],#furniture-workspace .fw-relation-popover>[data-back-apply],#furniture-workspace .fw-relation-popover>[data-corner-apply]{flex:none}
#furniture-workspace .fw-relation-popover>.fw-corner-title{margin-bottom:0}

#furniture-workspace .fw-stock-picker{box-sizing:border-box;max-height:calc(100dvh - 24px)}
#furniture-workspace .fw-stock-picker[open]{display:flex;flex-direction:column}
#furniture-workspace .fw-stock-picker>header,#furniture-workspace .fw-stock-picker>footer{flex:0 0 auto;box-sizing:border-box;min-width:0}
#furniture-workspace .fw-stock-picker>.fw-picker-layout{flex:1 1 auto;min-height:0;height:auto;grid-template-rows:minmax(0,1fr)}
#furniture-workspace .fw-picker-layout nav,#furniture-workspace .fw-picker-layout main,#furniture-workspace .fw-picker-layout aside{min-height:0;min-width:0;box-sizing:border-box}
#furniture-workspace .fw-stock-picker>footer button{flex:none;min-height:28px}
#furniture-workspace .fw-stock-picker [data-stock-error]{min-width:0;overflow-wrap:anywhere;max-height:65px;overflow:auto}
@media(max-width:850px){#furniture-workspace .fw-stock-picker>.fw-picker-layout{grid-template-columns:165px minmax(0,1fr) 180px}}

#furniture-workspace .fw-bulk-edge-dialog{width:min(510px,94vw);max-height:calc(100dvh - 24px);padding:0;box-sizing:border-box;overflow:hidden}
#furniture-workspace .fw-bulk-edge-dialog[open],#furniture-workspace .fw-bulk-edge-dialog form{display:flex;flex-direction:column;min-height:0}
#furniture-workspace .fw-bulk-edge-dialog header,#furniture-workspace .fw-bulk-edge-dialog footer{display:flex;align-items:center;gap:8px;padding:10px;border-bottom:1px solid #aaa;flex:none}
#furniture-workspace .fw-bulk-edge-dialog header strong{flex:1}
#furniture-workspace .fw-bulk-edge-dialog footer{border-bottom:0;border-top:1px solid #aaa;justify-content:flex-end}
#furniture-workspace .fw-bulk-edge-body{overflow:auto;padding:12px;min-height:0;font-size:12px}
#furniture-workspace .fw-bulk-edge-sides{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
#furniture-workspace .fw-bulk-edge-body select{display:block;width:100%;margin:5px 0 10px;padding:6px}
#furniture-workspace [data-bulk-error]{color:#111;font-weight:600}

#furniture-workspace .fw-bulk-edge-sides label{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:7px}
#furniture-workspace .fw-bulk-edge-sides input{width:auto;margin:0;flex:none}

.fw-edge-selection{position:absolute;inset:0;pointer-events:none;z-index:9}.fw-edge-selection[hidden]{display:none}.fw-edge-selection>svg{width:100%;height:100%;position:absolute;inset:0;pointer-events:none}
.fw-edge-selection-tools{position:absolute;left:12px;top:12px;max-width:470px;background:#fffffff2;border:1px solid #777;padding:9px;pointer-events:auto;font-size:11px}.fw-edge-selection-tools p{margin:5px 0}.fw-edge-selection-tools button{font-size:11px!important;margin:3px 2px 0 0}.fw-shelf-fixing{border-top:1px solid #bbb;margin-top:8px;padding-top:8px}.fw-shelf-fixing select,.fw-shelf-fixing input{display:block;width:100%;padding:5px}.fw-shelf-fixing p{font-size:11px}

.fw-front-properties{border-top:1px solid #aaa;padding-top:8px;margin-top:8px}.fw-front-properties select,.fw-front-split-popover input,.fw-front-split-popover select{display:block;width:100%;box-sizing:border-box;padding:5px;margin:4px 0 8px}.fw-front-properties p{font-size:11px}

#furniture-workspace .fw-front-split-popover label{display:block;margin:5px 0}

/* Official decor previews and provenance stay separate from a verified physical sheet. */
.fw-picker-cards img{display:block;width:100%;height:65px;object-fit:cover;border:1px solid #999}.fw-picker-swatch:is(img){width:100%;height:120px;object-fit:cover}.fw-material-swatch:is(img){display:block;width:100%;height:64px;object-fit:cover}.fw-texture-badge{display:block;font-size:10px!important;line-height:1.2;color:#222}.fw-texture-warning{font-size:11px;line-height:1.4;border-left:3px solid #333;padding:5px 8px;background:#eee;color:#111}.fw-texture-viewer{width:min(1000px,94vw);height:min(850px,92vh);box-sizing:border-box;max-height:92vh;padding:12px}.fw-texture-viewer[open]{display:flex;flex-direction:column;gap:7px}.fw-texture-viewer header{display:flex;justify-content:space-between;align-items:center}.fw-texture-viewer p,.fw-texture-viewer footer{margin:0;font-size:12px}.fw-texture-scroll{min-height:80px;flex:1;overflow:auto;background:#ddd;border:1px solid #888}.fw-texture-scroll img{width:100%;height:auto;max-width:none;display:block}.fw-texture-viewer button{align-self:flex-start}.fw-texture-viewer header button{margin-left:auto}

.fw-texture-viewer{font-family:Arial,sans-serif;font-size:12px;color:#111;border:1px solid #555;border-radius:3px}.fw-texture-viewer button{font-family:inherit;font-size:12px;border:1px solid #aaa;border-radius:2px;padding:5px 8px;background:#f5f5f5;color:#111}.fw-texture-viewer input{accent-color:#555}

.fw-cut-live{position:absolute;right:12px;bottom:12px;width:280px;background:#fff;border:1px solid #333;z-index:8;padding:6px;box-shadow:0 2px 8px #0002}.fw-cut-live canvas{display:block!important;position:static!important;width:280px!important;height:220px!important;pointer-events:none}.fw-reports:has(.fw-cut-live){padding-right:310px}.fw-cut-selected>rect{stroke:#111;stroke-width:9}.fw-cut-invalid>rect{stroke:#a00;stroke-width:12}[data-cut-source]{cursor:move;touch-action:none}[data-cut-sheet]{touch-action:none}.fw-grain-question{font:13px Arial,sans-serif;max-width:420px;border:1px solid #444}.fw-grain-question button{margin:5px;padding:7px}.fw-reports [data-cut-move-status]{font-size:12px}

.fw-drawer-dialog{width:420px;max-width:90vw;max-height:90vh;overflow:auto;border:1px solid #555;font:13px Arial,sans-serif;color:#111}.fw-drawer-dialog label{display:block;margin:10px 0}.fw-drawer-dialog input:not([type=checkbox]),.fw-drawer-dialog select{display:block;width:100%;box-sizing:border-box;padding:5px;border:1px solid #999}.fw-drawer-dialog p{font-size:12px;line-height:1.4}.fw-drawer-dialog button{padding:6px;margin:4px}

.fw-doc-tabs,.fw-project,.fw-view-tabs,.fw-crumb{display:none!important}.fw-document-tabs{display:flex;min-width:0;overflow-x:auto;align-self:stretch;flex:1;gap:2px}.fw-document-tab{display:flex;align-items:center;white-space:nowrap;border:1px solid #999;border-top:3px solid var(--project-color);background:#e5e5e5}.fw-document-tab button{border:0;background:transparent;color:#111;padding:4px 7px;font-size:11px;white-space:nowrap}.fw-document-tab button[aria-pressed=true]{background:#fff;font-weight:bold}.fw-document-tab button[data-close-view]{padding:2px 5px;font-size:15px}.fw-no-view{position:absolute;inset:0;display:grid;place-items:center;background:#eee;z-index:30;font:13px Arial,sans-serif;color:#333}.fw-no-view[hidden]{display:none}.fw-open-projects{padding:4px 6px;background:#eee;border-bottom:1px solid #aaa;font-size:10px}.fw-open-projects label{display:flex;gap:5px;align-items:center}.fw-open-projects select{min-width:0;flex:1;height:24px;font-size:11px;border:1px solid #999;background:#fff;color:#111}.fw-viewbar{gap:5px}.fw-viewbar .fw-tools{flex-shrink:0}.fw-brand>span{font-weight:bold}

.fw-document-tab button{min-height:24px;height:24px;padding:2px 6px}.fw-document-tabs{scrollbar-width:thin}.fw-cut-live{overflow:hidden}

#furniture-workspace .fw-viewbar{padding:2px 6px;gap:4px;flex-wrap:nowrap;min-height:32px}

#furniture-workspace .fw-cut-sheets{grid-template-columns:minmax(0,1fr)}#furniture-workspace .fw-cut-sheets figure{min-width:0;overflow:auto}#furniture-workspace .fw-cut-sheets svg{max-height:none;max-width:none;height:auto;display:block}#furniture-workspace [data-cut-source] rect{pointer-events:all}#furniture-workspace .fw-document-tab{background:#ddd}#furniture-workspace .fw-document-tab.is-active{background:#fff}#furniture-workspace .fw-document-tab button{background:transparent}#furniture-workspace .fw-close-inactive{font-size:10px;min-height:24px;padding:3px 5px;flex-shrink:0}

.fw-dimension-leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;stroke:#555;stroke-width:1;fill:#555}.fw-construction-points>[data-graphic-key^="front-gap-"]{background:#fff!important;font-size:10px}

.fw-construction-dialog [data-construction-dialog-error]:not(:empty){border:1px solid #333;padding:8px;font-weight:600;background:#fff}.fw-construction-dialog [data-construction-bounds-preview]:not(:empty){border-top:1px solid #aaa;padding-top:8px;font-weight:600}

.fw-construction-dialog:has(.fw-panel-form){padding:0;overflow:hidden;max-height:90vh}.fw-panel-form{display:flex;flex-direction:column;max-height:90vh;margin:0}.fw-panel-form>h3{margin:0;padding:16px 20px;border-bottom:1px solid #aaa;flex-shrink:0}.fw-panel-body{overflow:auto;min-height:0;padding:12px 20px}.fw-panel-footer{padding:8px 20px;border-top:1px solid #888;background:#fff;flex-shrink:0}.fw-panel-footer p{margin:4px 0}.fw-panel-footer .fw-opening-add{margin:6px 0 0}

#furniture-workspace .fw-construction-dialog:has(.fw-panel-form){padding:0;overflow:hidden;max-height:90vh;max-width:min(620px,94vw);border-radius:2px}#furniture-workspace .fw-panel-form{max-height:calc(90vh - 2px)}#furniture-workspace .fw-panel-footer .fw-opening-add{margin:6px 0 0}

#furniture-workspace .fw-quad-menu{position:fixed;width:min(640px,calc(100vw - 12px));max-height:calc(100vh - 12px);padding:0;overflow:auto;z-index:1000;background:#f8f8f8;border:1px solid #555;box-shadow:0 4px 18px #0004}#furniture-workspace .fw-quad-menu>strong{display:block;padding:6px 10px;border-bottom:1px solid #888;background:#eee}.fw-quad-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px}.fw-quad-grid section{min-width:0;border:1px solid #aaa;background:#fff;padding:5px;max-height:36vh;overflow:auto}.fw-quad-grid h3{font-size:11px;margin:0 0 4px;padding:4px;background:#e5e5e5;color:#111}.fw-quad-grid button{display:block;width:100%;text-align:left;border:0!important;background:#fff!important;font-size:11px!important;min-height:24px!important;padding:3px 6px!important}.fw-quad-grid button:hover{background:#ddd!important}.fw-quad-opening{display:block;padding:5px;border-bottom:1px solid #ccc;font-size:11px}.fw-quad-opening input{display:block;width:100%}.fw-drawer-dialog{width:min(570px,94vw);max-height:90vh;overflow:auto}.fw-drawer-dialog fieldset{border:1px solid #aaa;margin:10px 0;padding:10px}.fw-drawer-dialog fieldset p{font-size:11px}

#furniture-workspace .fw-quad-grid button{display:block}#furniture-workspace .fw-quad-menu .fw-quad-opening{display:block}#furniture-workspace .fw-quad-menu .fw-quad-opening input{width:100%;display:block}#furniture-workspace .fw-quad-menu .fw-quad-opening output{display:inline}

#furniture-workspace .fw-document-tab{max-height:26px;align-self:center}#furniture-workspace .fw-document-tab>button{border:0!important;outline:none!important;box-shadow:none!important;border-radius:0;background:transparent!important;min-height:22px;height:22px;padding:1px 5px;font-size:11px}#furniture-workspace .fw-document-tab>button[data-close-view]{font-size:15px;padding:1px 4px;min-width:18px}#furniture-workspace .fw-document-tab:focus-within{box-shadow:inset 0 -2px #666}#furniture-workspace .fw-browser-node-row.is-browser-selected{background:#e4e4e4}

.fw-drawer-dialog{padding:0;overflow:hidden;border-radius:2px}.fw-drawer-form{display:flex;flex-direction:column;max-height:calc(90vh - 2px);margin:0}.fw-drawer-form>h3{padding:14px;margin:0;border-bottom:1px solid #aaa;flex-shrink:0}.fw-drawer-body{min-height:0;overflow:auto;padding:8px 14px}.fw-drawer-form>footer{padding:8px 14px;background:#fff;border-top:1px solid #aaa;flex-shrink:0}.fw-drawer-form [data-drawer-error]:not(:empty){border:1px solid #333;padding:6px}

/* GPU scene with a transparent 2D interaction/annotation layer. */
#furniture-workspace .fw-stage{isolation:isolate}
#furniture-workspace canvas[data-gl-canvas]{position:absolute;inset:0;width:100%;height:100%;min-height:0;z-index:0;pointer-events:none}
#furniture-workspace canvas[data-gl-canvas][hidden]{display:none!important}
#furniture-workspace canvas[data-canvas]{position:relative;z-index:1;background:transparent}
#furniture-workspace .fw-stage-tag,#furniture-workspace .fw-view-help{z-index:2}

/* Independent wall / floor / ceiling sketch editor. */
.fw-room-plan{position:absolute;inset:0;background:#fff;z-index:15;overflow:hidden;color:#151515}.fw-room-plan[hidden],.fw-return-plan[hidden]{display:none!important}.fw-room-plan canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;outline:none}.fw-plan-tools{position:absolute;z-index:3;top:0;left:0;right:0;display:flex;flex-wrap:wrap;gap:3px;align-items:center;background:#f3f3f3;border-bottom:1px solid #999;padding:4px}.fw-plan-tools button,.fw-room-plan footer button{font:12px 'Segoe UI';padding:3px 6px;border:1px solid #aaa;background:#fafafa;color:#111}.fw-plan-tools button[aria-pressed=true]{background:#d4d4d4;border-color:#444}.fw-plan-tools label{display:flex;gap:3px;align-items:center;font-size:11px}.fw-plan-tools input[type=number]{width:62px;font-size:12px;padding:2px}.fw-plan-tools select{max-width:140px;font-size:11px;padding:3px}.fw-room-plan footer{position:absolute;bottom:0;left:0;right:0;z-index:3;display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:4px;background:#f5f5f5;border-top:1px solid #aaa;font:11px 'Segoe UI'}.fw-room-plan footer [data-plan-message]{flex:1;min-width:200px}.fw-room-plan footer input{width:65px;font-size:11px;padding:2px}.fw-plan-dimensions{position:absolute;inset:0;pointer-events:none;z-index:2}.fw-plan-dim{position:absolute;display:flex;flex-wrap:wrap;align-items:center;gap:2px;width:115px;background:#fff;border:1px solid #80a7be;color:#245d83;padding:2px;box-shadow:0 1px 3px #0001;pointer-events:auto;font-size:11px}.fw-plan-dim span{width:100%;font-size:10px}.fw-plan-dim input{width:76px;border:0;padding:0;color:#14517a;background:transparent;font-size:12px;outline-offset:1px}.fw-return-plan{position:absolute;z-index:8;left:10px;top:8px;background:#fff;border:1px solid #888;padding:5px 8px;font-size:12px}

.fw-plan-tools [hidden]{display:none!important}

.fw-plan-tools [data-opening-options] input{width:62px!important;min-width:0!important;max-width:62px}

/* Temporary dimensions are plain, editable numbers on the shared dimension line. */
.fw-plan-dim{display:block;width:auto;gap:0;padding:0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;color:#235a91;font:12px 'Segoe UI';}
.fw-plan-dim input{display:block;min-width:0!important;max-width:none;height:20px;padding:0 2px!important;border:0!important;border-radius:0;outline:none;background:#ffffffd9;color:#235a91;text-align:center;font:12px 'Segoe UI';box-sizing:content-box;cursor:text;}
.fw-plan-dim input:hover{color:#073d79;text-decoration:underline;}
.fw-plan-dim.is-editing input{background:#fff;border-bottom:1px solid #1762a2!important;text-decoration:none;}
