@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#f7f3e8;background:#191b1b;font-family:Inter Variable,Inter,ui-sans-serif,system-ui,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11","ss01","ss03";font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #f7f3e8;--ink-muted: rgb(247 243 232 / 66%);--ink-faint: rgb(247 243 232 / 42%);--line: rgb(247 243 232 / 18%);--line-strong: rgb(247 243 232 / 32%);--canvas: rgb(22 25 24 / 78%);--canvas-solid: #191b1a;--accent: #d59a5d;--accent-soft: rgb(213 154 93 / 18%);--focus: #efbd7a;--radius-panel: 14px;--panel-pad: 12px}*{box-sizing:border-box}html,body,#app{width:100%;min-width:0;height:100%;min-height:100%;margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:3px}[hidden]{display:none!important}.app-shell{position:relative;isolation:isolate;width:100%;height:100%;min-height:100svh;overflow:hidden;color:var(--ink);background:#242827}.scene-stage,.scene-host{position:absolute;inset:0;min-width:0;min-height:0}.scene-host canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}.scene-host canvas:active{cursor:grabbing}.scene-host canvas.is-interactive{cursor:pointer}.scene-vignette,.grain{position:absolute;inset:0;pointer-events:none}.scene-vignette{background:linear-gradient(180deg,rgb(10 12 12 / 38%) 0%,transparent 17%),radial-gradient(circle at center,transparent 54%,rgb(10 12 12 / 42%) 110%)}.grain{opacity:.07;background-image:repeating-linear-gradient(93deg,transparent 0,rgb(255 255 255 / 16%) 1px,transparent 2px,transparent 5px);mix-blend-mode:soft-light}.site-header{position:absolute;z-index:20;top:0;left:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;min-width:0;height:82px;padding:0 28px;border-bottom:1px solid var(--line);pointer-events:none}.header-address,.visit-status{display:flex;align-items:center;min-width:0;gap:16px;color:var(--ink-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:11px;line-height:1;letter-spacing:.08em;text-transform:uppercase}.header-address span+span:before{content:"";display:inline-block;width:20px;height:1px;margin-right:16px;vertical-align:middle;background:var(--line-strong)}.visit-status{justify-self:end;justify-content:flex-end}.status-dot{width:6px;height:6px;flex:none;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.apartment-mark{display:flex;align-items:baseline;gap:8px;color:var(--ink);text-decoration:none;pointer-events:auto}.mark-number{font-family:Georgia,Times New Roman,serif;font-size:25px;font-style:italic;line-height:1;letter-spacing:-.04em}.mark-label{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:9px;line-height:1;letter-spacing:.16em;text-transform:uppercase}.room-context{position:absolute;z-index:10;top:116px;left:28px;width:min(365px,calc(100vw - 56px));pointer-events:none}.eyebrow,.navigation-label,.object-eyebrow,.loading-kicker,.control-label,.message-meta{margin:0;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:10px;line-height:1.4;letter-spacing:.14em;text-transform:uppercase}.room-context h1{max-width:16ch;margin:9px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,3.2vw,48px);font-weight:400;font-style:italic;letter-spacing:-.035em;text-wrap:balance;text-shadow:0 2px 18px rgb(0 0 0 / 38%)}.room-description{max-width:43ch;margin:12px 0 0;color:var(--ink-muted);font-size:14px;line-height:1.55;text-wrap:pretty;text-shadow:0 1px 12px rgb(0 0 0 / 60%)}.room-navigation{position:absolute;z-index:12;top:315px;left:28px;width:146px}.navigation-label{margin-bottom:9px;color:var(--ink-faint)}.room-links{display:flex;flex-direction:column;min-width:0}.room-link{display:grid;grid-template-columns:27px minmax(0,1fr);align-items:center;width:100%;min-width:0;height:34px;padding:0;border:0;border-top:1px solid var(--line);color:var(--ink-muted);background:transparent;text-align:left;cursor:pointer}.room-link:last-child{border-bottom:1px solid var(--line)}.room-link:hover,.room-link[aria-current=location]{color:var(--ink)}.room-link[aria-current=location]{background:linear-gradient(90deg,var(--accent-soft),transparent 88%)}.room-number{color:var(--ink-faint);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:9px;font-variant-numeric:tabular-nums}.room-name{min-width:0;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.object-inspector{position:absolute;z-index:21;top:112px;right:28px;width:min(310px,calc(100vw - 56px));padding:18px;border:1px solid var(--line);border-radius:min(1vw,var(--radius-panel));color:var(--ink);background:var(--canvas);box-shadow:0 20px 55px #00000047;backdrop-filter:blur(18px) saturate(.8)}.object-guide{position:absolute;z-index:22;right:28px;bottom:90px;width:min(300px,calc(100vw - 56px));padding:16px;border:1px solid var(--line);border-radius:min(1vw,var(--radius-panel));background:var(--canvas);box-shadow:0 20px 55px #00000047;backdrop-filter:blur(18px) saturate(.8)}.object-guide-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.object-guide-heading h2{margin:5px 0 0;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:400;letter-spacing:-.02em}.object-guide-close{height:28px;padding:0 8px;border:1px solid var(--line);border-radius:999px;color:var(--ink-muted);background:transparent;font-size:11px;cursor:pointer}.object-guide-list{margin-top:13px;border-top:1px solid var(--line)}.object-guide-list button{display:flex;align-items:center;justify-content:space-between;width:100%;min-width:0;gap:12px;padding:10px 0;border:0;border-bottom:1px solid var(--line);color:var(--ink);background:transparent;font-size:13px;text-align:left;cursor:pointer}.object-guide-list button span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-guide-list button span:last-child{flex:none;color:var(--ink-faint);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:9px;letter-spacing:.06em;text-transform:uppercase}.object-guide-list button:hover{color:var(--accent)}.inspector-close{position:absolute;top:11px;right:11px;height:28px;padding:0 8px;border:1px solid var(--line);border-radius:999px;color:var(--ink-muted);background:transparent;font-size:11px;cursor:pointer}.object-eyebrow{max-width:22ch;padding-right:50px}.object-title{max-width:18ch;margin:10px 0 0;font-family:Georgia,Times New Roman,serif;font-size:27px;font-weight:400;letter-spacing:-.025em;text-wrap:balance}.object-description,.message-transcript p{margin:10px 0 0;color:var(--ink-muted);font-size:14px;line-height:1.55;text-wrap:pretty}.message-transcript{margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.message-transcript p{margin-top:7px;color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:16px;font-style:italic}.object-action{width:100%;height:36px;margin-top:16px;padding:0 12px;border:1px solid var(--accent);border-radius:999px;color:#211a12;background:var(--accent);font-size:13px;font-weight:600;cursor:pointer}.object-action:hover{filter:brightness(1.08)}.interaction-prompt{position:absolute;z-index:11;top:50%;left:50%;display:flex;align-items:center;gap:8px;min-width:0;padding:6px 10px 6px 6px;border:1px solid var(--line);border-radius:999px;color:var(--ink);background:#141615bf;box-shadow:0 12px 30px #0000003d;transform:translate(-50%,30px);backdrop-filter:blur(10px);pointer-events:none}.prompt-key{padding:3px 6px;border-radius:999px;color:#241b12;background:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.prompt-label{min-width:0;overflow:hidden;color:var(--ink-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.controls-dock{position:absolute;z-index:22;bottom:22px;left:50%;display:flex;align-items:center;max-width:calc(100vw - 44px);min-width:0;height:50px;padding:6px;border:1px solid var(--line);border-radius:999px;background:var(--canvas);box-shadow:0 18px 44px #0000004d;transform:translate(-50%);backdrop-filter:blur(20px) saturate(.85)}.control-group,.utility-controls{display:flex;align-items:center;min-width:0;gap:2px}.control-label{padding:0 7px;color:var(--ink-faint)}.control-group button,.utility-controls button{height:36px;padding:0 10px;border:0;border-radius:999px;color:var(--ink-muted);background:transparent;font-size:12px;white-space:nowrap;cursor:pointer}.control-group button:hover,.utility-controls button:hover,.control-group button[aria-pressed=true]{color:var(--ink);background:#f7f3e817}.control-group button[aria-pressed=true]{box-shadow:inset 0 0 0 1px var(--line)}.control-divider{width:1px;height:22px;flex:none;margin:0 4px;background:var(--line)}.walk-instructions{position:absolute;z-index:11;right:28px;bottom:90px;display:flex;flex-direction:column;align-items:flex-end;gap:4px;color:var(--ink-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:10px;line-height:1.4;letter-spacing:.04em;pointer-events:none}.walk-reticle{position:absolute;z-index:9;top:50%;left:50%;width:16px;height:16px;opacity:0;transform:translate(-50%,-50%);pointer-events:none}.walk-reticle span{position:absolute;top:50%;left:50%;width:11px;height:1px;background:#ffffffb3;transform:translate(-50%,-50%)}.walk-reticle span+span{transform:translate(-50%,-50%) rotate(90deg)}.app-shell[data-camera=walk] .walk-reticle{opacity:1}.toast{position:absolute;z-index:50;top:96px;left:50%;max-width:calc(100vw - 44px);padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--ink);background:#181b1ae0;box-shadow:0 12px 30px #0000003d;font-size:12px;transform:translate(-50%);backdrop-filter:blur(14px)}.loading-screen{position:absolute;z-index:100;inset:0;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 36%,rgb(74 89 88 / 74%),transparent 48%),#191c1b;opacity:1;transition:opacity .65s ease,visibility .65s ease}.loading-screen.is-complete{visibility:hidden;opacity:0}.loading-card{width:min(420px,100%);padding:30px;border:1px solid var(--line);border-radius:min(2vw,16px);background:#131615b8;box-shadow:0 24px 70px #00000059}.loading-kicker{color:var(--accent)}.loading-title{margin:10px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(40px,8vw,62px);font-style:italic;line-height:1;letter-spacing:-.05em}.loading-copy{max-width:37ch;margin:16px 0 0;color:var(--ink-muted);font-size:14px;line-height:1.55;text-wrap:pretty}.loading-progress{width:100%;height:2px;margin-top:30px;overflow:hidden;background:var(--line)}.loading-progress span{display:block;width:0;height:100%;background:var(--accent);transition:width .15s ease}.loading-meta{display:flex;justify-content:space-between;gap:16px;margin-top:9px;color:var(--ink-faint);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:10px;font-variant-numeric:tabular-nums;line-height:1.4;letter-spacing:.06em;text-transform:uppercase}.help-dialog{width:min(720px,calc(100vw - 32px));max-height:min(82svh,700px);padding:0;overflow:auto;border:1px solid var(--line-strong);border-radius:min(2vw,16px);color:var(--ink);background:#202321;box-shadow:0 28px 80px #0000007f}.help-dialog::backdrop{background:#080a09b8;backdrop-filter:blur(5px)}.help-dialog form{padding:26px}.dialog-heading{display:grid;grid-template-columns:1fr auto;align-items:start;gap:12px}.dialog-heading .eyebrow{grid-column:1}.dialog-heading h2{grid-column:1;max-width:19ch;margin:6px 0 0;font-family:Georgia,Times New Roman,serif;font-size:34px;font-weight:400;letter-spacing:-.03em;text-wrap:balance}.dialog-heading button{grid-column:2;grid-row:1 / 3;height:32px;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--ink-muted);background:transparent;font-size:12px;cursor:pointer}.help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:26px;border-top:1px solid var(--line)}.help-grid section{min-width:0;padding:18px 18px 18px 0;border-bottom:1px solid var(--line)}.help-grid section:nth-child(2n){padding-right:0;padding-left:18px;border-left:1px solid var(--line)}.help-grid h3{margin:0;font-size:14px;font-weight:600}.help-grid p,.provenance-note{margin:7px 0 0;color:var(--ink-muted);font-size:14px;line-height:1.55;text-wrap:pretty}.provenance-note{max-width:67ch;margin-top:18px;color:var(--ink-faint)}.render-fallback{position:absolute;inset:0;display:grid;align-content:center;max-width:620px;margin:auto;padding:32px;text-align:center}.render-fallback h1{margin:10px 0;font-family:Georgia,Times New Roman,serif;font-size:44px;font-weight:400}.render-fallback p{margin:6px auto;color:var(--ink-muted);font-size:16px;line-height:1.6}.app-shell[data-mood=evening] .scene-vignette{background:linear-gradient(180deg,rgb(9 11 14 / 52%) 0%,transparent 24%),radial-gradient(circle at center,transparent 38%,rgb(8 10 13 / 60%) 110%)}@media(max-width:820px){.site-header{height:66px;padding:0 16px}.header-address{visibility:hidden}.room-context{top:86px;left:16px;width:calc(100vw - 32px)}.room-context h1{margin-top:5px;font-size:32px}.room-description{display:none}.room-navigation{top:auto;bottom:72px;left:0;width:100%;padding:0 10px}.navigation-label{display:none}.room-links{flex-direction:row;width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:999px;background:var(--canvas);box-shadow:0 12px 35px #00000042;scrollbar-width:none;backdrop-filter:blur(18px)}.room-links::-webkit-scrollbar{display:none}.room-link{display:flex;justify-content:center;width:20%;min-width:0;height:42px;flex:0 0 20%;padding:0 5px;border:0;border-right:1px solid var(--line)}.room-link:last-child{border:0}.room-link[aria-current=location]{background:#f7f3e817}.room-number{display:none}.room-name{font-size:12px}.controls-dock{bottom:10px;width:calc(100vw - 20px);max-width:none;height:52px;justify-content:flex-start;overflow-x:auto;gap:5px;transform:translate(-50%);scrollbar-width:none}.controls-dock::-webkit-scrollbar{display:none}.control-label,.control-divider{display:none}.control-group button,.utility-controls button{height:40px;padding:0 2px;font-size:10px}.object-inspector{top:auto;right:10px;bottom:126px;width:calc(100vw - 20px);padding:16px;border-radius:min(3vw,var(--radius-panel))}.object-guide{right:10px;bottom:126px;width:calc(100vw - 20px);border-radius:min(3vw,var(--radius-panel))}.object-guide-list button{min-height:44px;font-size:15px}.object-title{font-size:25px}.object-description{font-size:16px;line-height:1.5}.object-action{height:44px;font-size:15px}.interaction-prompt{top:auto;bottom:132px;max-width:calc(100vw - 32px);transform:translate(-50%)}.walk-instructions{right:16px;bottom:134px;align-items:flex-end;font-size:11px}.walk-instructions span+span{display:none}.toast{top:76px;font-size:14px}}@media(max-width:560px){.header-address{display:none}.site-header{grid-template-columns:auto 1fr}.apartment-mark{grid-column:1}.visit-status{grid-column:2}.loading-card{padding:24px}.loading-copy{font-size:16px}.help-dialog form{padding:20px}.dialog-heading h2{font-size:29px}.help-grid{grid-template-columns:1fr}.help-grid section,.help-grid section:nth-child(2n){padding:16px 0;border-right:0;border-left:0}.help-grid p,.provenance-note{font-size:16px}}@media(max-width:360px){.control-group button,.utility-controls button{padding:0;font-size:9px}.controls-dock{gap:2px}.room-name{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
