.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.title-field,.measure-form{margin:12px 0}.panel-button{margin-top:9px}.inspector-piece{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.finish-label{display:flex;align-items:center;gap:15px;margin:14px 0}.finish-label input{width:49px;height:38px;padding:2px;margin:0}.remove-piece{display:block;margin-top:10px;color:#8b4939;background:#fffaf3}.edit-fields{display:grid;gap:10px;margin:12px 0}.edit-fields .panel-button{margin:0}.material-swatches button{width:31px;height:31px;border:1px solid #afbba8;border-radius:50%}.material-swatches [aria-pressed=true]{outline:2px solid #516e52;outline-offset:1px}.inspector-help,.inspector-empty p,.room-directory>p:not(.studio-kicker){font-size:14px;color:#62725f}.inspector-help{margin:12px 0}.floor-stats{border-top:1px solid var(--line);margin-top:15px;padding-top:12px;display:grid;gap:5px}.floor-stats span{display:flex;justify-content:space-between}.tool-wall,.tool-trace{cursor:crosshair}.trace-controls{border:1px solid var(--line);background:#fffdf7;border-radius:8px;padding:8px 12px;margin-top:8px;font-size:13px;color:#455b48}.trace-controls form,.trace-controls>div{display:flex;align-items:end;flex-wrap:wrap;gap:8px;margin:5px 0}.trace-controls label{flex:0 1 115px;min-width:90px}.trace-controls input{margin-top:2px;padding:4px 8px}.trace-controls button{font:700 13px var(--heading);padding:7px 12px;border:1px solid #bccbb6;background:#f3f7ed;color:var(--ink);border-radius:6px}.trace-controls small{color:#597059}.corner-editor{margin:12px 0}.corner-editor summary{cursor:pointer;font-weight:700}@media(max-width:760px){.trace-controls button{min-height:40px}}.shared-wall-target{cursor:grab;outline:none}.shared-wall-target:active{cursor:grabbing}.shared-wall-highlight{stroke:transparent;stroke-width:.12}.shared-wall-target:hover .shared-wall-highlight,.shared-wall-target:focus-visible .shared-wall-highlight{stroke:#77956c}.shared-wall-target[aria-pressed=true] .shared-wall-highlight{stroke:#b46444;stroke-width:.15}.shared-inspector .floor-stats .shared-room-name{display:grid;gap:0}.shared-room-name small{color:#667367;font-weight:400}.tool-furnish [data-room]{cursor:default}.tool-furnish [data-piece]{cursor:grab}.tool-furnish [data-piece]:active{cursor:grabbing}.tool-furnish [data-opening],.tool-furnish [data-wall]{pointer-events:none}.drag-conflict{stroke:#ae4233;stroke-width:1.5px;stroke-dasharray:5 3}.conflict-tip{color:#923b2e;font-weight:700}.board-tip button{font:inherit;font-weight:700;color:#294f39;text-decoration:underline;text-underline-offset:3px;background:none;border:0;cursor:pointer}.studio-app{height:100dvh;display:flex;flex-direction:column;overflow:hidden;font:14px/1.45 var(--sans);color:#344b40;background:#fffefa;--rail-line: #d8dfd3;--panel: #fbfbf6;--accent: #284f40}.studio-app :is(button,summary,input,select):focus-visible{outline:2px solid #558568;outline-offset:1px}.studio-app button{color:inherit;background:transparent;border:1px solid transparent;border-radius:5px;font:inherit}.studio-app button:hover:not(:disabled){background:#eaf0e6}.studio-app button:disabled{opacity:.45;cursor:default}.studio-app button[aria-pressed=true]{background:#e1ebde;color:#234c37}.studio-app button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.studio-app :is(input:not([type=color],[type=checkbox]),select){font:inherit;color:var(--ink);background:#fffefa;border:1px solid #bcc9b8;border-radius:5px;padding:6px 8px;min-width:0;width:100%}.studio-app label{font-size:13px;font-weight:600}.studio-header{position:relative;z-index:3;display:flex;align-items:center;gap:10px;padding:7px 16px;border-bottom:1px solid var(--rail-line);background:var(--white)}.studio-header .brand{font-size:20px;letter-spacing:-.9px;gap:6px}.studio-header .brand svg{width:25px;height:25px}.studio-label{font:700 10px var(--sans);text-transform:uppercase;letter-spacing:.09em;color:#506e58;background:#edf1e7;padding:4px 6px;border-radius:4px}.project-control{width:clamp(120px,16vw,225px);margin-left:4px}.header-floor{max-width:160px;min-width:0}.studio-header select{font-size:13px}.settings-control{position:relative}.settings-control>button,.history-tools button{width:34px;height:34px;display:grid;place-items:center}.settings-popover{position:absolute;top:100%;left:0;width:240px;padding:16px;border-radius:8px;border:1px solid var(--rail-line);background:var(--white);box-shadow:0 5px 20px #24382820}.settings-popover h2{font-size:17px}.save-status{margin-left:auto;font-size:12px;color:#546557}.history-tools{display:flex;border-left:1px solid var(--rail-line);padding-left:8px}.history-tools button{font-size:19px}.studio-layout{flex:1;min-height:0;display:grid;grid-template-columns:190px minmax(0,1fr) 225px}.tools-panel,.properties-panel{overflow:auto;overscroll-behavior:contain;padding:14px;background:var(--panel);min-width:0}.tools-panel{border-right:1px solid var(--rail-line)}.properties-panel{border-left:1px solid var(--rail-line)}.rail-title,.inspector-nav{min-height:32px;margin:0 0 8px;border-bottom:1px solid var(--rail-line)}.rail-title{font:800 15px var(--heading)}.inspector-nav{display:flex;align-items:baseline;gap:9px;font-size:12px;color:#62725f}.inspector-nav button{font-weight:700;padding:2px 7px}.properties-panel h2{font-size:19px;margin-bottom:7px;overflow-wrap:anywhere}.tool-group{margin-top:14px;border-top:1px solid var(--rail-line);padding-top:13px}.tool-group h3,.studio-kicker,.display-options legend{font:700 10px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#65755e}.tool-group h3{margin:0 4px 6px}.tool-group h3 span{padding-left:6px}.structural-tools{display:grid;gap:2px}.structural-tools button,.library-toggle{display:flex;align-items:center;gap:10px;padding:7px 9px;text-align:left;width:100%;min-height:33px}.structural-tools button[aria-pressed=true]{box-shadow:inset 2px 0 var(--accent)}.room-directory button{display:flex;align-items:center;gap:7px;text-align:left;width:100%;padding:5px}.room-directory small{margin-left:auto}.room-directory i{width:9px;height:9px;border:1px solid #879580;border-radius:2px;flex:none}.room-directory small{white-space:nowrap}.overview-area{display:grid;margin:14px 0;padding:12px 0;border-block:1px solid var(--rail-line)}.overview-area strong{font:800 28px var(--heading);color:var(--ink)}.overview-area small{font-size:15px}.overview-area span{font-size:12px}.display-options{margin:16px 0 0;border:0;border-top:1px solid var(--rail-line);padding:10px 0 0}.display-options label{display:flex;gap:8px;align-items:center;padding:4px 0}.display-options input{accent-color:var(--accent)}.studio-app .panel-button,.studio-app .remove-piece,.trace-controls button{border:1px solid #bac8b6;padding:6px 10px;background:#f2f5ed}.studio-app .remove-piece{color:#8a493b;background:#fffaf5}.studio-app .trace-controls{background:#eff3e9;padding:9px}.trace-controls label{flex:1 0 57px;min-width:0}.studio-app .material-swatches button{border:1px solid #89977f;border-radius:50%}.studio-canvas{display:flex;flex-direction:column;min-width:0;min-height:0}.house-board{position:relative;flex:1;min-height:0;overflow:hidden;background:#f5f6ef}.house-svg,.metric-rulers{position:absolute;inset:0;width:100%;height:100%}.house-svg{touch-action:none;-webkit-user-select:none;user-select:none}.metric-rulers{pointer-events:none}.metric-rulers rect{fill:#fafbf5}.metric-rulers text{font:10px var(--sans);font-variant-numeric:tabular-nums;text-anchor:middle;fill:#516355}.metric-rulers path{stroke:#99a693}.tool-select [data-room],.tool-pan{cursor:grab}.tool-draw,.tool-door,.tool-window{cursor:crosshair}.empty-sheet{position:absolute;pointer-events:none;inset:0;display:flex;flex-direction:column;gap:8px;justify-content:center;align-items:center;text-align:center;padding:0 28px}.empty-sheet strong{color:var(--ink);font:800 clamp(19px,2vw,27px) var(--heading)}.empty-sheet span:not(.studio-kicker){color:#516455;max-width:38ch}.empty-sheet button{pointer-events:auto;text-decoration:underline;text-underline-offset:3px;padding:4px 8px}.viewport-tools{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:2px;border:1px solid var(--rail-line);background:#fffffa;border-radius:7px;padding:3px;box-shadow:0 2px 8px #29382712}.viewport-tools span{min-width:39px;text-align:center;font-size:12px}.viewport-tools button{min-width:28px;padding:4px 7px}.sheet-status{display:flex;align-items:center;gap:10px;padding:5px 9px;min-height:44px;border-top:1px solid var(--rail-line);background:#fffefa}.board-controls{display:flex;flex:none;gap:3px;flex-wrap:wrap}.board-controls button{font-size:12px;padding:5px 7px}.studio-app .next-step{background:var(--accent);color:#fff}.studio-app .next-step:hover{background:#3d624a}.board-tip{color:#556656;font-size:12px}.studio-message:not(:empty){position:fixed;z-index:4;bottom:54px;left:50%;transform:translate(-50%);padding:8px 12px;border-radius:6px;background:var(--ink);color:#fff;max-width:min(500px,90vw);width:max-content;pointer-events:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.studio-mobile-tabs{display:none}@media(min-width:681px)and (max-width:1000px){.studio-layout{grid-template-columns:176px minmax(0,1fr)}.studio-mobile-tabs{display:flex;border-bottom:1px solid var(--rail-line);padding:3px 9px;gap:6px}.studio-layout[data-panel=tools] .properties-panel,.studio-layout[data-panel=properties] .tools-panel{display:none}.properties-panel{grid-column:1;grid-row:1;border-right:1px solid var(--rail-line);border-left:0}.studio-canvas{grid-column:2;grid-row:1}}@media(max-width:680px){.studio-header{display:grid;grid-template-columns:auto minmax(80px,1fr) minmax(88px,.8fr) auto;gap:2px 5px;padding:4px 8px}.studio-header .brand span,.studio-label{display:none}.project-control,.header-floor{width:100%;margin:0;max-width:none}.studio-header select{height:38px}.settings-control{justify-self:end}.settings-popover{left:auto;right:0}.save-status{grid-column:1/4;grid-row:2;margin:0;font-size:11px}.history-tools{grid-column:4;grid-row:2;border:0;padding:0}.history-tools button{width:34px;height:28px}.studio-mobile-tabs{order:1;display:flex;gap:8px;justify-content:center;padding:3px 8px max(3px,env(safe-area-inset-bottom));border-top:1px solid var(--rail-line)}.studio-mobile-tabs button{min-height:44px;flex:1}.studio-layout{display:flex;flex-direction:column}.studio-canvas{order:-1;flex:1}.tools-panel,.properties-panel{display:none;flex:0 0 min(32dvh,270px);padding:10px 15px;border:0;border-top:1px solid var(--rail-line)}.studio-layout[data-open=true][data-panel=tools] .tools-panel,.studio-layout[data-open=true][data-panel=properties] .properties-panel{display:block}.sheet-status{display:block;padding:4px 8px}.board-controls{float:left;margin-right:7px}.board-tip{min-height:30px}.structural-tools button,.library-toggle,.room-directory button{min-height:44px}.viewport-tools{right:6px;bottom:6px}.viewport-tools button{min-height:36px;min-width:34px}.studio-message:not(:empty){top:80px;bottom:auto}}.metric-rulers rect{pointer-events:auto}@media(min-width:681px)and (max-width:1000px){.studio-header .brand{flex-shrink:0}.studio-header .save-status{white-space:nowrap;font-size:11px}}.plan-scale{position:absolute;left:28px;bottom:14px;padding:3px 6px 5px;border-radius:3px;background:#fafbf5eb;color:#3e5747;pointer-events:none;font:600 10px/1.4 var(--sans);font-variant-numeric:tabular-nums}.scale-labels{display:flex;justify-content:space-between;gap:4px}.scale-line{height:5px;border:1px solid currentColor;background:linear-gradient(to right,currentColor 50%,#fffefa 50%)}.object-menu{position:fixed;z-index:12;width:max-content;min-width:185px;max-width:calc(100vw - 12px);max-height:calc(100dvh - 12px);overflow:auto;padding:5px;color:var(--ink);background:var(--white);border:1px solid #c4cfc0;border-radius:8px;box-shadow:0 5px 20px #26392929}.object-menu-title{display:block;padding:4px 8px;font:700 12px var(--sans);overflow-wrap:anywhere;color:#5e725e}.studio-app .object-menu button{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:6px 8px}.object-menu kbd{font:11px var(--sans);color:#63725f}.studio-app .object-menu .danger{color:#8c4235;border-top:1px solid var(--rail-line)}@media(max-width:680px){.studio-app .object-menu button{min-height:42px}}.selection-box{stroke:#356ba1;fill:#4485c71c;stroke-width:1.3px}.selection-box.crossing{stroke:#33805a;fill:#43a56a21;stroke-dasharray:5 3}.set-highlights polygon,.set-highlights polyline{stroke:#2b7653;stroke-width:2px;fill:#478d6919;stroke-linejoin:round}.set-highlights polyline{stroke-width:3px;fill:none}.tool-select [data-boundary]{cursor:pointer}.batch-inspector ul{padding:0;list-style:none}.batch-inspector li{display:flex;justify-content:space-between;padding:4px 0}.batch-inspector p,.boundary-inspector p{margin:8px 0;color:#526957}.batch-inspector button,.boundary-inspector button{display:block}.set-bounds{fill:none;stroke:#51775d;stroke-width:1px;stroke-dasharray:5 4}.house-svg:focus{outline:none}.house-svg:focus-visible{outline:1px solid #60816b;outline-offset:-1px}.selection-help{margin:5px 3px 8px;color:#576a58;font-size:12px}.selection-help summary{cursor:pointer}.selection-help p{margin-top:6px}.house-svg [data-boundary]{cursor:move}.catalog-filters{display:grid;gap:6px;margin:8px 0}.catalog-filters :is(input,select){min-width:0;width:100%;padding:7px;border:1px solid var(--line,#c5cec0);border-radius:5px;background:#fff;color:inherit;font:inherit}.studio-app .library-toggle{display:grid;grid-template-columns:16px minmax(0,1fr) 12px;border:1px solid var(--accent);font-weight:700;gap:6px;padding-inline:7px}.studio-app .library-toggle strong{font:700 12px/1.2 var(--sans);white-space:nowrap}.studio-app .library-toggle[aria-expanded=true],.studio-app .library-toggle[aria-expanded=true]:hover:not(:disabled){color:#fff;background:var(--accent)}.library-shortcuts,.library-chips{display:flex;flex-wrap:wrap;gap:5px}.library-shortcuts{margin-top:8px}.studio-app :is(.library-chips,.library-shortcuts) button{border:1px solid var(--rail-line);background:#fffefa;border-radius:20px;font-size:12px;padding:4px 9px}.studio-app .library-chips button[aria-pressed=true],.studio-app .library-chips button[aria-pressed=true]:hover:not(:disabled){color:#fff;background:var(--accent);border-color:var(--accent)}.symbol-library{min-width:0;min-height:0;display:flex;flex-direction:column;background:#fffefa;border-right:1px solid var(--rail-line);overflow:hidden}.symbol-library-head{display:flex;align-items:flex-start;gap:8px;padding:15px 14px 5px}.symbol-library-head h2{margin:0;font:800 16px/1.3 var(--heading);outline:none}.symbol-library-head p{margin:3px 0;font-size:12px;color:#637368}.symbol-library-head button{width:28px;height:28px;font-size:21px;line-height:1}.library-view{margin:2px 0 0 auto;padding:2px 7px;border-radius:5px;border:1px solid var(--rail-line);font-size:10px;font-weight:700}.symbol-library-filters{padding:8px 14px 12px;border-bottom:1px solid var(--rail-line)}.library-search{position:relative;display:block;margin-bottom:10px}.library-search svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;position:absolute;left:9px;top:50%;transform:translateY(-50%)}.studio-app .library-search input[type=search]{padding:8px 10px 8px 31px}.symbol-results{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px}.studio-app .symbol-card{display:flex;flex-direction:column;align-items:center;padding:8px 5px;gap:4px;border:1px solid var(--rail-line);background:#fafaf5;border-radius:8px}.studio-app .symbol-card[aria-pressed=true]{border-color:var(--accent);background:#eaf1e5}.symbol-card strong{font-size:12px;line-height:1.25}.symbol-card small{color:#657469;font:10px/1.4 ui-monospace,monospace}.symbol-preview{--symbol-size:82px;background:#fff;width:100%;height:87px;display:grid;place-items:center;border-radius:5px}.studio-app .symbol-card svg{width:revert;height:revert;max-width:100%}.symbol-empty{grid-column:1/-1;padding:20px 5px}.symbol-empty p,.symbol-library-footer{font-size:12px}.symbol-library-footer{border-top:1px solid var(--rail-line);padding:9px 14px;display:flex;gap:5px;align-items:center;flex-wrap:wrap}.symbol-library-footer button,.symbol-empty button{text-decoration:underline}.placing-symbol .house-svg,.placing-symbol .house-svg [data-piece]{cursor:crosshair}@media(min-width:1001px){.studio-layout[data-library=true]{grid-template-columns:190px clamp(265px,21vw,340px) minmax(0,1fr) 225px}}@media(min-width:681px)and (max-width:1000px){.studio-layout[data-library=true]{grid-template-columns:clamp(228px,31vw,300px) minmax(0,1fr)}.studio-layout[data-library=true] :is(.tools-panel,.properties-panel){display:none}.symbol-library{grid-area:1/1}}@media(max-width:680px){.studio-layout[data-library=true] :is(.tools-panel,.properties-panel){display:none}.symbol-library{flex:0 0 min(56dvh,455px);border-top:1px solid var(--rail-line)}.symbol-library-head{padding:8px 12px 0}.symbol-library-filters{padding:4px 12px 7px}.library-search{margin-bottom:5px}.symbol-results{padding:8px 12px}.symbol-preview{height:64px;--symbol-size:60px}}@media(max-width:680px)and (max-height:620px){.symbol-library{flex-basis:62dvh}.library-chips{flex-wrap:nowrap;overflow:auto}.library-chips button{white-space:nowrap}}.structure-palette{margin-top:2px}.structure-palette summary{display:grid;grid-template-columns:28px minmax(0,1fr) 9px;align-items:center;min-height:33px;padding:7px 9px;border:1px solid transparent;border-radius:5px;cursor:pointer;list-style:none}.structure-palette summary::-webkit-details-marker{display:none}.structure-palette summary:hover{background:#eaf0e6}.structure-palette summary svg{flex:0 0 18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.structure-palette .family-name,.structure-palette .family-selection{font-size:13px}.structure-palette .family-chevron{width:6px;height:6px;margin-left:auto;border:solid #718175;border-width:0 1.5px 1.5px 0;transform:rotate(-45deg)}.structure-palette details[open] .family-chevron{transform:rotate(45deg)}.structure-palette .family-selection,.structure-palette details[data-active=true]:not([open]) .family-name{display:none}.structure-palette details[data-active=true]:not([open]) .family-selection{display:inline}.structure-palette details[data-active=true]:not([open]) summary{background:#e1ebde;box-shadow:inset 2px 0 var(--accent)}.structure-variants{margin:2px 0 5px 18px;padding-left:8px;border-left:1px solid var(--rail-line)}.structure-variants button{min-height:30px;padding-block:4px;font-size:13px}@media(max-width:680px){.structure-palette summary,.structure-variants button{min-height:44px}}.tool-select [data-structure]{cursor:move}:is(.tool-furnish,.tool-door,.tool-window) .house-svg [data-structure]{pointer-events:none}.house-svg [data-structure]>g>path{vector-effect:non-scaling-stroke;stroke-width:1.25px}.house-svg [data-annotation]{cursor:move}:is(.tool-furnish,.tool-door,.tool-window) .house-svg [data-annotation]{pointer-events:none}.edit-fields textarea{width:100%;resize:vertical;font:inherit;color:inherit}.view-stage{position:relative;display:flex;flex:1;min-height:0;min-width:0}.view-stage>.studio-layout{width:100%}.studio-app[data-mode="3d"] .studio-layout{visibility:hidden}.studio-app[data-mode="3d"] .studio-mobile-tabs{display:none}.view-switch{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--rail-line);border-radius:8px;background:#fffef9;padding:3px}.view-switch button{min-width:40px;padding:3px 8px;font-weight:700}.studio-app .view-switch button[aria-pressed=true]{background:var(--accent);color:#fff}.model-loading{position:absolute;inset:0;display:grid;place-items:center;background:#f3f3eb}@media(max-width:680px){.view-switch{grid-row:2;grid-column:3;justify-self:end}.studio-header .save-status{grid-column:1/3}}.house-board{background:#f8f8f4}.symbol-preview{background:#dedcd7;height:auto;aspect-ratio:376/264;overflow:hidden;border-radius:2px}.symbol-preview img{width:100%;height:100%;object-fit:contain;display:block}.studio-app .symbol-card{border-radius:4px;background:#faf9f5;padding:4px 4px 8px}
