.page:has(.planner){max-width:1600px}.builder-wall-modes{background:var(--surface);border:1px solid var(--line);border-radius:10px;gap:3px;padding:4px;display:flex}.floor-builder .builder-wall-modes button{background:0 0;border:0;width:34px;min-height:34px;padding:6px}.floor-builder .builder-wall-modes button[aria-checked=true]{background:var(--ink);color:var(--primary-foreground)}.builder-wall-modes .planner-icon svg{width:20px;height:20px}.builder-assets{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:12px;width:250px;max-width:calc(100% - 70px);padding:12px;animation:.2s inspector-arrive;position:absolute;top:54px;left:56px;box-shadow:0 8px 28px #0004}.builder-assets header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.builder-assets header button{min-height:28px;padding:4px}.builder-assets input{background:var(--field);border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);font:inherit;border-radius:7px;margin-bottom:8px;padding:8px;font-size:.82rem}.builder-assets-list{gap:4px;max-height:min(420px,100dvh - 220px);display:grid;overflow-y:auto}.floor-builder .builder-assets-list button{text-align:left;justify-content:flex-start;gap:10px;width:100%}.builder-assets-list small{color:var(--muted-ink);font-size:.7rem;display:block}.floor-builder .builder-viewer>.builder-camera{flex-wrap:wrap;max-width:calc(100% - 110px);flex-direction:row!important}.builder-edit-tools{max-width:min(300px,100% - 36px);top:auto;bottom:76px;right:12px}.builder-contextmenu{z-index:1800;background:var(--surface);border:1px solid var(--line);border-radius:10px;width:220px;padding:6px;animation:.14s ease-out context-arrive;position:fixed;box-shadow:0 8px 30px #0005}.floor-builder .builder-contextmenu button{text-align:left;background:0 0;border:0;justify-content:flex-start;width:100%;min-height:38px;display:flex}.floor-builder .builder-contextmenu button:hover{background:var(--field)}.builder-contextmenu button:has([data-tool-icon=remove]){color:var(--flag)}@keyframes context-arrive{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.builder-contextmenu{animation:none}}.floor-builder{position:relative}.floor-builder>.builder-edit-alert{z-index:20;border:1px solid var(--flag);background:var(--surface);border-radius:10px;align-items:center;gap:10px;width:max-content;margin:0;padding:10px 12px;animation:.22s ease-out edit-alert-arrive;display:flex;right:auto;transform:translate(-50%);box-shadow:0 6px 24px #0003;max-width:calc(100% - 36px)!important;position:absolute!important;bottom:108px!important;left:50%!important}.builder-edit-alert span{overflow-wrap:anywhere;max-width:500px;font-size:.83rem;line-height:1.4}.floor-builder .builder-edit-alert button{background:0 0;border:0;flex:none;width:28px;min-height:28px;padding:4px}@keyframes edit-alert-arrive{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.floor-builder>.builder-edit-alert{animation:none}}.builder-viewer{position:relative}.builder-viewport-tools{z-index:5;grid-template-columns:auto 72px;justify-items:center;gap:8px;display:grid;position:absolute;top:10px;right:10px}.builder-viewport-tools>svg{background:color-mix(in srgb,var(--surface) 88%,transparent);border-radius:50%;grid-area:1/2;width:72px;height:72px;overflow:visible}.builder-viewport-tools g{cursor:pointer}.builder-viewport-tools g:focus-visible{outline:2px solid var(--chalk)}.builder-viewport-tools line{stroke-width:2px}.builder-viewport-tools text{text-anchor:middle;paint-order:stroke;stroke:var(--surface);stroke-width:2px;font:700 11px sans-serif}.builder-viewport-tools [data-axis=x]{stroke:#e76e72;fill:#e76e72}.builder-viewport-tools [data-axis=y]{stroke:#79b985;fill:#79b985}.builder-viewport-tools [data-axis=z]{stroke:#73a5df;fill:#73a5df}.builder-viewport-tools>.builder-tools{background:var(--surface);border:1px solid var(--line);border-radius:10px;grid-area:1/1;grid-template-columns:repeat(4,38px);align-self:start;padding:4px;display:grid}.builder-viewport-tools>.builder-wall-modes{flex-direction:column;grid-area:2/2;align-items:center}.builder-viewport-tools button{gap:0;width:38px;min-height:36px;padding:6px;font-size:0}.builder-door-display{z-index:4;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px;animation:.25s inspector-arrive;position:absolute;top:12px;left:12px}.builder-door-display>strong{margin-bottom:6px;font-size:.8rem;display:block}.planner-home-link{color:var(--ink);border-right:1px solid var(--line);margin-right:12px;padding-right:12px;font-size:.95rem;font-weight:700;text-decoration:none}.planner>header{gap:8px}@media (width>=1101px){.shell:has(.planner){grid-template-columns:240px minmax(0,1fr)!important;display:grid!important}.shell:has(.planner)>.shell-side{display:block!important}.shell:has(.planner) .shell-main{min-width:0;height:100dvh}.planner-grid{grid-template-columns:minmax(0,1fr) 300px!important}.planner-grid>.room-controls{grid-area:1/2}.planner-grid>.room-results{grid-area:1/1}.builder-object-card[data-docked=true]{width:100%;box-shadow:none;margin:0 0 14px;padding:12px;position:relative;inset:auto}.builder-object-card[data-docked=true][data-open=false]{display:none}}.builder-edit-tools{z-index:4;background:var(--surface);border:1px solid var(--line);border-radius:10px;max-width:min(340px,100% - 24px);padding:10px;position:absolute;top:12px;right:12px}.builder-edit-tools>.builder-tools{margin-bottom:8px}.builder-edit-tools .hint{margin:0;font-size:.73rem}@media (width>=1101px){html:has(.planner){overflow:hidden}.planner-grid>.room-controls{align-self:stretch;height:100%;min-height:0;max-height:100%}.planner-grid>.room-results{align-self:stretch;height:100%;min-height:0;max-height:100%;overflow:hidden}.planner-grid>.room-results .floor-builder.app-workbench:not(.is-fullscreen){box-sizing:border-box;max-height:100%;padding:0;height:100%!important}}.builder-object-card{opacity:0;visibility:hidden;transition:opacity .18s,transform .22s,visibility .18s;transform:translateY(8px)scale(.985)}.builder-object-card[data-open=true]{opacity:1;visibility:visible;animation:.3s ease-out inspector-arrive;transform:none}.builder-object-card[data-open=false]{pointer-events:none}@keyframes inspector-arrive{0%{opacity:0;box-shadow:0 0 0 2px var(--flag),0 0 24px color-mix(in srgb,var(--flag) 24%,transparent);transform:translateY(8px)scale(.985)}to{opacity:1;transform:none;box-shadow:0 8px 28px #0003}}@media (prefers-reduced-motion:reduce){.builder-object-card{transition:none}.builder-object-card[data-open=true]{animation:none}}.floor-builder:is(.is-fullscreen,.app-workbench){grid-template-rows:44px minmax(0,1fr) 70px 24px;grid-template-columns:48px minmax(0,1fr);gap:8px;height:100dvh;padding:8px;display:grid;overflow:hidden}.floor-builder:is(.is-fullscreen,.app-workbench)>.builder-top{grid-area:1/1/auto/-1;margin:0;padding:0 0 6px}.floor-builder:is(.is-fullscreen,.app-workbench)>.builder-toolbar-slot{scrollbar-width:thin;grid-area:2/1;gap:10px;overflow:hidden auto;height:auto!important}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-toolbar-slot .builder-tools,.floor-builder:is(.is-fullscreen,.app-workbench) .builder-catalog,.floor-builder:is(.is-fullscreen,.app-workbench) .builder-camera{flex-direction:column;gap:4px}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-toolbar-slot button{gap:0;width:40px;min-width:40px;min-height:36px;padding:7px;font-size:0}.floor-builder:is(.is-fullscreen,.app-workbench)>.builder-instruction{white-space:nowrap;text-overflow:ellipsis;grid-area:4/2;height:24px;min-height:0;margin:0;font-size:.74rem;overflow:hidden}.floor-builder:is(.is-fullscreen,.app-workbench)>div:has(>.builder-stage),.floor-builder:is(.is-fullscreen,.app-workbench)>.builder-viewer{grid-area:2/2;height:100%;min-height:0;position:relative}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-stage{height:100%}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-plan,.floor-builder:is(.is-fullscreen,.app-workbench) .builder-3d{min-height:0;margin:0;height:100%!important}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-navigation,.floor-builder:is(.is-fullscreen,.app-workbench) .builder-viewer>.builder-camera{background:var(--surface);border:1px solid var(--line);z-index:3;border-radius:10px;justify-content:flex-start;gap:5px;padding:5px;position:absolute;bottom:10px;left:10px}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-viewer>.builder-camera button{min-height:34px;padding:5px;font-size:.7rem}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-viewer>.hint,.floor-builder:is(.is-fullscreen,.app-workbench)>.hint{display:none}.floor-builder:is(.is-fullscreen,.app-workbench)>.builder-object-list{grid-area:3/2;min-height:0;margin:0;overflow:auto hidden}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-object-list>header{display:none}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-objects{gap:6px;height:100%;display:flex}.floor-builder:is(.is-fullscreen,.app-workbench) .builder-objects button{flex:none;min-width:130px}.floor-builder:is(.is-fullscreen,.app-workbench)>.builder-error{z-index:5;background:var(--surface);border:1px solid var(--flag);border-radius:8px;max-width:calc(100% - 80px);padding:8px;position:absolute;bottom:100px;left:64px}@media (width>=1101px){.shell:has(.planner){display:block}.shell:has(.planner)>.shell-side,.shell:has(.planner) .foot{display:none}.page:has(.planner){max-width:none;padding:0}.planner{grid-template-rows:56px minmax(0,1fr);height:100dvh;display:grid;padding:0!important}.planner>header{border-bottom:1px solid var(--line);grid-row:1;align-items:center;padding:0 18px;display:flex}.planner>header .h1{margin:0;font-size:1.3rem}.planner>header p{display:none}.planner>.room-toolbar{z-index:5;margin:0;position:absolute;top:6px;right:76px}.planner>[data-room-status]{z-index:5;background:var(--surface);max-width:270px;margin:0;font-size:.7rem;position:fixed;bottom:4px;left:12px}.planner-grid{grid-row:2;min-height:0;grid-template-columns:300px minmax(0,1fr)!important;gap:0!important;margin:0!important}.room-controls{overflow:auto;border-radius:0!important;padding:16px 12px 40px!important}.room-results{height:100%;min-height:0;border:0!important;border-radius:0!important;padding:8px!important}.room-results .floor-builder{grid-template-rows:44px minmax(0,1fr) 70px 24px;grid-template-columns:48px minmax(0,1fr);gap:8px;height:100%;display:grid}}.room-settings-section .room-tabs{flex-direction:column;gap:8px;display:flex!important}.room-accordion{border:1px solid var(--line);border-radius:10px;width:100%;overflow:hidden}.room-accordion-trigger{grid-template-columns:1fr auto;gap:2px 8px;width:100%;display:grid;text-align:left!important;border:0!important;border-radius:0!important}.room-accordion-trigger>span:first-child{font-weight:600}.room-accordion-trigger small{color:var(--ink-2);grid-column:1;font-size:.72rem}.room-accordion-trigger>span:last-child{grid-area:1/2/3;align-self:center;display:flex}.room-accordion-trigger svg{width:18px;height:18px;transition:transform .2s}.room-accordion[data-open=true] .room-accordion-trigger{background:var(--tint)!important}.room-accordion[data-open=true] .room-accordion-trigger svg{transform:rotate(180deg)}.room-accordion-panel{grid-template-rows:0fr;transition:grid-template-rows .24s;display:grid}.room-accordion[data-open=true] .room-accordion-panel{grid-template-rows:1fr}.room-accordion-inner{min-height:0;overflow:hidden}.room-accordion-inner form{padding:14px 10px}.room-accordion-inner .room-toolbar button{padding:7px;font-size:.76rem}@media (prefers-reduced-motion:reduce){.room-accordion-panel,.room-accordion-trigger svg{transition:none}}.builder-toolbar-slot{height:152px!important}@media (width<=600px){.builder-toolbar-slot{height:152px!important}.builder-toolbar-slot button{width:44px;min-width:44px;gap:0!important;padding:8px!important;font-size:0!important}.builder-toolbar-slot .planner-icon svg{width:21px;height:21px}}.builder-plan [data-resize-direction=n],.builder-plan [data-resize-direction=s]{cursor:ns-resize}.builder-plan [data-resize-direction=e],.builder-plan [data-resize-direction=w]{cursor:ew-resize}.builder-plan [data-resize-direction=nw],.builder-plan [data-resize-direction=se]{cursor:nwse-resize}.room-settings-section{border-bottom:1px solid var(--line);gap:9px;margin-bottom:18px;padding-bottom:18px;display:grid}.room-panel-label{color:var(--ink-2);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:600}.room-settings-section .room-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;display:grid}.room-tabs>.room-accordion>.room-accordion-trigger{overflow-wrap:anywhere;text-align:left;min-width:0}.room-settings-section .seg{margin:0}.builder-top{border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:12px}.builder-toolbar-slot{flex-direction:column;gap:8px;height:104px;display:flex}.builder-toolbar-slot .builder-catalog{border:0;margin:0;padding:0}.builder-camera-group{gap:8px;display:grid}.floor-builder .builder-instruction{height:3em;min-height:3em;margin:6px 0 10px;line-height:1.5}.floor-builder .builder-3d{margin:0 0 10px}.builder-navigation{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:0 0 12px;display:flex}.builder-object-list{margin-top:16px}.builder-object-list>header{justify-content:space-between;gap:12px;margin-bottom:8px;display:flex}.builder-objects{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;display:grid}.builder-objects button{text-align:left;min-width:0;justify-content:flex-start!important}.builder-objects button span{overflow-wrap:anywhere;min-width:0}.builder-objects small{opacity:.75;font-size:.72rem;display:block}.builder-selection-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;display:flex}.builder-object-card .builder-error,.builder-object-card .builder-furniture>.hint{grid-column:1/-1}.builder-object-card .builder-furniture:not(.is-compact){grid-template-columns:repeat(2,minmax(0,1fr))}.builder-object-card .builder-furniture>button{grid-column:1/-1}.builder-object-card .builder-furniture>.hint{margin:0;font-size:.72rem}@media (width<=600px){.builder-toolbar-slot{height:226px}.floor-builder .builder-instruction{height:6em;min-height:6em}.builder-objects{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-top>.builder-tools{flex-wrap:nowrap}.builder-top{align-items:center}.builder-top>button{font-size:.75rem}}.room-toolbar button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.room-toolbar svg{flex:none;width:18px;height:18px}.planner-icon{flex:none;display:inline-flex}.planner-icon svg{stroke:currentColor;stroke-width:1.7px;fill:none;width:18px;height:18px}.builder-stage{position:relative}.builder-object-card{background:var(--surface);border:1px solid var(--line);z-index:2;border-radius:12px;width:min(360px,100% - 24px);padding:12px;position:absolute;top:12px;right:12px;box-shadow:0 8px 28px #0003}.builder-object-card header,.builder-object-card strong{justify-content:space-between;align-items:center;gap:8px;display:flex}.builder-object-card .builder-furniture{background:0 0;border:0;grid-template-columns:repeat(3,minmax(0,1fr));margin:8px 0 0;padding:0}.bed-presets{border:0;grid-column:1/-1;margin:0;padding:0}.bed-presets legend{margin-bottom:6px;font-size:.8rem}.bed-presets>div{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.bed-presets button{flex-direction:column;gap:0;font-size:.75rem;display:flex;padding:5px!important}.bed-presets small{color:inherit;font-size:.68rem}.bed-presets .hint{margin:6px 0;font-size:.72rem}.builder-furniture.is-compact>button{grid-column:1/-1}.builder-object-hint{background:var(--surface);border:1px solid var(--line);pointer-events:none;border-radius:8px;gap:3px;padding:10px;font-size:.8rem;display:grid;position:absolute;top:12px;left:12px}.floor-builder.is-fullscreen{z-index:1500;background:var(--surface);padding:16px;position:fixed;inset:0;overflow:auto}.floor-builder.is-fullscreen .builder-plan,.floor-builder.is-fullscreen .builder-3d{height:calc(100dvh - 230px);min-height:300px}@media (width<=600px){.builder-object-card{width:100%;margin:8px 0;position:relative;inset:auto}.floor-builder.is-fullscreen{padding:10px}.floor-builder.is-fullscreen .builder-plan,.floor-builder.is-fullscreen .builder-3d{height:50dvh}}.planner-grid{grid-template-columns:minmax(260px,320px) minmax(0,1fr)!important}.planner .h1{font-size:clamp(2rem,3vw,2.8rem)}.floor-builder{min-width:0}.builder-top{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.builder-tools,.builder-camera,.builder-catalog{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.floor-builder button{border:1px solid var(--line);background:var(--field);min-height:40px;color:var(--ink);font:inherit;transition:background var(--dur-hover),color var(--dur-hover);border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:7px 11px;font-size:.83rem;font-weight:500;display:inline-flex}.floor-builder button:hover{background:var(--tint)}.floor-builder button[aria-pressed=true]{background:var(--ink);color:var(--primary-foreground);border-color:var(--ink)}.floor-builder button:focus-visible{outline:3px solid var(--chalk);outline-offset:2px}.builder-catalog{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.builder-catalog button{background:var(--surface)}.builder-instruction{min-height:2.5em;color:var(--ink-2);margin:12px 0 6px;font-size:.86rem}.builder-plan{background:var(--page);border:1px solid var(--line);touch-action:none;cursor:default;border-radius:12px;width:100%;height:440px;margin-bottom:10px;display:block}.builder-plan.tool-room{cursor:crosshair}.builder-plan [data-furniture-id],.builder-plan [data-opening-id]{cursor:move}.builder-plan [data-resize-room]{cursor:nesw-resize}.builder-plan [data-room-id]{cursor:move}.builder-3d{background:var(--page);border:1px solid var(--line);touch-action:none;border-radius:12px;height:440px;margin:10px 0;overflow:hidden}.builder-3d canvas{width:100%;height:100%;display:block}.builder-camera svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.builder-furniture{background:var(--field);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0;padding:14px;display:grid}.builder-furniture label{color:var(--ink-2);gap:4px;font-size:.8rem;display:grid}.builder-furniture input{width:100%;min-width:0;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:8px}.builder-error{color:var(--flag);font-size:.9rem}@media (width<=1100px){.planner-grid{grid-template-columns:1fr!important}.room-results{grid-row:1}.builder-plan,.builder-3d{height:380px}}@media (width<=480px){.builder-top{display:grid}.builder-tools button,.builder-camera button,.builder-catalog button{min-height:44px;padding:7px 9px;font-size:.8rem}.builder-plan,.builder-3d{height:300px}.builder-furniture{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-instruction{min-height:3.8em}.planner .h1{font-size:2rem}}@media (width>=1101px){.room-results .floor-builder.app-workbench:not(.is-fullscreen){height:100%;padding:0}.shell:has(.planner) .topbar{top:7px;right:16px}.shell:has(.planner){grid-template-columns:240px minmax(0,1fr)!important;display:grid!important}.shell:has(.planner)>.shell-side{display:block!important}.planner>.planner-grid{grid-template-columns:minmax(0,1fr) 300px!important}.planner>.planner-grid>.room-controls{grid-row:1;align-self:stretch;height:100%;min-height:0;max-height:100%;grid-column:2!important}.planner>.planner-grid>.room-results{grid-row:1;align-self:stretch;height:100%;min-height:0;max-height:100%;overflow:hidden;grid-column:1!important}.planner>header{z-index:6;background:var(--surface);padding-right:500px;position:sticky;top:0}.planner>.room-toolbar{z-index:7;position:fixed;top:6px;right:76px}.planner>.planner-grid>.room-results .floor-builder.app-workbench:not(.is-fullscreen){max-height:100%;padding:0;height:100%!important}}.room-controls .tip{width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.room-controls :is([data-room-form],[data-opening-form]){gap:8px;padding:10px}.room-controls :is([data-room-form],[data-opening-form]) .grid2{grid-template-columns:1fr;gap:6px}.room-controls :is([data-room-form],[data-opening-form]) .nf{grid-template-columns:minmax(0,1fr) 112px;align-items:center;gap:8px;display:grid}.room-controls :is([data-room-form],[data-opening-form]) .lbl-row{justify-content:space-between;align-items:center;gap:4px;min-width:0;margin:0}.room-controls :is([data-room-form],[data-opening-form]) .lbl{font-size:.76rem;font-weight:500;line-height:1.2}.room-controls :is([data-room-form],[data-opening-form]) .ig{border-radius:6px;height:30px;min-height:30px}.room-controls :is([data-room-form],[data-opening-form]) .ig input{text-align:right;height:28px;min-height:0;padding:4px 7px;font-size:.8rem}.room-controls :is([data-room-form],[data-opening-form]) .ig>span{min-width:28px;padding:4px 7px;font-size:.7rem}.room-controls :is([data-room-form],[data-opening-form]) .room-text{gap:4px;font-size:.76rem}.room-controls :is([data-room-form],[data-opening-form]) .room-text input{height:32px;padding:5px 8px;font-size:.82rem}.room-controls :is([data-room-form],[data-opening-form]) .tip,.room-controls :is([data-room-form],[data-opening-form]) .tip-btn{flex:none;justify-content:center;align-items:center;width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:50%!important;padding:0!important;display:inline-flex!important}.room-controls :is([data-room-form],[data-opening-form]) .tip-btn svg{width:13px;height:13px}.room-controls :is([data-room-form],[data-opening-form]) .room-toolbar{grid-template-columns:1fr 1fr;gap:6px;margin-top:4px;display:grid}.room-controls :is([data-room-form],[data-opening-form]) .room-toolbar button{min-height:32px;padding:5px 7px;font-size:.73rem}.room-controls :is([data-room-form],[data-opening-form]) .room-toolbar button[type=submit]{background:var(--ink);color:var(--primary-foreground);grid-column:1/-1}.room-controls :is([data-room-form],[data-opening-form])>.hint{margin:0;font-size:.7rem;line-height:1.35}.room-controls .disc:has(>#room-openings){border-radius:10px}.room-controls [aria-controls=room-openings]{background:var(--field);border-radius:10px;gap:8px;min-height:58px;padding:8px 12px}.room-controls [aria-controls=room-openings] .disc-title{font-size:.88rem;line-height:1.25}.room-controls [aria-controls=room-openings] .disc-sum{margin-top:2px;font-size:.72rem;line-height:1.3}.room-controls [aria-controls=room-openings] .disc-chev{width:18px;height:18px}.room-controls #room-openings .disc-pad{padding:0 10px 10px}.room-controls [data-opening-form]{padding:10px 0 0}.room-controls [data-opening-form] [data-slot=select-trigger]{border-radius:6px;width:100%;min-width:0;height:30px;min-height:30px;padding:4px 7px;font-size:.8rem}.room-controls [data-opening-form]>button[type=submit]{background:var(--ink);min-height:32px;color:var(--primary-foreground);justify-content:center;align-items:center;gap:6px;padding:5px 7px;font-size:.73rem;display:flex}.room-controls [data-opening-form]>button[type=submit] svg{width:14px;height:14px}.room-controls #room-openings .room-lines:not(:empty){border-top:1px solid var(--line);margin:8px 0 0;padding-top:8px;font-size:.73rem}.room-controls #room-openings .room-lines li{gap:8px;min-width:0;margin-bottom:6px}.room-controls #room-openings .room-lines li:last-child{margin-bottom:0}.room-controls #room-openings .room-lines button{flex:none;min-height:30px;padding:4px 8px;font-size:.73rem}@media (width<=900px){.room-controls :is([data-room-form],[data-opening-form]) .nf{grid-template-columns:minmax(0,1fr) 176px}.room-controls :is([data-room-form],[data-opening-form]) .ig{height:44px;min-height:44px}.room-controls :is([data-room-form],[data-opening-form]) .ig input{height:42px;font-size:16px}.room-controls :is([data-room-form],[data-opening-form]) .number-arrows{flex:0 0 88px;display:flex}.room-controls :is([data-room-form],[data-opening-form]) .number-arrows button{flex:1;width:44px;height:42px;min-height:42px}.room-controls :is([data-room-form],[data-opening-form]) .number-arrows button+button{border-left:1px solid var(--line)}.room-controls :is([data-room-form],[data-opening-form]) .room-text input{height:44px;font-size:16px}.room-controls [data-room-form] .room-toolbar button,.room-controls [data-opening-form]>button[type=submit],.room-controls #room-openings .room-lines button,.room-controls [data-opening-form] [data-slot=select-trigger]{min-height:44px}}.planner [data-remove-room],.builder-selection-actions button:last-child{color:var(--flag)!important;border-color:color-mix(in srgb,var(--flag) 45%,var(--line))!important}.planner [data-remove-room]:hover,.builder-selection-actions button:last-child:hover{background:color-mix(in srgb,var(--flag) 12%,var(--surface))!important}@media (width>=1101px){.planner>.planner-grid>.room-results .floor-builder.app-workbench:not(.is-fullscreen){padding-bottom:env(safe-area-inset-bottom,0px);grid-template-rows:44px minmax(0,1fr) 64px 24px;height:calc(100dvh - 72px)!important}.planner .builder-objects button{align-self:start;height:58px;min-height:0}.planner .builder-object-list{padding-bottom:4px}}.floor-builder .builder-viewport-tools button{width:38px;min-height:36px;overflow:hidden;gap:0!important;padding:6px!important;font-size:0!important}.floor-builder .builder-viewport-tools button .planner-icon{font-size:initial}@media (width<=359px){.page .ad-reservation:not(.planner-ad-strip){margin-left:-16px;margin-right:-16px}}.builder-object-list>.builder-layers-toggle{cursor:pointer;border-bottom:1px solid var(--line);align-items:center;gap:7px;padding:8px;font-size:.82rem;list-style:none;display:flex}.builder-object-list>.builder-layers-toggle::-webkit-details-marker{display:none}.builder-object-list>.builder-layers-toggle>span:last-child{color:var(--muted-ink);margin-left:auto}@media (width>=1101px){.floor-builder:is(.app-workbench,.is-fullscreen):has(>.builder-object-list){grid-template-columns:36px 48px minmax(0,1fr);grid-template-rows:44px minmax(0,1fr) 24px!important}.floor-builder:is(.app-workbench,.is-fullscreen):has(>.builder-object-list[data-open=true]){grid-template-columns:var(--builder-sidebar-width) 48px minmax(0,1fr)}.floor-builder:is(.app-workbench,.is-fullscreen):has(>.builder-object-list)>.builder-toolbar-slot{grid-column:2}.floor-builder:is(.app-workbench,.is-fullscreen):has(>.builder-object-list)>div:has(>.builder-stage),.floor-builder:is(.app-workbench,.is-fullscreen):has(>.builder-object-list)>.builder-viewer{grid-column:3}.floor-builder:is(.app-workbench,.is-fullscreen):has(>.builder-object-list)>.builder-instruction{grid-area:3/2/auto/-1}.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list{border:1px solid var(--line);background:var(--surface);border-radius:9px;height:100%;grid-area:2/1!important;width:auto!important;overflow:auto!important}.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list .builder-objects{flex-direction:column;gap:2px;padding:4px;height:auto!important;display:flex!important;overflow:visible!important}.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list .builder-objects button{text-align:left;border:0;border-radius:5px;flex:none;justify-content:flex-start;width:100%;min-width:0!important;height:auto!important;min-height:36px!important;padding:5px 7px!important}.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list[data-open=false]>.builder-layers-toggle{padding:9px}.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list[data-open=false]>.builder-layers-toggle>strong,.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list[data-open=false]>.builder-layers-toggle>span:last-child{display:none}}.builder-ai-panel{z-index:12;border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:10px;width:min(360px,100% - 24px);max-height:calc(100% - 70px);padding:14px;animation:.24s inspector-arrive;display:grid;position:absolute;top:54px;left:12px;overflow:auto;box-shadow:0 12px 40px #0005}.builder-ai-panel header{justify-content:space-between;align-items:center;display:flex}.builder-ai-panel>.planner-window-bar:before{content:"";background:var(--surface);height:14px;position:absolute;top:-14px;left:-14px;right:-14px}.builder-ai-panel p{margin:0;font-size:.84rem}.builder-ai-panel label{gap:5px;font-size:.82rem;display:grid}.builder-ai-panel textarea{box-sizing:border-box;background:var(--field);width:100%;color:var(--ink);border:1px solid var(--line);resize:vertical;border-radius:7px;padding:8px}.builder-ai-panel section{gap:8px;min-width:0;display:grid}.builder-ai-panel ul{overflow-wrap:anywhere;margin:0;padding-left:18px;font-size:.82rem;line-height:1.5}.builder-ai-panel .ai-suggestion,.builder-ai-panel .ai-activity{border:1px solid var(--line);background:var(--field);border-radius:8px;gap:8px;min-width:0;padding:10px;display:grid}.builder-ai-panel .ai-suggestion[data-reviewing=true]{border-style:dashed;border-color:var(--flag)}.builder-ai-panel .ai-activity small{color:var(--muted-ink)}.builder-ai-notice{z-index:11;border:1px dashed var(--flag);background:var(--surface);border-radius:8px;align-items:center;gap:8px;max-width:calc(100% - 24px);padding:6px 8px;font-size:.8rem;display:flex;position:absolute;top:54px;right:12px;box-shadow:0 4px 16px #0002}.floor-builder>.builder-ai-notice{top:max(56px,calc(var(--builder-header-bottom,44px) + 8px))}.builder-ai-panel .ai-pairing{border:1px solid var(--line);background:var(--field);border-radius:8px;gap:8px;padding:10px;display:grid}.builder-ai-panel .ai-pairing output{letter-spacing:.12em;font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:700}.floor-builder{transition:grid-template-columns .26s var(--ease-out)}.builder-object-list .builder-objects{transition:opacity .16s ease,transform .24s var(--ease-out)}.builder-object-list[data-open=false] .builder-objects{opacity:0;pointer-events:none;transform:translate(-12px);overflow:hidden!important}.builder-object-list>.builder-layers-toggle{white-space:nowrap;background:0 0;border:0;border-radius:0;justify-content:flex-start;width:100%;min-width:0;min-height:36px}@media (prefers-reduced-motion:reduce){.floor-builder,.builder-object-list .builder-objects{transition:none}}.builder-layers-toggle>span:nth-last-child(2){color:var(--muted-ink);margin-left:auto}.builder-object-list[data-open=false]>.builder-layers-toggle>.planner-icon:first-child,.builder-object-list[data-open=false]>.builder-layers-toggle>strong,.builder-object-list[data-open=false]>.builder-layers-toggle>span:nth-last-child(2){display:none}.builder-object-list[data-open=false]>.builder-layers-toggle>.planner-icon:last-child{display:inline-flex!important}.floor-builder [data-layer-accordion]{flex-direction:column;gap:6px;min-width:0;padding:6px;height:auto!important;display:flex!important}.floor-builder [data-layer-accordion]>.builder-layer-group{flex:none;width:100%;min-width:0}.floor-builder [data-layer-accordion] button{text-align:left;justify-content:flex-start;width:100%;max-width:100%;min-width:0!important}.floor-builder [data-layer-accordion] .builder-layer-content>div{box-sizing:border-box;flex-direction:column;gap:6px;display:flex}.floor-builder [data-layer-accordion] .builder-layer-content[data-open=true]>div{padding-top:6px;padding-bottom:4px}.builder-layer-group{border-bottom:1px solid var(--line);min-width:0;padding-bottom:4px}.builder-layer-room{text-align:left;align-items:center;width:100%;display:flex;gap:5px!important}.builder-layer-room strong{text-overflow:ellipsis;flex:1;font-size:.78rem;overflow:hidden}.builder-layer-room small{color:var(--muted-ink)}.builder-layer-content{opacity:1;transition:grid-template-rows .24s var(--ease-out),opacity .18s ease;grid-template-rows:1fr;display:grid}.builder-layer-content[data-open=false]{opacity:0;grid-template-rows:0fr}.builder-layer-content>div{min-height:0;padding-left:8px;overflow:hidden}.builder-layer-help{color:var(--muted-ink);margin:6px;line-height:1.4;font-size:.68rem!important}.builder-layer-group[data-pinned=true]{z-index:5;background:var(--surface);border-bottom:1px solid var(--line);padding-bottom:6px;position:sticky;top:0}.builder-layer-group[data-pinned=true]>.builder-layer-room{background:var(--field)}.floor-builder [data-layer-accordion]>.builder-layer-group[data-pinned=true] .builder-layer-content>div{overscroll-behavior:contain;scrollbar-width:thin;max-height:min(260px,40dvh);overflow-y:auto}.planner-menu-quality[aria-label=Graphics]{grid-template-columns:1fr;display:grid}.planner-menu-quality[aria-label=Graphics] button{text-align:left;justify-content:space-between;min-height:52px}.planner-menu-quality[aria-label=Graphics] small{color:var(--muted-ink);font-size:.75rem;font-weight:400;line-height:1.4;display:block}.graphics-fallback-note{z-index:8;border:1px solid var(--line);background:var(--surface);border-radius:9px;flex-wrap:wrap;align-items:center;gap:8px;max-width:calc(100% - 24px);padding:10px;font-size:.75rem;display:flex;position:absolute;bottom:80px;left:12px}.floor-builder .builder-objects button[aria-pressed=true]{background:var(--ink);color:var(--primary-foreground);border-color:var(--flag);box-shadow:inset 3px 0 var(--flag)}.floor-builder .builder-objects button[aria-pressed=true] small{color:inherit;opacity:.8}@media (prefers-reduced-motion:reduce){.builder-layer-content{transition:none}}.builder-placement-bar{z-index:6;border:1px solid var(--line);background:var(--surface);border-radius:9px;flex-wrap:wrap;align-items:center;gap:6px;max-width:calc(100% - 20px);padding:6px;animation:.18s inspector-arrive;display:flex;position:absolute;top:10px;left:10px;box-shadow:0 4px 18px #0003}.builder-placement-bar>span{padding:0 4px;font-size:.76rem}.builder-placement-bar>button{min-height:36px;padding:5px 8px;font-size:.78rem}.builder-assets .builder-assets-list h3{color:var(--muted-ink);text-transform:uppercase;letter-spacing:.04em;margin:10px 6px 4px;font-size:.74rem}.builder-assets .builder-asset-categories{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:4px;padding:5px 0;display:flex}.builder-assets .builder-asset-categories button{width:auto;min-height:28px;padding:3px 7px;font-size:.72rem}@media (width>=1101px){.planner>[data-room-status]{border:1px solid var(--line);text-align:center;pointer-events:none;z-index:30;border-radius:8px;max-width:min(520px,100vw - 600px);padding:7px 12px;animation:.22s inspector-arrive;bottom:118px;left:calc(50vw - 30px);transform:translate(-50%)}.planner>[data-room-status]:empty{display:none}.planner>[data-room-status][data-error=true]{border-color:var(--flag)}}.builder-opening-range{z-index:7;border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:7px;width:264px;padding:10px;animation:.22s inspector-arrive;display:grid;position:absolute;box-shadow:0 8px 28px #0004}.builder-opening-range>strong{font-size:.82rem}.builder-opening-range>span{color:var(--muted-ink);font-size:.7rem}.builder-range-track{touch-action:none;height:28px;margin:0 10px;position:relative}.builder-range-track:before{content:"";background:var(--line);border-radius:5px;height:4px;position:absolute;top:12px;left:0;right:0}.builder-range-fill{background:var(--flag);border-radius:5px;height:4px;position:absolute;top:12px}.builder-range-track>button{border:2px solid var(--flag);background:var(--surface);touch-action:none;border-radius:50%;position:absolute;top:3px;transform:translate(-50%);width:22px!important;min-width:22px!important;height:22px!important;min-height:22px!important;padding:0!important}.builder-range-labels{justify-content:space-between;gap:4px;font-size:.66rem;display:flex}.builder-opening-range>button{min-height:32px;padding:4px 7px;font-size:.76rem}.builder-layer-group[data-current=true]>.builder-layer-room{background:var(--tint);box-shadow:inset 2px 0 var(--flag);color:var(--ink)}.builder-object-card button{border:1px solid var(--line);background:var(--field);color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:7px 9px;font-size:.78rem;display:inline-flex}.builder-object-card button:hover{border-color:var(--chalk)}.builder-object-card button[aria-pressed=true]{background:var(--ink);color:var(--primary-foreground)}.builder-object-card .builder-selection-actions{grid-template-columns:1fr 1fr;gap:6px;margin-top:10px;padding-top:10px;display:grid}.builder-object-card .builder-selection-actions>button{min-height:34px;line-height:1.2}.builder-object-card .builder-selection-actions>button:last-child{color:var(--flag);border-color:color-mix(in srgb,var(--flag) 50%,var(--line));background:color-mix(in srgb,var(--flag) 8%,var(--surface));grid-column:1/-1}.builder-object-card .builder-selection-actions>button:last-child:hover{background:color-mix(in srgb,var(--flag) 16%,var(--surface))}.builder-history button{min-height:34px;padding:5px 8px}.builder-export-menu{z-index:15;background:var(--surface);border:1px solid var(--line);border-radius:10px;gap:5px;width:240px;padding:8px;animation:.18s inspector-arrive;display:grid;position:absolute;top:52px;right:12px;box-shadow:0 8px 28px #0004}.builder-export-menu button{text-align:left;justify-content:flex-start;min-height:38px;font-size:.8rem}.builder-top{gap:6px}.builder-top>button{white-space:nowrap}.room-save-state{color:var(--muted-ink);border:1px solid var(--line);border-radius:7px;margin:0 0 10px;padding:7px 8px;font-size:.69rem;line-height:1.45}@media (width>=1101px){.floor-builder>.planner-skeleton-viewport{grid-area:2/2;height:100%}.floor-builder:has(>.builder-object-list)>.planner-skeleton-viewport{grid-column:3}}.planner .builder-furniture{gap:8px 10px}.planner .builder-furniture label{gap:3px;font-size:.75rem}.planner :is(.builder-furniture,.free-wall-properties) .number-control{flex:none;height:36px;min-height:36px}.planner :is(.builder-furniture,.free-wall-properties) .number-control input{height:34px;min-height:0;padding:6px 8px}.planner :is(.builder-furniture,.free-wall-properties) .number-arrows{flex-basis:26px;grid-template-rows:17px 17px}.planner :is(.builder-furniture,.free-wall-properties) .number-arrows button{box-shadow:none;border:0!important;border-radius:0!important;height:17px!important;min-height:0!important;padding:0!important}.builder-panel-handle{z-index:10;width:100%;box-shadow:0 -14px 0 var(--surface),0 4px 0 var(--surface);touch-action:none;user-select:none;flex-shrink:0;align-self:start;align-items:center;gap:8px;position:sticky;top:0;background:var(--surface)!important;cursor:grab!important;min-height:28px!important;color:var(--ink-2)!important;border:0!important;padding:3px 7px!important;font-size:.75rem!important;display:flex!important}.builder-panel-handle span:last-child{margin-left:auto}.builder-panel-handle:active{cursor:grabbing!important}.stair-design-report{border:1px solid var(--line);background:var(--field);border-radius:8px;padding:8px;font-size:.72rem}.stair-design-report dl{gap:5px;margin:0 0 8px;display:grid}.stair-design-report dl>div{justify-content:space-between;gap:8px;display:flex}.stair-design-report dd{font-variant-numeric:tabular-nums;margin:0}.stair-design-report ul{color:var(--flag);margin:6px 0;padding-left:16px}.stair-design-report details{margin-top:8px}.stair-design-report details a{margin:4px 0;font-size:.68rem;display:block}.stair-design-report summary{cursor:pointer}.planner-loading{border:1px solid var(--line);background:var(--surface);width:min(300px,100% - 40px);color:var(--ink);z-index:4;border-radius:16px;flex-direction:column;align-items:center;gap:14px;padding:24px;display:flex;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 12px 40px #0000000d}.planner-loading strong{text-align:center;font-size:1rem}.planner-loading-track{background:var(--field);border-radius:10px;width:100%;height:8px;position:relative;overflow:hidden}.planner-loading-track>span{background:var(--flag);border-radius:inherit;height:100%;display:block}.planner-loading-track[data-waiting=true]:after{content:"";border-radius:inherit;background:var(--flag);width:35%;animation:1.2s ease-in-out infinite planner-loading-scan;position:absolute;inset:0 auto 0 0}@keyframes planner-loading-scan{0%{transform:translate(-110%)}to{transform:translate(390%)}}.planner-loading-meta{justify-content:space-between;align-items:center;gap:12px;width:100%;font-size:.8rem;display:flex}.planner-loading-meta b{font-variant-numeric:tabular-nums}.planner-loading small{color:var(--ink-2);font-size:.7rem}.planner-loading-overlay{z-index:12;background:var(--surface);border-radius:inherit;opacity:1;transition:opacity .18s;position:absolute;inset:0}.planner-loading-overlay[data-closing=true]{opacity:0;pointer-events:none}.planner-loading-overlay .planner-loading{transition:transform .18s,opacity .18s}.planner-loading-overlay[data-closing=true] .planner-loading{opacity:0;transform:translate(-50%,-48%)}.planner-menu-loading{color:var(--ink-2);align-items:center;gap:8px;font-size:.8rem;display:flex}.planner-load-recovery:not([hidden]){border:1px solid var(--line);border-left:3px solid var(--flag);background:var(--surface);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:12px;padding:12px;font-size:.82rem;display:flex}.planner-load-recovery p{flex:220px;margin:0}.planner-loading-spinner{border:2px solid var(--line);border-top-color:var(--flag);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite planner-spin;display:inline-block}.scene-update-notice{z-index:35;border:1px solid var(--line);background:var(--surface);max-width:calc(100% - 24px);color:var(--ink);box-shadow:var(--shadow-pop);pointer-events:none;border-radius:9px;align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;line-height:1.4;display:flex;position:absolute;top:76px;left:50%;transform:translate(-50%)}.floor-builder .environment-button[aria-busy=true]{opacity:1;cursor:progress}.environment-button[aria-busy=true] .planner-loading-spinner{border-color:color-mix(in srgb,currentColor 30%,transparent);border-top-color:currentColor}@keyframes planner-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.planner-loading-spinner{border-style:dotted;animation:none}.planner-loading-track>span,.planner-loading-overlay,.planner-loading-overlay .planner-loading{transition:none}.planner-loading-track[data-waiting=true]:after{opacity:.6;width:35%;animation:none}}.builder-plan-camera{border:1px solid var(--line);background:var(--surface);z-index:4;border-radius:10px;gap:5px;padding:5px;display:flex;position:absolute;top:12px;right:12px}.builder-plan-camera button{border:1px solid var(--line);background:var(--field);width:36px;height:36px;color:var(--ink);border-radius:7px;place-items:center;display:grid;min-height:36px!important;padding:7px!important}.builder-plan-camera button[aria-pressed=true]{background:var(--ink);color:var(--primary-foreground)}.builder-plan-camera svg{width:19px;height:19px}.builder-plan.tool-pan{cursor:grab}.builder-plan.tool-pan:active{cursor:grabbing}.builder-plan.tool-zoom{cursor:ns-resize}.builder-plan [data-add-room-step]>circle,.builder-plan [data-add-room-step]>path{opacity:0;pointer-events:none;transition:opacity .14s}.builder-plan [data-add-room-step]:hover>circle,.builder-plan [data-add-room-step]:hover>path,.builder-plan [data-add-room-step]:focus>circle,.builder-plan [data-add-room-step]:focus>path{opacity:1}@media (hover:none){.builder-plan [data-add-room-step]:focus>circle,.builder-plan [data-add-room-step]:focus>path{opacity:1}}.builder-object-list[data-open=false]{overflow:hidden!important}.builder-object-list[data-open=false]>.builder-objects{visibility:hidden;pointer-events:none;scrollbar-width:none;overflow:hidden!important}.builder-object-list[data-open=false]>.builder-objects::-webkit-scrollbar{display:none}.planner>.planner-grid>.room-results .floor-builder.is-fullscreen{box-sizing:border-box;z-index:1500;width:100vw;margin:0;padding:8px;position:fixed;inset:0;overflow:hidden;grid-template-rows:44px minmax(0,1fr) 24px!important;height:100dvh!important;max-height:none!important}.floor-builder.is-fullscreen .builder-instruction{grid-row:3!important}.floor-builder>.builder-top{flex-wrap:nowrap;align-items:center;gap:4px;min-width:0;justify-content:flex-start!important;display:flex!important}.floor-builder>.builder-top>.builder-tools:last-child{flex-direction:row;flex-shrink:0;margin-left:auto}.floor-builder>.builder-top>button{flex:none}.floor-builder>.builder-top>button[aria-expanded]{margin:0}.floor-builder>.builder-top>button[aria-expanded]:first-of-type{margin-left:0}@media (width<=900px){.floor-builder>.builder-top{scrollbar-width:thin;overflow-x:auto}.floor-builder>.builder-top>.builder-tools:last-child{margin-left:8px}}.floor-builder>.builder-history{right:calc(100% - var(--builder-viewport-right,100%) + 10px);bottom:calc(100% - var(--builder-viewport-bottom,100%) + var(--builder-history-inset,10px));z-index:7;border:1px solid var(--line);background:var(--surface);border-radius:9px;flex-wrap:nowrap;gap:3px;padding:3px;display:flex;position:absolute}.floor-builder>.builder-history>button{box-sizing:border-box;border-radius:6px;flex:none;place-items:center;gap:0;width:32px;min-width:32px;height:32px;min-height:32px;padding:6px;font-size:0;display:grid}.builder-history .planner-icon svg{width:18px;height:18px}.planner>.room-toolbar>[data-undo],.planner>.room-toolbar>[data-redo]{display:none}.builder-furniture .bed-presets{border:0;border-top:1px solid var(--line);min-width:0;margin:0;padding:10px 0}.builder-furniture .bed-presets legend{padding:0 0 7px;font-size:.8rem;font-weight:600}.builder-furniture .opening-position>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.builder-furniture .opening-position>div+div{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:5px}.builder-furniture .opening-position button{white-space:nowrap;font-size:.73rem;min-height:32px!important;padding:6px 4px!important}.builder-furniture .opening-locks{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.builder-furniture .opening-locks button{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;font-size:.8rem;display:flex;min-height:52px!important;padding:8px!important}.builder-furniture .opening-locks small{opacity:.8;font-size:.65rem}.builder-furniture .opening-direction>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.builder-furniture .opening-direction button{flex-direction:row;gap:5px;font-size:.75rem;min-height:34px!important;padding:7px!important}.builder-furniture .opening-direction svg{width:15px;height:15px}.opening-range-actions{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.opening-range-actions button,.opening-width-presets button{white-space:nowrap;flex:1;font-size:.72rem;min-height:30px!important;padding:5px!important}.opening-width-presets{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.opening-width-presets>span{color:var(--ink-2);flex-basis:100%;font-size:.7rem}.builder-opening-range{max-height:calc(100% - 16px);overflow:auto}.ai-select{margin:12px 0}.ai-select-label{margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.ai-select button{text-align:left;align-items:center;gap:10px;width:100%;display:flex;padding:10px!important}.ai-select [role=combobox]>span:last-child{margin-left:auto}.ai-select strong,.ai-select small{display:block}.ai-select strong{font-size:.85rem}.ai-select small{color:var(--ink-2);margin-top:3px;font-size:.7rem;font-weight:400}.ai-provider-icon svg{width:24px;height:24px;display:block}.ai-select-options{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .2s,opacity .2s;display:grid}.ai-select-options[data-open=true]{opacity:1;grid-template-rows:1fr}.ai-select-options>div{min-height:0;overflow:hidden}.ai-select-options button{border:0;border-radius:6px}.ai-select-options button[data-active=true],.ai-select-options button[aria-selected=true]{background:var(--tint)}.ai-setup-steps{padding-left:20px;font-size:.8rem;line-height:1.5}.ai-setup-steps li+li{margin-top:7px}@media (prefers-reduced-motion:reduce){.ai-select-options{transition:none}}.builder-assets,.builder-ai-panel,.builder-export-menu,.builder-render-panel{opacity:1;transform-origin:0 0;transition:opacity .18s,scale .18s}@starting-style{.builder-assets,.builder-ai-panel,.builder-export-menu,.builder-render-panel{opacity:0;scale:.98}}.builder-assets[data-closing=true],.builder-ai-panel[data-closing=true],.builder-export-menu[data-closing=true],.builder-render-panel[data-closing=true]{opacity:0;pointer-events:none;scale:.98}@media (prefers-reduced-motion:reduce){.builder-assets,.builder-ai-panel,.builder-export-menu,.builder-render-panel{transition:none}}.room-controls .seg{width:100%;min-width:0;max-width:100%;display:grid}.room-controls .seg>button{white-space:normal;overflow-wrap:anywhere;min-width:0;padding:8px 5px;font-size:.78rem;line-height:1.2}.room-controls fieldset,.room-controls form,.room-controls label{min-width:0;max-width:100%}.builder-rename-dialog{border:1px solid var(--line);background:var(--surface);width:min(360px,100vw - 32px);color:var(--ink);box-shadow:var(--shadow-pop);opacity:1;z-index:2000;border-radius:14px;margin:auto;padding:22px;transition:opacity .18s,scale .18s;position:fixed;inset:0}.builder-rename-dialog::backdrop{background:#0008}.builder-rename-dialog h2{font:600 1.25rem var(--font-cond);margin:0 0 16px}.builder-rename-dialog label{gap:6px;font-size:.85rem;display:grid}.builder-rename-dialog input{border:1px solid var(--line);background:var(--field);border-radius:8px;width:100%;padding:10px}.builder-rename-dialog form>div{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.builder-rename-dialog button{border:1px solid var(--line);border-radius:8px;padding:8px 13px}.builder-rename-dialog[data-closing=true]{opacity:0;scale:.98}@starting-style{.builder-rename-dialog{opacity:0;scale:.98}}.corner-dialog{box-sizing:border-box;width:min(340px,100vw - 24px);max-height:calc(100dvh - 16px);padding:14px;overflow:auto}.corner-dialog::backdrop{background:#0002}.corner-dialog form>.corner-shape{justify-content:flex-start;gap:6px;margin-top:12px}.corner-dialog .corner-shape button{flex:1;min-height:36px;padding:6px 10px}.corner-dialog form>.corner-fields{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;margin-top:12px;display:grid}.corner-dialog .corner-field{min-width:0}.corner-dialog .corner-field label{gap:5px;font-size:.78rem}.corner-dialog .number-control{box-sizing:border-box;border:1px solid var(--line);background:var(--field);border-radius:8px;flex:none;height:40px;min-height:40px;max-height:40px;display:flex;overflow:hidden}.corner-dialog .number-control input{font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:0;outline:0;flex:1;min-width:0;height:38px;min-height:0;margin:0;padding:6px 9px;font-size:.85rem}.corner-dialog .number-control:focus-within{outline:2px solid var(--flag);outline-offset:2px}.corner-dialog .number-arrows{flex:0 0 28px;grid-template-rows:19px 19px;display:grid}.corner-dialog .number-arrows button{box-sizing:border-box;box-shadow:none;background:0 0;place-items:center;margin:0;display:grid;border:0!important;border-radius:0!important;min-width:0!important;height:19px!important;min-height:0!important;padding:0!important}.corner-dialog .number-arrows button+button{border-top:1px solid var(--line)!important}.corner-dialog .number-arrows button:hover{background:var(--tint)}.corner-dialog .number-arrows button:focus-visible{outline:2px solid var(--flag);outline-offset:-2px}.corner-radius-slider{cursor:ew-resize;touch-action:none;height:30px;margin:1px 9px 0;position:relative}.corner-slider-track{background:var(--line);border-radius:4px;height:4px;position:absolute;inset:13px 0 auto}.corner-slider-track>span{border-radius:inherit;background:var(--flag);height:100%;display:block}.corner-slider-thumb{border:2px solid var(--surface);background:var(--flag);width:16px;height:16px;box-shadow:0 0 0 1px var(--flag);pointer-events:none;border-radius:50%;position:absolute;top:7px;transform:translate(-50%)}.corner-radius-slider:focus-visible{outline:2px solid var(--flag);outline-offset:3px;border-radius:5px}.corner-dialog .hint{margin:8px 0 0;font-size:.76rem;line-height:1.45}.corner-dialog .corner-error{color:var(--flag);margin:8px 0 0;font-size:.78rem}.corner-dialog form>.corner-actions{gap:8px;margin-top:14px}.corner-dialog .corner-actions button{min-height:36px;padding:7px 10px}.builder-render-panel{z-index:15;background:var(--surface);width:min(410px,100% - 90px);max-height:calc(100% - 96px);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-pop);border-radius:12px;padding:14px;position:absolute;top:56px;left:70px;overflow:auto}.builder-render-panel header{justify-content:space-between;align-items:center;gap:8px;display:flex}.render-styles{border:0;grid-template-columns:1fr 1fr;gap:5px;margin:12px 0;padding:0;display:grid}.render-styles legend{margin-bottom:6px;font-size:.8rem}.render-styles button{padding:7px;font-size:.75rem}.render-styles button[aria-pressed=true]{background:var(--ink);color:var(--primary-foreground)}.render-assets{padding:0;list-style:none}.render-assets li{border-top:1px solid var(--line);align-items:center;gap:5px;padding:10px 0;display:flex}.render-assets li>span{flex:1;font-size:.8rem}.render-assets small{color:var(--ink-2);font-size:.68rem;display:block}.render-assets button{font-size:.7rem;padding:6px!important}.builder-render-panel label{gap:5px;font-size:.8rem;display:grid}.builder-render-panel textarea{background:var(--field);border:1px solid var(--line);border-radius:7px;width:100%;padding:8px;font-size:.7rem}.render-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.render-actions>*{font-size:.8rem}.builder-layer-room>strong{flex:1}.builder-layer-room>small{margin-left:auto}.builder-layer-room>.layer-chevron{width:16px;height:16px;transition:transform var(--dur-close) var(--ease-in);flex:none;place-items:center;display:grid}.builder-layer-room[aria-expanded=true]>.layer-chevron{transition-duration:var(--dur-open);transition-timing-function:var(--ease-out);transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){.builder-layer-room>.layer-chevron{transition:none}}.builder-walk-launch{z-index:6;gap:5px;display:flex;position:absolute;top:12px;left:12px}.builder-walk-launch button{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-height:34px;padding:6px 10px;font-size:.75rem}.builder-walk-controls{z-index:6;border:1px solid var(--line);background:var(--surface);border-radius:10px;max-width:min(420px,100% - 24px);padding:10px;position:absolute;bottom:68px;left:12px}.builder-walk-controls p{margin:0 0 8px;font-size:.75rem}.builder-walk-controls>div{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.builder-walk-controls button{border:1px solid var(--line);touch-action:none;border-radius:7px;min-height:36px;padding:6px 9px;font-size:.72rem}.builder-viewer[data-walking=true]>.builder-camera,.builder-viewer[data-walking=true]>.builder-viewport-tools{visibility:hidden}.builder-viewer[data-walking=true] canvas{touch-action:none;cursor:grab}.builder-walk-controls[data-floating-screen=true]{box-sizing:border-box;box-shadow:var(--shadow-pop);overflow-y:auto}.floor-builder{--builder-sidebar-width:280px;--viewport-left:64px}.floor-builder:has(>.builder-object-list){--viewport-left:108px}.floor-builder:has(>.builder-object-list[data-open=true]){--viewport-left:calc(var(--builder-sidebar-width) + 72px)}.builder-viewport-fullscreen{left:var(--viewport-left);top:var(--builder-viewport-top,64px);z-index:7;border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:6px;min-height:34px;padding:6px 10px;font-size:.75rem;display:flex;position:absolute}.builder-viewport-fullscreen svg{width:17px;height:17px}.builder-stage>.builder-object-hint{top:var(--builder-plan-hint-top,90px);box-sizing:border-box;overflow-wrap:anywhere;max-width:min(240px,100% - 46px);left:34px}.builder-object-card .builder-furniture{gap:8px 10px;grid-template-columns:repeat(2,minmax(0,1fr))!important}.builder-object-card .builder-furniture>fieldset,.builder-object-card .builder-furniture>button,.builder-object-card .builder-furniture>.hint,.builder-object-card .builder-furniture>.builder-error{grid-column:1/-1}.window-settings-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0;display:grid}.window-settings-actions>button{border:1px solid var(--line);background:var(--field);min-width:0;min-height:36px;color:var(--ink);border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-size:.75rem;display:flex}.window-settings-actions>small{color:var(--ink-2);grid-column:1/-1;font-size:.7rem;line-height:1.4}.builder-edit-tools:has(.window-settings-actions){inset:auto auto 76px 12px}.planner .room-toolbar .room-primary-save{background:var(--flag);color:#fff;border-color:var(--flag);font-weight:600}.planner .room-toolbar .room-primary-save:hover{filter:brightness(1.08)}.builder-plan.tool-select [data-furniture-id],.builder-plan.tool-select [data-opening-id],.builder-plan.tool-select [data-room-id]{cursor:pointer}.builder-plan [data-room-vertex]:hover circle:last-child{stroke:var(--chalk);stroke-width:2.5px}.builder-objects button:not([aria-pressed=true]):hover{background:var(--tint)}.render-materials{border:1px solid var(--line);border-radius:9px;margin:12px 0;padding:9px}.render-materials summary{cursor:pointer;font-size:.8rem;font-weight:600}.render-materials fieldset{border:0;grid-template-columns:1fr 1fr;gap:4px;margin:12px 0;padding:0;display:grid}.render-materials legend{margin-bottom:6px;font-size:.75rem}.render-materials button{justify-content:flex-start;gap:5px;font-size:.7rem;padding:6px!important}.render-materials button[aria-pressed=true]{outline:1px solid var(--flag);background:var(--tint)}.render-materials i{border:1px solid var(--line);border-radius:4px;flex:none;width:16px;height:16px;display:inline-block}.planner-ai-launch{border:1px solid var(--line);background:var(--field);min-height:42px;color:var(--ink);border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .16s,border-color .16s,transform .16s;display:inline-flex}.planner-ai-launch:hover{background:var(--surface);border-color:var(--ink-2)}.planner-ai-launch:focus-visible{outline:2px solid var(--flag);outline-offset:3px}.render-actions .planner-ai-launch{flex-basis:100%}[data-layer-form] .grid2{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}[data-layer-form] .room-text input{box-sizing:border-box;min-height:42px}[data-layer-form] .n-label{line-height:1.3}[data-layer-form] label{min-width:0}.builder-ai-panel header button,.builder-export-menu header button,.builder-render-panel header button{flex:none;justify-content:center;align-items:center;width:28px;min-width:28px;height:28px;min-height:28px;padding:4px;display:inline-flex}.builder-export-menu header{justify-content:space-between;align-items:center;gap:8px;display:flex}.builder-export-menu header strong{font-size:.85rem}.builder-door-display{max-width:calc(100% - 24px);top:112px!important;left:12px!important;right:auto!important}.builder-walk-launch{top:58px!important}.builder-door-display+.builder-edit-tools{margin-top:12px}.surface-presence{z-index:32;opacity:1;width:min(340px,100% - 24px);max-height:calc(100% - 180px);transition:opacity .18s,scale .18s;position:absolute;top:100px;left:12px}.surface-presence[data-closing=true]{opacity:0;pointer-events:none;scale:.98}.surface-panel{max-height:inherit;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-pop);border-radius:12px;gap:10px;padding:12px;display:grid;overflow:auto}.surface-panel header{justify-content:space-between;align-items:center;display:flex}.surface-panel header button,.surface-applied button{width:28px;min-height:28px;padding:4px}.surface-library{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5px;max-height:220px;display:grid;overflow:auto}.surface-library button{text-align:left;justify-content:flex-start;gap:6px;font-size:.75rem;padding:8px!important}.surface-library i,.surface-color-picker>button i{border:1px solid var(--line);border-radius:5px;flex:none;width:24px;height:24px;display:block}.surface-library button[aria-pressed=true]{outline:2px solid var(--flag);outline-offset:-2px}.surface-target-list{gap:4px;max-height:160px;display:grid;overflow:auto}.surface-actions{gap:5px;display:flex}.surface-actions>*{flex:1;font-size:.75rem}.surface-panel label{gap:4px;font-size:.8rem;display:grid}.surface-panel input{background:var(--field);width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);border-radius:7px;padding:8px}.surface-zone{grid-template-columns:1fr 1fr;gap:8px;display:grid}.surface-panel h3{margin:5px 0;font-size:.9rem}.surface-applied{justify-content:space-between;align-items:center;gap:8px;font-size:.8rem;display:flex}.surface-color-picker>button{gap:8px;width:100%}.surface-color-picker>button span{margin-left:auto;font-size:.7rem}.surface-color-popover{border:1px solid var(--line);opacity:1;border-radius:9px;gap:12px;padding:12px;transition:opacity .18s,scale .18s;display:grid}.surface-color-popover[data-closing=true]{opacity:0;pointer-events:none;scale:.97}.surface-color-popover [role=group]{gap:14px;display:grid}.surface-color-popover [role=group]>div>span{justify-content:space-between;margin-bottom:8px;font-size:.8rem;display:flex}.color-channel{touch-action:none;cursor:crosshair;border-radius:6px;height:22px;position:relative}.color-channel i{pointer-events:none;background:#fff;border:2px solid #1b242b;border-radius:5px;width:8px;height:28px;position:absolute;top:-3px;transform:translate(-50%)}.color-channel:focus-visible{outline:2px solid var(--flag);outline-offset:4px}@starting-style{.surface-presence,.surface-color-popover{opacity:0;scale:.98}}@media (prefers-reduced-motion:reduce){.surface-presence,.surface-color-popover,.planner-ai-launch{transition:none}}.floor-builder.is-fullscreen{box-sizing:border-box;z-index:1500;min-height:0;margin:0;padding:8px;position:fixed;inset:0;overflow:hidden;height:100dvh!important;max-height:none!important}.blender-export{border:1px solid var(--line);background:var(--field);border-radius:10px;gap:8px;margin:12px 0;padding:12px;display:grid}.blender-export p{margin:0}.blender-export button{background:var(--flag);color:#fff}.builder-plan [data-add-room-step]>circle,.builder-plan [data-add-room-step]>path{opacity:1}.builder-plan [data-add-room-step]>circle{pointer-events:all}.builder-plan [data-add-room-step]:hover>circle,.builder-plan [data-add-room-step]:focus>circle{stroke:var(--flag);stroke-width:2px}.person-placement-note,.builder-viewer-notice{z-index:38;background:var(--surface);width:360px;max-width:calc(100% - 24px);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-pop);border-radius:12px;padding:12px;animation:.18s inspector-arrive;position:absolute;bottom:72px;left:50%;transform:translate(-50%)}.person-placement-note p,.builder-viewer-notice p{margin:5px 0 10px;font-size:.8rem;line-height:1.4}.person-placement-note button{font-size:.75rem;padding:8px!important}.person-pointer{z-index:40;pointer-events:none;filter:drop-shadow(0 3px 3px #0005);width:40px;height:60px;position:absolute;transform:translate(-50%,-100%)}.person-pointer svg{width:40px;height:60px;fill:var(--flag);stroke:var(--surface);stroke-width:1.5px}.person-pointer span{border:2px solid var(--flag);border-radius:50%;width:24px;height:9px;position:absolute;bottom:-4px;left:9px}.builder-viewer-notice{border-left:3px solid var(--flag);gap:12px;display:flex}.builder-viewer-notice>div{flex:1;min-width:0}.builder-viewer-notice strong{font-size:.85rem}.builder-viewer-notice p{margin-bottom:0}.builder-viewer-notice>button{align-self:start;width:28px;min-height:28px;padding:4px}.builder-walk-toolbar,.builder-walk-actions{flex:none;align-items:center;gap:6px;display:flex}.builder-walk-toolbar:empty{display:none}.builder-walk-actions button{white-space:nowrap}.planner-disclosure>button{text-align:left;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.planner-disclosure>button svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:18px;height:18px;transition:rotate .18s}.planner-disclosure>button[aria-expanded=true] svg{rotate:180deg}.planner-disclosure-motion{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .2s,opacity .2s;display:grid}.planner-disclosure-motion[data-open=true]{opacity:1;grid-template-rows:1fr}.planner-disclosure-motion>div{min-height:0;overflow:hidden}.planner-disclosure-motion[data-open=true]>div{padding-top:8px}.surface-panel.surface-presence{max-height:calc(100% - 130px);display:grid;position:absolute;top:12px;overflow:auto}.builder-viewer[data-walking=true]>.builder-viewport-tools{visibility:visible}.builder-viewer[data-walking=true]>.builder-viewport-tools>svg,.builder-viewer[data-walking=true]>.builder-viewport-tools>[role=toolbar]{visibility:hidden;pointer-events:none}@media (prefers-reduced-motion:reduce){.planner-disclosure-motion,.planner-disclosure>button svg{transition:none}}.builder-walk-controls{grid-template-columns:auto auto;align-items:end;gap:8px;width:auto;max-width:min(280px,100% - 24px);padding:8px;display:grid}.builder-walk-controls>p{grid-column:1/-1;margin:0;font-size:.65rem}.builder-walk-controls .walk-directions{grid-template-columns:repeat(3,30px);gap:3px;margin:0;display:grid}.walk-directions button:first-child{grid-column:2}.walk-directions button:nth-child(2){grid-area:2/1}.walk-directions button:nth-child(3){grid-area:2/2}.walk-directions button:nth-child(4){grid-area:2/3}.builder-walk-controls .walk-look{grid-template-columns:repeat(2,30px);gap:3px;margin:0;display:grid}.builder-walk-controls .walk-directions button,.builder-walk-controls .walk-look button{width:30px;height:30px;min-height:30px;padding:5px!important}.builder-walk-controls>div:last-child:not(.walk-look):not(.walk-directions){grid-column:1/-1}.builder-walk-controls svg{width:17px;height:17px}.walk-interaction{z-index:25;background:var(--surface);border:1px solid var(--line);width:210px;max-width:calc(100% - 24px);box-shadow:var(--shadow-pop);border-radius:10px;padding:10px;animation:.18s inspector-arrive;position:absolute;bottom:80px;right:12px}.walk-interaction header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:.85rem;display:flex}.walk-interaction header button{width:26px;min-height:26px;padding:4px}.walk-interaction>button{width:100%}.builder-walk-controls .walk-extra{grid-column:1/-1}.builder-graphics{z-index:10;background:var(--surface);border:1px solid var(--line);border-radius:9px;width:150px;padding:5px;position:absolute;top:238px;right:12px}.graphics-options{gap:3px;margin-bottom:6px;display:flex}.graphics-options button{flex:1;font-size:.7rem;padding:5px!important}.graphics-options button[aria-pressed=true]{background:var(--ink);color:var(--primary-foreground)}.builder-graphics p{margin:5px 0;font-size:.65rem;line-height:1.3}.builder-graphics [role=switch]{width:100%;font-size:.7rem}.builder-graphics [role=switch][aria-checked=true]{border-color:var(--flag)}.builder-viewer[data-walk-mode=sims]>.builder-camera,.builder-viewer[data-walk-mode=sims]>.builder-viewport-tools>[role=toolbar]{visibility:visible;pointer-events:auto}.builder-viewer[data-walk-mode=sims] .builder-viewport-tools button[aria-label="Lock camera / edit objects"]{display:none}.dreamcore-player{z-index:36;background:var(--surface);border:1px solid var(--line);width:328px;max-width:calc(100% - 24px);max-height:calc(100% - 100px);box-shadow:var(--shadow-pop);opacity:1;border-radius:12px;padding:12px;transition:opacity .18s,scale .18s;position:absolute;bottom:80px;right:12px;overflow:auto}.dreamcore-player[data-closing=true]{opacity:0;pointer-events:none;scale:.98}.dreamcore-player header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.dreamcore-player header button{width:28px;min-height:28px;padding:4px}.dreamcore-player iframe{border:0;border-radius:7px;width:100%;height:200px;display:block}.dreamcore-queue{gap:4px;margin-top:8px;display:grid}.dreamcore-queue button{text-align:left;justify-content:space-between;align-items:center;font-size:.75rem;display:flex;padding:8px!important}.dreamcore-queue small{color:var(--ink-2);font-size:.65rem}.dreamcore-queue button[aria-pressed=true]{border-color:var(--flag)}.dreamcore-player .hint{font-size:.7rem;line-height:1.4}.dreamcore-player a{font-size:.7rem}.dreamcore-queue{max-height:180px;overflow:auto}.dreamcore-queue button{gap:8px;min-width:0}.dreamcore-queue strong{font-size:.72rem}.dreamcore-queue small{text-align:right;flex:none;max-width:45%}.music-icon{pointer-events:none;flex:none;justify-content:center;align-items:center;display:inline-flex}.dreamcore-player .music-icon svg{stroke:currentColor;width:20px;height:20px;display:block}.dreamcore-player .music-controls,.dreamcore-player .music-repeat{justify-content:center}.dreamcore-player .music-controls button,.dreamcore-player .music-repeat button{flex:0 0 44px;justify-content:center;align-items:center;min-height:44px;padding:8px;transition:background .16s,color .16s,transform .16s;display:inline-flex}.dreamcore-player .music-play{background:var(--ink);color:var(--surface);border-radius:50%}.dreamcore-player .music-controls button:active,.dreamcore-player .music-repeat button:active{transform:scale(.94)}.dreamcore-player .music-repeat [aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--flag)}.dreamcore-player .dreamcore-queue button{grid-template-columns:minmax(0,1fr);justify-items:start;gap:3px;display:grid}.dreamcore-player .dreamcore-queue small{color:var(--ink);opacity:1;text-align:left;overflow-wrap:anywhere;max-width:100%;font-size:.75rem}.dreamcore-player .dreamcore-queue button[aria-pressed=true] small,.dreamcore-player .dreamcore-queue button[aria-pressed=true] strong{color:var(--surface)}.dreamcore-player .dreamcore-queue button[aria-pressed=true]{background:var(--ink);color:var(--surface)}@media (prefers-reduced-motion:reduce){.dreamcore-player .music-controls button,.dreamcore-player .music-repeat button,.music-volume span{transition:none}}.dreamcore-player{z-index:5000;width:260px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);color:var(--ink);font-family:var(--font-body,system-ui,sans-serif);padding:8px;font-size:.8rem;position:fixed;bottom:16px;right:16px}.dreamcore-player header{margin-bottom:6px}.dreamcore-player .builder-panel-handle{min-height:24px;font-size:.68rem}.dreamcore-player iframe{height:200px}.dreamcore-player p{margin:6px 0;line-height:1.35}.dreamcore-player button{cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;border-radius:8px;padding:6px}.dreamcore-player button:focus-visible{outline:2px solid var(--flag);outline-offset:2px}.dreamcore-player button:disabled{opacity:.45;cursor:default}.dreamcore-player .music-controls,.dreamcore-player .music-repeat{gap:6px;margin:5px 0;display:flex}.dreamcore-player .music-controls button,.dreamcore-player .music-repeat button{flex-basis:40px;min-height:36px}.dreamcore-player .music-play,.dreamcore-player .music-repeat [aria-pressed=true]{background:var(--ink);color:var(--surface)}.dreamcore-player .music-volume{height:16px;margin:5px 0 8px}.dreamcore-player .dreamcore-queue{max-height:140px}.dreamcore-player .hint{display:none}.dreamcore-player a{margin-top:6px;display:block}.dreamcore-player .music-controls button:hover,.dreamcore-player .music-repeat button:hover{border-color:var(--flag)}.builder-viewer .builder-viewer-notice{border-radius:9px;gap:6px;width:max-content;max-width:min(320px,100% - 24px);padding:9px 36px 12px 11px;font-size:.75rem;line-height:1.35;overflow:hidden}.builder-viewer-notice strong{font-size:.72rem;font-weight:600}.builder-viewer-notice p{margin:3px 0 0;font-size:.75rem;line-height:1.4}.builder-viewer-notice>button{width:26px;min-height:26px;padding:4px;position:absolute;top:5px;right:5px}.viewer-notice-timer{background:color-mix(in srgb,var(--flag) 15%,transparent);height:3px;position:absolute;bottom:0;left:0;right:0}.viewer-notice-timer>div{background:var(--flag);transform-origin:0;will-change:transform;width:100%;height:100%}.builder-viewer-notice:hover .viewer-notice-timer,.builder-viewer-notice:focus-within .viewer-notice-timer{height:4px}.dreamcore-player{box-sizing:border-box;flex-direction:column;gap:8px;width:260px;padding:8px;display:flex}.dreamcore-player header{gap:8px;min-height:28px;margin:0}.dreamcore-player header strong{font-size:.8rem}.dreamcore-player .builder-panel-handle{min-height:22px;margin:0;padding:2px 4px}.music-window-actions{align-items:center;gap:4px;display:flex}.dreamcore-player header .music-window-actions button{justify-content:center;align-items:center;width:28px;min-height:28px;padding:4px;display:inline-flex}.dreamcore-player .music-video{flex:none;min-height:200px}.dreamcore-player .music-track{overflow-wrap:anywhere;margin:0;font-size:.75rem;line-height:1.4}.dreamcore-player .music-controls{gap:8px;margin:0}.dreamcore-player .music-details{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:8px;display:flex}.dreamcore-player .music-details[hidden]{display:none}.dreamcore-player .music-repeat{margin:0}.dreamcore-player .music-details label{justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.dreamcore-player .music-volume{flex:none;margin:0}.dreamcore-player .dreamcore-queue{gap:6px;margin:0}.dreamcore-player .music-details>button{justify-content:center;align-items:center;gap:6px;min-height:34px;display:flex}.dreamcore-player .music-details>a{margin:0;font-size:.7rem}.dreamcore-player[data-minimized=true]{gap:6px;width:216px;padding:8px}.dreamcore-player[data-minimized=true] header strong{font-size:.72rem}.dreamcore-player[data-minimized=true] .builder-panel-handle{height:16px;min-height:16px;font-size:0}.dreamcore-player[data-minimized=true] .builder-panel-handle span:first-child,.dreamcore-player[data-minimized=true] .builder-panel-handle span:last-child{font-size:12px}.dreamcore-player[data-minimized=true] .music-track{white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.dreamcore-player[data-minimized=true] .music-controls button{flex-basis:36px;min-height:32px;padding:5px}.builder-walk-controls.walk-controls-compact{flex-direction:column;align-items:stretch;gap:8px;width:228px;padding:8px;display:flex}.walk-controls-compact>p{margin:0;font-size:.62rem;line-height:1.4}.builder-walk-controls.walk-controls-compact>div{margin:0}.walk-controls-compact .walk-inputs{justify-content:space-around;gap:12px;display:flex}.walk-controls-compact .walk-pad{grid-template-rows:14px 30px 30px;grid-template-columns:repeat(3,30px);gap:3px;display:grid}.walk-pad>span{text-align:center;color:var(--ink-2);grid-column:1/-1;font-size:.62rem}.walk-pad .walk-w{grid-area:2/2}.walk-pad .walk-a{grid-area:3/1}.walk-pad .walk-s{grid-area:3/2}.walk-pad .walk-d{grid-area:3/3}.walk-controls-compact .walk-action-icons{border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);gap:5px;padding-top:8px;display:grid}.builder-walk-controls.walk-controls-compact button{border-radius:7px;justify-content:center;align-items:center;height:30px;min-height:30px;transition:background .14s,color .14s,box-shadow .14s;display:flex;padding:5px!important}.walk-controls-compact button[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--flag);box-shadow:inset 0 -2px var(--flag)}.walk-controls-compact button:hover{border-color:var(--flag)}.walk-controls-compact button:focus-visible{outline:2px solid var(--flag);outline-offset:2px}.walk-controls-compact button:active{background:var(--flag);color:#fff}.walk-controls-compact button:disabled{opacity:.45}.walk-icon{pointer-events:none;justify-content:center;align-items:center;display:flex}.walk-controls-compact .walk-icon svg{width:18px;height:18px;display:block}.walk-tip{position:relative}.walk-tip:after{content:attr(data-tip);background:var(--ink);width:max-content;max-width:160px;color:var(--surface);border:1px solid var(--line);opacity:0;pointer-events:none;z-index:60;border-radius:6px;padding:5px 7px;font-size:.68rem;line-height:1.3;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 6px);left:0;transform:translateY(3px)}.walk-tip:hover:after,.walk-tip:focus-visible:after{opacity:1;transform:none}.walk-action-icons .walk-tip:nth-child(5n):after{left:auto;right:0}@media (prefers-reduced-motion:reduce){.walk-controls-compact button,.walk-tip:after{transition:none}}.walk-controls-compact>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.walk-controls-compact>header strong{font-size:.72rem}.builder-walk-controls.walk-controls-compact>header>button{width:26px;height:26px;min-height:26px;padding:4px!important}.walk-controls-compact .walk-control-body{flex-direction:column;gap:8px;display:flex}.walk-controls-compact .walk-control-body[hidden]{display:none}.walk-control-body>p{margin:0;font-size:.62rem;line-height:1.4}.builder-walk-controls.walk-controls-compact[data-minimized=true]{gap:0;width:160px;padding:5px 8px}.walk-controls-compact .walk-action-icons{grid-template-columns:repeat(5,minmax(0,1fr))}.walk-dance{grid-column:span 2;position:relative}.walk-dance>button{gap:5px;width:100%}.walk-dance>button[data-active=true]{background:var(--ink);color:var(--surface);box-shadow:inset 0 -2px var(--flag);border-color:var(--flag)}.walk-controls-compact .walk-dance-menu{z-index:70;border:1px solid var(--line);background:var(--surface);width:212px;box-shadow:var(--shadow-pop);opacity:1;border-radius:9px;padding:5px;transition:opacity .15s,transform .15s;display:grid;position:absolute;bottom:calc(100% + 8px);left:-8px;transform:translateY(0)}.walk-controls-compact .walk-dance-menu[data-closing=true]{opacity:0;pointer-events:none;transform:translateY(5px)}.builder-walk-controls .walk-dance-menu>button{background:0 0;border:0;justify-content:flex-start;gap:8px;height:auto;min-height:34px;font-size:.74rem;padding:7px!important}.walk-dance-menu>button[aria-checked=true]{background:var(--ink);color:var(--surface);box-shadow:inset 2px 0 var(--flag)}.walk-dance-menu>button:hover{background:var(--field)}.walk-dance-menu>button[aria-checked=true]:hover{background:var(--ink)}.builder-walk-actions button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.builder-walk-actions .planner-icon svg{width:17px;height:17px}@media (prefers-reduced-motion:reduce){.walk-controls-compact .walk-dance-menu{transition:none}}.walk-dance-menu>button>span:last-child:not(.walk-icon){margin-left:0}.walk-dance-menu>button>.walk-dance-check{margin-left:auto!important}.builder-placement-bar{align-items:center;width:fit-content;max-width:calc(100% - 20px);top:60px;left:10px;right:10px}.builder-placement-bar>span{flex:140px;min-width:0;line-height:1.35}.builder-placement-bar>button{flex:none}@media (width<=600px){.builder-placement-bar{gap:4px;padding:5px;top:60px}.builder-placement-bar>span{flex-basis:100%;font-size:.7rem}.builder-placement-bar>button{min-height:32px}}.builder-edit-tools{width:280px;max-width:calc(100% - 24px);max-height:calc(100% - 24px);overflow:auto}.object-picker-current{align-items:center;gap:7px;padding:8px 0;font-size:.8rem;display:flex}.object-picker-current strong{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.object-picker-current small{color:var(--ink-2);font-size:.65rem}.object-picker-search{gap:5px;font-size:.72rem;display:grid}.object-picker-search input{width:100%;min-height:36px}.object-picker-results{gap:4px;max-height:180px;margin-top:6px;display:grid;overflow:auto}.object-picker-results>button{text-align:left;align-items:center;gap:7px;min-height:38px;padding:6px;display:flex}.object-picker-results>button>span{gap:2px;display:grid}.object-picker-results strong{font-size:.74rem}.object-picker-results small{color:inherit;font-size:.68rem}.object-picker-results [aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--flag)}.walk-sound{min-width:0;position:relative}.walk-sound>button{width:100%}.walk-sound>button[data-active=true]{background:var(--ink);color:var(--surface);border-color:var(--flag)}.walk-sound-popover{z-index:75;border:1px solid var(--line);background:var(--surface);width:208px;box-shadow:var(--shadow-pop);opacity:1;border-radius:9px;gap:9px;padding:10px;transition:opacity .15s,transform .15s;display:grid;position:absolute;bottom:calc(100% + 8px);right:0;transform:translateY(0)}.walk-sound-popover[data-closing=true]{opacity:0;pointer-events:none;transform:translateY(5px)}.walk-sound-popover>strong{justify-content:space-between;align-items:center;font-size:.75rem;display:flex}.walk-sound-popover>button{gap:6px;font-size:.75rem}.walk-sound-popover p{margin:0;font-size:.68rem;line-height:1.4}.walk-sound-popover .music-volume{height:18px;min-height:18px;margin:0}.walk-sound-popover .music-volume span{background:var(--flag)}@media (prefers-reduced-motion:reduce){.walk-sound-popover{transition:none}}.walk-controls-compact .walk-action-icons{position:relative}.walk-sound{position:static}.dreamcore-player{transition:opacity .18s,scale .18s,translate .18s;bottom:12px;left:12px;right:auto;translate:0}.dreamcore-player[data-closing=true]{translate:0 12px}@starting-style{.dreamcore-player{opacity:0;translate:0 12px;scale:.98}}@media (prefers-reduced-motion:reduce){.dreamcore-player{transition:none}}.opening-exact-width{gap:4px;font-size:.75rem;display:grid}.opening-exact-width>span{gap:4px;display:flex}.opening-exact-width input{border:1px solid var(--line);background:var(--field);width:0;min-width:0;color:var(--ink);font:inherit;text-align:center;border-radius:7px;flex:1;padding:6px}.opening-exact-width button{min-width:32px;min-height:32px}.floor-builder .builder-opening-range .opening-exact-width .number-control{flex:1}.opening-exact-width>span>button{box-sizing:border-box;flex:none;width:32px;height:36px;min-height:36px;max-height:36px;padding:0}.builder-opening-range>small{color:var(--muted-ink);font-size:.68rem;line-height:1.35}.plan-rulers{pointer-events:none;z-index:2;border-radius:12px;position:absolute;inset:0;overflow:hidden}.plan-rulers>span{background:var(--surface);text-align:center;border:1px solid var(--line);width:24px;height:24px;font-size:10px;line-height:24px;position:absolute;top:0;left:0}.plan-rulers svg{background:color-mix(in srgb,var(--surface) 94%,transparent);position:absolute}.ruler-top{border-bottom:1px solid var(--line);top:0;left:24px}.ruler-left{border-right:1px solid var(--line);top:24px;left:0}.plan-rulers path{stroke:var(--muted-ink);stroke-width:1px;fill:none}.plan-rulers text{font:10px var(--font-body,sans-serif);fill:var(--ink-2)}.plan-rulers .ruler-cursor{stroke:var(--flag);stroke-width:2px}.plan-size{background:var(--surface);border:1px solid var(--line);pointer-events:none;z-index:2;border-radius:9px;gap:2px;max-width:calc(100% - 40px);padding:8px 10px;font-size:.75rem;display:grid;position:absolute;bottom:65px;right:12px}.plan-size small{color:var(--muted-ink);font-size:.65rem}.builder-plan-camera{box-sizing:border-box;max-width:calc(100% - 46px);overflow:auto hidden;top:var(--builder-plan-camera-top,34px)!important}.builder-plan-camera>button{flex-shrink:0}.builder-plan-camera button:has(span){white-space:nowrap;justify-content:center;align-items:center;gap:5px;width:auto;padding:5px 8px;font-size:.72rem;display:flex}.builder-plan-camera button[aria-pressed=true]{border-color:var(--flag);box-shadow:inset 0 -2px var(--flag)}.builder-plan.tool-marquee{cursor:crosshair;touch-action:none}.vertex-selection-status{border:1px solid var(--line);background:var(--surface);z-index:3;box-sizing:border-box;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;max-width:calc(100% - 47px);padding:6px 8px;font-size:.72rem;display:flex;position:absolute;bottom:70px;left:35px}.vertex-selection-status button{min-height:27px;padding:3px 6px;font-size:.7rem}@media (width<=650px){.plan-size{font-size:.68rem;bottom:110px}.plan-size small{display:none}.vertex-selection-status{bottom:65px}}.plan-discovery[aria-pressed=false]{animation:1.2s 3 discover-plan}@keyframes discover-plan{50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--flag) 20%,transparent);border-color:var(--flag)}}@media (prefers-reduced-motion:reduce){.plan-discovery{animation:none!important}}.builder-file{position:relative}.builder-file>[role=menu]{background:var(--surface);border:1px solid var(--line);width:235px;box-shadow:var(--shadow-pop);z-index:50;border-radius:10px;gap:4px;padding:7px;display:grid;position:absolute;top:calc(100% + 6px);left:0}.builder-file [role=menuitem]{justify-content:flex-start;min-height:36px;font-size:.8rem}.builder-walk-toolbar>.builder-graphics{z-index:30;border:0;width:115px;padding:0;position:relative;top:auto;right:auto}.builder-walk-toolbar>.builder-graphics .planner-disclosure-motion{background:var(--surface);border:1px solid var(--line);width:220px;box-shadow:var(--shadow-pop);border-radius:9px;position:absolute;top:calc(100% + 6px);right:0}.builder-walk-toolbar>.builder-graphics .planner-disclosure-motion[data-open=false]{box-shadow:none;border:0}.builder-walk-toolbar>.builder-graphics .planner-disclosure-motion>div{padding:8px}.builder-graphics [role=switch][aria-checked=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.floor-builder>.builder-history{box-sizing:border-box;align-items:center;max-height:46px}.plan-metrics{border-right:1px solid var(--line);white-space:nowrap;gap:0;max-height:34px;padding:0 8px 0 3px;font-size:.67rem;line-height:1.25;display:grid}.plan-metrics strong{font-size:.7rem}.plan-metrics>span{color:var(--muted-ink);font-size:.62rem}@media (width<=750px){.plan-bounding{display:none}.plan-metrics{font-size:.6rem}.plan-metrics strong{font-size:.63rem}}.builder-roof-panel{z-index:45;background:var(--surface);border:1px solid var(--line);width:min(330px,100% - 100px);max-height:calc(100% - 90px);box-shadow:var(--shadow-pop);border-radius:12px;gap:8px;padding:12px;font-size:.78rem;display:grid;position:absolute;top:65px;left:80px;overflow:auto}.builder-roof-panel header{justify-content:space-between;align-items:center;display:flex}.builder-roof-panel p{margin:0;font-size:.73rem;line-height:1.4}.builder-roof-panel label{gap:4px;display:grid}.builder-roof-panel input{background:var(--field);width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);font:inherit;border-radius:7px;padding:6px}.builder-roof-panel :is(.roof-presets,.roof-fields){grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.builder-roof-panel [role=group],.roof-rooms{flex-wrap:wrap;gap:4px;display:flex}.builder-roof-panel button{min-height:30px;padding:5px 7px;font-size:.72rem}.builder-roof-panel button[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.roof-presets button{flex:1;justify-items:center;display:grid}.roof-presets svg{fill:none;stroke:currentColor;stroke-width:2px;width:45px;height:24px}.builder-roof-panel fieldset{border:1px solid var(--line);border-radius:8px;padding:7px}.builder-roof-panel legend{padding:0 4px}.builder-level-menu{position:relative}.builder-level-panel{z-index:50;border:1px solid var(--line);background:var(--surface);width:280px;max-height:70dvh;box-shadow:var(--shadow-pop);border-radius:10px;gap:8px;padding:12px;font-size:.75rem;display:grid;position:absolute;top:calc(100% + 6px);left:0;overflow:auto}.builder-level-panel [role=group]{flex-wrap:wrap;gap:4px;display:flex}.builder-level-panel label{gap:3px;display:grid}.builder-level-panel input{border:1px solid var(--line);background:var(--field);width:100%;color:var(--ink);font:inherit;border-radius:7px;padding:6px}.builder-level-panel p{margin:0;font-size:.7rem;line-height:1.4}.builder-level-panel button{min-height:30px;font-size:.72rem}.builder-level-panel button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.builder-level-panel fieldset{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr;gap:5px;padding:7px;display:grid}.builder-level-panel fieldset>button{grid-column:1/-1}.dreamcore-player[data-minimized=true]{width:220px;min-width:220px}.music-error{max-height:120px;font-size:12px;line-height:1.4;overflow:auto}.music-error p{margin:8px 0}.presentation-progress{z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:10px;align-items:center;gap:12px;padding:8px 12px;display:flex;position:absolute;top:68px;left:12px;box-shadow:0 4px 16px #1d2a3014}.presentation-progress button{padding:4px 8px}.builder-viewer[hidden],.builder-3d[hidden]{display:none!important}.planner-tour-card{z-index:85;border:1px solid var(--line);background:var(--surface);width:min(350px,100% - 24px);box-shadow:var(--shadow-pop);animation:tour-copy-arrive var(--dur-open) var(--ease-out);border-radius:12px;padding:15px;position:absolute;bottom:88px;right:12px;overflow:hidden}.planner-tour-time{background:var(--line);height:4px;position:absolute;top:0;left:0;right:0;overflow:hidden}.planner-tour-time>span{background:var(--flag);transform-origin:0;width:100%;height:100%;display:block}.planner-tour-copy{animation:tour-copy-arrive .36s var(--ease-out)}.planner-tour-copy small{color:var(--muted-ink);flex-wrap:wrap;justify-content:space-between;gap:3px 8px;font-size:.68rem;display:flex}.planner-tour-copy h3{margin:9px 0 7px;font-size:1rem}.planner-tour-copy p{margin:0 0 12px;font-size:.82rem;line-height:1.5}.planner-tour-actions{gap:5px;display:flex}.floor-builder .planner-tour-actions button{min-height:34px;padding:6px 9px;font-size:.75rem}.floor-builder .planner-tour-next{background:var(--ink);color:var(--surface);border-color:var(--ink);margin-left:auto}.planner-tour-card{overflow:visible}.planner-tour-time{border-radius:12px 12px 0 0}.planner-tour-chapters{margin-top:9px;position:relative}.floor-builder .planner-tour-chapters>button{justify-content:space-between;align-items:center;width:100%;min-height:34px;padding:6px 9px;font-size:.75rem;display:flex}.planner-tour-chapters>button svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:16px;height:16px;transition:transform var(--dur-open)}.planner-tour-chapters>button[aria-expanded=true] svg{transform:rotate(180deg)}.planner-tour-chapters>nav{z-index:2;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-pop);visibility:hidden;opacity:0;transition:opacity var(--dur-close),transform var(--dur-close),visibility 0s var(--dur-close);border-radius:9px;padding:6px;position:absolute;bottom:calc(100% + 7px);left:0;right:0;transform:translateY(6px)}.planner-tour-chapters>nav[data-open=true]{visibility:visible;opacity:1;transition-duration:var(--dur-open);transition-delay:0s;transform:none}.planner-tour-card nav{gap:4px;max-height:190px;display:grid;overflow:auto}.floor-builder .planner-tour-card nav button{text-align:left;justify-content:flex-start;gap:8px;min-height:32px;padding:6px 8px;font-size:.75rem;display:flex}.planner-tour-card nav button>span{min-width:20px}.floor-builder .planner-tour-card [aria-current=step]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.planner-tour-spotlight{z-index:2300;pointer-events:none;border:2px solid var(--flag);box-shadow:0 0 0 4px color-mix(in srgb,var(--flag) 14%,transparent);transition:left .65s var(--ease-out),top .65s var(--ease-out),width .65s var(--ease-out),height .65s var(--ease-out);border-radius:10px;position:fixed}[data-tour-active=true]{outline-offset:2px;outline:2px solid var(--flag)!important}.planner-menu-panel [data-tour-active=true]:after{content:"●";color:var(--flag);margin-left:auto;font-size:.65rem}.floor-builder[data-tour-feature=rulers] .plan-metrics{outline:2px solid var(--flag);outline-offset:3px}.floor-builder[data-tour-feature=assets] .builder-assets,.floor-builder[data-tour-feature=roof] .builder-roof-panel,.floor-builder[data-tour-feature=exterior] .builder-exterior-panel,.floor-builder:is([data-tour-feature=floors],[data-tour-feature=walls]) .surface-panel{border-color:var(--flag);box-shadow:0 0 0 3px color-mix(in srgb,var(--flag) 12%,transparent),var(--shadow-pop)}@keyframes tour-copy-arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media (width<=600px){.planner-tour-card{width:min(310px,100% - 24px);padding:12px;bottom:72px;right:8px}.planner-tour-copy p{font-size:.75rem}.planner-tour-copy h3{font-size:.9rem}.planner-tour-card nav{max-height:140px}}@media (prefers-reduced-motion:reduce){.planner-tour-card,.planner-tour-copy{animation:none}.planner-tour-spotlight,.planner-tour-chapters>nav,.planner-tour-chapters>button svg{transition:none}}.builder-level-panel{z-index:30;max-height:min(70vh,650px);overflow:auto}.builder-level-panel input{width:100%;min-width:0}.builder-exterior-panel{transition:opacity var(--dur-close),scale var(--dur-close)}.builder-exterior-panel[data-closing=true]{opacity:0;pointer-events:none;scale:.98}@starting-style{.builder-exterior-panel{opacity:0;scale:.98}}.exterior-panel-body{overscroll-behavior:contain;scrollbar-gutter:stable;gap:10px;min-height:0;padding:16px;display:grid;overflow:auto}.exterior-panel-body p+h3{border-top:1px solid var(--line);margin-top:6px;padding-top:16px}.exterior-panel-body h3{margin:0;font-size:.88rem;font-weight:600;line-height:1.3}.exterior-panel-body label{gap:6px;display:grid}.exterior-panel-body p{margin:0;line-height:1.5}.exterior-panel-body .hint{background:var(--field);color:var(--muted-ink);border-radius:8px;padding:10px;font-size:.72rem}.exterior-library{gap:8px;display:grid}.floor-builder .exterior-library button{text-align:left;justify-content:flex-start;gap:12px;min-height:60px;padding:12px;display:flex}.exterior-library button>.planner-icon{flex:none}.exterior-library button>span:last-child{gap:3px;font-weight:600;display:grid}.exterior-library small{color:var(--muted-ink);font-size:.7rem;font-weight:400}.surface-view-tabs{gap:5px;display:flex}.scene-layers{border:1px solid var(--line);border-radius:9px;gap:5px;margin-bottom:10px;padding:10px;display:grid}.scene-layers header,.scene-layers>div,.scene-layer-row{align-items:center;gap:5px;display:flex}.scene-layers header{justify-content:space-between}.scene-layers header button{padding:4px 8px;font-size:.7rem}.scene-layers>div>span:not(.planner-icon){flex:1;font-size:.8rem}.scene-layer-switches{gap:3px;flex:none!important;display:flex!important}.floor-builder .scene-layer-switches button{place-items:center;min-width:29px;min-height:30px;display:grid;padding:4px!important}.scene-layer-switches button[aria-pressed=true]{color:var(--flag);border-color:var(--flag)}.scene-layers small{color:var(--ink-2);font-size:.72rem;line-height:1.4}.scene-layer-row>button{flex:1;min-width:0}.scene-layer-row>.scene-layer-switches{padding-right:4px}.surface-panel .surface-edit-scope{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.surface-editor-body{gap:10px;display:grid}.surface-editor-body[hidden]{display:none}.surface-reference{background:var(--field);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;gap:4px;padding:10px;display:grid}.surface-reference>span{color:var(--ink-2);font-size:.68rem}.surface-reference>strong{font-size:.8rem}.surface-reference>span:nth-of-type(2){color:var(--flag);margin-top:5px}.surface-reference small{color:var(--ink-2);font-size:.7rem}.surface-reference code{font-size:.65rem}.surface-panel.surface-presence{left:auto;right:12px}.surface-actions button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.builder-viewer[data-material-view] .builder-wall-modes{display:none}.surface-view-tabs>button{min-height:36px;transition:background var(--dur-hover),color var(--dur-hover),border-color var(--dur-hover);flex:1;justify-content:center;align-items:center;gap:6px;display:flex}.floor-builder .scene-layer-switches button{flex:0 0 30px!important;width:30px!important;max-width:30px!important}.floor-builder .scene-layers header>button{flex:none;width:auto;min-width:48px}.scene-layer-row>button{width:0}.scene-layers>header>strong{white-space:nowrap;font-size:.85rem}.floor-builder .surface-view-tabs>button[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}@media (prefers-reduced-motion:reduce){.builder-exterior-panel{transition:none}}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-control{box-sizing:border-box;border:1px solid var(--line);background:var(--field);border-radius:7px;flex:none;align-self:start;height:36px;min-height:36px;max-height:36px;display:flex;overflow:hidden}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-control:focus-within{outline:2px solid var(--flag);outline-offset:2px}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-control input{font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:0;outline:0;flex:1;min-width:0;height:34px;min-height:0;padding:6px 9px;font-size:.8rem}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-arrows{border-left:1px solid var(--line);flex:0 0 26px;grid-template-rows:17px 17px;display:grid}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-arrows button{box-sizing:border-box;box-shadow:none;transition:background var(--dur-hover),color var(--dur-hover);background:0 0;place-items:center;display:grid;border:0!important;border-radius:0!important;min-width:0!important;height:17px!important;min-height:0!important;padding:0!important}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-arrows button:hover{background:var(--tint);color:var(--ink)}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-arrows button:focus-visible{outline:2px solid var(--flag);outline-offset:-2px}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-arrows button+button{border-top:1px solid var(--line)!important}.floor-builder :is(.builder-level-panel,.builder-roof-panel,.surface-panel,.builder-opening-range,.material-takeoff) .number-arrows svg{width:12px;height:12px}.floor-builder.app-workbench>.builder-top{height:auto;overflow:visible;flex-wrap:nowrap!important}.builder-top>button,.builder-level-menu>button{white-space:nowrap}.builder-top>:is(.builder-level-menu,.builder-file){flex:none}.floor-builder>.builder-top>.builder-level-menu>button,.floor-builder>.builder-top>.builder-tools>button{white-space:nowrap;gap:5px;min-height:36px;padding:6px 8px;font-size:.75rem;line-height:1.2}.builder-top .planner-icon svg{width:16px;height:16px}.builder-top>.builder-tools{gap:4px}.builder-top .builder-walk-toolbar>.builder-graphics{width:100px}.floor-builder>.builder-top{gap:6px;min-height:44px;margin:0;padding:0 0 6px;flex-wrap:nowrap!important}.builder-menu-bar{scrollbar-width:none;flex:0 auto;align-items:center;gap:2px;min-width:0;display:flex;overflow-x:auto}.builder-menu-bar::-webkit-scrollbar{display:none}.floor-builder>.builder-top{z-index:60;background:var(--surface);position:sticky;top:0}.builder-active-modes{flex-wrap:wrap;flex:0 auto;align-items:center;gap:4px;min-width:0;max-width:100%;display:flex}.builder-active-modes:empty{display:none}.floor-builder>.builder-top:has(.builder-active-modes:not(:empty)){min-height:44px;flex-wrap:wrap!important;height:auto!important}.floor-builder:is(.app-workbench,.is-fullscreen):has(.builder-active-modes:not(:empty)){grid-template-rows:auto minmax(0,1fr) 24px!important}.planner-active-mode{min-width:0;animation:active-mode-arrive var(--dur-open) var(--ease-out) both;display:inline-flex}.planner-active-mode[data-closing=true]{pointer-events:none;animation:active-mode-leave .18s var(--ease-in) both}.floor-builder .planner-active-mode>button{text-align:left;border-radius:7px;gap:6px;max-width:100%;min-height:34px;padding:6px 8px;font-size:.75rem}.planner-active-mode>button>span:not(.planner-icon){overflow-wrap:anywhere}.planner-active-mode .planner-icon svg{width:16px;height:16px}.planner-active-mode .planner-icon:last-child{margin-left:2px}@keyframes active-mode-arrive{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes active-mode-leave{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-4px)}}@media (width<=1100px){.builder-active-modes{flex:1 0 100%;order:5}.floor-builder .planner-active-mode>button{min-height:36px}}@media (prefers-reduced-motion:reduce){.planner-active-mode,.planner-active-mode[data-closing=true]{animation:none}}.floor-builder>.builder-object-list{flex-direction:column;min-height:0;display:flex;overflow:hidden!important}.builder-sidebar-header{background:var(--surface);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:2px;padding:4px;display:flex}.builder-sidebar-tabs{flex:1;gap:2px;min-width:0;display:flex}.floor-builder .builder-sidebar-tabs>button{background:0 0;border:0;flex:1;gap:4px;min-width:0;min-height:34px;padding:5px 4px;font-size:.73rem}.floor-builder .builder-sidebar-tabs>button[aria-selected=true]{background:var(--ink);color:var(--surface)}.builder-sidebar-tabs>button>span:not(.planner-icon){opacity:.7;font-size:.65rem}.builder-sidebar-tabs .planner-icon svg{width:14px;height:14px}.floor-builder .builder-sidebar-header>.builder-layers-toggle{background:0 0;border:0;width:25px;min-width:25px;min-height:34px;padding:4px}.builder-sidebar-panel{overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:0;overflow:auto}.builder-sidebar-panel[hidden],.builder-sidebar-tabs[hidden]{display:none!important}.builder-sidebar-panel:not([hidden]){animation:active-mode-arrive var(--dur-open) var(--ease-out)}.sidebar-asset-catalog{flex-direction:column;height:100%;min-height:0;display:flex}.sidebar-asset-search{flex:none;padding:8px}.sidebar-asset-search input{box-sizing:border-box;background:var(--field);width:100%;min-width:0;min-height:34px;color:var(--ink);border:1px solid var(--line);font:inherit;border-radius:7px;padding:6px 8px;font-size:.78rem}.sidebar-asset-search p{color:var(--ink-2);margin:6px 0 0;font-size:.7rem;line-height:1.4}.sidebar-asset-categories{scrollbar-width:thin;flex:none;gap:4px;padding:0 8px 8px;display:flex;overflow-x:auto}.floor-builder .sidebar-asset-categories button{white-space:nowrap;flex:none;min-height:29px;padding:4px 7px;font-size:.7rem}.sidebar-asset-results{scrollbar-width:thin;flex:1;min-height:0;padding:0 6px 8px;overflow:auto}.sidebar-asset-results>small{color:var(--ink-2);margin:2px 2px 6px;font-size:.68rem;display:block}.floor-builder .sidebar-asset-results>button{text-align:left;background:var(--field);cursor:grab;justify-content:flex-start;gap:8px;width:100%;min-height:46px;margin-bottom:5px;padding:7px;display:flex}.sidebar-asset-results>button:active{cursor:grabbing}.sidebar-asset-results>button{touch-action:pan-y;user-select:none}.catalog-pointer-ghost{z-index:1800;pointer-events:none;border:1px solid var(--flag);background:var(--surface);max-width:210px;color:var(--ink);box-shadow:var(--shadow-pop);border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-size:.76rem;display:flex;position:fixed}.catalog-placement-note{z-index:38;border:1px solid var(--line);background:var(--surface);width:max-content;max-width:calc(100% - 24px);color:var(--ink);box-shadow:var(--shadow-pop);pointer-events:none;border-radius:10px;gap:3px;padding:8px 42px 8px 12px;font-size:.76rem;display:grid;position:absolute;bottom:60px;left:50%;transform:translate(-50%)}.catalog-placement-note strong{font-size:.82rem}.catalog-placement-note small{color:var(--ink-2);font-size:.68rem}.catalog-placement-note>button{pointer-events:auto;width:28px;min-height:28px;padding:4px;position:absolute;top:6px;right:6px}.catalog-placement-note[data-valid=true]{border-color:var(--flag)}.free-wall-drawing-note{z-index:30;border:1px solid var(--line);background:var(--surface);width:max-content;max-width:calc(100% - 24px);box-shadow:var(--shadow-pop);color:var(--ink);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:.76rem;display:flex;position:absolute;bottom:58px;left:50%;transform:translate(-50%)}.free-wall-drawing-note button{flex:none;font-size:.74rem;padding:6px 8px!important}.free-wall-properties{gap:10px;display:grid}.free-wall-properties>label{grid-template-columns:1fr 120px;align-items:center;gap:10px;font-size:.78rem;display:grid}.free-wall-properties>label>input{min-width:0;height:32px}.free-wall-value{align-items:center;gap:6px;display:flex}.free-wall-value input{width:100%;min-width:0;height:34px!important;min-height:0!important;padding:6px!important}.free-wall-value>span{color:var(--ink-2);font-size:.7rem}.tool-wall{cursor:crosshair}.free-wall-properties input{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:6px 8px}.planner-panel-loading{z-index:40;border:1px solid var(--line);background:var(--surface);max-width:calc(100% - 24px);color:var(--ink);box-shadow:var(--shadow-pop);border-radius:10px;padding:12px 16px;font-size:.8rem;position:absolute;top:60px;left:50%;transform:translate(-50%)}.sidebar-asset-results>button>span:not(.planner-icon){overflow-wrap:anywhere;min-width:0;font-size:.75rem;line-height:1.3}.sidebar-asset-results small{color:var(--ink-2);margin-top:3px;font-size:.65rem;display:block}.sidebar-asset-results .asset-drag-grip{opacity:.6;flex:none;margin-left:auto}.floor-builder[data-tour-feature=assets]>.builder-object-list[data-tab=assets]{border-color:var(--flag);box-shadow:0 0 0 2px color-mix(in srgb,var(--flag) 16%,transparent)}.catalog-drop-cursor{z-index:40;pointer-events:none;border:1px solid var(--flag);background:var(--surface);max-width:230px;color:var(--ink);box-shadow:var(--shadow-pop);border-radius:7px;align-items:center;gap:6px;padding:7px 10px;font-size:.75rem;display:flex;position:absolute;transform:translate(12px,-100%)}.floor-builder>:is(.builder-roof-panel,.builder-exterior-panel,.builder-ai-panel,.builder-render-panel,.builder-export-menu){max-height:calc(100% - var(--builder-header-bottom,44px) - 18px);top:max(56px,calc(var(--builder-header-bottom,44px) + 8px))!important}@media (width<=1100px){.floor-builder>.builder-object-list{max-height:320px}.sidebar-asset-catalog{max-height:270px}.builder-sidebar-panel{min-height:0}.builder-sidebar-header{z-index:2;position:sticky;top:0}.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list{left:8px;top:calc(var(--builder-header-bottom,44px) + 8px);z-index:35;height:min(430px,calc(100% - var(--builder-header-bottom,44px) - 70px));border:1px solid var(--line);background:var(--surface);max-height:none;box-shadow:var(--shadow-pop);border-radius:9px;bottom:auto;width:min(var(--builder-sidebar-width),calc(100% - 32px))!important;grid-area:1/1/-1/-1!important;position:absolute!important}.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list[data-open=false]{height:36px;width:36px!important}.floor-builder:is(.app-workbench,.is-fullscreen)>.builder-object-list .sidebar-asset-catalog{max-height:none}.planner>.planner-grid>.room-results .floor-builder.is-fullscreen:has(.builder-active-modes:not(:empty)){grid-template-rows:auto minmax(0,1fr) 24px!important}}@media (prefers-reduced-motion:reduce){.builder-sidebar-panel:not([hidden]){animation:none}}.planner-menu{flex:none}.floor-builder .planner-menu-trigger{white-space:nowrap;background:0 0;border-color:#0000;gap:5px;height:36px;min-height:36px;padding:6px 9px}.floor-builder .planner-menu-trigger:hover{background:var(--field)}.floor-builder .planner-menu-trigger[aria-expanded=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.planner-menu-trigger>svg{fill:none;stroke:currentColor;stroke-width:1.7px;width:12px;height:12px;transition:transform var(--dur-close) var(--ease-in)}.planner-menu-trigger[aria-expanded=true]>svg{transition-duration:var(--dur-open);transform:rotate(180deg)}.floor-builder>.builder-top>.builder-level-menu{margin-left:auto}.floor-builder>.builder-top>.builder-tools:last-child{box-shadow:none;background:0 0;order:0;margin-left:0;padding:0;position:static}.builder-level-menu>button{max-width:180px}.builder-level-menu>button>span:not(.planner-icon){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.builder-level-panel{max-width:calc(100vw - 16px);animation:inspector-arrive var(--dur-open) var(--ease-out);transition:opacity var(--dur-close) var(--ease-in),transform var(--dur-close) var(--ease-in);position:fixed;right:auto}.builder-level-panel[data-closing=true]{opacity:0;pointer-events:none;transform:translateY(-5px)}.planner-menu-panel{z-index:2100;box-sizing:border-box;border:1px solid var(--line);background:var(--surface);width:min(280px,100vw - 16px);color:var(--ink);box-shadow:var(--shadow-pop);font:inherit;opacity:0;transform-origin:0 0;visibility:hidden;pointer-events:none;transition:opacity var(--dur-close) var(--ease-in),transform var(--dur-close) var(--ease-in),visibility 0s var(--dur-close);border-radius:10px;padding:6px;position:fixed;overflow-y:auto;transform:translateY(-5px)scale(.98)}.planner-menu-panel[data-open=true]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--dur-open) var(--ease-out),transform var(--dur-open) var(--ease-out),visibility 0s;transform:none}.planner-menu-panel button{box-sizing:border-box;width:100%;min-height:36px;color:inherit;text-align:left;font:inherit;cursor:pointer;transition:background var(--dur-hover),color var(--dur-hover);background:0 0;border:0;border-radius:6px;justify-content:flex-start;align-items:center;gap:9px;padding:8px 10px;font-size:.8rem;line-height:1.3;display:flex}.planner-menu-panel button:hover{background:var(--field)}.planner-menu-panel button:focus-visible{outline:2px solid var(--chalk);outline-offset:-2px;background:var(--field)}.planner-menu-panel button[aria-checked=true]{background:var(--ink);color:var(--surface)}.planner-menu-panel button[aria-checked=true] small{color:var(--surface);opacity:1}.planner-menu-panel .planner-icon svg{width:17px;height:17px}.planner-menu-panel [role=separator]{background:var(--line);height:1px;margin:5px 4px}.planner-menu-label{color:var(--muted-ink);padding:7px 10px 5px;font-size:.7rem;display:block}.planner-menu-quality{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;margin-bottom:4px;display:grid}.planner-menu-quality button{justify-content:center;gap:5px;padding:7px 5px}.planner-menu-panel :is([role=menuitemcheckbox],[role=menuitemradio])>.planner-icon[data-tool-icon=apply]{opacity:0;transition:opacity var(--dur-close),transform var(--dur-open) var(--ease-out);margin-left:auto;transform:scale(.65)}.planner-menu-panel :is([role=menuitemcheckbox],[role=menuitemradio])[aria-checked=true]>.planner-icon[data-tool-icon=apply]{opacity:1;transform:none}.planner-menu-quality [role=menuitemradio]>.planner-icon[data-tool-icon=apply]{margin-left:0}@media (width<=900px){.floor-builder>.builder-top{align-items:center;gap:4px;min-height:44px;overflow:visible}.builder-menu-bar{flex:1}.floor-builder .planner-menu-trigger{padding:6px 8px}.floor-builder>.builder-top>.builder-level-menu{margin-left:0}.floor-builder>.builder-top>.builder-level-menu>button{box-sizing:border-box;place-items:center;gap:0;width:36px;height:36px;min-height:36px;padding:0;font-size:0;display:grid}.floor-builder>.builder-top>.builder-level-menu>button>span:not(.planner-icon){display:none}.floor-builder>.builder-top>.builder-level-menu>button>.planner-icon{place-items:center;width:18px;height:18px;display:grid}.floor-builder>.builder-top>.builder-level-menu>button>.planner-icon svg{width:18px;height:18px;display:block}.floor-builder>.builder-top>.builder-tools:last-child button{gap:0;width:36px;min-width:36px;min-height:36px;padding:8px;font-size:0}.builder-top [aria-label=View\ mode] .builder-view-mode-label{font-size:.78rem;font-weight:700;line-height:1}.builder-top [aria-label=View\ mode] .builder-view-mode-detail,.builder-top [aria-label=View\ mode] .planner-icon{display:none}}@media (prefers-reduced-motion:reduce){.builder-level-panel{transition:none!important;animation:none!important}.planner-menu-panel,.planner-menu-trigger>svg,.planner-menu-panel button,.planner-menu-panel :is([role=menuitemcheckbox],[role=menuitemradio])>.planner-icon[data-tool-icon=apply]{transition:none!important}}@media (width>=1101px){.floor-builder:is(.app-workbench,.is-fullscreen):has(>.builder-object-list){grid-template-rows:auto minmax(0,1fr) 24px!important}.floor-builder.app-workbench>.builder-top{align-items:center;min-height:44px}.builder-walk-actions{display:contents!important}}@media (width<=900px){.floor-builder>.builder-toolbar-slot{min-height:0;height:auto!important}.floor-builder>.builder-toolbar-slot .builder-camera-group{gap:6px;display:flex}.floor-builder>.builder-instruction{height:auto;min-height:0;max-height:3em;font-size:.76rem;line-height:1.4;overflow:hidden}.floor-builder .builder-viewer>.builder-camera{bottom:60px;left:10px;right:10px;overflow-x:auto;flex-wrap:nowrap!important;max-width:calc(100% - 20px)!important}.plan-metrics{max-width:calc(100vw - 190px);font-size:9px}.plan-metrics .plan-bounding{display:none}}.roof-section-map{background:var(--page);border:1px solid var(--line);border-radius:8px;width:100%;height:150px;display:block}.roof-section-map [role=button]{cursor:pointer;outline:none}.roof-section-map [role=button]:focus-visible rect{stroke:var(--flag);stroke-width:.35px}.home-presets-panel{width:min(410px,100% - 100px)}.home-presets-panel article{border:1px solid var(--line);border-radius:9px;gap:8px;padding:10px;display:grid}.home-presets-panel article>small{color:var(--ink-2)}.home-preset-preview{gap:10px;display:flex}.home-preset-preview figure{flex:1;min-width:0;margin:0}.home-preset-preview svg{background:var(--page);border-radius:5px;width:100%;height:130px}.home-preset-preview figcaption{color:var(--ink-2);text-align:center;font-size:.7rem}.builder-roof-panel{flex-direction:column;gap:0;width:min(370px,100% - 100px);padding:0;display:flex;overflow:hidden}.builder-roof-panel>.builder-panel-handle{border-radius:11px 11px 0 0;flex:none;margin:0;padding:10px 12px}.builder-roof-panel>header{flex:none;padding:4px 12px 10px}.builder-roof-panel .roof-panel-tabs{border-bottom:1px solid var(--line);flex:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:0 12px 10px;display:grid}.roof-panel-tabs [role=tab][aria-selected=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.roof-panel-tabs button{transition:background var(--dur-hover),color var(--dur-hover),border-color var(--dur-hover)}.roof-panel-body{scrollbar-gutter:stable;flex-direction:column;gap:10px;min-height:0;padding:12px;display:flex;overflow:auto}.roof-panel-body [role=tabpanel]{gap:10px;min-width:0;display:grid}.roof-current-target{border-left:3px solid var(--flag);background:var(--field);border-radius:6px;gap:2px;padding:9px 11px;display:grid}.roof-current-target span,.roof-scope-note{color:var(--ink-2);font-size:.74rem}.builder-roof-panel .roof-edit-scope{grid-template-columns:1fr 1fr;gap:4px;display:grid}.builder-roof-panel .roof-material-cards{grid-template-columns:1fr 1fr;gap:7px;display:grid}.roof-material-cards button{text-align:left;flex-direction:column;align-items:stretch;gap:5px;min-width:0;display:flex;overflow:hidden;padding:6px!important}.roof-material-cards button[aria-pressed=true]{outline:2px solid var(--flag);outline-offset:1px}.roof-material-cards strong{font-size:.77rem;line-height:1.2}.roof-material-cards small{opacity:.8;font-size:.66rem;line-height:1.25}.roof-material-sample{background-color:var(--roof-swatch);border-radius:5px;height:52px;display:block;box-shadow:inset 0 0 0 1px #0002}.roof-material-sample[data-covering=shingle]{background-image:repeating-linear-gradient(0deg,#0000 0 11px,#0006 12px,#fff3 13px,#0000 14px),repeating-linear-gradient(90deg,#0000 0 24px,#0003 25px,#0000 26px)}.roof-material-sample[data-covering=standing-seam]{background-image:repeating-linear-gradient(100deg,#0000 0 20px,#0008 21px,#fff6 23px,#0000 25px)}.roof-material-sample[data-covering=clay-tile]{background-image:repeating-linear-gradient(0deg,#0000 0 23px,#0008 25px,#fff2 26px),repeating-linear-gradient(90deg,#0008,#fff3 11px,#0002 20px,#0008 24px)}.roof-material-sample[data-covering=cedar-shake]{background-image:repeating-linear-gradient(0deg,#0000 0 24px,#0008 25px),repeating-linear-gradient(90deg,#0003 0 1px,#fff1 2px,#0000 4px,#0003 16px)}.builder-roof-panel .roof-color-choices{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:6px;display:grid}.roof-color-choices button{flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;min-width:0;padding:5px 3px;font-size:.65rem;line-height:1.1;display:flex}.roof-color-choices button span{border:1px solid #0003;border-radius:50%;width:24px;height:24px;box-shadow:inset 0 0 0 2px #fff3}.roof-finish-presets{gap:4px;display:grid}.builder-roof-panel .roof-gutter-profiles{grid-template-columns:1fr 1fr;display:grid}.roof-gutter-profiles button{justify-items:center;gap:3px;display:grid}.roof-gutter-profiles svg{fill:none;stroke:currentColor;stroke-width:2px;width:64px;height:38px}.roof-drainage-preview{border:1px solid var(--line);background:var(--field);color:var(--ink-2);border-radius:8px;justify-items:center;gap:3px;padding:8px;font-size:.7rem;display:grid}.roof-drainage-preview svg{width:100%;height:100px}.roof-diagram-cover{fill:var(--ink-2)}.roof-diagram-fascia{fill:none;stroke:var(--ink-2);stroke-width:3px}.roof-diagram-gutter{fill:none;stroke:var(--flag);stroke-width:4px;stroke-linejoin:round}@media (width<=600px){.builder-roof-panel{width:min(360px,100% - 16px);max-height:calc(100% - 70px);top:56px;left:8px}}.roof-panel-body [role=tabpanel]{animation:.18s ease-out roof-panel-in}@keyframes roof-panel-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.roof-panel-body [role=tabpanel]{animation:none}}.mobile-viewport-drawer,.mobile-controls-body{display:contents}.mobile-controls-tab,.mobile-controls-heading,.mobile-camera-presets,.mobile-scene-actions,.mobile-plan-draw-tools,.mobile-plan-view-actions{display:none!important}.builder-viewer[data-walk-mode=first] .mobile-viewport-drawer .builder-viewport-tools>svg,.builder-viewer[data-walk-mode=first] .mobile-viewport-drawer .builder-viewport-tools>[role=toolbar]{visibility:hidden;pointer-events:none}@media (width<=900px){.floor-builder>.builder-toolbar-slot{display:none!important}.planner>.planner-grid>.room-results .floor-builder.is-fullscreen{grid-template-rows:auto minmax(0,1fr)!important;grid-template-columns:minmax(0,1fr)!important}.floor-builder.is-fullscreen>.builder-viewer,.floor-builder.is-fullscreen>div:has(>.builder-stage),.floor-builder.is-fullscreen>.builder-instruction{grid-column:1!important}.floor-builder .builder-viewport-fullscreen{box-sizing:border-box;z-index:8;gap:0;width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;font-size:0;left:var(--viewport-left,12px)!important;right:auto!important;top:var(--builder-viewport-top,12px)!important;bottom:auto!important}.builder-viewport-fullscreen .builder-fullscreen-label{display:none}.builder-viewport-fullscreen .planner-icon svg{width:21px;height:21px}.mobile-viewport-drawer{z-index:25;width:min(264px,100% - 54px);max-height:calc(100% - 80px);transition:transform .24s var(--ease-out);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-pop);box-sizing:border-box;border-right:0;border-radius:12px 0 0 12px;flex-direction:column;display:flex;position:absolute;top:64px;right:0;transform:translate(100%)}.mobile-viewport-drawer[data-open=true]{transform:translate(0)}.floor-builder .mobile-controls-tab{background:var(--surface);width:35px;min-width:35px;height:64px;min-height:64px;color:var(--ink);border-right:0;border-radius:10px 0 0 10px;flex-direction:column;gap:2px;font-size:.8rem;position:absolute;top:16px;left:-35px;box-shadow:-5px 2px 12px #00000014;padding:6px!important;display:flex!important}.mobile-controls-tab .planner-icon svg{width:20px;height:20px}.mobile-controls-body{overscroll-behavior:contain;scrollbar-width:thin;visibility:hidden;flex:1;min-height:0;max-height:none;padding:10px;transition:visibility 0s .24s;display:block;overflow-y:auto}.mobile-viewport-drawer[data-open=true]>.mobile-controls-body{visibility:visible;transition-delay:0s}.mobile-controls-heading{z-index:2;background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px;padding:0 0 8px;font-size:.83rem;position:sticky;top:-10px;display:flex!important}.floor-builder .mobile-controls-heading>button{width:36px;min-height:36px;padding:6px}.mobile-viewport-drawer .builder-viewport-tools{grid-template-columns:minmax(0,1fr);justify-items:stretch;gap:10px;display:grid;position:static;top:auto;right:auto}.mobile-viewport-drawer [data-view-axes]{grid-area:1/1;justify-self:center;width:52px;height:52px}.mobile-viewport-drawer .builder-viewport-tools>.builder-tools{grid-area:2/1;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:0;display:grid}.floor-builder .mobile-viewport-drawer .builder-viewport-tools>.builder-tools>button{white-space:normal;flex-direction:column;justify-content:center;width:auto;min-height:56px;line-height:1.2;display:flex;gap:3px!important;padding:5px 2px!important;font-size:.65rem!important}.mobile-viewport-drawer .builder-wall-modes{box-sizing:border-box;flex-direction:row;grid-area:3/1;justify-content:center;gap:3px;max-width:100%;padding:4px}.mobile-camera-presets,.mobile-scene-actions,.mobile-plan-draw-tools,.mobile-plan-view-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:10px;display:grid!important}.floor-builder .mobile-camera-presets>button,.floor-builder .mobile-scene-actions>button,.floor-builder .mobile-plan-draw-tools>button,.floor-builder .mobile-plan-view-actions>button{gap:5px;min-width:0;min-height:42px;padding:6px 5px;font-size:.72rem}.floor-builder .builder-viewer>.builder-camera,.floor-builder .builder-navigation{display:none!important}.floor-builder .builder-viewer>.hint{display:none}.floor-builder>.builder-instruction{clip-path:inset(50%);white-space:nowrap;width:1px;padding:0;overflow:hidden;height:1px!important;min-height:0!important;margin:0!important;position:absolute!important}.mobile-viewport-drawer .builder-plan-camera{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;max-width:none;padding:0;display:grid;left:auto;right:auto;overflow:visible;position:static!important;top:auto!important}.floor-builder .mobile-viewport-drawer .builder-plan-camera>button{white-space:normal;gap:3px;width:auto;min-width:0;height:auto;font-size:.65rem;min-height:42px!important;padding:6px 4px!important}.floor-builder .builder-history>button{width:36px;min-width:36px;height:36px;min-height:36px;padding:8px}.builder-history .plan-metrics{display:none}.floor-builder>.builder-object-list{z-index:35;height:min(430px,calc(100% - var(--builder-header-bottom,44px) - 90px));border:1px solid var(--line);background:var(--surface);max-height:none;box-shadow:var(--shadow-pop);border-radius:9px;bottom:auto;left:8px;top:calc(var(--builder-viewport-top,56px) + 58px)!important;width:min(var(--builder-sidebar-width),calc(100% - 32px))!important;grid-area:1/1/-1/-1!important;position:absolute!important}.floor-builder>.builder-object-list[data-open=false]{width:36px!important;height:36px!important}.floor-builder .builder-viewer,.floor-builder .builder-stage{border-radius:12px;overflow:hidden}.floor-builder .builder-3d,.floor-builder .builder-plan{height:55dvh;min-height:380px;max-height:680px}.floor-builder.is-fullscreen .builder-3d,.floor-builder.is-fullscreen .builder-plan{min-height:0;max-height:none;height:100%!important}.builder-viewer .builder-walk-controls{box-sizing:border-box;max-width:calc(100% - 16px);max-height:42%;bottom:62px;left:8px;overflow:auto}.dreamcore-player{box-sizing:border-box;width:min(280px,100vw - 24px);min-width:0;max-height:calc(100dvh - 100px);overflow-y:auto}}@media (prefers-reduced-motion:reduce){.mobile-viewport-drawer,.mobile-controls-body{transition:none!important}}.planner-mobile-menu{color:inherit;border:0;margin:0;padding:0;display:contents}.planner-mobile-menu-toggle,.planner-mobile-menu-heading{display:none!important}@media (width<=900px){.floor-builder>.builder-top>.planner-mobile-menu-toggle{flex:none;align-items:center;gap:7px;min-height:40px;padding:8px 10px;font-size:.8rem;display:flex!important}.planner-mobile-menu-toggle>svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:18px;height:18px}.planner-mobile-menu{box-sizing:border-box;width:min(320px,100vw - 48px);max-width:none;height:100dvh;max-height:none;padding:0 12px max(12px,env(safe-area-inset-bottom));border:0;border-right:1px solid var(--line);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-pop);overscroll-behavior:contain;border-radius:0 14px 14px 0;flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden}.planner-mobile-menu:not([open]){display:none}.planner-mobile-menu[data-open=true]{animation:planner-menu-slide-in .24s var(--ease-out) both}.planner-mobile-menu[data-open=false]{animation:planner-menu-slide-out .18s var(--ease-in) both;pointer-events:none}.planner-mobile-menu::backdrop{background:color-mix(in srgb,var(--ink) 42%,transparent);animation:planner-menu-dim-in .24s var(--ease-out) both}.planner-mobile-menu[data-open=false]::backdrop{animation:planner-menu-dim-out .18s var(--ease-in) both}.planner-mobile-menu-heading{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;padding:14px 0 12px;font-size:.95rem;display:flex!important}.floor-builder .planner-mobile-menu-heading>button{min-width:40px;min-height:40px;padding:9px}.planner-mobile-menu>.builder-menu-bar{scrollbar-width:thin;flex-direction:column;flex:1;align-items:stretch;gap:5px;width:100%;min-height:0;padding:2px 0 10px;display:flex;overflow:auto}.planner-mobile-menu .planner-menu{border-bottom:1px solid var(--line);flex:none;padding-bottom:5px}.floor-builder .planner-mobile-menu .planner-menu-trigger{text-align:left;justify-content:space-between;width:100%;height:auto;min-height:46px;padding:11px 10px;font-size:.9rem}.planner-mobile-menu .planner-menu-panel.is-inline{width:100%;max-height:none;box-shadow:none;border:0;border-radius:0;padding:5px 0;transition:none;position:static;overflow:visible;transform:none}.planner-mobile-menu .planner-menu-panel.is-inline[data-open=false]{display:none}.planner-mobile-menu .planner-menu-panel.is-inline[data-open=true]{animation:active-mode-arrive .18s var(--ease-out) both}.planner-mobile-menu .planner-menu-panel button{min-height:44px;padding:10px;font-size:.83rem}.planner-mobile-menu .planner-menu-quality button{padding:8px 4px;font-size:.76rem}}@keyframes planner-menu-slide-in{0%{transform:translate(-100%)}to{transform:none}}@keyframes planner-menu-slide-out{0%{transform:none}to{transform:translate(-100%)}}@keyframes planner-menu-dim-in{0%{opacity:0}to{opacity:1}}@keyframes planner-menu-dim-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.planner-mobile-menu,.planner-mobile-menu::backdrop,.planner-mobile-menu .planner-menu-panel{animation:none!important}}.mobile-workspace-sidebar{display:none}.builder-edit-tools{box-sizing:border-box;flex-direction:column;gap:8px;height:auto;max-height:calc(100% - 80px);display:flex;inset:64px auto auto 12px;overflow:hidden}.builder-edit-tools[hidden]{display:none!important}.builder-edit-heading{flex:none;align-items:center;gap:6px;min-width:0;display:flex}.builder-edit-heading>.builder-panel-handle{width:auto;min-width:0;box-shadow:none;flex:1}.floor-builder .builder-edit-heading>.builder-edit-done{flex:none;align-items:center;gap:4px;min-height:34px;padding:6px 8px;font-size:.74rem;display:inline-flex}.builder-edit-body{overscroll-behavior:contain;scrollbar-width:thin;min-height:0;overflow:auto}.builder-edit-body>.builder-tools{margin-bottom:8px}.builder-3d canvas{overscroll-behavior:contain;-webkit-user-select:none;user-select:none;touch-action:none!important}.mobile-touch-help{display:none}@media (width<=900px){.mobile-touch-help{color:var(--ink-2);margin:10px 0 0;font-size:.72rem;line-height:1.5;display:block}.floor-builder .mobile-workspace-sidebar{--workspace-panel-height:min(520px,calc(var(--builder-viewport-bottom,100%) - var(--builder-viewport-top,56px) - 70px));top:calc(var(--builder-viewport-top,56px) + 58px);z-index:38;box-sizing:border-box;width:min(296px,100% - 48px);height:var(--workspace-panel-height);min-height:120px;transition:transform .24s var(--ease-out);pointer-events:none;grid-area:1/1/-1/-1;display:flex;position:absolute;left:0;transform:translate(calc(32px - 100%))}.floor-builder .mobile-workspace-sidebar[data-panel=selection]{height:auto;max-height:var(--workspace-panel-height)}.floor-builder .mobile-workspace-sidebar[data-open=true]{transform:none}.mobile-workspace-tabs{pointer-events:auto;flex-direction:column;flex:0 0 32px;align-self:flex-start;gap:3px;display:flex}.floor-builder .mobile-workspace-tabs>button{background:var(--surface);border-left:0;border-radius:0 8px 8px 0;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:32px;min-width:32px;min-height:48px;padding:7px 4px;display:flex;box-shadow:2px 2px 7px #0000000c}.mobile-workspace-tabs .planner-icon svg{width:17px;height:17px}.floor-builder .mobile-workspace-tabs>button[aria-expanded=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.mobile-tab-grip{opacity:.4;background:currentColor;border-radius:1px;width:10px;height:2px}.mobile-workspace-panel{min-width:0;min-height:0;max-height:inherit;box-sizing:border-box;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-pop);pointer-events:none;visibility:hidden;border-left:0;border-radius:0 0 10px;flex-direction:column;flex:1;transition:visibility 0s .24s;display:flex;overflow:hidden}.mobile-workspace-sidebar[data-open=true]>.mobile-workspace-panel{pointer-events:auto;visibility:visible;transition-delay:0s}.mobile-workspace-panel>header{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.82rem;display:flex}.floor-builder .mobile-workspace-panel>header>button{min-width:36px;min-height:36px;padding:7px}.mobile-workspace-content{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.mobile-workspace-content[hidden]{display:none!important}.floor-builder .mobile-workspace-content>.builder-object-list{min-height:0;max-height:none;box-shadow:none;border:0;border-radius:0;flex-direction:column;flex:1;margin:0;grid-area:auto!important;width:100%!important;height:100%!important;display:flex!important;position:static!important}.mobile-workspace-panel .builder-sidebar-panel{box-sizing:border-box;width:100%;min-width:0}.floor-builder .builder-object-list .builder-objects{flex-direction:column;gap:4px;padding:4px;height:auto!important;display:flex!important;overflow:visible!important}.floor-builder .builder-object-list .builder-objects button{flex:none;width:100%;min-height:40px;min-width:0!important}.floor-builder .builder-object-list .builder-layer-group{flex:none;width:100%}.floor-builder .builder-object-list .builder-layer-room{min-height:44px}.mobile-workspace-panel .builder-layers-toggle{display:none!important}.mobile-workspace-panel .builder-sidebar-header{position:static}.mobile-workspace-panel .sidebar-asset-catalog{max-height:none}.mobile-workspace-panel .builder-contextmenu,.mobile-workspace-panel .builder-object-card,.mobile-workspace-panel .builder-edit-tools{box-sizing:border-box;border:0;border-bottom:1px solid var(--line);box-shadow:none;border-radius:0;flex:none;margin:0;padding:10px;overflow:visible;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;position:static!important;inset:auto!important}.mobile-workspace-panel .builder-contextmenu{order:0}.mobile-workspace-panel .builder-edit-tools{order:1}.mobile-workspace-panel .builder-object-card{order:2}.mobile-workspace-panel .builder-object-card[data-open=false],.mobile-workspace-panel .builder-edit-tools[hidden],.mobile-workspace-panel .builder-edit-tools .builder-panel-handle{display:none!important}.mobile-workspace-panel .builder-edit-tools .builder-edit-heading{justify-content:flex-end}.mobile-workspace-panel .builder-edit-body{overflow:visible}.mobile-workspace-panel .builder-edit-tools .window-settings-actions{display:none}.mobile-workspace-panel .builder-contextmenu>button{min-height:42px}.mobile-workspace-panel .builder-selection-actions>button{min-height:40px}.mobile-workspace-panel .mobile-selection-empty{margin:0;padding:12px}.mobile-workspace-content:has(.builder-contextmenu,.builder-object-card[data-open=true],.builder-edit-tools:not([hidden])) .mobile-selection-empty{display:none}}@media (prefers-reduced-motion:reduce){.mobile-workspace-sidebar,.mobile-workspace-panel{transition:none!important}}.floor-builder>.builder-draft-conflict{z-index:30;box-sizing:border-box;border:1px solid var(--flag);background:var(--surface);width:420px;max-width:calc(100% - 32px);box-shadow:var(--shadow-pop);border-radius:12px;padding:12px;position:absolute;top:68px;left:50%;transform:translate(-50%)}.builder-draft-conflict strong{font-size:.85rem;display:block}.builder-draft-conflict p{margin:6px 0 10px;font-size:.8rem;line-height:1.4}.builder-draft-conflict>div{flex-wrap:wrap;gap:6px;display:flex}.floor-builder .builder-draft-conflict button{min-height:36px;padding:6px 10px;font-size:.78rem}.floor-builder .builder-draft-conflict button:first-child{background:var(--ink);color:var(--surface);border-color:var(--ink)}.walk-floor-picker{gap:6px;width:100%;min-width:0;display:grid}.builder-walk-controls.walk-controls-compact .walk-floor-picker>button{touch-action:manipulation;justify-content:flex-start;gap:6px;width:100%}.walk-floor-picker>button>span:nth-child(2){text-align:left;flex:1}.walk-floor-picker>button>svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:14px;height:14px;transition:transform .15s}.walk-floor-picker>button[aria-expanded=true]>svg{transform:rotate(180deg)}.walk-floor-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:156px;padding:2px;display:grid;overflow:auto}.builder-walk-controls.walk-controls-compact .walk-floor-options>button{white-space:normal;overflow-wrap:anywhere;touch-action:manipulation;flex-direction:column;gap:2px;min-width:0;height:auto;min-height:38px;line-height:1.2}.walk-floor-options>button>small{font-size:.58rem;font-weight:400}.builder-walk-controls.walk-controls-compact .walk-floor-options>button[aria-pressed=true]{opacity:1;background:var(--ink);color:var(--surface);box-shadow:inset 0 -2px var(--flag);cursor:default}.walk-controls-compact .walk-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.walk-controls-compact .walk-pad{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}.builder-walk-controls.walk-controls-compact .walk-pad>button{width:100%;min-width:0}.walk-controls-compact .walk-control-body{min-width:0}@media (width<=900px){.builder-viewer .builder-walk-controls{max-height:min(380px,100% - 88px);overflow:hidden auto}}.builder-toolbar-slot .planner-icon svg,.mobile-plan-draw-tools .planner-icon svg{width:20px;height:20px}.floor-builder .plan-shortcut-trigger{justify-content:center;align-items:center;gap:6px;min-height:36px;display:flex}.builder-toolbar-slot>.plan-shortcut-trigger{width:40px;margin-top:2px;font-size:0;padding:8px!important}.plan-shortcuts{border:1px solid var(--line);background:var(--surface);width:min(580px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--ink);box-shadow:var(--shadow-pop);overscroll-behavior:contain;border-radius:14px;margin:auto;padding:0;position:fixed;inset:0;overflow:auto}.plan-shortcuts::backdrop{background:#18262d70}.plan-shortcuts header{background:var(--surface);border-bottom:1px solid var(--line);z-index:1;justify-content:space-between;align-items:start;gap:12px;padding:18px;display:flex;position:sticky;top:0}.plan-shortcuts header p,.plan-shortcuts footer p{color:var(--ink-2);margin:6px 0 0;font-size:.75rem;line-height:1.5}.plan-shortcuts header button{min-height:32px!important;padding:6px!important}.plan-shortcut-list{padding:4px 18px}.plan-shortcut-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.plan-shortcut-list strong{font-size:.8rem;display:block}.plan-shortcut-list small{color:var(--ink-2);margin-top:3px;font-size:.72rem;line-height:1.45;display:block}.plan-shortcuts footer{padding:8px 18px 18px}.plan-shortcuts kbd,.tool-help-pop kbd{border:1px solid var(--line);background:var(--field);white-space:nowrap;border-bottom-width:2px;border-radius:5px;flex:none;padding:3px 6px;font-family:inherit;font-size:.7rem;font-weight:600;line-height:1.2;display:inline-block}.tool-help-pop strong{justify-content:space-between;align-items:center;gap:10px;display:flex}.tool-help-pop strong kbd{font-size:.68rem}@media (width<=480px){.plan-shortcuts header{padding:14px}.plan-shortcut-list{padding:4px 14px}.plan-shortcut-list>div{gap:8px}.plan-shortcuts footer{padding:8px 14px 14px}}@media (width<=900px){.floor-builder[data-plan-active=true] .mobile-viewport-drawer{top:calc(var(--builder-plan-camera-top,34px) + 64px);max-height:calc(100% - var(--builder-plan-camera-top,34px) - 72px)}.mobile-viewport-drawer .mobile-plan-draw-tools+.builder-tools{gap:5px;margin-top:10px}.mobile-viewport-drawer .mobile-plan-draw-tools+.builder-tools>button{flex:1;gap:4px;min-width:0;padding:6px 4px;font-size:.7rem}.floor-builder[data-plan-active=true] .builder-plan-camera>button{width:44px;height:44px;min-height:44px!important}}.builder-visibility-options{flex-direction:inherit;align-items:center;gap:3px;display:flex}.equipment-details{border:1px solid var(--border);border-left:3px solid var(--flag);overflow-wrap:anywhere;border-radius:10px;grid-column:1/-1;gap:8px;min-width:0;margin-bottom:12px;padding:12px;font-size:.8rem;line-height:1.45;display:grid}.equipment-details p,.equipment-details ul{margin:0}.equipment-details ul{padding-left:18px;list-style:outside}.equipment-details small{color:var(--muted-foreground)}.equipment-details .planner-disclosure-motion>div{padding:0 8px}.equipment-details .planner-disclosure-motion p,.equipment-details .planner-disclosure-motion ul{margin:8px 0}.equipment-details .planner-disclosure button{white-space:normal;text-align:left}.floor-builder .builder-wall-modes button[aria-pressed=true]{background:var(--ink);color:var(--primary-foreground)}.floor-builder .builder-object-list .builder-objects .scene-layer-row>button{width:0;flex:1 1 0!important;min-width:0!important}.floor-builder .builder-object-list .builder-objects .scene-layers header>button{flex:none;width:auto}.surface-reference{z-index:3;background:var(--field);position:sticky;top:42px}.scene-layers{margin-bottom:8px;padding:0;display:block;overflow:hidden}.scene-layers>header{background:var(--field);align-items:center;gap:0;min-height:36px;display:flex}.floor-builder .scene-layers>header>button.scene-layers-toggle[aria-expanded]{text-align:left;background:0 0;border:0;border-radius:0;justify-content:flex-start;align-items:center;gap:7px;width:auto;font-size:.76rem;display:flex;flex:auto!important;min-width:0!important;height:36px!important;min-height:36px!important;padding:0 10px!important}.scene-layers-toggle>strong{flex:1;min-width:0;font-weight:600}.scene-layers-toggle>.planner-icon{flex:none;width:16px;height:16px}.scene-layers-toggle>.planner-icon:last-child{width:13px;height:13px;transition:rotate .18s}.scene-layers-toggle[aria-expanded=true]>.planner-icon:last-child{rotate:90deg}.floor-builder .scene-layers>header>button.scene-layers-reset{background:0 0;border:0;border-radius:5px;place-items:center;margin-right:4px;display:grid;flex:0 0 28px!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;padding:4px!important}.scene-layers-reset>.planner-icon{width:15px;height:15px}.scene-layers-status{background:var(--surface);min-width:18px;height:18px;color:var(--ink-2);border-radius:5px;place-items:center;padding:0 4px;font-size:.65rem;font-weight:600;display:grid}.floor-builder .scene-layers>header>button:focus-visible{outline:2px solid var(--flag);outline-offset:-3px}.scene-layers>.planner-disclosure-motion{gap:0;display:grid}.scene-layers>.planner-disclosure-motion>.scene-layer-categories{padding:0}.scene-layers-body{border-top:1px solid var(--line);gap:3px;padding:6px 8px 8px;display:grid}.scene-layer-category{align-items:center;gap:6px;min-height:30px;display:flex}.scene-layer-category>.planner-icon{flex:none;width:16px;height:16px}.scene-layer-category>span:not(.planner-icon){flex:1;min-width:0;font-size:.76rem}.floor-builder .scene-layer-category .scene-layer-switches button{border-radius:6px;flex:0 0 28px!important;width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;min-height:28px!important;padding:4px!important}.scene-layers-body>small{border-top:1px solid var(--line);margin-top:3px;padding-top:6px;font-size:.68rem;line-height:1.35}@media (width<=900px),(pointer:coarse){.scene-layers>header{min-height:40px}.floor-builder .scene-layers>header>button.scene-layers-toggle[aria-expanded]{height:40px!important;min-height:40px!important}.floor-builder .scene-layers>header>button.scene-layers-reset,.floor-builder .scene-layer-category .scene-layer-switches button{flex-basis:34px!important;width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;min-height:34px!important}}@media (prefers-reduced-motion:reduce){.scene-layers-toggle>.planner-icon:last-child{transition:none}}.planner{padding-top:24px}.planner-grid{grid-template-columns:minmax(280px,.85fr) minmax(0,1.2fr);align-items:start;gap:24px;margin-top:20px;display:grid}.room-controls,.room-results{background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:0;padding:20px}.room-controls form{gap:14px;display:grid}.room-controls .grid2{margin:0}.room-controls .disc{margin-top:16px}.room-toolbar,.room-tabs,.room-viewbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.room-toolbar button,.room-controls button[type=submit],.room-tabs>.room-accordion>.room-accordion-trigger,.room-lines button{border:1px solid var(--line);background:var(--field);color:var(--ink);font:inherit;border-radius:9px;min-height:44px;padding:8px 12px;font-size:.88rem}.room-toolbar button:disabled{opacity:.45;cursor:default}.room-tabs{margin-bottom:16px}.room-tabs>.room-accordion>.room-accordion-trigger[aria-pressed=true]{background:var(--ink);color:var(--primary-foreground)}.room-text{gap:6px;min-width:0;font-size:.86rem;font-weight:600;display:grid}.room-text input{border:1px solid var(--line);background:var(--field);width:100%;min-width:0;color:var(--ink);font:inherit;border-radius:9px;padding:10px}.room-results .fig{margin-top:12px}.room-viewbar{justify-content:space-between}.room-3d{border-radius:8px;height:360px;overflow:hidden}.room-3d canvas{width:100%;height:100%;display:block}.room-metrics{color:var(--ink-2);flex-wrap:wrap;gap:6px 20px;font-size:.86rem;display:flex}.room-layer{border-bottom:1px solid var(--line);padding:14px 0}.room-layer strong{display:block}.room-layer p{color:var(--ink-2);overflow-wrap:anywhere;margin:4px 0;font-size:.85rem}.room-lines{margin:10px 0;padding:0;font-size:.86rem;list-style:none}.room-lines li{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.room-results>.btn-flag{margin-top:18px}.planner [data-room-status][data-error=true]{color:var(--flag)}@media (width<=1100px){.planner-grid{grid-template-columns:1fr}.room-results{grid-row:1}.room-3d{height:300px}}@media (width<=480px){.room-controls,.room-results{padding:14px}.room-toolbar button{flex:1}.room-viewbar{gap:10px;display:grid}}
