@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#171c1a;--panel:#181e1bed;--gold:#d6ba83;--muted:#a7aea7;--line:#ffffff18;--white:#f4f5ef;font-family:'DM Sans',sans-serif;font-size:16px;color:var(--white);font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#1d2422}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button{border:0;background:none}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}#app,#world,#canvas{width:100%;height:100%}#canvas{display:block;touch-action:none;outline:none}#world{position:absolute;inset:0}.vignette{pointer-events:none;position:absolute;inset:0;background:linear-gradient(180deg,#09100e6e 0%,transparent 25%,transparent 66%,#0c121183 100%)}.topbar{position:absolute;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:27px 38px;z-index:5}.brand{color:white;text-decoration:none;display:flex;gap:10px;align-items:center;font-family:'Manrope',sans-serif;font-size:19px;font-weight:800;letter-spacing:2px}.brand-home{font-weight:400;font-size:12px;letter-spacing:3px;display:block;margin-top:2px}.brand-symbol{display:grid;place-items:center;border:1px solid #fff9;border-radius:50%;width:37px;height:37px;font-family:Georgia,serif;font-size:27px;font-style:italic;font-weight:400;letter-spacing:0}.top-center{position:absolute;left:50%;transform:translateX(-50%);font-size:11px;letter-spacing:3.3px;font-weight:600;text-align:center;color:#fffffff0}.top-center span{display:block;margin-top:8px;color:#ffffffa0;font-size:9px;letter-spacing:2.2px}.top-actions{display:flex;gap:17px;align-items:center}.sim-label{font-size:10px;letter-spacing:1.8px;border:1px solid #ffffff4a;border-radius:4px;padding:6px 9px;background:#0001}.icon-btn{width:30px;height:32px;font-family:serif;font-size:20px;opacity:.8}.icon-btn:hover{opacity:1}.room-title{position:absolute;top:135px;left:40px;pointer-events:none;text-shadow:0 2px 20px #0005}.eyebrow{font-size:10px;letter-spacing:3px;color:#f4ecda}.room-title h1{font-family:'Manrope',sans-serif;font-weight:400;font-size:47px;letter-spacing:-2px;line-height:1.2;margin:12px 0 9px}.room-title p{font-size:14px;color:#ffffffe0;margin:0}.view-tools{position:absolute;top:268px;left:40px;display:flex;gap:8px}.small-btn{display:flex;align-items:center;gap:8px;border:1px solid #ffffff3d;border-radius:6px;padding:9px 12px;font-size:12px;background:#18201c6b;backdrop-filter:blur(14px)}.small-btn:hover,.small-btn[aria-pressed=true]{background:#d6ba83;color:#171c1a}.small-btn svg{width:17px;height:17px}.control-panel{position:absolute;top:125px;right:35px;width:288px;background:var(--panel);backdrop-filter:blur(20px);border:1px solid #ffffff17;border-radius:12px;padding:22px 22px 17px;box-shadow:0 18px 60px #07100b30}.panel-heading{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;font-size:17px;font-weight:500;text-align:left}.panel-chevron{display:none}.scenes{display:flex;gap:8px;margin-top:22px}.scene{width:calc(100% / 3);height:72px;background:#ffffff05;border:1px solid #ffffff1c;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;color:#c0c6bf;transition:all .25s}.scene:hover{border-color:#d6ba8377}.scene.active{background:#d6ba8319;color:#e6cc98;border-color:#d6ba8380}.scene svg{width:22px;height:22px}.scene-note{font-size:11px;color:var(--muted);line-height:1.7;min-height:37px;margin:13px 0 15px}.divider{height:1px;background:var(--line);margin-bottom:18px}.room-context{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.6px;color:#c4c9bf;margin-bottom:22px}.room-context span:last-child{font-size:8px;letter-spacing:1px;color:#889187}.control-group{margin-bottom:21px}.control-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:15px}.control-label label,.control-label>span{display:flex;align-items:center;gap:9px}.control-label svg{width:17px;height:17px;color:#c2c7bd}.control-label output{font-size:12px;color:#e6d1a7;font-variant-numeric:tabular-nums}input[type=range]{appearance:none;display:block;width:100%;height:3px;border-radius:4px;background:linear-gradient(to right,var(--gold) 0%,var(--gold) var(--value,80%),#ffffff25 var(--value,80%),#ffffff25 100%);cursor:pointer;margin:0}input[type=range]::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border-radius:50%;background:#e8d5ac;border:2px solid #292e28;box-shadow:0 0 0 1px #d6ba83}input[type=range]::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#e8d5ac;border:2px solid #292e28}.range-captions{display:flex;justify-content:space-between;font-size:9px;color:#818b81;margin-top:10px}.climate{border-top:1px solid var(--line);padding-top:17px;margin-bottom:17px}.switch{background:#737f75;width:28px;height:16px;border-radius:20px;padding:2px}.switch span{display:block;width:12px;height:12px;border-radius:50%;background:#e9ede4;transition:transform .2s}.switch.on{background:var(--gold)}.switch.on span{transform:translateX(12px);background:#242921}.temperature{display:flex;justify-content:space-between;align-items:center}.temp-btn{width:33px;height:33px;border:1px solid #ffffff21;border-radius:50%;font-size:21px;color:#c9d0c4}.temp-btn:hover{background:#ffffff12}.temperature>div{text-align:center;line-height:1}.temperature #temperature-value{font-size:31px;font-weight:400;letter-spacing:-1px}.temperature sup{font-size:13px;position:relative;top:-5px;margin-left:3px;color:#c9cebf}.temperature small{display:block;font-size:9px;color:#98a293;margin-top:9px;letter-spacing:.2px}.products-link{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;width:100%;padding:14px 0;font-size:12px}.products-link span{color:var(--gold);font-size:16px}.simulation-note{font-size:9px;color:#98a293;text-align:center;line-height:1.6;margin:12px 0 0}.bottom-bar{position:absolute;bottom:27px;left:40px;right:40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.navigation-hint{display:flex;align-items:center;gap:10px;font-size:11px;color:#ffffffe6}.navigation-hint b{font-weight:400;margin:0 5px;color:#fff8}.mouse-icon{width:15px;height:22px;border:1px solid #ffffffa0;border-radius:8px;position:relative}.mouse-icon:after{content:'';display:block;width:1px;height:5px;background:#fff9;position:absolute;left:6px;top:4px}.room-nav{display:flex;gap:6px;padding:5px;background:#171f1bdc;border:1px solid #ffffff25;border-radius:10px;backdrop-filter:blur(20px);position:absolute;left:50%;transform:translateX(-50%)}.room-tab{border-radius:6px;font-size:12px;padding:13px 18px;min-width:105px;color:#cbd1c8;display:flex;align-items:center;gap:9px}.room-tab span{font-size:9px;color:#8a9588}.room-tab.active{background:#e4cfaa;color:#20271f}.room-tab.active span{color:#837252}.room-tab:hover:not(.active){background:#ffffff0c}.reset-view{font-size:11px;color:#eee;opacity:.8}.walk-pad{display:none}#hotspots{pointer-events:none;position:absolute;inset:0;z-index:2}.hotspot{position:absolute;display:flex;align-items:center;gap:8px;pointer-events:auto;transform:translate(-50%,-50%);background:#16201bd9;border:1px solid #ffffff60;border-radius:30px;padding:6px 11px 6px 6px;font-size:10px;white-space:nowrap;backdrop-filter:blur(10px);box-shadow:0 6px 25px #0002}.hotspot:before{content:'+';display:grid;place-items:center;width:20px;height:20px;color:#20291f;background:#e1c997;border-radius:50%;font-size:16px}.hotspot:hover{background:#324135}.hotspot.hidden{display:none}#toast{position:absolute;bottom:112px;left:50%;transform:translate(-50%,15px);max-width:420px;width:max-content;background:#15211ded;color:white;padding:13px 20px;border-radius:8px;border:1px solid #ffffff20;font-size:13px;text-align:center;opacity:0;pointer-events:none;transition:.3s;z-index:12}#toast.visible{opacity:1;transform:translate(-50%,0)}#loading{position:absolute;inset:0;background:#1b221e;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity .8s}.loading-logo{font-size:18px;letter-spacing:6px;font-family:'Manrope',sans-serif}.loading-line{width:110px;height:1px;background:#d6ba83;margin-top:25px;animation:load 1.5s infinite}.loading-logo+p,#loading p{font-size:12px;color:#a5afa3;margin-top:20px}@keyframes load{50%{transform:scaleX(.35);opacity:.5}}#details{color:#e9ede5;background:#1e2722;border:1px solid #89968255;border-radius:16px;width:min(700px,calc(100% - 32px));padding:36px;max-height:85dvh;box-shadow:0 25px 100px #0006}#details::backdrop{background:#07100cbc;backdrop-filter:blur(7px)}.close-dialog{position:absolute;right:15px;top:10px;font-size:27px;color:#abb7a6;width:35px;height:35px}.dialog-eyebrow{font-size:10px;color:#d9c398;letter-spacing:2px;text-transform:uppercase}.dialog-title{font-family:'Manrope',sans-serif;font-weight:400;font-size:28px;letter-spacing:-1px;margin:14px 0}.dialog-copy{font-size:14px;line-height:1.7;color:#bdc8b8}.product-card{display:grid;grid-template-columns:100px 1fr;gap:20px;border-top:1px solid #ffffff1a;padding:22px 0}.product-card img{width:100px;height:110px;object-fit:contain;background:white;border-radius:8px}.product-card h3{font-size:15px;font-weight:500;margin:0 0 8px}.product-card p{font-size:12px;line-height:1.6;color:#aebaa8;margin:0}.product-card a{display:inline-block;color:#d9c398;font-size:12px;margin-top:9px;text-underline-offset:3px}.verification-label{display:inline-block;background:#ffffff0a;border:1px solid #ffffff18;color:#b6c2b0;font-size:10px;padding:4px 7px;border-radius:4px;margin-top:9px}.key-guide{display:grid;grid-template-columns:130px 1fr;gap:13px;font-size:13px;margin:23px 0}.key-guide span:nth-child(2n){color:#aebaa8}.viewer-fallback{background:#18241f;text-align:center;padding:160px 30px;font-size:20px}.viewer-fallback p{font-size:14px;line-height:1.6}@media(min-width:1600px){.control-panel{right:50px;top:145px;width:315px;padding:25px}.room-title{top:160px;left:55px}.room-title h1{font-size:56px}.view-tools{top:310px;left:55px}.control-label{font-size:14px}.scene-note{font-size:12px}.control-group{margin-bottom:25px}}@media(max-height:790px) and (min-width:701px){.control-panel{top:102px;padding:18px;width:270px}.panel-heading{font-size:15px}.scenes{margin-top:15px}.scene{height:60px}.scene-note{min-height:30px;line-height:1.5;margin:9px 0}.divider{margin-bottom:12px}.room-context{margin-bottom:15px}.control-group{margin-bottom:15px}.climate{padding-top:12px}.simulation-note{margin-top:8px}.room-title{top:120px}.view-tools{top:250px}.products-link{padding:10px 0}}@media(max-width:1050px){.top-center{display:none}.navigation-hint{font-size:10px}.control-panel{right:22px}.room-title,.view-tools{left:28px}.room-title h1{font-size:40px}.bottom-bar{left:25px;right:25px}.navigation-hint{max-width:150px;line-height:1.7}.room-tab{padding:12px;min-width:88px}.reset-view{display:none}}@media(max-width:700px){.topbar{padding:22px 20px}.brand{font-size:15px;letter-spacing:1.5px;gap:8px}.brand-symbol{width:31px;height:31px;font-size:22px}.brand-home{font-size:8px;letter-spacing:3px}.top-actions{gap:9px}.sim-label{font-size:8px;padding:5px 6px;letter-spacing:1px}.icon-btn{width:23px;font-size:20px}#fullscreen{display:none}.room-title{top:110px;left:22px}.room-title h1{font-size:33px;letter-spacing:-1.5px;margin:8px 0}.room-title p{font-size:12px}.eyebrow{font-size:8px;letter-spacing:2px}.view-tools{top:219px;left:22px}.small-btn{font-size:10px;padding:8px}.small-btn svg{width:15px;height:15px}.control-panel{top:auto;bottom:92px;left:16px;right:16px;width:auto;padding:15px 18px;border-radius:12px;background:#18221eec;z-index:6}.panel-heading{font-size:14px}.panel-chevron{display:inline-block;color:var(--gold);font-size:20px;line-height:1}.panel-body{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.scenes{grid-column:1/-1;margin-top:13px;gap:8px}.scene{height:46px;flex-direction:row;gap:8px;font-size:11px}.scene svg{width:18px;height:18px}.scene-note{grid-column:1/-1;min-height:unset;font-size:10px;margin:9px 0 12px}.divider,.room-context,.range-captions,.simulation-note{display:none}.control-label{font-size:11px;margin-bottom:13px}.control-label output{font-size:10px}.control-group{margin-bottom:17px}.control-label svg{width:15px;height:15px}.climate{border-top:1px solid var(--line);padding-top:13px;margin:0;grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.climate>.control-label{margin:0;gap:15px}.temperature{gap:13px}.temperature #temperature-value{font-size:21px}.temperature sup{font-size:10px;top:-2px}.temperature small{display:none}.temp-btn{width:28px;height:28px;font-size:18px}.products-link{grid-column:1/-1;font-size:11px;border-bottom:0;margin-top:10px;padding:10px 0 0}.control-panel.collapsed .panel-body{display:none}.control-panel.collapsed .panel-chevron{transform:rotate(180deg)}.bottom-bar{bottom:23px;left:16px;right:16px;height:48px}.navigation-hint{display:none}.room-nav{width:100%;justify-content:space-between;border-radius:10px}.room-tab{font-size:11px;flex:1;justify-content:center;padding:12px 10px;min-width:0}.walk-pad{display:grid;position:absolute;left:22px;bottom:155px;width:112px;height:72px;grid-template-columns:repeat(3,36px);grid-template-rows:repeat(2,36px);z-index:4;gap:3px}.walk-pad button{background:#111e1977;backdrop-filter:blur(10px);border:1px solid #ffffff40;border-radius:7px;font-size:17px;touch-action:none}.walk-pad button:first-child{grid-column:2}.walk-pad button:nth-child(2){grid-column:1;grid-row:2}.walk-pad button:nth-child(3){grid-column:2;grid-row:2}.walk-pad button:nth-child(4){grid-column:3;grid-row:2}.control-panel:not(.collapsed)~.walk-pad{display:none}.hotspot{font-size:9px;padding:4px 8px 4px 4px;gap:5px}.hotspot:before{width:17px;height:17px;font-size:13px}#toast{bottom:160px;max-width:calc(100% - 40px);font-size:11px;padding:12px}#details{padding:30px 22px}.dialog-title{font-size:24px}.product-card{grid-template-columns:75px 1fr;gap:15px}.product-card img{width:75px;height:95px}.key-guide{grid-template-columns:100px 1fr}.dialog-copy{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Readable controls, including short landscape viewports. */
.control-panel{max-height:calc(100dvh - 210px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#6f7968 transparent}.control-label{font-size:14px}.control-label output,.scene,.room-tab,.small-btn,.products-link,.navigation-hint,.reset-view{font-size:12px}.scene-note,.simulation-note,.range-captions,.room-context,.temperature small,.eyebrow,.top-center,.top-center span{font-size:12px}.scene-note{line-height:1.5;min-height:36px}.room-context{letter-spacing:.8px}.room-context span:last-child{font-size:10px}.simulation-note{font-size:11px}.range-captions{font-size:11px}.control-panel .panel-heading{font-size:17px}.hotspot{font-size:12px}.temperature small{font-size:11px}.top-center span{font-size:10px}.eyebrow{font-size:11px}.walk-pad button{min-width:36px;min-height:36px}@media(max-width:700px){.control-panel{max-height:calc(100dvh - 200px)}.control-panel .panel-heading{font-size:15px}.room-title p,.scene,.scene-note,.control-label,.control-label output,.products-link,.room-tab,.small-btn{font-size:12px}.hotspot{font-size:11px}.scene-note{min-height:0}.topbar{z-index:7}.control-label{gap:5px}.control-label label{gap:5px}.control-label svg{display:none}.temp-btn{width:32px;height:32px}.simulation-note{font-size:11px}}
img.brand-symbol{object-fit:contain;border:0;border-radius:4px}
.vr-dialog-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.vr-dialog-actions button{min-height:44px;font-size:14px;padding:12px 18px;border:1px solid #ffffff30;border-radius:7px}.vr-dialog-actions .vr-primary{background:#dfc79d;color:#1b251e;border-color:#dfc79d}#vr:disabled{opacity:.65;cursor:wait}
/* Simulation-only scene builder. Native dialog keeps focus in the active task. */
.automation-launch{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:10px 0;margin:0 0 15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;text-align:left}.automation-launch span{font-size:12px;color:var(--gold)}.automation-last-run{display:grid;grid-template-columns:1fr auto;gap:8px;grid-column:1/-1;margin:-3px 0 16px;font-size:12px}.automation-last-run[hidden]{display:none}.automation-last-run>span{overflow-wrap:anywhere;color:#e1d3b8}.automation-last-run button{font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:5px;min-height:32px}.automation-last-run small{grid-column:1/-1;font-size:11px;line-height:1.4;color:#aeb8a8}.automation-last-run button:disabled{opacity:.5;cursor:not-allowed}.editor-topline{display:flex;justify-content:space-between;gap:15px;padding-right:20px}.editor-memory{font-size:12px;color:#bac6b4}.editor-disclaimer{font-size:13px;line-height:1.7;color:#b7c1b0;padding-bottom:16px;margin:0 0 20px;border-bottom:1px solid var(--line)}#scene-editor{color:#eff2e9;background:#1e2722;border:1px solid #89968255;border-radius:16px;width:min(760px,calc(100% - 32px));max-height:88dvh;overflow-y:auto;padding:34px;box-shadow:0 25px 100px #0006}#scene-editor::backdrop{background:#07100cbc;backdrop-filter:blur(7px)}#scene-editor input,#scene-editor select{display:block;width:100%;min-height:44px;border:1px solid #74816c;border-radius:6px;padding:10px 11px;font:inherit;font-size:15px;color:#edf1e9;background:#152019;color-scheme:dark;min-width:0;margin-top:8px}#scene-editor input:focus,#scene-editor select:focus{border-color:var(--gold);outline:2px solid #d6ba8340;outline-offset:2px}#scene-editor label{font-size:13px;line-height:1.5;color:#d8e0d2;display:block;min-width:0}#scene-editor button{min-height:44px;border:1px solid #ffffff35;border-radius:6px;font-size:13px;padding:10px 14px}#scene-editor .close-dialog{padding:0;border:0;font-size:28px;min-width:44px}#scene-editor button:disabled{cursor:not-allowed;opacity:.4}#scene-editor .editor-primary{background:#ddc79e;border-color:#ddc79e;color:#20291f}#scene-editor h3{font-size:16px;font-weight:500;margin:0}#scene-editor h4{font-size:16px;font-weight:500;margin:0 0 7px;overflow-wrap:anywhere}.editor-section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:20px 0 16px}.editor-section-heading>span{font-size:12px;color:#aebaa5}.editor-scene-list{display:grid;gap:12px}.editor-scene-card{padding:20px;border:1px solid #ffffff20;border-radius:10px;background:#ffffff03;display:flex;justify-content:space-between;gap:20px}.editor-scene-card p{font-size:13px;margin:0 0 7px;line-height:1.5;color:#c0cbb7}.editor-scene-card span{font-size:12px;color:#98a88f}.editor-card-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap;max-width:205px}#scene-editor .editor-remove-scene{font-size:12px;border-color:transparent;color:#aebbA4;padding:6px}.editor-empty{padding:25px 22px;border:1px dashed #75826c;border-radius:10px;background:#ffffff02}.editor-empty p{font-size:14px;line-height:1.7;color:#b5c0ac;margin:12px 0 0}.editor-help{font-size:12px;line-height:1.7;color:#a9b69f;margin:14px 0}.editor-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.editor-name{grid-column:1/-1}.editor-action{border:1px solid #53614c;border-radius:9px;padding:14px;margin:15px 0}.editor-action legend{font-size:12px;color:#c5cdbb;padding:0 5px}.editor-action-grid{display:grid;grid-template-columns:minmax(0,1fr) 100px 44px;gap:12px;align-items:end}#scene-editor .editor-delete-action{font-size:23px;padding:6px;min-width:44px}#scene-editor .editor-add{border-style:dashed;background:#ffffff03}.editor-footer{display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.editor-feedback{font-size:13px;line-height:1.6;color:#dac89f;margin:16px 0 0;overflow-wrap:anywhere}.editor-feedback:empty{display:none}.editor-feedback[data-error=true]{color:#ffd0b9;border-left:2px solid #d69573;padding-left:12px}#scene-preview{padding:18px;background:#111c15;border:1px solid #7c8569;border-radius:9px;margin-top:20px}#scene-preview h3{font-size:14px}#scene-preview p{font-size:12px;color:#bec9b2}#scene-preview ul,.editor-test-actions{list-style:none;margin:16px 0 0;padding:0}#scene-preview li,.editor-test-actions li{display:flex;justify-content:space-between;gap:16px;font-size:13px;line-height:1.6;padding:11px 0;border-top:1px solid #ffffff12}#scene-preview strong,.editor-test-actions strong{font-weight:500;color:#e3cfa7;white-space:nowrap}.editor-test-title{padding-bottom:15px}.editor-test-title h3{overflow-wrap:anywhere}.editor-test-title p{font-size:14px;color:#c5cfbb}.editor-test-controls{max-width:400px}.editor-test-controls>p{font-size:14px;color:#bfcab5;line-height:1.6}@media(max-width:700px){.automation-launch{margin:0 0 12px;font-size:12px}.automation-last-run{font-size:12px}.automation-last-run small{font-size:12px}#scene-editor{padding:28px 18px;width:calc(100% - 22px);max-height:90dvh}.editor-form-grid{grid-template-columns:1fr;gap:14px}.editor-action-grid{grid-template-columns:minmax(0,1fr) 44px;gap:10px}.editor-action-grid>label:first-child{grid-column:1/-1}.editor-action-grid>label:nth-child(2){grid-column:1}.editor-scene-card{display:block;padding:16px}.editor-card-actions{max-width:none;margin-top:15px}.editor-section-heading{align-items:flex-start}.editor-topline{gap:8px}.editor-topline .dialog-eyebrow{font-size:11px}.editor-memory{font-size:11px}.editor-footer{position:sticky;bottom:-28px;background:#1e2722;padding:14px 0;margin-bottom:-8px}.editor-footer button{flex:1;white-space:nowrap}.editor-disclaimer{font-size:12px}.editor-action{padding:12px}.editor-feedback{padding-bottom:8px}#scene-preview li,.editor-test-actions li{font-size:12px}}
#scene-editor input,#scene-editor select{font-size:16px}#scene-editor label{font-size:14px}
.editor-browser-copy{margin-top:22px;padding:18px;border:1px solid #7c856952;border-radius:10px;background:#111d162e}.editor-browser-copy .editor-section-heading{margin-top:0}.editor-storage-status{font-size:13px;line-height:1.6;color:#dac89f;overflow-wrap:anywhere}.editor-storage-actions{display:flex;flex-wrap:wrap;gap:9px}#scene-editor .editor-storage-check{border-color:transparent;color:#c2ceb8;text-decoration:underline;text-underline-offset:3px}.editor-storage-summary{font-size:15px;line-height:1.8;color:#c9d4bf}.editor-storage-names{padding:0;list-style:none;border-top:1px solid var(--line);margin-top:20px}.editor-storage-names li{font-size:14px;line-height:1.6;padding:10px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}@media(max-width:700px){.editor-browser-copy{padding:14px}.editor-storage-actions>button{flex:1 1 140px}.editor-storage-summary{font-size:14px}.editor-browser-copy .editor-section-heading{display:block}.editor-browser-copy .editor-section-heading>span{display:block;margin-top:7px}.editor-topline .editor-memory{font-size:10px;max-width:100px;text-align:right}}
/* WebGL initialization fallback: accessible DOM/CSS, with no graphics context. */
html.simulation-fallback,body.simulation-fallback{height:auto;min-height:100%;overflow:auto}
.simulation-fallback #app{width:min(1440px,100%);height:auto;min-height:100dvh;margin:0 auto;padding:0 38px 36px;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:20px 30px;align-content:start}
.simulation-fallback [hidden]{display:none!important}
.simulation-fallback .topbar{position:static;grid-column:1/-1;padding:27px 0 15px;gap:24px}
.simulation-fallback .top-center{position:static;transform:none}
.simulation-fallback .room-title{position:static;grid-column:1;grid-row:2}
.simulation-fallback .room-title h1{font-size:42px;margin:9px 0}
.simulation-fallback #world{position:relative;inset:auto;width:auto;height:auto;grid-column:1;grid-row:4;min-width:0}
.simulation-fallback .control-panel{position:static;grid-column:2;grid-row:2/span 3;align-self:start;width:auto;max-height:none;overflow:visible;padding:23px}
.simulation-fallback .panel-heading:disabled{cursor:default;color:inherit;opacity:1}
.simulation-fallback .panel-chevron{display:none}
.simulation-fallback .bottom-bar{position:static;grid-column:1;grid-row:3;height:auto;justify-content:flex-start}
.simulation-fallback .room-nav{position:static;transform:none;max-width:100%;width:auto;flex-wrap:wrap}
.simulation-fallback #toast{position:fixed;bottom:28px;max-width:calc(100% - 40px)}
.fallback-room{--fallback-light:.8;--fallback-curtain:.356;border:1px solid #ffffff26;border-radius:16px;background:#222d26;overflow:hidden}
.fallback-notice{padding:25px 26px 22px;background:#d6ba830a;border-bottom:1px solid #d6ba8338}
.fallback-eyebrow{display:inline-block;color:#e6c995;font-size:11px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase}
.fallback-notice h2{font-family:Manrope,sans-serif;font-size:23px;line-height:1.35;letter-spacing:-.6px;font-weight:500;margin:12px 0}
.fallback-notice p{font-size:14px;line-height:1.65;color:#cad2c3;margin:0;max-width:65ch}
.fallback-notice .fallback-availability{font-size:12px;color:#d8c5a2;margin-top:11px}
.fallback-illustration{height:245px;position:relative;overflow:hidden;background:linear-gradient(180deg,#273a30 0 74%,#18271e 74%);isolation:isolate}
.fallback-light{position:absolute;inset:0;pointer-events:none;opacity:var(--fallback-light);background:radial-gradient(ellipse at 62% 8%,#f3d99a80,transparent 72%)}
.fallback-window{position:absolute;top:30px;left:9%;width:26%;height:128px;background:linear-gradient(#c1dacf,#e8e4c8);border:7px solid #637263;border-radius:2px;box-shadow:0 5px 25px #0003;overflow:hidden}
.fallback-window:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 48%,#637263 48% 52%,transparent 52%);pointer-events:none}
.fallback-curtain{position:absolute;top:0;bottom:0;width:51%;z-index:1;background:repeating-linear-gradient(90deg,#8e8065 0 10px,#a49373 10px 20px);transform:scaleX(var(--fallback-curtain))}
.fallback-curtain.left{left:0;transform-origin:left}.fallback-curtain.right{right:0;transform-origin:right}
.fallback-furniture{position:absolute;left:43%;top:105px;width:43%;height:90px;background:#a8a691;border:7px solid #777e68;border-radius:18px 18px 6px 6px;box-shadow:0 14px 0 -7px #111e17,0 16px 30px #101d1870;display:flex;gap:5px;padding:10px}
.fallback-furniture span{flex:1;align-self:start;height:40px;border-radius:6px;background:#bcc0a5;border:1px solid #7f876d}
.fallback-illustration[data-room-style=bedroom] .fallback-furniture{top:97px;left:43%;height:108px;border-radius:6px;background:linear-gradient(#c5c5b1 30%,#8a9b88 30%);border-color:#5d6e5c}
.fallback-illustration[data-room-style=bedroom] .fallback-furniture span{height:26px;background:#e1dfcb}
.fallback-illustration[data-room-style=bedroom] .fallback-furniture span:last-child{display:none}
.fallback-illustration[data-room-style=kitchen] .fallback-furniture{top:110px;height:90px;border:0;border-top:10px solid #cdc4ab;border-radius:2px;background:#7d876e;gap:0;padding:0}
.fallback-illustration[data-room-style=kitchen] .fallback-furniture span{height:80px;border-radius:0;background:transparent;border:1px solid #4e5d45;position:relative}
.fallback-illustration[data-room-style=kitchen] .fallback-furniture span:after{content:'';position:absolute;top:14px;left:36%;width:28%;height:3px;background:#d6c69b}
.fallback-diagram-label{position:absolute;left:18px;bottom:13px;font-size:11px;letter-spacing:.6px;color:#becbb7}
.fallback-readout{padding:20px 26px 24px;border-top:1px solid #ffffff15}
.fallback-readout h3{font-size:14px;font-weight:500;color:#c8d3be;margin:0 0 16px}
.fallback-readout dl{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:12px;margin:0}
.fallback-readout dt{font-size:11px;color:#9eae94;margin-bottom:7px}
.fallback-readout dd{font-size:16px;color:#f1e1be;margin:0;line-height:1.4;font-variant-numeric:tabular-nums}
.fallback-products{display:flex;gap:28px;justify-content:space-between;align-items:center;min-height:44px;margin-top:22px;padding:11px 16px;border:1px solid #d6ba8366;border-radius:7px;font-size:13px;color:#e8d2aa;background:#d6ba8308}
.fallback-products:hover{background:#d6ba831a}
@media(max-width:1050px){.simulation-fallback #app{padding:0 24px 30px;grid-template-columns:minmax(0,1fr) 280px;gap:20px}.simulation-fallback .room-title h1{font-size:36px}.fallback-notice{padding:21px}.fallback-readout{padding:20px}.fallback-readout dl{grid-template-columns:1fr 1fr}.fallback-readout dl>div:last-child{grid-column:1/-1}.fallback-notice h2{font-size:21px}}
@media(max-width:700px){.simulation-fallback #app{padding:0 16px 24px;display:flex;flex-direction:column;gap:18px}.simulation-fallback .topbar{padding:20px 3px 9px;gap:10px}.simulation-fallback .top-actions{gap:10px}.simulation-fallback .sim-label{font-size:8px;letter-spacing:.7px}.simulation-fallback .room-title h1{font-size:32px}.simulation-fallback .bottom-bar{order:1;margin:0}.simulation-fallback #world{order:2}.simulation-fallback .control-panel{order:3;width:100%;padding:18px}.simulation-fallback .room-nav{width:100%;flex-wrap:nowrap}.simulation-fallback .room-tab{min-height:44px;padding:10px 8px}.simulation-fallback .control-panel .panel-body{display:grid}.simulation-fallback .simulation-note{display:block;grid-column:1/-1}.fallback-notice{padding:20px}.fallback-notice h2{font-size:21px}.fallback-notice p{font-size:13px}.fallback-illustration{height:225px}.fallback-readout dl{grid-template-columns:1fr 1fr 1.2fr}.fallback-readout dl>div:last-child{grid-column:auto}.fallback-readout dd{font-size:14px}.fallback-products{width:100%}}
@media(max-width:380px){.simulation-fallback .brand{font-size:12px;letter-spacing:1px}.simulation-fallback .brand-symbol{width:27px;height:27px}.simulation-fallback .sim-label{font-size:7px}.fallback-readout dl{grid-template-columns:1fr 1fr}.fallback-readout dl>div:last-child{grid-column:1/-1}}
