/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--paper:lab(96.7738% .623912 3.37166);--surface:lab(98.8548% .410289 2.24417);--surface-muted:lab(93.9942% .770062 4.12586);--ink:lab(13.0456% .583559 5.48418);--muted:lab(44.3464% .880003 4.52849);--line:lab(83.7923% .999153 5.26392);--accent:lab(46.8057% 37.27 42.7423);--accent-soft:lab(91.7115% 8.06719 10.1439);--warning:lab(52.1498% 21.0584 59.0793);--success:lab(48.9341% -25.9309 19.2544)}*{box-sizing:border-box}html,body{height:100%;min-height:0;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans), system-ui, sans-serif}button,input{font:inherit}button{color:inherit}.studio-app{background:var(--paper);grid-template-rows:64px minmax(0,1fr);height:100dvh;min-height:0;display:grid;overflow:hidden}.topbar{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:250px minmax(0,1fr) auto;align-items:center;gap:20px;padding:0 18px;display:grid}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in oklch, var(--surface) 94%, transparent)}}.wordmark{letter-spacing:-.02em;align-items:center;gap:10px;font-weight:690;display:flex}.wordmark-mark{background:var(--ink);width:31px;height:31px;color:var(--paper);border-radius:9px;place-items:center;font-size:14px;display:grid}.project-title{justify-content:center;align-items:baseline;gap:10px;min-width:0;display:flex}.project-title span{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:620;overflow:hidden}.project-title small{color:var(--warning);font-size:11px;font-weight:650}.top-actions{align-items:center;gap:10px;display:flex}.segmented{border:1px solid var(--line);background:var(--surface-muted);border-radius:10px;padding:3px;display:flex}.segmented button,.quiet-button{cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:34px;padding:0 13px;font-size:12px;font-weight:640}.segmented button.is-active{background:var(--surface);box-shadow:0 1px 3px lab(13.0456% .583559 5.48418/.12)}.quiet-button{border:1px solid var(--line);background:var(--surface)}.studio-layout{grid-template-columns:244px minmax(0,1fr) 300px;min-height:0;display:grid;overflow:hidden}.source-panel,.inspector-panel{background:var(--surface);min-height:0;padding:17px;overflow:auto}.source-panel{border-right:1px solid var(--line)}.inspector-panel{border-left:1px solid var(--line)}.panel-heading{justify-content:space-between;align-items:center;min-height:30px;margin-bottom:14px;display:flex}.panel-heading p{letter-spacing:.02em;margin:0;font-size:12px;font-weight:700}.panel-heading>span{color:var(--muted);font-size:11px}.panel-heading button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:18px}.upload-tile{border:1px solid var(--line);cursor:pointer;background:var(--paper);border-radius:13px;grid-template-rows:1fr 1fr;grid-template-columns:52px minmax(0,1fr);align-items:center;column-gap:11px;padding:12px;display:grid}.upload-tile input{opacity:0;pointer-events:none;position:absolute}.upload-tile strong{text-overflow:ellipsis;white-space:nowrap;align-self:end;font-size:12px;overflow:hidden}.upload-tile small{color:var(--accent);align-self:start;font-size:11px;font-weight:640}.scan-sheet{border:1px solid var(--line);background:var(--surface);flex-direction:column;grid-row:1/3;gap:6px;width:45px;height:57px;padding:12px 8px;display:flex;transform:rotate(-2deg);box-shadow:0 4px 10px lab(13.0456% .583559 5.48418/.08)}.scan-sheet i{background:lab(61.7531% 1.09693 5.65848);height:2px;display:block}.scan-sheet i:nth-child(2){width:72%}.scan-sheet.has-image{background-position:50%;background-repeat:no-repeat;background-size:cover;padding:0}.source-status{color:var(--muted);gap:9px;margin:16px 2px;font-size:11px;display:grid}.status-dot{border-radius:999px;width:7px;height:7px;margin-right:7px;display:inline-block}.status-dot--good{background:var(--success)}.status-dot--warn{background:var(--warning)}.layer-list{border-top:1px solid var(--line);gap:3px;padding-top:10px;display:grid}.layer-row{cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;min-height:40px;padding:0 9px;font-size:11px;display:flex}.layer-row small{color:var(--muted)}.layer-row.is-active{background:var(--surface-muted)}.layer-stat{cursor:default}.layer-missing{color:var(--muted);font-size:9px;font-weight:650}.workspace{background:var(--surface-muted);grid-template-rows:56px minmax(0,1fr);width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden;container:plan-workspace/inline-size}.workspace.has-variant-tabs{grid-template-rows:56px 44px minmax(0,1fr)}.workspace.has-variant-tabs.has-camera-panel{grid-template-rows:56px minmax(188px,auto) 44px minmax(0,1fr)}.workspace-toolbar{scrollbar-width:none;border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:8px;padding:7px 12px;display:flex;overflow-x:auto}.workspace-toolbar::-webkit-scrollbar{display:none}.workspace-toolbar>span{flex:1}.workspace-toolbar button{cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:40px;padding:0 12px;font-size:12px;font-weight:640;transition:background-color .18s cubic-bezier(.16,1,.3,1),color .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1)}.workspace-toolbar button:hover:not(:disabled){background:var(--surface-muted)}.workspace-toolbar button.is-active{background:var(--accent-soft);color:var(--accent)}.canvas-wrap{border:1px solid var(--line);border-radius:13px;min-width:0;min-height:0;margin:12px;position:relative;overflow:hidden;box-shadow:0 8px 24px lab(13.0456% .583559 5.48418/.06)}.plan-canvas{width:100%;height:100%;min-height:470px;display:block}.confidence-pill{z-index:2;border:1px solid var(--line);background:var(--surface);border-radius:999px;align-items:center;gap:7px;min-height:29px;padding:0 10px;display:flex;position:absolute;top:12px;left:12px}@supports (color:color-mix(in lab, red, red)){.confidence-pill{background:color-mix(in oklch, var(--surface) 94%, transparent)}}.confidence-pill{color:var(--muted);font-size:10px;font-weight:620}.confidence-pill span{background:var(--warning);border-radius:50%;width:7px;height:7px}.canvas-controls{z-index:7;border:1px solid var(--line);background:var(--surface);border-radius:11px;align-items:center;min-height:42px;padding:3px;display:flex;position:absolute;bottom:12px;right:12px}@supports (color:color-mix(in lab, red, red)){.canvas-controls{background:color-mix(in oklch, var(--surface) 96%, transparent)}}.canvas-controls{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 22px lab(13.0456% .583559 5.48418/.12)}.canvas-controls button{cursor:pointer;background:0 0;border:0;border-radius:8px;min-width:38px;height:36px;padding:0 8px}.canvas-controls button:hover{background:var(--surface-muted)}.canvas-controls>i{background:var(--line);width:1px;height:22px;margin:0 3px}.canvas-controls .zoom-readout{text-align:center;min-width:46px;color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.canvas-controls .rotation-readout{min-width:43px;color:var(--accent);font-variant-numeric:tabular-nums;font-size:10px;font-weight:720}.canvas-controls .fit-control{min-width:42px;color:var(--ink);font-size:10px;font-weight:700}.ai-composer{z-index:4;background:var(--surface);border:1px solid lab(75.6222% 3.56424 8.86642);border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;width:min(720px,100% - 52px);min-height:64px;padding:9px 10px 9px 14px;display:grid;position:absolute;bottom:70px;left:50%;transform:translate(-50%);box-shadow:0 18px 38px lab(13.0456% .583559 5.48418/.14)}.selection-context{border-right:1px solid var(--line);min-width:108px;padding-right:13px;display:grid}.selection-context span{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:9px;font-weight:680}.selection-context strong{font-size:11px}.ai-composer input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}.ai-composer input::placeholder{color:lab(55.9471% .867128 4.51932)}.ai-composer>button{background:var(--ink);min-height:42px;color:var(--paper);cursor:pointer;border:0;border-radius:11px;padding:0 16px;font-size:11px;font-weight:680}.verification-row{background:var(--accent-soft);border-radius:10px;justify-content:space-between;padding:11px;font-size:11px;display:flex}.verification-row strong{color:var(--accent)}.field-grid{grid-template-columns:1fr 1fr;gap:9px;margin-top:18px;display:grid}.field-grid label{gap:6px;display:grid}.field-grid span,.finish-section p{color:var(--muted);margin:0;font-size:10px;font-weight:620}.field-grid input{border:1px solid var(--line);background:var(--paper);width:100%;height:38px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:12px}.finish-section{border-top:1px solid var(--line);margin-top:22px;padding-top:17px}.finish-section>div:first-child{justify-content:space-between;align-items:center;display:flex}.finish-section>div:first-child span{color:var(--muted);font-size:10px}.swatches{gap:8px;margin-top:12px;display:flex}.swatches button{cursor:pointer;border:2px solid #0000;border-radius:8px;width:31px;height:31px;box-shadow:inset 0 0 0 1px lab(18.8249% .646725 3.82054/.13)}.swatches button.is-active{border-color:var(--accent);outline:2px solid var(--surface);outline-offset:-4px}.assumption-box{background:lab(95.4059% 2.4237 10.5204);border:1px solid lab(82.6469% 6.21653 23.0561);border-radius:12px;margin-top:22px;padding:13px}.assumption-heading{align-items:center;gap:7px;display:flex}.assumption-heading span{background:var(--warning);width:17px;height:17px;color:var(--surface);border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:grid}.assumption-heading strong{font-size:11px}.assumption-box p{color:lab(35.0476% 2.91649 9.36919);margin:9px 0 11px;font-size:10px;line-height:1.5}.assumption-box button{color:lab(35.8493% 20.293 53.7877);cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:700}.suggestion-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;width:100%;min-height:42px;margin-top:18px;font-size:11px;font-weight:680}:is(button:focus-visible,input:focus-visible,label:focus-within){outline:3px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){:is(button:focus-visible,input:focus-visible,label:focus-within){outline:3px solid color-mix(in oklch, var(--accent) 55%, transparent)}}:is(button:focus-visible,input:focus-visible,label:focus-within){outline-offset:2px}button:active{transform:translateY(1px)}@media (max-width:1000px){.studio-layout{grid-template-columns:190px minmax(0,1fr)}.inspector-panel{display:none}.inspector-panel.is-contextual{z-index:18;border:1px solid var(--line);border-radius:13px;width:300px;display:block;position:fixed;top:76px;bottom:150px;right:12px;box-shadow:0 20px 55px lab(7.24963% .817783 3.87828/.2)}.topbar{grid-template-columns:190px minmax(0,1fr) auto}}@media (max-width:720px){.studio-app{grid-template-rows:58px minmax(0,1fr)}.topbar{grid-template-columns:1fr auto;padding:0 12px}.project-title,.quiet-button{display:none}.studio-layout{grid-template-columns:1fr}.source-panel{display:none}.inspector-panel.is-contextual{width:min(320px,100vw - 18px);top:68px;bottom:150px;right:9px}.workspace-toolbar{overflow-x:auto}.canvas-wrap{margin:9px}.plan-canvas{min-height:540px}.ai-composer{grid-template-columns:1fr auto;width:calc(100% - 24px);bottom:70px}.selection-context{display:none}.ai-composer>button{padding:0 12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}body{overflow:hidden}button{justify-content:center;align-items:center;gap:6px;display:inline-flex}button:disabled{opacity:.38;cursor:not-allowed;transform:none}.project-title{cursor:pointer;background:0 0;border:0}.project-title:hover span{color:var(--accent)}.quiet-button{align-items:center;gap:6px;display:inline-flex}.icon-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:9px;width:36px;height:36px;padding:0}.undo-button{background:0 0;border-color:#0000}.segmented button{align-items:center;gap:5px;display:inline-flex}.upload-tile.is-working{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.upload-tile.is-working{border-color:color-mix(in oklch, var(--accent) 55%, var(--line))}}.upload-tile.is-working{background:var(--accent-soft)}.upload-tile.is-working .scan-sheet{animation:1.4s ease-in-out infinite scan-float}@keyframes scan-float{50%{transform:rotate(1deg)translateY(-3px)}}.layer-row>span{align-items:center;gap:7px;display:inline-flex}.opacity-control{color:var(--muted);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px 10px;font-size:10px;display:grid}.opacity-control input{width:100%;accent-color:var(--accent)}.opacity-control small{text-align:right;width:29px}.privacy-note{border:1px solid var(--line);color:var(--muted);background:var(--paper);border-radius:11px;grid-template-columns:auto 1fr;align-items:start;gap:8px;margin-top:18px;padding:12px;display:grid}.privacy-note svg{color:var(--success);margin-top:1px}.privacy-note p{margin:0;font-size:9px;line-height:1.55}.privacy-note strong{color:var(--ink);font-size:10px}.workspace-toolbar button{align-items:center;gap:7px;display:inline-flex}.tool-group,.view-tools{flex:none;align-items:center;gap:4px;display:flex}.tool-group{border:1px solid var(--line);background:var(--paper);border-radius:11px;padding:3px}.tool-group button{min-height:44px}.split-tool{border-radius:9px;align-items:stretch;display:flex}.split-tool.is-active{background:var(--accent-soft);color:var(--accent)}.tool-group .split-tool>button{border-radius:0}.tool-group .split-tool>.split-tool-main{border-radius:9px 0 0 9px;padding-right:8px}.tool-group .split-tool>.split-tool-menu{border-left:1px solid;justify-content:center;width:28px;padding:0}@supports (color:color-mix(in lab, red, red)){.tool-group .split-tool>.split-tool-menu{border-left:1px solid color-mix(in oklch, currentColor 14%, transparent)}}.tool-group .split-tool>.split-tool-menu{border-radius:0 9px 9px 0}.split-tool.is-active>button{color:var(--accent)}.view-tools{gap:2px}.scene-mode-tools{border:1px solid var(--line);background:var(--paper);border-radius:11px;padding:3px}.workspace-toolbar .scene-mode-tools button{min-height:44px;padding-inline:10px}.workspace-toolbar .scene-mode-tools button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.workspace-toolbar kbd{border:1px solid;min-width:18px;padding:2px 4px}@supports (color:color-mix(in lab, red, red)){.workspace-toolbar kbd{border:1px solid color-mix(in oklch, currentColor 18%, transparent)}}.workspace-toolbar kbd{color:var(--muted);background:var(--surface);border-radius:5px}@supports (color:color-mix(in lab, red, red)){.workspace-toolbar kbd{background:color-mix(in oklch, var(--surface) 70%, transparent)}}.workspace-toolbar kbd{font-family:inherit;font-size:9px;line-height:1}.workspace-toolbar .is-active kbd{color:var(--accent)}.canvas-wrap{background:#f8f5ef}.plan-svg{touch-action:none;-webkit-user-select:none;user-select:none;outline:0;width:100%;height:100%;min-height:0;display:block;position:absolute;inset:0}.plan-svg:focus-visible{box-shadow:inset 0 0 0 3px var(--accent)}@supports (color:color-mix(in lab, red, red)){.plan-svg:focus-visible{box-shadow:inset 0 0 0 3px color-mix(in oklch, var(--accent) 55%, transparent)}}.plan-svg--wall,.plan-svg--kitchen,.plan-svg--bathroom,.plan-svg--camera{cursor:crosshair}.plan-svg.is-dragging{cursor:grabbing}.plan-svg.is-pan-ready,.plan-svg.is-pan-ready *{cursor:grab!important}.plan-svg.is-panning,.plan-svg.is-panning *{cursor:grabbing!important}.plan-svg.is-rotating-item{cursor:grabbing}.source-overlay-image{pointer-events:none;mix-blend-mode:multiply}.room-group,.wall-group,.plan-item,.opening-group{cursor:pointer}.room-label{fill:#716e67;text-anchor:middle;dominant-baseline:middle;pointer-events:none;letter-spacing:.01em;font-weight:620}.wall-hit{stroke:#0000;cursor:grab;stroke-width:14px;vector-effect:non-scaling-stroke;pointer-events:stroke}@media (pointer:coarse){.wall-hit{stroke-width:24px}}.wall-group:active .wall-hit{cursor:grabbing}.plan-svg--wall .wall-group,.plan-svg--wall .wall-group *,.plan-svg--wall .opening-group,.plan-svg--wall .opening-group *,.plan-svg--wall .plan-item,.plan-svg--wall .plan-item *,.plan-svg--wall .room-group,.plan-svg--wall .room-group *,.plan-svg--camera .wall-group,.plan-svg--camera .wall-group *,.plan-svg--camera .opening-group,.plan-svg--camera .opening-group *,.plan-svg--camera .plan-item,.plan-svg--camera .plan-item *,.plan-svg--camera .room-group,.plan-svg--camera .room-group *,.plan-svg--camera .camera-view-control,.plan-svg--camera .camera-view-control *{pointer-events:none!important}.camera-fov-cone path{fill:#388b9a2b;stroke:#388b9a;stroke-width:2.5px;vector-effect:non-scaling-stroke}.camera-fov-cone line{stroke:#22697799;stroke-width:1.5px;stroke-dasharray:7 7;vector-effect:non-scaling-stroke}.camera-fov-cone circle{fill:#fffdf9;stroke:#388b9a;stroke-width:2.5px;vector-effect:non-scaling-stroke}.camera-fov-cone.is-secondary{opacity:.34}.camera-fov-cone.is-secondary path{fill:#388b9a14;stroke-width:1.5px}.camera-view-control{color:#327c89}.camera-view-control>g[role=button]{cursor:grab;outline:none}.camera-view-control>g[role=button]:focus-visible .camera-view-body{stroke:#1c6673;stroke-width:5px;filter:drop-shadow(0 0 5px #327c898c)}.camera-target-hit:focus-visible+.camera-target-knob{stroke:#1c6673;stroke-width:5px;filter:drop-shadow(0 0 5px #327c898c)}.camera-view-control>g[role=button]:active{cursor:grabbing}.camera-view-hit,.camera-target-hit{fill:#0000;pointer-events:all}.camera-view-body{fill:#fffdf9;stroke:currentColor;stroke-width:3px;vector-effect:non-scaling-stroke}.camera-view-lens{fill:#d8f0f3;stroke:currentColor;stroke-width:3px;vector-effect:non-scaling-stroke}.camera-view-control.is-selected{color:#b85f3b}.camera-view-control.is-selected .camera-view-body{fill:#fff4ee;filter:drop-shadow(0 3px 4px #32231c33)}.camera-view-number{fill:currentColor}.camera-view-number-text{fill:#fff;text-anchor:middle;pointer-events:none;font-weight:760}.camera-target-control line{stroke:currentColor;stroke-width:2px;stroke-dasharray:8 7;vector-effect:non-scaling-stroke;pointer-events:none}.camera-target-knob{fill:#fffdf9;stroke:currentColor;stroke-width:3px;vector-effect:non-scaling-stroke;pointer-events:none}.camera-target-hit{cursor:crosshair}.wall-stroke{transition:stroke .16s cubic-bezier(.16,1,.3,1),opacity .16s cubic-bezier(.16,1,.3,1)}.wall-group:hover .wall-stroke{stroke:var(--accent)}.wall-group:focus-visible{outline:none}.wall-group:focus-visible .wall-stroke{stroke:var(--accent);filter:drop-shadow(0 0 8px var(--accent))}@supports (color:color-mix(in lab, red, red)){.wall-group:focus-visible .wall-stroke{filter:drop-shadow(0 0 8px color-mix(in oklch, var(--accent) 45%, transparent))}}.wall-selection{stroke:var(--accent);opacity:.34;stroke-linecap:round;pointer-events:none}.wall-handle-hit{fill:#0000;cursor:move}.wall-handle{fill:var(--surface);stroke:var(--accent);stroke-width:3px;vector-effect:non-scaling-stroke;pointer-events:none;filter:drop-shadow(0 2px 3px lab(13.0456% .583559 5.48418/.18))}.plan-item{cursor:grab}.plan-item:active{cursor:grabbing}.plan-item.is-locked{cursor:not-allowed}.plan-item-shape{stroke:#41433f94;stroke-width:22px}.plan-item-shape--ghost{opacity:.58;stroke:#b85f3b;stroke-width:34px;stroke-dasharray:90 55}.plan-item--ghost{pointer-events:none}.plan-item--blocked .plan-item-shape--ghost{opacity:.38;stroke:lab(39.3055% 51.3899 51.56);stroke-width:42px;stroke-dasharray:70 45}.plan-item--blocked .item-label{fill:lab(32.6306% 42.1537 40.3342);paint-order:stroke;stroke:var(--surface)}@supports (color:color-mix(in lab, red, red)){.plan-item--blocked .item-label{stroke:color-mix(in oklch, var(--surface) 86%, transparent)}}.plan-item--blocked .item-label{stroke-width:16px;stroke-linejoin:round}.item-label{fill:#454640;text-anchor:middle;pointer-events:none;font-weight:650}.selection-outline{fill:none;stroke:#b85f3b;stroke-width:42px;stroke-dasharray:110 55;pointer-events:none}.item-rotation-connector{stroke:var(--accent)}@supports (color:color-mix(in lab, red, red)){.item-rotation-connector{stroke:color-mix(in oklch, var(--accent) 72%, var(--ink))}}.item-rotation-connector{stroke-width:2px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;pointer-events:none}.item-rotation-hit{fill:#0000;cursor:grab;pointer-events:all;outline:none}.item-rotation-hit:active{cursor:grabbing}.item-rotation-knob{fill:var(--surface);stroke:var(--accent);stroke-width:2.5px;vector-effect:non-scaling-stroke;pointer-events:none;filter:drop-shadow(0 2px 4px lab(13.0456% .583559 5.48418/.2));transition:fill .16s cubic-bezier(.16,1,.3,1),stroke-width .16s cubic-bezier(.16,1,.3,1)}.item-rotation-icon{fill:none;stroke:var(--accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.item-rotation-handle:hover .item-rotation-knob,.item-rotation-handle.is-active .item-rotation-knob{fill:var(--accent-soft);stroke-width:3px}.item-rotation-handle:has(.item-rotation-hit:focus-visible) .item-rotation-knob{stroke:var(--accent)}@supports (color:color-mix(in lab, red, red)){.item-rotation-handle:has(.item-rotation-hit:focus-visible) .item-rotation-knob{stroke:color-mix(in oklch, var(--accent) 72%, var(--ink))}}.item-rotation-handle:has(.item-rotation-hit:focus-visible) .item-rotation-knob{stroke-width:4px;filter:drop-shadow(0 0 7px var(--accent))}@supports (color:color-mix(in lab, red, red)){.item-rotation-handle:has(.item-rotation-hit:focus-visible) .item-rotation-knob{filter:drop-shadow(0 0 7px color-mix(in oklch, var(--accent) 52%, transparent))}}.item-rotation-angle rect{fill:var(--ink);stroke:var(--surface)}@supports (color:color-mix(in lab, red, red)){.item-rotation-angle rect{stroke:color-mix(in oklch, var(--surface) 80%, transparent)}}.item-rotation-angle rect{stroke-width:1px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 3px 8px lab(13.0456% .583559 5.48418/.18))}.item-rotation-angle text{fill:var(--surface);text-anchor:middle;font-variant-numeric:tabular-nums;font-weight:750}.opening-group{cursor:grab;outline:none}.opening-group:active{cursor:grabbing}.opening-group:focus-visible{filter:drop-shadow(0 0 7px var(--accent))}@supports (color:color-mix(in lab, red, red)){.opening-group:focus-visible{filter:drop-shadow(0 0 7px color-mix(in oklch, var(--accent) 52%, transparent))}}.opening-group.is-selected{filter:drop-shadow(0 2px 4px lab(13.0456% .583559 5.48418/.14))}.planning-zone-label{paint-order:stroke;stroke:var(--surface);font-weight:720}@supports (color:color-mix(in lab, red, red)){.planning-zone-label{stroke:color-mix(in oklch, var(--surface) 88%, transparent)}}.planning-zone-label{stroke-width:18px;stroke-linejoin:round}.planning-zone>rect[role=button]:focus-visible{outline:3px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.planning-zone>rect[role=button]:focus-visible{outline:3px solid color-mix(in oklch, var(--accent) 70%, transparent)}}.planning-zone>rect[role=button]:focus-visible{outline-offset:3px}.planning-zone-handle-hit:focus-visible{outline:3px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.planning-zone-handle-hit:focus-visible{outline:3px solid color-mix(in oklch, var(--accent) 70%, transparent)}}.planning-zone-handle-hit:focus-visible{outline-offset:3px}.dimension-label{outline:none}.dimension-label-chip{fill:#b85f3b}.dimension-label text{fill:#fff;text-anchor:middle;pointer-events:none;font-weight:720}.wall-draft line{stroke:#b85f3b;stroke-width:4px;stroke-dasharray:9 6;stroke-linecap:round;vector-effect:non-scaling-stroke}.wall-draft circle{fill:#fffdf9;stroke:#b85f3b;stroke-width:2px;vector-effect:non-scaling-stroke}.wall-snap-guide-line{stroke:#b85f3ba8;stroke-width:1.5px;stroke-dasharray:6 5;vector-effect:non-scaling-stroke}.wall-snap-target-line{stroke:#b85f3b7a;stroke-width:3px;stroke-dasharray:7 6;vector-effect:non-scaling-stroke}.wall-snap-ring{fill:#fffdf9d1;stroke:#b85f3b;stroke-width:2px;vector-effect:non-scaling-stroke}.wall-snap-dot{fill:#b85f3b}.wall-snap-label rect{fill:#fffdf9;stroke:#b85f3bb8;stroke-width:1px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 4px #251f191f)}.wall-snap-label text{fill:#8f4226;letter-spacing:.01em;font-weight:750}.scene-3d{position:absolute;inset:0;overflow:hidden}.scene-3d canvas{width:100%;height:100%;display:block}.scene-camera-safe-frame{z-index:2;pointer-events:none;border:1px solid lab(100% 0 0/.72);border-color:oklch(100% 5.96046e-8 none/.72) oklch(100% 5.96046e-8 none/.72) oklch(100% 5.96046e-8 none/.72) oklch(100% 5.96046e-8 none/.72);position:absolute;box-shadow:0 0 0 100vmax lab(5.28593% .680089 3.11254/.48),inset 0 0 0 1px lab(5.28593% .680089 3.11254/.16)}.scene-camera-safe-frame:after{content:attr(data-label);color:#fff;letter-spacing:.01em;text-shadow:0 1px 2px lab(0% 0 0/.4);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:lab(6.20441% 1.25322 3.93664/.66);border:1px solid lab(100% 0 0/.28);border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:9px;font-weight:680;display:flex;position:absolute;top:8px;left:9px}.scene-hint{z-index:3;border:1px solid var(--line);background:var(--surface);border-radius:999px;align-items:center;min-height:28px;padding:0 10px;display:flex;position:absolute;top:14px;right:14px}@supports (color:color-mix(in lab, red, red)){.scene-hint{background:color-mix(in oklch, var(--surface) 92%, transparent)}}.scene-hint{color:var(--muted);pointer-events:none;font-size:10px}.view-mode-control button{min-height:44px}.render-style-panel{z-index:9;border:1px solid var(--line);width:min(306px,100% - 28px);position:absolute;top:54px;right:14px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.render-style-panel{border:1px solid color-mix(in oklch, var(--line) 90%, var(--ink))}}.render-style-panel{background:var(--surface);border-radius:13px;box-shadow:0 16px 36px lab(13.0456% .583559 5.48418/.17)}.render-style-heading{background:var(--surface);text-align:left;cursor:pointer;border:0;grid-template-columns:32px minmax(0,1fr) 24px;align-items:center;gap:9px;width:100%;min-height:52px;padding:7px 9px;display:grid}.render-style-heading:hover{background:var(--surface-muted)}.render-style-heading>span:nth-child(2){gap:2px;min-width:0;display:grid}.render-style-heading strong{letter-spacing:-.01em;font-size:11px}.render-style-heading small{color:var(--success);font-size:8px;font-weight:680}.render-style-heading>svg{color:var(--muted);transition:transform .18s cubic-bezier(.16,1,.3,1)}.render-style-panel.is-open .render-style-heading>svg{transform:rotate(180deg)}.render-style-heading-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:9px;place-items:center;display:grid}.render-style-controls{overscroll-behavior:contain;border-top:1px solid var(--line);max-height:min(600px,100dvh - 242px);padding:3px 11px 12px;overflow-y:auto}.render-style-section{border:0;min-width:0;margin:0;padding:12px 0 0}.render-style-section+.render-style-section{border-top:1px solid var(--line);margin-top:11px}.render-style-section legend{color:var(--muted);letter-spacing:.055em;text-transform:uppercase;padding:0;font-size:8px;font-weight:740}.render-palette-grid{grid-template-columns:1fr 1fr;gap:5px;margin-top:8px;display:grid}.render-palette-grid>button{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:46px;color:var(--ink);cursor:pointer;border-radius:8px;justify-content:flex-start;gap:7px;padding:5px 7px;font-size:8px;font-weight:680}.render-palette-grid>button:hover:not(:disabled),.render-option-row>button:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.render-palette-grid>button:hover:not(:disabled),.render-option-row>button:hover:not(:disabled){border-color:color-mix(in oklch, var(--accent) 38%, var(--line))}}.render-palette-grid>button:hover:not(:disabled),.render-option-row>button:hover:not(:disabled){background:var(--accent-soft)}.render-palette-grid>button.is-active,.render-option-row>button.is-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.render-palette-grid>button.is-active,.render-option-row>button.is-active{border-color:color-mix(in oklch, var(--accent) 48%, var(--line))}}.render-palette-grid>button.is-active,.render-option-row>button.is-active{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}@supports (color:color-mix(in lab, red, red)){.render-palette-grid>button.is-active,.render-option-row>button.is-active{box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--accent) 12%, transparent)}}.render-palette-swatches{border:1px solid lab(18.8249% .646725 3.82054/.14);border-radius:7px;flex:none;width:30px;height:30px;display:flex;overflow:hidden}.render-palette-swatches i{flex:1;height:100%}.render-option-row{gap:5px;margin-top:8px;display:grid}.render-option-row>button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:8px;min-width:0;min-height:44px;padding:4px 6px;font-size:8px;font-weight:700}.render-finish-row{grid-template-columns:repeat(4,minmax(0,1fr))}.render-light-row{grid-template-columns:1fr 1fr}.render-material-row{grid-template-columns:repeat(3,minmax(0,1fr))}.render-material-row--two{grid-template-columns:repeat(2,minmax(0,1fr))}.render-material-groups{gap:6px;margin-top:8px;display:grid}.render-material-groups>span{color:var(--muted);margin-top:3px;font-size:8px;font-weight:680}.render-material-groups .render-option-row{margin-top:0}.render-custom-colors>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:8px;display:grid}.render-custom-colors label{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:52px;color:var(--muted);cursor:pointer;border-radius:8px;align-content:center;justify-items:center;gap:4px;font-size:8px;font-weight:680;display:grid}.render-custom-colors label:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.render-custom-colors label:hover{border-color:color-mix(in oklch, var(--accent) 38%, var(--line))}}.render-custom-colors input[type=color]{cursor:pointer;background:0 0;border:1px solid lab(18.8249% .646725 3.82054/.18);border-radius:6px;width:28px;height:24px;padding:0;overflow:hidden}.render-custom-colors input[type=color]::-webkit-color-swatch-wrapper{padding:0}.render-custom-colors input[type=color]::-webkit-color-swatch{border:0}.render-style-note{color:var(--muted);margin:12px 0 0;font-size:8px;line-height:1.45}.scene-loading{height:100%;color:var(--muted);justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.scene-loading span,.button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}.scene-error{background:radial-gradient(circle at 50% 42%, #fffdfa 0, var(--canvas) 58%);color:var(--ink);grid-template-columns:auto minmax(0,420px);place-content:center;gap:14px;padding:28px;display:grid;position:absolute;inset:0}.scene-error-icon{background:var(--peach-soft);width:42px;height:42px;color:var(--accent);border:1px solid #e7b89f;border-radius:13px;place-items:center;display:grid}.scene-error strong{margin:1px 0 5px;font-size:15px;display:block}.scene-error p{max-width:420px;color:var(--muted);margin:0;font-size:12px;line-height:1.5}.scene-error-actions{flex-wrap:wrap;grid-column:2;gap:8px;display:flex}.scene-error-actions button{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);font:inherit;cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:650;display:inline-flex}.scene-error-actions button.is-primary{border-color:var(--ink);background:var(--ink);color:#fff}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.wall-stroke,.item-rotation-knob{transition:none}}.tool-tip{z-index:3;border:1px solid var(--accent);align-items:center;gap:7px;min-height:34px;padding:0 12px;display:flex;position:absolute;top:50px;left:50%}@supports (color:color-mix(in lab, red, red)){.tool-tip{border:1px solid color-mix(in oklch, var(--accent) 30%, var(--line))}}.tool-tip{background:var(--surface);color:var(--accent);border-radius:999px;font-size:10px;font-weight:680;transform:translate(-50%);box-shadow:0 5px 16px lab(13.0352% .372067 3.87709/.08)}.direct-edit-hint{z-index:3;border:1px solid var(--line);background:var(--surface);border-radius:9px;align-items:center;min-height:32px;padding:0 11px;display:flex;position:absolute;top:12px;right:12px}@supports (color:color-mix(in lab, red, red)){.direct-edit-hint{background:color-mix(in oklch, var(--surface) 94%, transparent)}}.direct-edit-hint{color:var(--muted);pointer-events:none;font-size:10px;font-weight:620}.inspector-help{color:var(--muted);margin:12px 1px 0;font-size:10px;line-height:1.55}.proposal-tray{z-index:5;background:var(--surface);border:1px solid lab(74.4091% 6.01071 11.9779);border-radius:14px;width:min(720px,100% - 36px);position:absolute;bottom:146px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 18px 45px lab(13.0456% .583559 5.48418/.18)}.proposal-tabs{border-bottom:1px solid var(--line);background:var(--paper);align-items:center;gap:3px;min-height:38px;padding:4px 5px;display:flex}.proposal-tabs button{min-height:29px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 11px;font-size:10px;font-weight:680}.proposal-tabs button.is-active{background:var(--surface);color:var(--accent);box-shadow:0 1px 4px lab(13.0456% .583559 5.48418/.1)}.proposal-tabs .proposal-close{width:29px;margin-left:auto;padding:0}.proposal-copy{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;min-height:82px;padding:12px 13px 13px 16px;display:grid}.proposal-copy>div{min-width:0}.proposal-copy strong{font-size:12px}.proposal-copy p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.45}.proposal-copy>span{color:var(--muted);white-space:nowrap;font-size:9px}.proposal-copy>button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:9px;min-height:38px;padding:0 13px;font-size:10px;font-weight:720}.catalog-tray{z-index:5;border:1px solid var(--line);background:var(--surface);border-radius:14px;width:min(300px,100% - 24px);position:absolute;top:48px;left:12px;overflow:hidden;box-shadow:0 16px 38px lab(13.0456% .583559 5.48418/.16)}.catalog-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:45px;padding:0 10px 0 13px;display:flex}.catalog-heading>div{align-items:center;gap:8px;min-width:0;font-size:11px;display:flex}.catalog-heading>div>span{gap:1px;min-width:0;display:grid}.catalog-heading>div>span small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:560;overflow:hidden}.catalog-heading button{cursor:pointer;background:0 0;border:0;border-radius:7px;width:29px;height:29px}.catalog-list{gap:2px;padding:6px;display:grid}.catalog-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;grid-template-rows:1fr 1fr;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;column-gap:9px;min-height:48px;padding:6px 8px;display:grid}.catalog-list button:hover{background:var(--surface-muted)}.catalog-list button>span{border-radius:7px;grid-row:1/3;width:29px;height:29px;box-shadow:inset 0 0 0 1px lab(13.0456% .583559 5.48418/.15)}.catalog-list button strong{align-self:end;font-size:10px}.catalog-list button small{color:var(--muted);align-self:start;font-size:9px}.catalog-list button svg{color:var(--accent);grid-area:1/3/3}.quick-add-tray{width:min(350px,100% - 24px);max-height:calc(100% - 64px)}.kitchen-catalog-sections{overscroll-behavior:contain;max-height:min(650px,100dvh - 188px);overflow-y:auto}.catalog-section{display:grid}.catalog-section+.catalog-section{border-top:1px solid var(--line)}.catalog-section-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:38px;padding:8px 12px 5px;display:grid}.catalog-section-heading strong{letter-spacing:.035em;text-transform:uppercase;font-size:9px}.catalog-section-heading small{color:var(--muted);text-align:right;font-size:8px}.catalog-list--compact{padding-top:1px;padding-bottom:8px}.catalog-list--compact button{min-height:44px}.cabinet-widths{grid-template-columns:repeat(5,minmax(42px,1fr));gap:4px;padding:2px 6px 8px;display:grid}.cabinet-widths button{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:44px;color:var(--ink);cursor:pointer;border-radius:8px;font-size:10px;font-weight:720;transition:border-color .18s cubic-bezier(.16,1,.3,1),background-color .18s cubic-bezier(.16,1,.3,1),color .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1)}.cabinet-widths button:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.cabinet-widths button:hover{border-color:color-mix(in oklch, var(--accent) 42%, var(--line))}}.cabinet-widths button:hover{background:var(--accent-soft);color:var(--accent)}.cabinet-widths button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cabinet-widths button:active{transform:translateY(1px)}.catalog-list--specials{padding-top:0}.opening-catalog-tray{width:min(360px,100% - 24px)}.opening-quick-list{gap:11px;padding:11px;display:grid}.opening-quick-list>div{gap:6px;display:grid}.opening-quick-list>div>span{color:var(--muted);font-size:9px;font-weight:700}.opening-quick-list>div>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.opening-quick-list button{border:1px solid var(--line);background:var(--paper);min-height:34px;color:var(--ink);cursor:pointer;border-radius:7px;padding:0 6px;font-size:9px;font-weight:690}.opening-quick-list button:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.opening-quick-list button:hover:not(:disabled){border-color:color-mix(in oklch, var(--accent) 42%, var(--line))}}.opening-quick-list button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.opening-quick-list button:disabled{color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.opening-quick-list button:disabled{color:color-mix(in oklch, var(--muted) 58%, transparent)}}.opening-quick-list button:disabled{cursor:not-allowed}.opening-quick-list>.opening-quick-extras{grid-template-columns:1fr 1fr}.opening-quick-extras button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.opening-quick-list>p{background:var(--surface-muted);color:var(--muted);border-radius:8px;margin:0;padding:8px 9px;font-size:9px;line-height:1.45}.ai-composer{grid-template-columns:auto auto minmax(0,1fr) auto}.composer-spark{color:var(--accent)}.ai-composer>button{align-items:center;gap:7px;display:inline-flex}.ai-composer>button:disabled{background:lab(35.0666% .616297 3.79758)}.verification-row{align-items:center}.verification-row span{align-items:center;gap:5px;display:inline-flex}.verification-row--confirmed{background:lab(93.5046% -10.1357 7.0169)}.verification-row--confirmed strong{color:var(--success)}.verification-row--likely{background:var(--accent-soft)}.verification-row--likely strong{color:var(--accent)}.verification-row--review{background:lab(95.422% 2.2701 11.3735)}.verification-row--review strong{color:var(--warning)}.field-grid{grid-template-columns:1fr}.field-grid label{min-width:0}.unit-input{position:relative}.unit-input input{padding-right:38px}.unit-input small{color:var(--muted);pointer-events:none;font-size:9px;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.calibration-launcher{border:1px solid var(--accent);justify-items:start;gap:3px;width:100%;min-height:52px;margin:12px 0 16px;padding:9px 11px;display:grid}@supports (color:color-mix(in lab, red, red)){.calibration-launcher{border:1px solid color-mix(in oklch, var(--accent) 38%, var(--line))}}.calibration-launcher{background:var(--accent-soft);color:var(--accent);cursor:pointer;border-radius:10px}.calibration-launcher span{font-size:11px;font-weight:740}.calibration-launcher small{color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.calibration-launcher small{color:color-mix(in oklch, var(--accent) 74%, var(--muted))}}.calibration-launcher small{font-size:9px;font-weight:620}.wall-measure-row{border:1px solid var(--accent);justify-content:space-between;align-items:center;gap:9px;min-height:42px;margin:12px 0;padding:6px 6px 6px 10px;display:flex}@supports (color:color-mix(in lab, red, red)){.wall-measure-row{border:1px solid color-mix(in oklch, var(--accent) 24%, var(--line))}}.wall-measure-row{background:var(--accent-soft);border-radius:9px}.wall-measure-row>span{gap:1px;min-width:0;display:grid}.wall-measure-row small{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:8px;font-weight:650}.wall-measure-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.wall-measure-row button{border:1px solid var(--accent);flex:none;min-height:29px;padding:0 9px}@supports (color:color-mix(in lab, red, red)){.wall-measure-row button{border:1px solid color-mix(in oklch, var(--accent) 34%, var(--line))}}.wall-measure-row button{background:var(--surface);color:var(--accent);cursor:pointer;border-radius:7px;font-size:9px;font-weight:720}.wall-add-section{gap:7px;margin:2px 0 15px;display:grid}.wall-add-section>span,.opening-presets>span,.door-swing-controls>span{color:var(--muted);font-size:9px;font-weight:680}.wall-add-section>div{grid-template-columns:repeat(2,1fr);gap:5px;display:grid}.wall-add-section button,.opening-kind-control button,.opening-presets button,.door-swing-controls button,.parent-wall-button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:7px;min-height:33px;padding:0 7px;font-size:9px;font-weight:680}.wall-add-section button:hover,.opening-kind-control button:hover,.opening-presets button:hover,.door-swing-controls button:hover,.parent-wall-button:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.wall-add-section button:hover,.opening-kind-control button:hover,.opening-presets button:hover,.door-swing-controls button:hover,.parent-wall-button:hover{border-color:color-mix(in oklch, var(--accent) 42%, var(--line))}}.wall-add-section button:hover,.opening-kind-control button:hover,.opening-presets button:hover,.door-swing-controls button:hover,.parent-wall-button:hover{background:var(--accent-soft);color:var(--accent)}.opening-kind-control{border:1px solid var(--line);background:var(--surface-muted);border-radius:9px;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:12px;padding:3px;display:grid}.opening-kind-control button{background:0 0;border-color:#0000}.opening-kind-control button.is-active,.opening-presets button.is-active,.door-swing-controls button.is-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.opening-kind-control button.is-active,.opening-presets button.is-active,.door-swing-controls button.is-active{border-color:color-mix(in oklch, var(--accent) 38%, var(--line))}}.opening-kind-control button.is-active,.opening-presets button.is-active,.door-swing-controls button.is-active{background:var(--surface);color:var(--accent);box-shadow:0 1px 3px lab(13.0456% .583559 5.48418/.1)}.opening-presets{gap:7px;margin-top:14px;display:grid}.opening-presets>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.opening-presets button{font-variant-numeric:tabular-nums;min-width:0;padding:0 4px}.door-swing-controls{gap:7px;margin-top:14px;display:grid}.door-swing-controls>div{grid-template-columns:1fr 1fr;gap:5px;display:grid}.door-swing-controls>.door-style-options{grid-template-columns:repeat(3,minmax(0,1fr))}.control-note{color:var(--muted);margin:0;font-size:9px;line-height:1.45}.cabinet-swap{border-bottom:1px solid var(--line);margin-top:12px;padding:4px 0 11px}.cabinet-swap-trigger{width:100%;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:6px 7px;display:flex}.cabinet-swap-trigger:hover:not(:disabled){background:var(--surface-muted)}.cabinet-swap-trigger:focus-visible{background:var(--surface-muted)}.cabinet-swap-trigger:disabled{opacity:.5;cursor:not-allowed}.cabinet-swap-trigger>span{gap:3px;min-width:0;display:grid}.cabinet-swap-trigger strong{font-size:10px}.cabinet-swap-trigger small{color:var(--muted);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.cabinet-swap-trigger>svg{color:var(--muted);flex:none;transition:transform .18s cubic-bezier(.16,1,.3,1)}.cabinet-swap-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.cabinet-swap-controls{gap:13px;padding:9px 4px 1px;display:grid}.cabinet-preset-select,.cabinet-mount-height{gap:6px;display:grid}.cabinet-preset-select>span,.cabinet-mount-height>span,.cabinet-quick-sizes legend,.cabinet-exact-size legend{color:var(--muted);font-size:9px;font-weight:680}.cabinet-preset-select>div{position:relative}.cabinet-preset-select select{-webkit-appearance:none;appearance:none;border:1px solid var(--line);background:var(--paper);width:100%;min-height:42px;color:var(--ink);cursor:pointer;border-radius:8px;padding:0 34px 0 10px;font-size:10px;font-weight:650}.cabinet-preset-select svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.cabinet-quick-sizes,.cabinet-exact-size{border:0;min-width:0;margin:0;padding:0}.cabinet-quick-sizes{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.cabinet-quick-sizes legend,.cabinet-exact-size legend{grid-column:1/-1;margin-bottom:6px;padding:0}.cabinet-quick-sizes label{gap:5px;min-width:0;display:grid}.cabinet-quick-sizes label>span,.cabinet-exact-size label>span{color:var(--muted);font-size:8px;font-weight:650}.cabinet-quick-sizes select{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;min-height:38px;color:var(--ink);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:8px;padding:0 5px;font-size:9px}.cabinet-exact-size>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.cabinet-exact-size label{gap:5px;min-width:0;display:grid}.cabinet-exact-size input,.cabinet-mount-height input{border:1px solid var(--line);background:var(--paper);width:100%;height:38px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:8px;padding-left:7px;font-size:10px}.cabinet-swap-controls>p{color:var(--muted);margin:0;font-size:8px;line-height:1.45}.cabinet-swap-controls>.cabinet-input-error{color:lab(38.4535% 41.8731 37.9986);font-weight:650}.item-rotation-control{gap:7px;margin-top:14px;display:grid}.item-rotation-control>span{color:var(--muted);font-size:9px;font-weight:680}.item-rotation-control>div{grid-template-columns:1fr 54px 1fr;align-items:center;gap:5px;display:grid}.item-rotation-control button{border:1px solid var(--line);background:var(--paper);min-height:36px;color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;font-size:9px;font-weight:700;display:inline-flex}.item-rotation-control button:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.item-rotation-control button:hover:not(:disabled){border-color:color-mix(in oklch, var(--accent) 42%, var(--line))}}.item-rotation-control button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.item-rotation-control button:disabled{opacity:.45;cursor:not-allowed}.item-rotation-control>div>strong{text-align:center;font-variant-numeric:tabular-nums;font-size:11px}.item-rotation-control>small{color:var(--muted);font-size:8px}.parent-wall-button{width:100%;color:var(--muted);background:var(--surface);margin-top:12px}.space-planner{gap:15px;display:grid}.space-planner-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.space-planner-heading>div{align-items:center;gap:9px;min-width:0;display:flex}.space-planner-heading>div>svg{color:var(--accent);flex:none}.space-planner-heading span{gap:2px;min-width:0;display:grid}.space-planner-heading strong{font-size:12px}.space-planner-heading small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.space-planner-heading>button{width:29px;height:29px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0}.fit-status{border:1px solid var(--line);border-radius:10px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;min-height:57px;padding:9px;display:grid}.fit-status>span{border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.fit-status>div{gap:3px;min-width:0;display:grid}.fit-status strong{font-size:10px}.fit-status small{color:var(--muted);font-size:9px;line-height:1.35}.fit-preview-note{color:lab(34.2237% 29.7794 30.5746);margin-top:2px;font-size:8.5px;line-height:1.35}.fit-quick-fix{border:1px solid var(--accent);width:max-content;min-height:27px;margin-top:4px;padding:0 8px}@supports (color:color-mix(in lab, red, red)){.fit-quick-fix{border:1px solid color-mix(in oklch, var(--accent) 45%, var(--line))}}.fit-quick-fix{background:var(--surface);color:var(--accent);cursor:pointer;border-radius:7px;font-size:9px;font-weight:720}.fit-quick-fix:active{transform:translateY(1px)}.fit-status.is-good{background:lab(95.692% -7.15476 5.14225);border-color:lab(79.8389% -15.7642 11.4255)}.fit-status.is-good>span{color:var(--success);background:lab(90.3446% -17.1965 12.4605)}.fit-status.is-blocked{background:lab(96.5623% 2.13993 9.37526);border-color:lab(81.4591% 6.89933 22.8423)}.fit-status.is-blocked>span{color:var(--warning);background:lab(90.7415% 7.46101 24.7317)}.box-footprint-explainer{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:8px;padding:11px 0;display:grid}.box-footprint-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.box-footprint-heading strong{color:var(--ink);font-size:10px}.box-footprint-heading span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:8px;font-weight:680}.box-footprint-explainer>p{color:var(--muted);margin:0;font-size:10px;line-height:1.45}.box-footprint-explainer>.box-guide-note{background:var(--surface-muted);border-radius:7px;padding:7px 8px;font-size:9px}.box-depth-formula{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px;display:grid}.box-depth-formula>span{background:var(--surface-muted);border-radius:8px;align-content:center;gap:3px;min-width:0;min-height:48px;padding:7px 8px;display:grid}.box-depth-formula small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:650;overflow:hidden}.box-depth-formula strong{font-variant-numeric:tabular-nums;font-size:10px}.box-depth-formula i{color:var(--muted);font-size:11px;font-style:normal}.box-depth-comparison{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.box-depth-comparison>span{min-width:0;color:var(--muted);gap:2px;padding:7px 8px;font-size:8px;display:grid}.box-depth-comparison>span+span{border-left:1px solid var(--line)}.box-depth-comparison strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:10px}.box-depth-comparison.is-short>span:first-child strong{color:var(--accent)}.box-depth-comparison.is-enough>span:first-child strong{color:var(--success)}.box-footprint-explainer>.box-fit-hint{border-left:2px solid var(--accent);padding-left:8px}@supports (color:color-mix(in lab, red, red)){.box-footprint-explainer>.box-fit-hint{border-left:2px solid color-mix(in oklch, var(--accent) 55%, var(--line))}}.box-footprint-explainer>.box-fit-hint{color:var(--muted)}.box-fit-hint strong{color:var(--ink)}.fit-choices{gap:12px;display:grid}.fit-choice-row{gap:6px;display:grid}.fit-choice-row>span{color:var(--muted);font-size:9px;font-weight:680}.fit-choice-row>div{grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:4px;display:grid}.fit-choice-row button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:7px;min-width:0;min-height:32px;padding:0 5px;font-size:9px;font-weight:680}.fit-choice-row button.is-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.fit-choice-row button.is-active{border-color:color-mix(in oklch, var(--accent) 55%, var(--line))}}.fit-choice-row button.is-active{background:var(--accent-soft);color:var(--accent)}.fit-choice-row button:disabled{color:var(--muted);background:var(--surface-muted);text-decoration:line-through}.upper-cabinet-fit-note{border:1px solid var(--success);grid-template-columns:25px minmax(0,1fr);align-items:center;gap:8px;padding:8px 9px;display:grid}@supports (color:color-mix(in lab, red, red)){.upper-cabinet-fit-note{border:1px solid color-mix(in oklch, var(--success) 24%, var(--line))}}.upper-cabinet-fit-note{background:var(--success);border-radius:8px}@supports (color:color-mix(in lab, red, red)){.upper-cabinet-fit-note{background:color-mix(in oklch, var(--success) 5%, var(--surface))}}.upper-cabinet-fit-note>svg{color:var(--success)}.upper-cabinet-fit-note>span{gap:2px;display:grid}.upper-cabinet-fit-note strong{font-size:9px}.upper-cabinet-fit-note small{color:var(--muted);font-size:8px;line-height:1.4}.planner-orientation{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;grid-template-columns:1fr 1fr;align-items:center;min-height:34px;display:grid;overflow:hidden}.planner-orientation span{min-width:0;color:var(--muted);gap:1px;padding:6px 9px;font-size:8px;display:grid}.planner-orientation span+span{border-left:1px solid var(--line)}.planner-orientation strong{color:var(--ink);text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap;font-size:9px;overflow:hidden}.space-planner-actions{grid-template-columns:1fr 1fr;gap:6px;padding-top:3px;display:grid}.space-planner-actions button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:35px;padding:0 8px;font-size:9px;font-weight:700}.space-planner-actions .redraw-fit{min-height:32px;color:var(--muted);grid-column:1/-1}.space-planner-actions .apply-fit{border-color:var(--accent);background:var(--accent);color:#fff;grid-column:1/-1;min-height:40px}.space-planner>p{border-top:1px solid var(--line);color:var(--muted);margin:0;padding-top:11px;font-size:9px;line-height:1.5}.calibration-popover{z-index:6;border:1px solid var(--accent);width:min(318px,100% - 24px);max-height:calc(100% - 66px);position:absolute;top:54px;right:12px}@supports (color:color-mix(in lab, red, red)){.calibration-popover{border:1px solid color-mix(in oklch, var(--accent) 30%, var(--line))}}.calibration-popover{background:var(--surface);overscroll-behavior:contain;border-radius:14px;overflow:auto;box-shadow:0 18px 42px lab(13.0456% .583559 5.48418/.18)}.calibration-popover-heading{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;min-height:42px;padding:0 10px 0 14px;display:flex}.calibration-popover-heading strong{font-size:11px}.calibration-popover-heading button{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px}.calibration-card{gap:12px;padding:14px;display:grid}.calibration-copy{grid-template-columns:1fr auto;gap:3px 10px;display:grid}.calibration-copy strong{font-size:12px}.calibration-copy>span{color:var(--accent);font-size:9px;font-weight:680}.calibration-copy p{color:var(--muted);grid-column:1/-1;margin:4px 0 0;font-size:10px;line-height:1.45}.calibration-source{border:1px solid var(--line);background:var(--surface-muted);border-radius:9px;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:grid}.calibration-source button{min-height:31px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 7px;font-size:9px;font-weight:680}.calibration-source button.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px lab(13.0456% .583559 5.48418/.1)}.imperial-length-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.imperial-length-fields label{gap:6px;display:grid}.imperial-length-fields label>span{color:var(--muted);font-size:9px;font-weight:650}.imperial-length-fields input{border:1px solid var(--line);background:var(--paper);width:100%;height:39px;color:var(--ink);border-radius:8px;padding:0 34px 0 9px;font-size:12px}.calibrate-button{border:1px solid var(--accent);min-height:38px}@supports (color:color-mix(in lab, red, red)){.calibrate-button{border:1px solid color-mix(in oklch, var(--accent) 40%, var(--line))}}.calibrate-button{background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;font-size:10px;font-weight:720}.calibration-note{color:var(--muted);font-size:9px;line-height:1.45}.calibration-error{color:lab(38.4535% 41.8731 37.9986);margin:-4px 0 0;font-size:9px;font-weight:650}.field-grid input:disabled{color:var(--muted);background:var(--surface-muted)}.room-summary{border:1px solid var(--line);background:var(--paper);border-radius:10px;gap:5px;margin-top:16px;padding:13px;display:grid}.room-summary strong{font-size:12px}.room-summary span{color:var(--muted);font-size:10px}.danger-button{color:lab(38.4535% 41.8731 37.9986);cursor:pointer;background:lab(96.3727% 5.54493 4.45186);border:1px solid lab(79.8614% 15.4983 12.4716);border-radius:9px;width:100%;min-height:37px;margin-top:12px;font-size:10px;font-weight:680}.fixed-edit-button{border:1px solid var(--warning);width:100%;min-height:37px;margin-top:12px}@supports (color:color-mix(in lab, red, red)){.fixed-edit-button{border:1px solid color-mix(in oklch, var(--warning) 45%, var(--line))}}.fixed-edit-button{color:lab(35.9268% 17.5478 46.0187);cursor:pointer;background:lab(95.422% 2.2701 11.3735);border-radius:9px;font-size:10px;font-weight:700}.project-summary{grid-template-columns:auto 1fr;align-items:start;gap:12px;display:grid}.project-score{background:var(--accent-soft);width:55px;height:55px;color:var(--accent);box-shadow:inset 0 0 0 5px var(--surface);outline:1px solid var(--accent);border-radius:50%;place-items:center;font-size:14px;font-weight:760;display:grid}@supports (color:color-mix(in lab, red, red)){.project-score{outline:1px solid color-mix(in oklch, var(--accent) 30%, var(--line))}}.project-summary strong{font-size:12px}.project-summary p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.45}.project-summary dl{grid-column:1/3;grid-template-columns:repeat(3,1fr);gap:6px;margin:5px 0 0;display:grid}.project-summary dl div{border:1px solid var(--line);background:var(--paper);border-radius:8px;gap:2px;padding:9px;display:grid}.project-summary dt{color:var(--muted);font-size:9px}.project-summary dd{margin:0;font-size:13px;font-weight:720}.assumption-heading span{display:initial;width:auto;height:auto;color:inherit;background:0 0}.assumption-heading svg{color:var(--warning)}.assumption-box details{border-top:1px solid lab(82.6469% 6.21653 23.0561);padding-top:9px}.assumption-box summary{color:lab(35.8493% 20.293 53.7877);cursor:pointer;font-size:10px;font-weight:700}.assumption-box ul{color:lab(35.0476% 2.91649 9.36919);margin:9px 0 0;padding-left:17px;font-size:9px;line-height:1.5}.suggestion-button{gap:7px;display:inline-flex}.status-toast{z-index:12;border:1px solid var(--surface);align-items:center;gap:7px;max-width:calc(100vw - 560px);min-height:25px;padding:0 9px;display:flex;position:fixed;bottom:7px;left:248px}@supports (color:color-mix(in lab, red, red)){.status-toast{border:1px solid color-mix(in oklch, var(--surface) 70%, transparent)}}.status-toast{background:var(--surface);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.status-toast{background:color-mix(in oklch, var(--surface) 88%, transparent)}}.status-toast{color:var(--muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:9px}.status-toast>span{background:var(--success);border-radius:50%;flex:none;width:6px;height:6px}.status-toast>span.is-pulsing{background:var(--accent);animation:1.1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:lab(7.24722% .654019 3.2768/.42);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.settings-modal{border:1px solid var(--line);background:var(--surface);border-radius:18px;width:min(540px,100%);max-height:min(720px,100dvh - 40px);padding:19px;overflow:auto;box-shadow:0 28px 80px lab(7.24722% .654019 3.2768/.28)}.modal-heading{justify-content:space-between;align-items:center;display:flex}.modal-heading>div{align-items:center;gap:8px;display:flex}.modal-heading svg{color:var(--accent)}.modal-heading h2{letter-spacing:-.02em;margin:0;font-size:16px}.modal-heading>button{background:var(--surface-muted);cursor:pointer;border:0;border-radius:8px;width:32px;height:32px}.modal-intro{color:var(--muted);margin:10px 0 15px;font-size:11px;line-height:1.55}.provider-options{gap:6px;display:grid}.provider-options>label{border:1px solid var(--line);cursor:pointer;border-radius:11px;grid-template-columns:35px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:63px;padding:9px 11px;display:grid}.provider-options>label:hover{background:var(--paper)}.provider-options>label.is-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.provider-options>label.is-active{border-color:color-mix(in oklch, var(--accent) 60%, var(--line))}}.provider-options>label.is-active{background:var(--accent-soft)}.provider-options input{opacity:0;pointer-events:none;position:absolute}.provider-icon{background:var(--surface);width:35px;height:35px;color:var(--accent);border-radius:9px;place-items:center;display:grid}.provider-options label>span:nth-of-type(2){gap:3px;display:grid}.provider-options strong{font-size:11px}.provider-options small{color:var(--muted);font-size:9px;line-height:1.35}.provider-options label>svg{opacity:0;color:var(--accent)}.provider-options label.is-active>svg{opacity:1}.settings-fields{background:var(--paper);border-radius:11px;grid-template-columns:1.4fr 1fr;gap:8px;margin-top:10px;padding:11px;display:grid}.settings-fields label{gap:5px;display:grid}.settings-fields span{color:var(--muted);font-size:9px;font-weight:650}.settings-fields input{border:1px solid var(--line);background:var(--surface);min-width:0;height:38px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:11px}.mcp-option{cursor:pointer;background:lab(96.5443% 1.32549 5.56946);border:1px dashed lab(74.4408% 5.29295 12.4099);border-radius:11px;grid-template-columns:auto 1fr;align-items:start;gap:9px;margin-top:11px;padding:12px;display:grid}.mcp-option input{accent-color:var(--accent);margin-top:2px}.mcp-option span{gap:4px;display:grid}.mcp-option strong{font-size:10px}.mcp-option small{color:var(--muted);font-size:9px;line-height:1.45}.modal-note{color:var(--muted);align-items:center;gap:7px;margin:13px 1px;font-size:9px;display:flex}.modal-note svg{color:var(--success)}.primary-button{background:var(--ink);width:100%;min-height:42px;color:var(--surface);cursor:pointer;border:0;border-radius:10px;font-size:11px;font-weight:720}@media (max-width:1000px){.status-toast{max-width:calc(100vw - 220px);left:205px}}@media (max-width:720px){body{overflow:auto}.wordmark>span:last-child{display:none}.wordmark-mark{width:34px;height:34px}.top-actions{gap:4px}.undo-button{display:none}.workspace{min-height:calc(100dvh - 58px)}.workspace-toolbar button{white-space:nowrap;padding:0 9px}.workspace-toolbar button svg+*{display:none}.plan-svg{min-height:0}.proposal-tray{bottom:146px}.proposal-copy{grid-template-columns:1fr auto;gap:8px}.proposal-copy>span{display:none}.proposal-copy>button{grid-area:1/2}.status-toast{white-space:nowrap;text-overflow:ellipsis;max-width:none;bottom:2px;left:9px;right:9px;overflow:hidden}.scene-hint,.confidence-pill{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 24px);overflow:hidden}.settings-fields{grid-template-columns:1fr}}.project-title{border-radius:10px;min-height:40px;padding:4px 12px}.project-title:hover{background:var(--surface-muted)}.project-title-copy{justify-items:center;gap:1px;min-width:0;display:grid}.project-title-copy>span{max-width:min(420px,42vw)}.project-title-copy>small{align-items:center;gap:5px;display:inline-flex}.project-title-copy>small:after{content:"›";color:var(--muted);font-size:15px;line-height:9px;transform:rotate(90deg)}.save-state{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:9px;font-weight:620;display:inline-flex}.save-state:before{content:"";background:var(--success);border-radius:50%;width:6px;height:6px}.save-state.is-saving:before{background:var(--warning);animation:1.1s ease-in-out infinite pulse}.save-state.is-error{color:lab(38.4535% 41.8731 37.9986)}.save-state.is-error:before{background:lab(42.9059% 48.0091 44.5577)}.pw-panel{width:min(900px,100%);min-height:min(610px,100dvh - 40px);padding:0;position:relative;overflow:hidden}.pw-content{display:contents}.pw-busy{z-index:12;border:1px solid var(--line);background:var(--ink);min-height:38px;color:var(--surface);border-radius:999px;align-items:center;gap:8px;padding:0 13px;font-size:9px;font-weight:720;display:inline-flex;position:absolute;top:80px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px lab(7.24722% .654019 3.2768/.2)}.pw-heading{border-bottom:1px solid var(--line);background:var(--surface);min-height:72px;padding:0 20px}.pw-heading>div>div{gap:3px;display:grid}.pw-heading p{color:var(--muted);margin:0;font-size:9px}.pw-layout{grid-template-columns:250px minmax(0,1fr);min-height:536px;display:grid}.pw-projects{border-right:1px solid var(--line);background:var(--paper);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;padding:15px 11px 11px;display:grid}.pw-section-heading,.pw-workspace-heading,.pw-drawings-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.pw-section-heading{padding:0 5px 11px}.pw-section-heading>div{align-items:center;gap:6px;display:flex}.pw-section-heading strong{text-transform:uppercase;letter-spacing:.06em;font-size:10px}.pw-section-heading span{color:var(--muted);font-size:9px}.pw-section-heading>button,.pw-workspace-heading>button,.pw-drawings-heading>button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:31px;padding:0 9px;font-size:9px;font-weight:700}.pw-project-list{align-content:start;gap:4px;min-height:0;display:grid;overflow-y:auto}.pw-project-row{border:1px solid #0000;border-radius:10px;grid-template-columns:minmax(0,1fr) 32px;align-items:center;display:grid;position:relative}.pw-project-row:hover{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.pw-project-row:hover{background:color-mix(in oklch, var(--surface) 72%, transparent)}}.pw-project-row.is-active{border-color:var(--line);background:var(--surface);box-shadow:0 2px 8px lab(13.0456% .583559 5.48418/.06)}.pw-project-select{justify-content:initial;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:31px minmax(0,1fr) auto;gap:9px;min-width:0;min-height:60px;padding:7px 3px 7px 8px;display:grid}.pw-project-select>span:nth-child(2){justify-items:start;gap:4px;min-width:0;display:grid}.pw-project-select strong,.pw-project-select small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.pw-project-select strong{font-size:10px}.pw-project-select small{color:var(--muted);font-size:8px}.pw-project-select>svg{color:var(--accent)}.pw-project-mark{background:var(--surface-muted);width:31px;height:31px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.pw-project-row.is-active .pw-project-mark{background:var(--accent-soft);color:var(--accent)}.pw-menu-wrap{position:relative}.pw-menu-trigger,.pw-floor-menu-trigger,.pw-remove-drawing{width:29px;height:29px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0}.pw-menu-trigger:hover,.pw-floor-menu-trigger:hover,.pw-remove-drawing:hover{background:var(--surface-muted);color:var(--ink)}.pw-menu{z-index:4;border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:2px;width:142px;padding:5px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 12px 28px lab(13.0456% .583559 5.48418/.16)}.pw-menu button{cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:flex-start;min-height:32px;padding:0 8px;font-size:9px}.pw-menu button:hover{background:var(--surface-muted)}.pw-menu button.is-danger{color:lab(38.4535% 41.8731 37.9986)}.pw-project-file-actions{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:5px;padding-top:10px;display:grid}.pw-project-file-actions button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:35px;font-size:9px;font-weight:680}.pw-workspace{background:var(--surface);min-width:0;padding:20px;overflow:auto}.pw-workspace-heading{min-height:43px}.pw-workspace-heading>div{gap:3px;min-width:0;display:grid}.pw-workspace-heading span{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:8px;font-weight:680}.pw-workspace-heading h3{letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;overflow:hidden}.pw-floor-tabs{flex-wrap:wrap;gap:5px;margin:18px 0;padding-bottom:1px;display:flex;position:relative;overflow:visible}.pw-floor-tabs::-webkit-scrollbar{display:none}.pw-floor-tab-wrap{border:1px solid var(--line);background:var(--paper);border-radius:9px;flex:none;align-items:center;padding:3px;display:flex;position:relative}.pw-floor-tab-wrap.is-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.pw-floor-tab-wrap.is-active{border-color:color-mix(in oklch, var(--accent) 40%, var(--line))}}.pw-floor-tab-wrap.is-active{background:var(--accent-soft)}.pw-floor-tab{cursor:pointer;background:0 0;border:0;min-height:34px;padding:0 6px 0 8px;font-size:9px;font-weight:700}.pw-floor-tab>span{background:var(--surface);border-radius:999px;place-items:center;min-width:18px;height:18px;margin-left:2px;display:grid}@supports (color:color-mix(in lab, red, red)){.pw-floor-tab>span{background:color-mix(in oklch, var(--surface) 75%, transparent)}}.pw-floor-tab>span{color:var(--muted);font-size:8px}.pw-floor-menu{z-index:7;top:calc(100% + 5px)}.pw-drawings{border-top:1px solid var(--line);gap:13px;padding-top:17px;display:grid}.pw-drawings-heading h4{margin:0 0 4px;font-size:12px}.pw-drawings-heading p{color:var(--muted);margin:0;font-size:9px}.pw-drawings-heading .pw-primary,.pw-primary{border-color:var(--accent);background:var(--accent);color:#fff}.pw-drawing-list{gap:6px;display:grid}.pw-drawing-row{border:1px solid var(--line);background:var(--paper);border-radius:11px;grid-template-columns:minmax(0,1fr) 38px;align-items:center;display:grid}.pw-drawing-row.is-active{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.pw-drawing-row.is-active{border-color:color-mix(in oklch, var(--accent) 48%, var(--line))}}.pw-drawing-row.is-active{background:var(--accent-soft)}.pw-drawing-select{justify-content:initial;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:45px minmax(0,1fr) auto;gap:10px;min-width:0;min-height:66px;padding:7px;display:grid}.pw-drawing-thumb{border:1px solid var(--line);background:var(--surface);width:45px;height:50px;color:var(--muted);background-position:50%;background-size:cover;border-radius:7px;place-items:center;display:grid}.pw-drawing-select>span:nth-child(2){justify-items:start;gap:4px;min-width:0;display:grid}.pw-drawing-select strong,.pw-drawing-select small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.pw-drawing-select strong{font-size:10px}.pw-drawing-select small{color:var(--muted);font-size:8px}.pw-overlay-state{color:var(--accent);align-items:center;gap:4px;font-size:8px;font-weight:720;display:inline-flex}.pw-empty{text-align:center;justify-items:center;gap:10px;padding:36px 20px;display:grid}.pw-empty-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.pw-empty strong{font-size:12px}.pw-empty p{max-width:360px;color:var(--muted);margin:5px 0 0;font-size:9px;line-height:1.5}.pw-empty-actions{gap:6px;display:flex}.pw-empty button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:35px;padding:0 10px;font-size:9px;font-weight:700}.pw-empty button.pw-primary{border-color:var(--accent);background:var(--accent)}.pw-empty--projects{align-content:center;min-height:500px}.pw-error{color:lab(36.1249% 41.9802 38.767);background:lab(96.3352% 6.94448 5.57563);border:1px solid lab(78.5802% 19.8498 16.0128);border-radius:9px;justify-content:space-between;align-items:center;margin:12px 20px 0;padding:9px 11px;font-size:9px;display:flex}.pw-error button{cursor:pointer;background:0 0;border:0;border-radius:6px;width:26px;height:26px;padding:0}.pw-subdialog-backdrop{z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:lab(7.24722% .654019 3.2768/.3);place-items:center;padding:18px;display:grid;position:absolute;inset:0}.pw-subdialog{border:1px solid var(--line);background:var(--surface);border-radius:14px;width:min(390px,100%);padding:17px;box-shadow:0 20px 54px lab(7.24722% .654019 3.2768/.24)}.pw-subdialog-heading{justify-content:space-between;align-items:center;display:flex}.pw-subdialog-heading>div{align-items:center;gap:8px;display:flex}.pw-subdialog-heading svg{color:var(--accent)}.pw-subdialog-heading h3,.pw-confirm h3{margin:0;font-size:14px}.pw-subdialog-heading>button{background:var(--surface-muted);cursor:pointer;border:0;border-radius:7px;width:29px;height:29px;padding:0}.pw-name-field{gap:6px;margin-top:16px;display:grid}.pw-name-field span{color:var(--muted);font-size:9px;font-weight:680}.pw-name-field input{border:1px solid var(--line);background:var(--paper);width:100%;height:41px;color:var(--ink);border-radius:8px;padding:0 10px;font-size:11px}.pw-subdialog-actions{justify-content:flex-end;gap:6px;margin-top:16px;display:flex}.pw-subdialog-actions button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:36px;padding:0 12px;font-size:9px;font-weight:700}.pw-subdialog-actions button.pw-primary{border-color:var(--accent);background:var(--accent)}.pw-field-error{color:lab(38.4535% 41.8731 37.9986);margin:8px 0 0;font-size:9px}.pw-confirm{grid-template-columns:39px minmax(0,1fr);gap:11px;display:grid}.pw-confirm-icon{color:lab(38.4535% 41.8731 37.9986);background:lab(93.9392% 9.76169 7.83945);border-radius:10px;place-items:center;width:39px;height:39px;display:grid}.pw-confirm p{color:var(--muted);margin:6px 0 0;font-size:9px;line-height:1.5}.pw-confirm .pw-field-error,.pw-confirm .pw-subdialog-actions{grid-column:1/-1}.pw-subdialog-actions .pw-danger{color:#fff;background:lab(42.9059% 48.0091 44.5577);border-color:lab(70.2036% 28.7759 23.4621)}.source-floor-row{grid-template-columns:minmax(0,1fr) 34px;gap:5px;margin-bottom:10px;display:grid}.source-floor-row select{border:1px solid var(--line);background:var(--paper);min-width:0;height:35px;color:var(--ink);cursor:pointer;border-radius:8px;padding:0 28px 0 9px;font-size:10px;font-weight:650}.source-floor-row button{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:8px;padding:0}.drawing-list{gap:4px;margin:10px 0;display:grid}.drawing-row{border:1px solid #0000;border-radius:8px;grid-template-columns:minmax(0,1fr) 29px;align-items:center;display:grid}.drawing-row.is-active{border-color:var(--line);background:var(--surface-muted)}.drawing-row>button:first-child{cursor:pointer;background:0 0;border:0;justify-content:flex-start;min-width:0;min-height:38px;padding:0 7px;font-size:9px}.drawing-row>button:first-child span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.drawing-row>button:last-child{width:27px;height:27px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0}.drawing-row>button:last-child:hover{color:var(--ink);background:var(--surface)}.source-actions{grid-template-columns:1fr 1fr;gap:5px;margin:8px 0 4px;display:grid}.source-actions button{border:1px solid var(--line);background:var(--surface);min-height:33px;color:var(--muted);cursor:pointer;border-radius:8px;padding:0 7px;font-size:9px;font-weight:690}.source-actions button:first-child{color:var(--accent)}.hidden-file-input{display:none}button.upload-tile{justify-content:initial;width:100%;color:inherit;text-align:left}.studio-layout.is-workspace-busy{pointer-events:none}@media (max-width:720px){.topbar{grid-template-columns:auto minmax(0,1fr) auto;gap:6px}.project-title{min-width:0;max-width:none;padding:3px 6px;display:flex;overflow:hidden}.project-title-copy{justify-items:start}.project-title-copy>span{max-width:100%;font-size:11px}.project-title-copy>small{display:none}.top-actions .segmented{padding:2px}.top-actions .segmented button{min-height:32px;padding:0 8px}.top-actions .icon-button{width:34px;height:34px}.top-actions>.quiet-button{display:none}.pw-backdrop{padding:0}.pw-panel{border:0;border-radius:0;width:100%;height:100dvh;min-height:0;max-height:none}.pw-heading{min-height:62px;padding:0 14px}.pw-layout{grid-template-columns:1fr;height:calc(100dvh - 62px);min-height:0;overflow:auto}.pw-projects{border-right:0;border-bottom:1px solid var(--line);min-height:200px;max-height:44dvh}.pw-workspace{padding:15px;overflow:visible}.pw-drawings-heading{align-items:flex-start}.pw-drawing-select{grid-template-columns:40px minmax(0,1fr)}.pw-drawing-thumb{width:40px;height:44px}.pw-overlay-state{display:none}.pw-subdialog-backdrop{align-items:end;padding:10px;position:fixed}.pw-subdialog{border-radius:15px;width:100%}}.variant-tabs-bar{z-index:8;border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:auto minmax(72px,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:44px;padding:5px 10px 5px 14px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.variant-tabs-bar{background:color-mix(in oklch, var(--surface) 96%, transparent)}}.camera-views-bar{z-index:9;border-bottom:1px solid var(--line);background:var(--surface);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;max-height:258px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.camera-views-bar{background:color-mix(in oklch, var(--surface) 98%, transparent)}}.camera-views-bar{box-shadow:0 8px 22px lab(13.0456% .583559 5.48418/.06)}.camera-views-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:5px 12px;display:flex}.camera-views-title,.camera-views-actions{align-items:center;gap:7px;display:flex}.camera-views-title{font-size:12px}.camera-views-title svg{color:#327c89}.camera-views-title>span{color:#2f717c;background:#e2f1f2;border-radius:999px;place-items:center;min-width:23px;height:23px;font-size:10px;font-weight:760;display:grid}.camera-views-actions button,.camera-look-through,.camera-update-current,.camera-delete-button,.camera-delete-confirm button,.camera-render-actions button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:40px;padding:0 11px;font-size:11px;font-weight:690}.camera-views-actions button.is-active,.camera-look-through{border-color:#327c89}@supports (color:color-mix(in lab, red, red)){.camera-views-actions button.is-active,.camera-look-through{border-color:color-mix(in oklch, #327c89 46%, var(--line))}}.camera-views-actions button.is-active,.camera-look-through{color:#286b76;background:#e9f5f6}.camera-views-content{grid-template-columns:minmax(250px,1fr) minmax(300px,36%);min-width:0;min-height:0;display:grid}.camera-filmstrip{overscroll-behavior-inline:contain;align-items:stretch;gap:7px;min-width:0;padding:9px 11px;display:flex;overflow-x:auto}.camera-filmstrip.is-empty{align-items:center}.camera-filmstrip-empty{border:1px dashed #327c89;justify-content:flex-start;gap:10px;min-width:250px;min-height:70px;padding:8px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.camera-filmstrip-empty{border:1px dashed color-mix(in oklch, #327c89 42%, var(--line))}}.camera-filmstrip-empty{color:#286b76;text-align:left;cursor:pointer;background:#f5fbfb;border-radius:10px}.camera-filmstrip-empty>span{gap:3px;display:grid}.camera-filmstrip-empty strong{font-size:11px}.camera-filmstrip-empty small{color:var(--muted);font-size:9.5px;font-weight:540}.camera-shot{border:1px solid var(--line);background:var(--paper);border-radius:10px;flex:0 0 154px;min-height:72px;position:relative;overflow:hidden}.camera-shot.is-active{border-color:#388b9a;box-shadow:inset 0 0 0 1px #388b9a38}.camera-shot>button{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:30px minmax(0,1fr);align-items:end;gap:7px;width:100%;min-height:72px;padding:8px 26px 8px 8px;display:grid;overflow:hidden}.camera-shot-thumbnail{opacity:.34;pointer-events:none;background-color:#ebe6dd;background-position:50%;background-repeat:no-repeat;background-size:contain;position:absolute;inset:0}.camera-shot-number{color:#fff;background:#327c89;border-radius:8px;place-items:center;width:27px;height:27px;font-size:10px;font-weight:780;display:grid;position:relative}.camera-shot.is-active .camera-shot-number{background:var(--accent)}.camera-shot-copy{gap:3px;min-width:0;display:grid;position:relative}.camera-shot-copy strong,.camera-shot-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.camera-shot-copy strong{font-size:11px}.camera-shot-copy small{color:var(--muted);font-size:9.5px;font-weight:590}.camera-shot-include{z-index:2;border:1px solid var(--line);background:var(--surface);border-radius:7px;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:6px;right:6px}@supports (color:color-mix(in lab, red, red)){.camera-shot-include{background:color-mix(in oklch, var(--surface) 92%, transparent)}}.camera-shot-include{cursor:pointer}.camera-shot-include input{opacity:0;width:1px;height:1px;position:absolute}.camera-shot-include svg{opacity:0;color:#286b76}.camera-shot-include:has(input:checked){background:#e5f2f3;border-color:#7caeb5}.camera-shot-include:has(input:checked) svg{opacity:1}.camera-view-inspector{border-left:1px solid var(--line);background:var(--surface);grid-template-columns:minmax(110px,.8fr) minmax(190px,1.4fr);align-content:start;gap:7px 10px;min-width:0;padding:8px 10px;display:grid;overflow-y:auto}.camera-view-inspector-heading{grid-column:1}.camera-view-inspector-heading>div{gap:2px;display:grid}.camera-view-inspector-heading strong{font-size:11px}.camera-view-inspector-heading span,.camera-view-name-field>span,.camera-view-fields label>span:first-child,.camera-lens-fieldset legend{color:var(--muted);font-size:10px;font-weight:680}.camera-view-name-field{grid-column:1;gap:3px;display:grid}.camera-view-name-field input,.camera-view-fields input,.camera-view-fields select,.camera-quality-select select{border:1px solid var(--line);background:var(--paper);min-width:0;height:38px;color:var(--ink);border-radius:7px;padding:0 8px;font-size:11px}.camera-lens-fieldset{border:0;grid-area:1/2/span 2;min-width:0;margin:0;padding:0}.camera-lens-fieldset legend{align-items:center;gap:4px;display:flex}.camera-lens-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:4px;display:grid}.camera-lens-options button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:7px;align-content:center;gap:1px;min-width:0;min-height:42px;padding:3px;display:grid}.camera-lens-options button strong{font-size:10px}.camera-lens-options button span{color:var(--muted);font-size:8.5px}.camera-lens-options button.is-active{color:#286b76;background:#e9f5f6;border-color:#6da4ae}.camera-view-fields{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.camera-view-fields label{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 6px;min-width:0;display:grid}.camera-view-fields label>small{color:var(--muted);grid-column:1/-1;font-size:9px}.camera-unit-input{display:block;position:relative}.camera-unit-input input{width:100%;padding-right:28px}.camera-unit-input>small{color:var(--muted);pointer-events:none;font-size:8px;position:absolute;top:11px;right:7px}.camera-batch-toggle{cursor:pointer;grid-column:1/-1;align-items:center;gap:7px;min-height:42px;font-size:10px;display:flex}.camera-batch-toggle>span{gap:1px;display:grid}.camera-batch-toggle small{color:var(--muted);font-size:9px}.camera-look-through{grid-column:1;align-self:center}.camera-update-current{border-color:#327c89;grid-column:2;align-self:center}@supports (color:color-mix(in lab, red, red)){.camera-update-current{border-color:color-mix(in oklch, #327c89 38%, var(--line))}}.camera-update-current{color:#286b76;background:#f3f9f9}.camera-delete-button{color:#9a432f;grid-column:1}.camera-delete-confirm{color:#8f3c2c;grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.camera-delete-confirm>div{gap:5px;display:flex}.camera-delete-confirm .is-danger{color:#8f3c2c;background:#fff0eb;border-color:#d99b8a}.camera-render-preview{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:92px minmax(0,1fr);gap:8px;min-width:0;padding-top:7px;display:grid}.camera-render-image{background-color:#ebe6dd;background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:7px;max-height:150px}.camera-render-preview-copy{align-content:center;gap:3px;min-width:0;display:grid}.camera-render-preview-copy strong{font-size:10px}.camera-render-preview-copy small{color:var(--muted);font-size:9px;line-height:1.35}.camera-render-preview-copy a{color:#286b76;width:max-content;font-size:9px;font-weight:720}.camera-render-preview.is-stale .camera-render-image{opacity:.58;filter:saturate(.65)}.camera-render-actions{border-top:1px solid var(--line);background:var(--paper);justify-content:flex-end;align-items:center;gap:10px;min-height:42px;padding:5px 10px;display:flex}.camera-render-summary{gap:1px;min-width:128px;margin-right:auto;display:grid}.camera-render-summary strong{color:var(--ink);font-size:10px}.camera-render-summary small{color:var(--muted);font-size:9px}.camera-quality-select{color:var(--muted);align-items:center;gap:6px;font-size:9px;font-weight:680;display:flex}.camera-quality-select select{width:104px}.camera-render-actions .camera-render-button{color:#fff;background:#286b76;border-color:#286b76}.camera-render-actions .camera-preview-button{border-color:#327c89}@supports (color:color-mix(in lab, red, red)){.camera-render-actions .camera-preview-button{border-color:color-mix(in oklch, #327c89 38%, var(--line))}}.camera-render-actions .camera-preview-button{color:#286b76}.camera-render-actions .camera-cancel-button{color:#8e3d2b;background:#fff1eb;border-color:#d49b89}.camera-views-error{z-index:6;color:#8e3d2b;background:#fff1eb;border:1px solid #dca793;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-height:38px;padding:7px 9px;font-size:10px;display:flex;position:absolute;inset:auto 10px 8px}.camera-views-error button{cursor:pointer;background:0 0;border:0;width:26px;height:26px;padding:0}.camera-ai-confirm{z-index:5;border:1px solid #327c89;justify-content:space-between;align-items:center;gap:14px;min-height:64px;padding:10px 12px;display:flex;position:absolute;inset:auto 10px 8px}@supports (color:color-mix(in lab, red, red)){.camera-ai-confirm{border:1px solid color-mix(in oklch, #327c89 48%, var(--line))}}.camera-ai-confirm{background:var(--surface);border-radius:11px}@supports (color:color-mix(in lab, red, red)){.camera-ai-confirm{background:color-mix(in oklch, var(--surface) 97%, #e9f5f6)}}.camera-ai-confirm{box-shadow:0 12px 28px lab(11.8715% 1.1836 6.24765/.18)}.camera-ai-confirm>span{gap:3px;min-width:0;display:grid}.camera-ai-confirm strong{font-size:11px}.camera-ai-confirm small{color:var(--muted);font-size:9px;line-height:1.35}.camera-ai-confirm>div{flex:none;gap:7px;display:flex}.camera-ai-confirm button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink);cursor:pointer;border-radius:8px;padding:0 11px;font-size:10px;font-weight:700}.camera-ai-confirm button.is-primary{color:#fff;background:#286b76;border-color:#286b76}@media (max-width:1200px){.workspace.has-variant-tabs.has-camera-panel{grid-template-rows:56px minmax(286px,auto) 44px minmax(0,1fr)}.camera-views-bar{max-height:390px}.camera-views-content{grid-template-columns:minmax(0,1fr);overflow-y:auto}.camera-filmstrip{min-height:76px;padding-block:6px}.camera-shot,.camera-shot>button{min-height:64px}.camera-view-inspector{border-top:1px solid var(--line);border-left:0;grid-template-columns:minmax(135px,.8fr) repeat(2,minmax(175px,1fr));overflow:visible}.camera-view-inspector-heading{grid-area:1/1}.camera-view-name-field{grid-area:2/1}.camera-lens-fieldset{grid-area:1/2/span 2/4}.camera-view-fields{grid-area:3/1/auto/-1}.camera-batch-toggle{display:none}.camera-delete-button,.camera-delete-confirm{grid-area:4/1}.camera-look-through{grid-area:4/2}.camera-update-current{grid-area:4/3}.camera-render-preview{grid-area:5/1/auto/-1}}@container plan-workspace (width<=900px){.workspace.has-variant-tabs.has-camera-panel{grid-template-rows:56px minmax(286px,auto) 44px minmax(0,1fr)}.camera-views-bar{max-height:390px}.camera-views-content{grid-template-columns:minmax(0,1fr);overflow-y:auto}.camera-filmstrip{min-height:76px;padding-block:6px}.camera-shot,.camera-shot>button{min-height:64px}.camera-view-inspector{border-top:1px solid var(--line);border-left:0;grid-template-columns:minmax(135px,.8fr) repeat(2,minmax(175px,1fr));overflow:visible}.camera-view-inspector-heading{grid-area:1/1}.camera-view-name-field{grid-area:2/1}.camera-lens-fieldset{grid-area:1/2/span 2/4}.camera-view-fields{grid-area:3/1/auto/-1}.camera-batch-toggle{display:none}.camera-delete-button,.camera-delete-confirm{grid-area:4/1}.camera-look-through{grid-area:4/2}.camera-update-current{grid-area:4/3}.camera-render-preview{grid-area:5/1/auto/-1}}@media (max-width:920px){.workspace.has-variant-tabs.has-camera-panel{grid-template-rows:56px minmax(286px,auto) 44px minmax(0,1fr)}.camera-views-content{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.camera-views-bar{max-height:min(70dvh,520px)}.camera-views-toolbar{align-items:flex-start}.camera-views-actions{flex-wrap:wrap;justify-content:flex-end}.camera-view-inspector{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.camera-view-inspector-heading{grid-area:1/1}.camera-view-name-field{grid-area:2/1}.camera-lens-fieldset{grid-area:1/2/span 2}.camera-view-fields{grid-area:3/1/auto/-1}.camera-batch-toggle{grid-area:4/1/auto/-1;display:flex}.camera-look-through{grid-area:5/1}.camera-update-current{grid-area:5/2}.camera-delete-button,.camera-delete-confirm{grid-area:6/1/auto/-1}.camera-render-preview{grid-area:7/1/auto/-1}.camera-render-actions{flex-wrap:wrap}.camera-render-summary{flex:1 0 100%}.camera-ai-confirm{flex-direction:column;align-items:stretch}.camera-ai-confirm>div{justify-content:flex-end}}.variant-tabs-label{color:var(--muted);letter-spacing:.055em;text-transform:uppercase;white-space:nowrap;font-size:9px;font-weight:720}.variant-tabs-scroller{overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:3px;min-width:0;display:flex;overflow-x:auto}.variant-tabs-scroller::-webkit-scrollbar{display:none}.variant-tab{max-width:180px;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;justify-content:flex-start;padding:0 12px;font-size:10px;font-weight:650;position:relative}.variant-tab>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.variant-tab:hover:not(:disabled){background:var(--surface-muted);color:var(--ink)}.variant-tab.is-active{border-color:var(--accent);padding-right:24px}@supports (color:color-mix(in lab, red, red)){.variant-tab.is-active{border-color:color-mix(in oklch, var(--accent) 28%, var(--line))}}.variant-tab.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px lab(13.0456% .583559 5.48418/.09)}.variant-tab-current{background:var(--accent);border-radius:999px;width:6px;height:6px;position:absolute;right:10px}.variant-tabs-actions{align-items:center;gap:3px;display:flex}.variant-copy-button{border:1px solid var(--line);background:var(--surface);min-height:32px;color:var(--ink);white-space:nowrap;cursor:pointer;border-radius:8px;padding:0 10px;font-size:9px;font-weight:700}.variant-copy-button:hover:not(:disabled){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.variant-copy-button:hover:not(:disabled){border-color:color-mix(in oklch, var(--accent) 38%, var(--line))}}.variant-copy-button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.variant-more-wrap{position:relative}.variant-more-button{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:0}.variant-more-button:hover:not(:disabled),.variant-more-button[aria-expanded=true]{border-color:var(--line);background:var(--surface);color:var(--ink)}.variant-popover{z-index:20;border:1px solid var(--line);background:var(--surface);border-radius:11px;width:230px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 34px lab(13.0456% .583559 5.48418/.18)}.variant-menu{gap:2px;width:154px;display:grid}.variant-menu>button{cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:flex-start;min-height:34px;padding:0 9px;font-size:9px}.variant-menu>button:hover:not(:disabled){background:var(--surface-muted)}.variant-menu>button:focus-visible{background:var(--surface-muted)}.variant-menu>button.is-danger{color:lab(38.4535% 41.8731 37.9986)}.variant-popover-heading{justify-content:space-between;align-items:center;min-height:31px;padding:0 2px 5px 5px;display:flex}.variant-popover-heading strong{font-size:10px}.variant-popover-heading button{width:27px;height:27px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0}.variant-popover-heading button:hover{background:var(--surface-muted);color:var(--ink)}.variant-editor{padding:7px}.variant-editor>label{gap:5px;padding:4px 4px 0;display:grid}.variant-editor>label>span{color:var(--muted);font-size:8px;font-weight:680}.variant-editor input{border:1px solid var(--line);background:var(--paper);width:100%;height:36px;color:var(--ink);border-radius:7px;padding:0 9px;font-size:10px}.variant-popover-actions{justify-content:flex-end;gap:5px;margin-top:9px;padding:0 4px 3px;display:flex}@media (max-width:720px){.top-actions .view-mode-control button{min-height:44px;padding-inline:7px}.view-mode-control button svg{display:none}.render-style-panel{width:min(306px,100% - 16px);top:52px;right:8px}.render-style-controls{max-height:min(520px,100dvh - 230px)}}.variant-popover-actions button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:7px;min-height:32px;padding:0 9px;font-size:9px;font-weight:700}.variant-popover-actions button.is-primary{border-color:var(--accent);background:var(--accent);color:#fff}.variant-popover-actions button.is-danger{color:#fff;background:lab(42.9059% 48.0091 44.5577);border-color:lab(70.2036% 28.7759 23.4621)}.variant-delete{padding:13px}.variant-delete>strong{font-size:11px;display:block}.variant-delete>p{color:var(--muted);margin:6px 0 0;font-size:9px;line-height:1.45}.variant-popover-error{font-weight:650;color:lab(38.4535% 41.8731 37.9986)!important;margin:7px 4px 0!important;font-size:8px!important}.variant-bar-error{color:lab(36.1249% 41.9802 38.767);background:lab(96.3352% 6.94448 5.57563);border:1px solid lab(78.5802% 19.8498 16.0128);border-radius:8px;max-width:min(320px,100vw - 20px);margin:0;padding:7px 9px;font-size:9px;position:absolute;top:calc(100% + 6px);right:10px;box-shadow:0 8px 20px lab(13.0456% .583559 5.48418/.12)}@media (max-width:840px){.variant-tabs-bar{grid-template-columns:minmax(64px,1fr) auto;padding-left:9px}.variant-tabs-label{display:none}}@media (max-width:560px){.variant-tabs-bar{gap:4px;padding-right:6px}.variant-tab{max-width:128px;padding-inline:9px}.variant-tab.is-active{padding-right:21px}.variant-tab-current{right:8px}.variant-copy-button{width:34px;padding:0}.variant-copy-button>span{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.variant-popover{width:min(260px,100vw - 16px)}}.project-title{gap:12px}.project-title-route{color:var(--accent);flex:none;align-items:center;gap:5px;display:inline-flex;font-size:10px!important;font-weight:720!important}.project-title-route:after{content:"/";color:var(--line);margin-left:4px;font-size:14px;font-weight:500}.project-title-copy{justify-items:start}.project-title-copy>small:after{display:none}.save-menu{position:relative}.save-menu-trigger{min-width:92px}.save-menu-trigger--saved>svg:first-child{color:var(--success)}.save-menu-trigger--saving>svg:first-child{color:var(--warning)}.save-menu-trigger--error{color:lab(38.4535% 41.8731 37.9986)}.save-menu-popover{z-index:40;border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:3px;width:286px;padding:6px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 16px 38px lab(13.0456% .583559 5.48418/.18)}.save-menu-popover>button{justify-content:initial;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:24px minmax(0,1fr);gap:8px;min-height:48px;padding:7px 9px;display:grid}.save-menu-popover>button:hover:not(:disabled){background:var(--surface-muted)}.save-menu-popover>button:focus-visible{background:var(--surface-muted)}.save-menu-popover>button>svg{color:var(--accent)}.save-menu-popover>button>span,.save-menu-status>div{gap:2px;min-width:0;display:grid}.save-menu-popover strong{font-size:10px}.save-menu-popover small{color:var(--muted);font-size:8px;line-height:1.35}.save-menu-status{border-bottom:1px solid var(--line);grid-template-columns:8px minmax(0,1fr);align-items:center;gap:10px;margin-bottom:2px;padding:9px 10px;display:grid}.save-menu-status>span{background:var(--success);border-radius:999px;width:8px;height:8px}.save-menu-status--saving>span{background:var(--warning);animation:1.1s ease-in-out infinite pulse}.save-menu-status--error>span{background:lab(42.9059% 48.0091 44.5577)}.inspector-help kbd{border:1px solid var(--line);background:var(--surface-muted);min-height:18px;color:var(--ink);font:inherit;border-radius:5px;align-items:center;padding:0 5px;font-weight:720;display:inline-flex}.furniture-catalog-tray{width:min(360px,100% - 24px);max-height:calc(100% - 64px)}.furniture-catalog-scroll{overscroll-behavior:contain;max-height:min(650px,100dvh - 188px);overflow-y:auto}.dining-set-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:3px 7px 9px;display:grid}.dining-set-grid>button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:9px;align-content:center;justify-items:center;gap:4px;min-width:0;min-height:92px;padding:7px 5px;display:grid}.dining-set-grid>button:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dining-set-grid>button:hover{border-color:color-mix(in oklch, var(--accent) 42%, var(--line))}}.dining-set-grid>button:hover{background:var(--accent-soft)}.dining-set-grid strong{font-size:9px}.dining-set-grid small{color:var(--muted);font-size:8px}.dining-set-icon{place-items:center;width:45px;height:34px;display:grid;position:relative}.dining-set-icon>i{background:#a98462;border-radius:4px;width:28px;height:18px;display:block;box-shadow:inset 0 0 0 1px lab(13.0456% .583559 5.48418/.15)}.dining-set-icon>b{pointer-events:none;flex-wrap:wrap;place-content:space-between space-around;display:flex;position:absolute;inset:0}.dining-set-icon em{background:#c9bbaa;border:1px solid lab(32.7425% 1.94791 7.56519);border-radius:3px;width:8px;height:7px;display:block}@media (max-width:720px){.project-title{gap:5px}.project-title-route{font-size:0!important}.project-title-route svg{width:16px;height:16px}.project-title-route:after{margin-left:1px}.save-menu-trigger{width:34px;min-width:34px;min-height:34px;padding:0}.save-menu-trigger>span,.save-menu-trigger>svg:last-child{display:none}.save-menu-popover{width:min(286px,100vw - 16px);position:fixed;top:64px;right:8px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
