*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}body{font-family:Arial,Helvetica,sans-serif;font-size:13px}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #c38555;outline-offset:3px}button{transition:background .15s}.experience{position:relative;width:100%;height:100%;isolation:isolate}.scene{position:absolute;inset:0}.scene canvas{width:100%;height:100%;display:block}.panel h2{margin:0}.left-panels{position:absolute;display:flex;flex-direction:column}.about{flex:none}.about p{margin:8px 0}.clamped{display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}.eyebrow{font-weight:600;color:#d58154}.quiet{border:0;background:none;padding:0}.compound{flex:1;min-height:0;display:flex;flex-direction:column}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.search{display:flex;align-items:center;padding:0 8px;border:1px solid}.search input{background:none;border:0;outline:0;min-width:0;width:100%}.part-groups{overflow:auto;flex:1}.part-groups h3{font-weight:500;letter-spacing:.4px}.part-row{display:flex;align-items:center;text-align:left;border-radius:7px;width:100%}.part-select small{display:block;line-height:1.4}.part-dot{border-radius:50%;flex:none;box-shadow:0 0 0 3px #a3492920}.show-all{margin-top:16px;align-self:flex-start}.house-title{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;white-space:nowrap}.controls{position:absolute;overflow:auto;scrollbar-width:thin}.controls summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.controls summary::-webkit-details-marker{display:none}.controls summary:after{content:"";width:6px;height:6px;border-top:1px solid;border-left:1px solid;transform:rotate(225deg);margin-right:3px}.controls details[open]>summary:after{transform:rotate(45deg)}.segments{display:flex;width:100%;border:1px solid;overflow:hidden}.segments button{min-width:0;flex:1;background:none;border:0;border-right:1px solid;white-space:nowrap}.segments button:last-child{border-right:0}.toggle-row{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:0}.toggle{border-radius:10px;position:relative;flex:none}.toggle:before{content:"";position:absolute;top:1px;left:1px;border:1px solid;border-radius:50%}.wide{width:100%;background:none;border:1px solid;margin-top:6px}.button-pair{display:flex;gap:7px;margin-top:9px}.button-pair button{flex:1;min-width:0;background:none;border:1px solid;border-radius:9px}.sample-range{display:block}.sample-range>span{display:flex;justify-content:space-between;align-items:center}.sample-range input{display:block;appearance:none;width:100%;margin:0;cursor:pointer}.sample-range input::-webkit-slider-thumb{appearance:none;border:1px solid;border-radius:50%}.controls select{width:100%;border:1px solid}.material-grid{display:grid;grid-template-columns:repeat(4,1fr)}.bottom-bar{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;white-space:nowrap}.bottom-bar nav{display:flex;align-items:center;border-radius:24px}.bottom-bar nav button{border:0;background:none;padding:0}.bottom-bar nav b{width:1px;height:19px}.bottom-bar>small{color:#eee5d7;text-shadow:0 1px 4px #0004}.bottom-bar>.quiet{color:#eee5d7}.toast,.loading{position:absolute;left:50%;transform:translate(-50%);border-radius:12px;padding:12px 17px}.mobile-panels{display:none}.icon-button:disabled{opacity:.35}.scene svg{pointer-events:none}.experience{--panel: #201c0e;--text: #ddd9ce;--muted: #aaa391;--line: #47402e;--accent: #a64f2c;--track: #302a1c;--hover: #352c1e;color:var(--text);font-size:13px;background:linear-gradient(#304b5c,#393a2e 37%,#b8a787 53%,#b3a17f)}.experience[data-theme=light]{--panel: #f8f5efed;--text: #30291f;--muted: #80756a;--line: #d9d1c5;--track: #e2d7cc;--hover: #ece4db;background:linear-gradient(#91aec1,#ccd3d1 36%,#b8a787 53%,#b3a17f)}.panel{background:var(--panel);color:var(--text);border:1px solid transparent;border-radius:21px;padding:17px 16px;box-shadow:none}[data-theme=light] .panel{border-color:#aca89d88}.left-panels{left:16px;top:16px;bottom:16px;width:clamp(236px,14vw,325px);gap:12px}.controls{right:16px;top:16px;bottom:16px;width:clamp(256px,15.2vw,352px);scrollbar-color:var(--line) transparent}.panel h2{font:400 21px Georgia,serif;margin-bottom:12px;letter-spacing:-.3px}.panel-heading h2{margin:0}.panel-heading small{font-size:12px;color:var(--muted)}.about p{font-size:13px;line-height:1.65;color:var(--muted);margin:10px 0}.clamped{-webkit-line-clamp:8}.eyebrow{font-size:10px;letter-spacing:1.3px}.quiet{color:var(--muted);font-size:11px}.controls>.panel-heading{margin-bottom:21px}.controls>.panel-heading .quiet{font-size:11px}.controls fieldset{padding:0;margin:0;min-width:0;border:0}.controls details{margin-bottom:23px}.controls summary{font-size:13px;margin-bottom:13px}.controls summary:after{color:var(--muted)}.segments{border-color:var(--line);margin:0 0 8px;border-radius:11px}.segments button{font-size:11px;padding:7px 3px;border-color:var(--line);color:var(--text)}.segments button:hover,.segments button.active{background:var(--hover)}.toggle-row{font-size:13px;padding:5px 0;color:var(--text)}.toggle{background:var(--track);width:29px;height:17px}.toggle:before{background:var(--panel);border-color:var(--line);height:15px;width:15px}.toggle.on{background:var(--accent)}.toggle.on:before{left:13px}.wide{border-color:var(--line);padding:7px;border-radius:12px;display:flex;justify-content:center;gap:6px;align-items:center}.wide:hover,.button-pair button:hover{background:var(--hover)}.button-pair button{border-color:var(--line);font-size:11px;display:flex;align-items:center;justify-content:center;gap:5px;padding:6px}.button-pair button:first-child{background:var(--hover)}.sample-range{margin:14px 0 9px}.sample-range>span{font-size:13px;margin-bottom:10px}.sample-range output{font-size:12px;color:var(--muted)}.sample-range input{height:3px;accent-color:var(--accent)}.sample-range input::-webkit-slider-thumb{background:var(--panel);border-color:var(--accent);width:12px;height:12px}.sample-range.disabled{opacity:.5}.controls select{border-color:var(--line);color:var(--text);background:var(--panel);font-size:12px;padding:8px;border-radius:10px}.material-grid{gap:12px 3px;margin-top:12px}.material-grid label{text-align:center;display:grid;justify-items:center;gap:5px}.material-grid input[type=color]{appearance:none;border:0;background:none;padding:0;width:34px;height:34px;border-radius:50%;cursor:pointer;overflow:hidden}.material-grid input[type=color]::-webkit-color-swatch-wrapper{padding:0}.material-grid input[type=color]::-webkit-color-swatch{border:0;border-radius:50%}.material-grid small{font-size:10px;color:var(--muted)}.format-note{font-size:11px;line-height:1.55;color:var(--muted)}svg{width:16px;height:16px;flex:none}.house-title{top:20px;gap:16px}.house-title h1{font:400 28px Georgia,serif;margin:0 0 4px}.house-home{display:flex;gap:13px;align-items:center;background:none;border:0;padding:0;text-align:left;color:#f4eee3;text-shadow:0 1px 6px #0003}.house-home svg{width:37px;height:42px}.house-title small{font-size:12px}.house-title>.icon-button{width:29px;height:29px;background:#172e3d80;border:0;margin:0;border-radius:50%;display:grid;place-items:center;color:#e8e5dc}.title-divider{opacity:.4}.scope-title{font:400 22px Georgia,serif;background:none;border:0;color:#f4eee3;display:flex;align-items:center;gap:14px}.scope-title svg{width:18px;height:18px}.search{height:34px;border-color:var(--line);border-radius:11px;gap:8px}.search input{font-size:12px;color:var(--text)}.search input::placeholder{color:var(--muted);opacity:.65}.part-groups{scrollbar-width:thin;scrollbar-color:var(--line) transparent}.part-groups h3{color:var(--muted);font-size:10px;margin-top:20px}.part-row{padding:0;gap:0;position:relative}.part-select{display:flex;align-items:center;gap:11px;flex:1;min-width:0;background:none;border:0;text-align:left;padding:7px 3px;color:var(--text);font-size:13px}.part-select>span:last-child{min-width:0}.part-select small{font-size:11px;color:var(--muted);margin-top:2px}.part-row:hover,.part-row.selected{background:var(--hover)}.part-dot{width:7px;height:7px;background:#ad682c}.is-hidden .part-select{opacity:.4}.row-action{border:0;background:none;width:25px;height:28px;padding:5px;opacity:0;flex:none}.part-row:hover .row-action,.part-row:focus-within .row-action{opacity:1}.row-action svg{width:14px}.enter-action{opacity:1}.show-all{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.show-all svg{width:13px}.icon-button{border:0;background:none;padding:5px;width:30px;height:30px;display:inline-grid;place-items:center;border-radius:7px}.icon-button:hover{background:var(--hover)}.bottom-bar{gap:15px;bottom:16px}.bottom-bar nav{background:var(--panel);padding:7px 9px;gap:3px}.bottom-bar nav button{width:28px;height:25px;font-size:12px;color:var(--text);display:grid;place-items:center}.bottom-bar nav button:hover{background:var(--hover)}.bottom-bar nav b{background:var(--line);margin:0 5px}.bottom-bar nav svg{width:16px;height:16px}.bottom-bar .language-button{font-size:10px;font-weight:600}.bottom-bar>small{font-size:11px}.bottom-bar>.quiet{font-size:11px}.model-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.model-label{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:18px;padding:4px 9px;font-size:11px;white-space:nowrap;box-shadow:0 2px 9px #0002}.model-label:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:6px}.model-label[hidden]{display:none}.selection-card,.tour-card{position:absolute;left:50%;transform:translate(-50%);bottom:75px;width:420px;max-width:calc(100% - 40px);max-height:65vh;overflow:auto;box-shadow:0 10px 40px #0003;padding:17px 20px;border-color:var(--line)}.card-top{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);margin-bottom:12px}.card-top>div{display:flex;align-items:center;margin-left:auto}.card-top button{border:0;background:none;display:inline-grid;place-items:center;width:27px;height:27px;border-radius:6px}.card-top button:hover{background:var(--hover)}.selection-card h2,.tour-card h2{margin:0 0 9px;font-size:23px}.selection-card p,.tour-card p{font-size:13px;line-height:1.65;color:var(--muted);margin:8px 0 13px}.selection-card .selection-subtitle{font-size:12px;margin-top:0}.selection-card h3{font-size:10px;letter-spacing:1px;font-weight:500;margin:15px 0 5px}.dimension-tag{display:inline-block;border:1px solid var(--line);border-radius:7px;padding:4px 8px}.selection-card .segments{margin-top:10px}.tour-card{width:610px;border-radius:24px;border-color:#8b693e}.tour-active .left-panels,.tour-active .controls,.tour-active .mobile-panels{display:none!important}.tour-badge{display:flex;align-items:center;gap:5px;background:#e4b460;color:#211a0e;padding:4px 9px;border-radius:20px}.tour-badge svg{width:13px;height:13px}.spacer{flex:1}.tour-nav{display:flex;align-items:center;gap:10px;margin-top:18px}.tour-nav>button{border:0;background:none;padding:6px 9px;border-radius:7px}.tour-nav>button:hover{background:var(--hover)}.tour-nav>.tour-next{background:#e4b460;color:#201a10}.tour-stops{display:flex;gap:6px;flex:1;flex-wrap:wrap}.tour-stops button{width:8px;height:8px;border:0;background:#7d643d;border-radius:10px;padding:0}.tour-stops button.active{width:20px;background:#e4b460}.dialog{color:var(--text);background:var(--panel);border:1px solid var(--line);max-width:90vw;width:440px;padding:23px;max-height:85vh;overflow:auto;margin:auto}.dialog::backdrop{background:#0007;backdrop-filter:blur(3px)}.dialog .panel-heading{margin-bottom:18px}.dialog p{color:var(--muted);font-size:13px;line-height:1.7}.dialog input{background:none;border:0;margin:0;padding:0}.dialog .icon-button{position:static}.shortcuts{margin:20px 0 0}.shortcuts>div{display:flex;justify-content:space-between;padding:7px 0;font-size:13px}.shortcuts dd{margin:0;border:1px solid var(--line);border-radius:5px;padding:1px 8px;color:var(--muted);font-size:11px}.menu-options{display:grid;gap:5px;margin-top:12px}.menu-options>button{background:none;border:0;padding:12px;text-align:left;border-radius:9px;color:var(--text)}.menu-options>button:hover{background:var(--hover)}.menu-options small{display:block;color:var(--muted);margin-top:4px}.toast,.loading{background:var(--panel);color:var(--text);z-index:5;display:flex;align-items:center;gap:12px;border:1px solid var(--line);max-width:80vw}.toast{top:100px}.loading{top:50%}.mobile-panels button{background:var(--panel);color:var(--text);border-color:var(--line)}@media(min-width:1800px){.left-panels{width:clamp(236px,14vw,325px)}.controls{width:clamp(256px,15.2vw,352px)}}@media(max-width:1200px){.left-panels{width:230px}.controls{width:255px}.selection-card{width:340px}.house-title h1{font-size:23px}.house-title{gap:9px}.house-title small{font-size:10px}.house-home svg{width:28px}.scope-title{font-size:18px}}@media(max-width:900px){.left-panels,.controls{display:none}.mobile-panels{display:flex;position:absolute;right:15px;top:18px;gap:5px;z-index:2}.mobile-panels button{padding:7px;border-radius:8px;border:1px solid var(--line)}.mobile-compound .left-panels{display:flex;top:70px;bottom:75px;width:250px}.mobile-controls .controls{display:block;top:70px;bottom:75px;width:280px}.house-title{left:16px;transform:none;top:14px}.house-title h1{font-size:22px}.house-home svg{width:28px;height:32px}.house-title small{font-size:9px}.house-title>.icon-button{width:23px;height:23px}.part-groups{max-height:none}.row-action{opacity:1}.selection-card{width:410px;bottom:75px}.bottom-bar>small,.bottom-bar>.quiet{display:none}.bottom-bar nav button{width:26px}}@media(max-width:500px){.house-title h1{font-size:18px}.house-title small{font-size:8px}.house-title .scope-title,.title-divider{display:none}.house-title{gap:4px}.house-home{gap:7px}.house-title>.icon-button{display:none}.panel{border-radius:17px}.mobile-panels{right:10px;gap:3px}.mobile-panels button{font-size:10px}.bottom-bar{bottom:12px}.bottom-bar nav{padding:7px 6px;gap:1px}.bottom-bar nav button{width:25px}.bottom-bar nav b{margin:0 2px}.tour-card{padding:15px}.tour-card h2{font-size:21px}.selection-card{max-height:60vh}.mobile-compound .left-panels{left:10px}.mobile-controls .controls{right:10px}.about{display:none}}.controls details:first-child .segments button{font-size:10px;padding:7px 1px}.compass{position:absolute;right:calc(clamp(256px,15.2vw,352px) + 35px);bottom:75px;width:76px;height:76px;border-radius:50%;background:var(--panel);color:var(--text);border:1px solid var(--line);pointer-events:none;opacity:.9}.compass-dial{position:absolute;inset:0}.compass span{position:absolute;font-size:10px}.compass .north{top:3px;left:34px;color:var(--accent);font-weight:700}.compass .south{bottom:3px;left:34px}.compass .east{right:5px;top:31px}.compass .west{left:5px;top:31px}.compass i{position:absolute;left:35px;top:19px;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:19px solid var(--accent)}.solar-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.solar-fields label{display:grid;gap:4px;color:var(--muted);font-size:11px}.solar-fields input{min-width:0;width:100%;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:6px}@media(max-width:900px){.compass{right:14px;bottom:70px;width:62px;height:62px}.compass .north,.compass .south{left:27px}.compass .east,.compass .west{top:24px}.compass i{left:28px;top:15px;border-bottom-width:16px}}.sample-range input{height:26px;margin:-11px 0;background-size:100% 3px!important;background-repeat:no-repeat!important;background-position:center!important;touch-action:none}.sample-range input::-webkit-slider-thumb{width:16px;height:16px}.sample-range input::-moz-range-thumb{width:16px;height:16px;border-radius:50%;border:1px solid var(--accent);background:var(--panel)}.daylight-ends{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:10px}.site-row{display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:8px;margin:16px 0 8px}.site-row label{display:grid;gap:5px;color:var(--muted);font-size:11px}.site-row input,.solar-fields input{appearance:textfield;-moz-appearance:textfield}.site-row input::-webkit-inner-spin-button,.site-row input::-webkit-outer-spin-button,.solar-fields input::-webkit-inner-spin-button,.solar-fields input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.site-row input{width:100%;min-width:0;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px}.site-row select{margin:0}.controls details.site-details{margin:10px 0 14px}.controls details.site-details summary{font-size:11px;color:var(--muted);margin:0}.solar-fields{display:grid;grid-template-columns:repeat(4,minmax(54px,1fr));overflow-x:auto;gap:6px;margin-top:10px}.solar-fields label{font-size:10px}.solar-fields input{font-size:11px;padding:6px 4px}.scene .scene-transition{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;display:none;z-index:1}.model-labels{z-index:2}.compass{z-index:3}
