:root{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#252822;background:#ece9e2;font-synthesis:none;color-scheme:light;--ink:#252822;--muted:#60645c;--line:#62685e26;--radius:24px}*{box-sizing:border-box}body{margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit;cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}button,a,input{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:3px solid #457678;outline-offset:4px}button{border:0}button:hover:not(:disabled){filter:brightness(.97)}[hidden]{display:none!important}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-library{position:absolute;width:0;height:0;overflow:hidden}#experience{height:100dvh;min-height:360px;position:relative;overflow:hidden}#scene{position:absolute;inset:0;background:#c7bdad}#scene canvas{display:block;width:100%;height:100%;touch-action:none}#scene:after{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(0deg,#0c1a2452,transparent 24%)}.glass{border:1px solid #ffffffa6;background:linear-gradient(135deg,#fbfcf7ed,#e8ece6d9);box-shadow:0 12px 36px #17271f1c,inset 0 1px 0 #fff;isolation:isolate;overflow:hidden}.masthead{position:absolute;top:max(22px,env(safe-area-inset-top));left:28px;right:28px;display:flex;align-items:center;justify-content:space-between;z-index:4;pointer-events:none}.masthead>*{pointer-events:auto}.wordmark{text-decoration:none;color:var(--ink);font-weight:550;font-size:23px;letter-spacing:.27em;padding:15px 17px 12px 23px;border-radius:19px;line-height:1}.wordmark span{display:block;font-size:8px;letter-spacing:.26em;margin-top:9px}.header-actions{display:flex;gap:8px;align-items:center}.pill,.icon-button{min-height:46px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 16px;font-size:14px}.icon-button{width:46px;padding:0}.pill b{font-size:11px;font-weight:500;min-width:19px;min-height:19px;display:grid;place-items:center;background:#dce1d8;border-radius:50%}.scene-title{position:absolute;left:38px;bottom:150px;color:#fff;pointer-events:none;max-width:470px;text-shadow:0 1px 18px #121c24a8}.scene-title p,.eyebrow{font-size:11px;font-weight:600;letter-spacing:.16em;margin:0 0 13px}.scene-title h1{font-size:clamp(38px,4.4vw,66px);line-height:1.02;letter-spacing:-.055em;font-weight:480;margin:0 0 16px}.scene-title>span{font-size:15px;line-height:1.5}.studio{position:absolute;z-index:3;right:28px;top:120px;width:300px;border-radius:var(--radius);max-height:calc(100dvh - 248px);overflow:auto;scrollbar-width:thin}.studio-toggle{display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;width:100%;background:transparent;padding:20px;min-height:80px}.studio-toggle .eyebrow{display:block;font-size:10px;margin-bottom:8px;color:var(--muted)}.studio-toggle strong{font-weight:550;font-size:16px;letter-spacing:-.02em}.studio-toggle>svg{background:#fff8;box-sizing:content-box;padding:9px;border-radius:50%}#studio-content{padding:0 17px 17px}.studio-tabs{display:flex;padding:4px;background:#d7ded454;border-radius:13px;gap:2px;margin-bottom:17px}.studio-tabs button{background:transparent;border-radius:10px;min-height:40px;flex:1;font-size:13px}.studio-tabs [aria-selected=true]{background:#fff;box-shadow:0 2px 6px #17221a12}.panel-intro{font-size:13px;color:var(--muted);line-height:1.5;margin:0 3px 13px}.editions{display:grid;gap:5px}.edition{display:flex;align-items:center;text-align:left;border:1px solid transparent;background:transparent;border-radius:15px;padding:9px;gap:11px;width:100%;min-height:59px}.edition[aria-pressed=true]{background:#fff;border-color:#e1e5db;box-shadow:0 2px 7px #17241c08}.edition>span{font-size:14px;font-weight:550}.edition small,.option-card small{display:block;font-weight:400;font-size:12px;line-height:1.4;color:var(--muted);margin-top:4px}.swatch{width:32px;height:32px;border-radius:50%;border:3px solid #fff;box-shadow:0 1px 5px #24342a30;flex-shrink:0}.natural{background:#796044}.gallery{background:#c5b492}.nocturne{background:#353530}.selected-mark{width:16px;margin-left:auto;opacity:0}.edition[aria-pressed=true] .selected-mark{opacity:1}.light-control{border-top:1px solid var(--line);margin-top:17px;padding-top:17px}.light-control label{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:550}.light-control output{font-size:12px;font-weight:400;color:var(--muted)}.light-control input{width:100%;height:35px;accent-color:#526351;margin:7px 0 0}.light-control>div{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.studio-footer{display:flex;gap:8px;margin-top:19px}.primary,.secondary{min-height:44px;border-radius:13px;padding:11px 16px;font-size:13px;display:inline-flex;justify-content:center;align-items:center;gap:7px}.primary{background:#283a30;color:#fff}.secondary{background:#fff9;border:1px solid var(--line)}.studio-footer .primary{flex:1}#quality[aria-pressed=true]{background:#dde8d8}.option-card{display:flex;width:100%;align-items:center;gap:13px;text-align:left;min-height:74px;padding:13px 11px;border:1px solid transparent;border-radius:15px;background:#fff5;margin-bottom:7px;font-size:14px}.option-card[aria-pressed=true]{background:#fff;border-color:#92a28a}.material-chip{width:37px;height:43px;border-radius:9px;flex-shrink:0;background-size:cover;background-position:center}.wood{background-image:url('./assets/materials/walnut_veneer/Diffuse.jpg')}.stone{background:#d8d2c4}.cloth{background:repeating-linear-gradient(90deg,#d2cbbd 0 1px,#e6dfd3 1px 3px)}.detail-description{font-size:13px;line-height:1.6;color:var(--muted);margin:15px 3px 0}.fineprint{font-size:12px!important;line-height:1.5!important;color:var(--muted)!important}.bottom-ui{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));left:20px;right:20px;display:flex;align-items:center;flex-direction:column;z-index:3;pointer-events:none}.bottom-ui>*{pointer-events:auto}.view-label{text-align:center;color:white;text-shadow:0 1px 10px #07131c;font-size:13px;margin:0 0 13px}.view-label span{display:block;font-size:11px;opacity:.85;margin-top:5px}.view-dock{display:flex;gap:3px;padding:6px;border-radius:22px;max-width:100%}.view-dock button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:12px 20px;border-radius:16px;background:transparent;font-size:13px;white-space:nowrap}.view-dock button[aria-pressed=true]{background:#fff;box-shadow:0 2px 8px #1c35231a}.view-dock svg{width:17px;height:17px}.dock-rule{width:1px;background:var(--line);margin:10px 4px}.loading{position:absolute;inset:0;z-index:10;background:#ede8df;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:24px;text-align:center}.loader-mark{font-family:Georgia,serif;font-size:40px;border:1px solid #9f8d7160;border-radius:22px;width:78px;height:78px;display:grid;place-items:center;margin-bottom:12px}.loading h2{font-weight:450;font-size:26px;letter-spacing:-.04em}.loading p{font-size:14px;color:#756e64}.loading small{font-size:12px;color:#756e64;margin-top:25px;max-width:240px;line-height:1.5}.loading progress{width:170px;height:3px;accent-color:#766248;margin-top:16px}.toast{position:absolute;bottom:132px;left:20px;right:20px;margin:auto;width:max-content;max-width:calc(100% - 40px);background:#21332bea;color:white;border-radius:14px;padding:12px 18px;z-index:20;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s}.toast.visible{opacity:1}dialog{border:1px solid #fff9;border-radius:28px;padding:34px;max-width:610px;width:calc(100% - 32px);max-height:calc(100dvh - 40px);background:#f7f8f4;color:var(--ink);box-shadow:0 25px 100px #0004;overflow:auto}dialog::backdrop{background:#13221bb0}dialog h2{font-size:31px;line-height:1.13;font-weight:500;letter-spacing:-.045em;margin:15px 0}dialog p{font-size:14px;line-height:1.65;color:var(--muted)}.dialog-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;border-radius:50%;background:#e6ebe1;display:grid;place-items:center}.contact-link{display:flex;align-items:center;justify-content:center;gap:10px;background:#283a30;color:#fff;border-radius:14px;padding:16px;text-decoration:none;text-align:center;margin-top:24px;font-size:14px;min-height:48px}.credits-link{display:block;text-align:center;font-size:12px;min-height:44px;padding-top:18px;color:#54664f}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid var(--line);margin-top:24px;padding-top:10px}.help-grid h3{font-size:14px;margin-bottom:7px}.help-grid p{font-size:12px;margin-top:0}.saved-list{display:grid;gap:14px;margin:22px 0}.saved-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}.saved-card>img{display:block;width:100%;height:180px;object-fit:cover}.saved-card-body{padding:13px}.saved-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.saved-card h3{font-size:15px;margin:0}.saved-card p{font-size:12px;margin:5px 0 11px}.saved-card label{display:flex;align-items:center;gap:7px;font-size:12px;min-height:44px}.saved-card input{width:18px;height:18px;accent-color:#283a30}.saved-card-actions{display:flex;gap:7px;flex-wrap:wrap}.saved-card-actions button{flex:1}.empty-state{border:1px dashed #8c9b85;border-radius:18px;padding:25px;text-align:center}.dialog-actions{display:flex;gap:9px;flex-wrap:wrap}.dialog-actions>*{flex:1}.wide-dialog{max-width:1100px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.comparison figure{margin:0;min-width:0}.comparison img{width:100%;border-radius:16px;aspect-ratio:4/3;object-fit:contain;background:#e4e7dd}.comparison figcaption{font-size:13px;line-height:1.6;margin-top:10px}.field-label{font-size:13px;display:block;margin:20px 0 8px}#share-url{width:100%;font-size:13px;border:1px solid #a8b4a1;border-radius:10px;padding:12px;background:white}#share-preview{display:block;width:100%;border-radius:16px}.noscript{position:fixed;inset:20px;z-index:100;background:#fff;padding:30px}.failed .loading button{min-height:44px;border:0;padding:12px 24px;border-radius:13px;background:#283a30;color:#fff;margin-top:20px}.plan-view .scene-title{display:none}
@media(min-width:621px){body:has(#studio-content:not([hidden])) .scene-title{max-width:calc(100% - 400px)}}
@media(max-width:900px){.studio{width:268px;right:20px}.masthead{left:20px;right:20px}.scene-title{left:26px}.view-dock button{padding-inline:16px}.scene-title h1{font-size:44px}}
@media(max-width:620px){.masthead{top:max(14px,env(safe-area-inset-top));left:14px;right:14px}.wordmark{font-size:18px;padding:13px 13px 11px 18px;border-radius:16px}.wordmark span{font-size:7px;margin-top:7px}.pill{padding-inline:13px}.header-actions{gap:6px}.scene-title{left:22px;right:22px;top:123px;bottom:auto;max-width:none}.scene-title p{font-size:9px}.scene-title h1{font-size:38px;max-width:220px}.scene-title>span{display:none}.studio{top:auto;bottom:99px;right:12px;left:12px;width:auto;max-height:calc(100dvh - 208px);border-radius:22px}.studio-toggle{min-height:74px;padding:15px 17px}.studio-toggle .eyebrow{font-size:9px;margin-bottom:6px}.studio-toggle strong{font-size:15px}#studio-content{padding:0 15px 15px}.studio-tabs{margin-bottom:12px}.panel-intro{font-size:12px;margin-bottom:10px}.editions{grid-template-columns:repeat(3,1fr)}.edition{flex-direction:column;gap:7px;padding:10px 3px;min-height:77px;text-align:center}.edition>span{font-size:12px}.edition small,.selected-mark{display:none}.light-control{margin-top:12px;padding-top:12px}.light-control>div{display:none}.studio-footer{margin-top:13px}.bottom-ui{bottom:max(15px,env(safe-area-inset-bottom));left:12px;right:12px}.view-label{font-size:11px;margin-bottom:8px}.view-label span{display:none}.view-dock{width:100%;padding:4px;gap:1px;border-radius:18px}.view-dock button{flex:1;padding:10px 9px;min-height:44px;font-size:12px;border-radius:14px}.view-dock [data-view=plan] svg{display:none}.dock-rule{margin:9px 2px}#tour-button{flex:0 0 44px}#tour-button span{display:none}.toast{bottom:186px;font-size:12px}body:has(#studio-content:not([hidden])) .scene-title{display:none}dialog{padding:28px 20px}dialog .eyebrow{font-size:9px;max-width:80%}dialog h2{font-size:28px}.help-grid{grid-template-columns:1fr;gap:5px}.comparison{grid-template-columns:1fr}.comparison img{max-height:220px}.saved-card>img{height:155px}}
@media(max-height:640px) and (min-width:621px){.masthead{top:14px}.wordmark{font-size:18px;padding:11px 14px 10px 18px}.wordmark span{font-size:7px}.studio{top:88px;max-height:calc(100dvh - 183px)}.studio-toggle{min-height:64px;padding:13px 16px}.scene-title{bottom:115px}.scene-title h1{font-size:36px}.scene-title>span,.view-label span{display:none}.bottom-ui{bottom:14px}.view-label{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
@media(prefers-reduced-transparency:reduce){.glass{background:#f2f4ed}}
.studio-toggle{position:sticky;top:0;z-index:2;background:#f0f3ebeF}.studio-tabs button{min-height:44px}
.studio{display:flex;flex-direction:column;overflow:hidden}.studio-toggle{flex-shrink:0}#studio-content{display:flex;flex-direction:column;min-height:0;overflow:hidden}.studio-tabs,.studio-footer{flex-shrink:0}[role=tabpanel]{overflow-y:auto;min-height:0;scrollbar-width:thin;padding-bottom:4px}.studio-footer{padding-top:8px;border-top:1px solid var(--line);margin-top:12px}
@media(min-width:1000px) and (min-height:641px){.studio{max-height:calc(100dvh - 148px)}}
@media(max-width:620px){.scene-title h1{max-width:340px;font-size:36px}#scene:after{background:linear-gradient(0deg,#0c1a2452,transparent 30%),linear-gradient(180deg,#11251e2b,transparent 35%)}}
.light-control input{height:44px}
@media(max-height:500px){body:has(#studio-content:not([hidden])) .studio{z-index:6;top:12px;bottom:12px;left:auto;right:12px;width:min(360px,calc(100% - 24px));height:calc(100dvh - 24px);max-height:none}body:has(#studio-content:not([hidden])) #studio-content{flex:1}body:has(#studio-content:not([hidden])) [role=tabpanel]{flex:1}.studio-toggle{min-height:64px;padding:12px 16px}.panel-intro{display:none}.light-control{margin-top:12px;padding-top:12px}.scene-title h1{font-size:30px}.scene-title p{font-size:9px}}
.detail-view .scene-title{display:none}
@media(max-height:500px){body:has(#studio-content:not([hidden])) .header-actions,body:has(#studio-content:not([hidden])) .bottom-ui{visibility:hidden}}
@media(max-width:360px){.wordmark{font-size:16px;padding-left:15px;padding-right:11px}.scene-title h1{font-size:32px}.pill{padding-inline:11px}}
.failed .loading small{display:none}
