@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap";:root{font-family:DM Sans,sans-serif;color:#29382f;background:#bdc7bf;font-synthesis:none;--ink:#29382f;--muted:#59695f;--panel:#24352eea;--line:#ffffff24;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,summary,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none}a{color:inherit}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #b4cb98;outline-offset:3px}[hidden]{display:none!important}.skip-link{position:absolute;top:-80px;left:20px;background:#fff;padding:12px;z-index:20}.skip-link:focus{top:12px}.apartment{height:100dvh;min-height:520px;width:100%;position:relative;overflow:hidden}.viewport-wrap,#viewer{position:absolute;inset:0}#viewer{overflow:hidden;touch-action:none;cursor:grab;outline:none}#viewer:active{cursor:grabbing}#viewer:focus-visible{box-shadow:inset 0 0 0 2px #5b735a}#viewer canvas{display:block;width:100%;height:100%}.page-header{position:absolute;z-index:2;top:26px;left:32px;right:32px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;pointer-events:none}.page-header>*{pointer-events:auto}.back{text-decoration:none;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}h1{font:400 44px/1.1 Libre Caslon Display,Georgia,serif;letter-spacing:-.6px;margin:12px 0 4px}.page-header p{font-size:11px;color:var(--muted);margin:0}.tools{display:flex;gap:5px;background:#e2e8dfb5;border:1px solid #ffffff50;padding:4px;border-radius:9px;backdrop-filter:blur(14px)}.tools button{font-size:11px;padding:10px 12px;border-radius:5px}.tools button:hover{background:#fff6}.dock{position:absolute;z-index:3;bottom:42px;left:50%;transform:translate(-50%);background:var(--panel);color:#e6ebe0;border:1px solid #ffffff28;box-shadow:0 12px 40px #24332926;border-radius:13px;width:max-content;max-width:calc(100% - 40px);backdrop-filter:blur(20px);padding:9px 12px}.dock-top{display:flex;gap:12px;align-items:center;padding-bottom:9px;border-bottom:1px solid var(--line)}.modes,.lights{display:flex;gap:2px}.modes{padding:3px;background:#0f1c174d;border-radius:7px}.dock button{font-size:11px;min-height:34px;border-radius:5px;white-space:nowrap;padding:8px 12px}.modes button[aria-pressed=true]{background:#e6ebd9;color:#24372b;box-shadow:0 2px 5px #0002}.lights{margin-left:auto}.lights button{color:#acb9ae;padding:8px 9px}.lights button[aria-pressed=true]{color:#f5e8bb;background:#ffffff10}.dock button:hover{background:#ffffff12}.modes button[aria-pressed=true]:hover{background:#e6ebd9}.room-buttons{display:flex;gap:4px;padding-top:7px;overflow-x:auto;scrollbar-width:none}.room-buttons::-webkit-scrollbar{display:none}.room-buttons button{color:#bbc8bb;padding:7px 9px}.room-buttons button[aria-pressed=true]{background:#f5f3d51f;color:#fff4ca}.room-number{font-size:9px;margin-right:6px;color:#7f9686}.view-info{position:absolute;left:32px;bottom:180px;pointer-events:none;max-width:240px}#current-room{font:400 23px Libre Caslon Display,Georgia,serif}.view-info p{font-size:11px;line-height:1.6;margin:7px 0 0;color:var(--muted)}#view-help{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:10px;color:var(--muted);pointer-events:none;margin:0}.settings-menu{position:relative;font-size:11px}.settings-menu summary{cursor:pointer;list-style:none;padding:10px 8px}.settings-menu summary::-webkit-details-marker{display:none}.settings-menu summary:after{content:" ⌃";color:#a8baa9}.settings{position:absolute;bottom:50px;right:-10px;min-width:275px;padding:19px;background:#26382ff5;border:1px solid #ffffff25;border-radius:10px;box-shadow:0 8px 30px #0003}.wall-setting{display:flex;align-items:center;gap:10px}.wall-setting input{width:100px;accent-color:#c9d4b6}.wall-setting output{min-width:45px;font-size:10px;color:#b2c4b2}.toggles{display:flex;gap:15px;margin:16px 0}.toggles label{display:flex;gap:6px;align-items:center}.toggles input{accent-color:#acbf94;width:15px;height:15px}.settings #download-model{border-top:1px solid var(--line);width:100%;text-align:left;padding-left:0;padding-top:13px}.walk-controls{position:absolute;z-index:2;right:30px;bottom:180px;text-align:center}.walk-controls>div{display:flex;gap:5px;margin-top:5px}.walk-controls button{width:44px;height:44px;background:#26382fdd;border:1px solid #ffffff38;color:#f2f2e4;border-radius:8px;font-size:20px;touch-action:none;user-select:none}.walk-controls button:active{background:#a4b58f;color:#24372b}.apartment[data-mode=walk] #viewer{cursor:move}.apartment[data-mode=walk] .page-header,.apartment[data-mode=walk] .view-info{filter:drop-shadow(0 1px 4px #fff8)}#room-labels{position:absolute;inset:0;pointer-events:none}.map-label{position:absolute;transform:translate(-50%,-50%);background:#f3f4e7e8;color:#344c39;border:1px solid #c3cdb9;border-radius:5px;padding:5px 8px;white-space:nowrap;font-size:10px;pointer-events:auto}.map-label:hover{background:#304636;color:#fff}#loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;font-size:12px;color:var(--muted)}.loading-house{font:60px Georgia,serif}dialog{border:1px solid #ffffff65;background:#f3f2e9;color:#303c32;border-radius:13px;box-shadow:0 20px 90px #14271f66;padding:24px;width:min(90vw,620px);max-height:86dvh}dialog::backdrop{background:#11221b8c;backdrop-filter:blur(8px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.dialog-header button{padding:10px;font-size:12px}.dialog-header label{font-size:15px;font-weight:500}dialog h2{font:30px Libre Caslon Display,Georgia,serif;margin:0}dialog p{font-size:13px;line-height:1.8}dialog select{border:1px solid #bdc8b8;background:#fff9;border-radius:5px;padding:9px;width:100%;margin-bottom:16px}#photo-dialog{width:min(92vw,780px)}#reference-photo{display:block;max-height:65dvh;width:100%;object-fit:contain;background:#e3e6db;border-radius:4px}#photo-dialog p,.credit{font-size:11px;color:#61715f}#fallback{position:absolute;inset:130px 20px 170px;text-align:center;overflow:auto}#fallback h2{font-size:18px}#fallback p{font-size:12px}#fallback svg{height:320px;max-width:100%}#fallback rect{fill:#dce3d3;stroke:#71816c;stroke-width:.2}#fallback text{text-anchor:middle;font-size:1.25px;fill:#33412c}.no-script{position:absolute;top:180px;left:30px}.apartment[data-light=evening]{--ink:#e5ebdf;--muted:#c4d1c5;color:var(--ink)}@media(max-width:1000px){.dock{width:calc(100% - 40px)}.dock-top{gap:7px}.room-buttons{justify-content:flex-start}.view-info{bottom:174px}.page-header{left:24px;right:24px}.dock button{padding:8px 10px}.room-buttons button{flex-shrink:0}}@media(max-width:600px){.apartment{min-height:520px}.page-header{top:18px;left:18px;right:18px;gap:12px}h1{font-size:35px;margin-top:8px}.back{font-size:9px;letter-spacing:.5px}.page-header p{font-size:10px}.tools{padding:2px;gap:0}.tools button{padding:9px 8px;font-size:10px;min-height:44px}#fullscreen{display:none}.dock{width:calc(100% - 20px);max-width:none;bottom:35px;padding:8px;border-radius:11px}.dock-top{flex-wrap:wrap;gap:2px;justify-content:space-between}.modes,.modes button{flex:1}.dock button{font-size:10px;min-height:38px;padding:8px}.lights{order:3;margin:3px auto 0 0}.lights button{min-height:30px;padding:6px 10px}#reset-view{order:4;min-height:30px}.settings-menu{order:5;font-size:10px}.settings-menu summary{padding:9px}.settings{right:0;bottom:42px}.room-buttons{gap:2px}.room-buttons button{min-height:38px}.room-number{display:none}.view-info{left:18px;bottom:205px;max-width:240px}#current-room{font-size:21px}.view-info p{font-size:10px;max-width:240px;margin-top:4px}.walk-controls{right:18px;bottom:205px}.apartment[data-mode=walk] .view-info{top:125px;bottom:auto;max-width:230px;background:#e4e9dedb;border-radius:6px;padding:9px}.apartment[data-mode=walk] .view-info p{display:none}#view-help{font-size:9px;bottom:12px}.map-label{font-size:9px;padding:4px 5px}dialog{padding:18px}dialog h2{font-size:25px}#fallback{inset:140px 12px 210px}}.apartment[data-mode=walk] .page-header>div{background:#e7ece2e8;padding:12px 16px;border-radius:8px;color:#29382f;--muted:#59695f;backdrop-filter:blur(12px)}.apartment[data-mode=walk] h1{font-size:30px;margin-top:6px}.apartment[data-mode=walk] .view-info{background:#e7ece2e8;color:#29382f;--muted:#59695f;padding:10px 14px;border-radius:7px;backdrop-filter:blur(12px)}@media(max-width:600px){.apartment[data-mode=walk] .page-header>div{padding:9px 12px}.apartment[data-mode=walk] h1{font-size:25px}.apartment[data-mode=walk] .page-header p{display:none}}.tools{color:#29382f}#reference-photo{max-height:calc(86dvh - 200px)}
