:root{color-scheme:dark;--ink:#f5f0e6;--muted:#c9c7bf;--glass:rgba(17,27,24,.78);--line:rgba(255,255,255,.16);--gold:#d6b171;--green:#17241f}
*{box-sizing:border-box}html,body,#experience{width:100%;height:100%;margin:0;overflow:hidden;background:#0b1210;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink)}
button{font:inherit;color:inherit}#view{display:block;width:100%;height:100%;touch-action:none;outline:0}
.hidden{display:none!important}.loading{position:fixed;inset:0;z-index:30;display:grid;place-content:center;text-align:center;background:radial-gradient(circle at 50% 42%,#294238,#111b17 48%,#080d0b);transition:opacity .5s}.loading h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(2.8rem,7vw,5.5rem);letter-spacing:-.04em;margin:.55rem 0 .3rem}.loading p{color:var(--muted);margin:.1rem 0 1.4rem}.mark{margin:auto;width:58px;height:58px;border:1px solid rgba(214,177,113,.5);display:grid;place-items:center;transform:rotate(45deg);position:relative}.mark span{font:700 27px Georgia,serif;color:var(--gold);transform:rotate(-45deg)}.mark i{position:absolute;inset:6px;border:1px solid rgba(255,255,255,.14)}.track{height:2px;width:min(62vw,320px);margin:auto;background:rgba(255,255,255,.12);overflow:hidden}.track b{display:block;height:100%;width:4%;background:var(--gold);transition:width .25s}
.welcome{position:fixed;z-index:20;left:clamp(18px,5vw,72px);bottom:clamp(22px,8vh,90px);width:min(560px,calc(100vw - 36px));padding:28px 30px;background:linear-gradient(145deg,rgba(18,29,25,.94),rgba(13,20,18,.82));border:1px solid var(--line);border-radius:4px;box-shadow:0 28px 80px rgba(0,0,0,.42);backdrop-filter:blur(18px)}.eyebrow{font-size:.69rem;letter-spacing:.2em;color:var(--gold);font-weight:700}.welcome h1{font:500 clamp(2.4rem,7vw,5.2rem)/.92 Georgia,serif;margin:.35rem 0 1rem}.welcome p{max-width:45ch;color:#e2e0d9;line-height:1.55}.primary{border:0;background:var(--gold);color:#132019;font-weight:750;padding:13px 22px;border-radius:2px;cursor:pointer;margin:7px 0 17px}.primary:hover{filter:brightness(1.08)}.quick{display:flex;flex-wrap:wrap;gap:8px 16px;color:#e9e6df;font-size:.77rem}.quick span{display:flex;align-items:center;gap:7px}.welcome small{display:block;color:#9fa6a1;margin-top:15px;line-height:1.4}kbd{font:700 .68rem ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.03em;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.17);border-bottom-color:rgba(255,255,255,.3);border-radius:4px;padding:3px 6px;color:white}
.topbar{position:fixed;z-index:12;top:max(14px,env(safe-area-inset-top));left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.brand{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(14px)}.brand b{font-family:Georgia,serif;font-size:1.08rem}.brand span{padding-left:10px;border-left:1px solid var(--line);color:var(--gold);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.topbar nav{display:flex;gap:7px;pointer-events:auto}.topbar button{cursor:pointer;border:1px solid var(--line);background:var(--glass);padding:9px 11px;backdrop-filter:blur(14px)}.topbar button:hover{border-color:rgba(214,177,113,.65)}.topbar button span{font-size:.73rem;margin-left:5px}
.crosshair{position:fixed;z-index:9;left:50%;top:50%;width:16px;height:16px;transform:translate(-50%,-50%);pointer-events:none}.crosshair:before,.crosshair:after{content:"";position:absolute;background:rgba(255,255,255,.86)}.crosshair:before{left:7px;top:1px;width:1px;height:14px}.crosshair:after{top:7px;left:1px;height:1px;width:14px}.crosshair i{display:block;width:5px;height:5px;border:1px solid var(--gold);position:absolute;left:5px;top:5px;border-radius:50%}.hint,.toast{position:fixed;z-index:15;left:50%;transform:translateX(-50%);background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(14px);padding:9px 13px;font-size:.78rem}.hint{bottom:13vh}.toast{top:76px;color:var(--gold)}
.panel{position:fixed;z-index:25;right:18px;top:72px;width:min(390px,calc(100vw - 36px));padding:25px;background:rgba(14,23,20,.96);border:1px solid var(--line);box-shadow:0 22px 70px rgba(0,0,0,.42);backdrop-filter:blur(18px)}.panel h2{font:500 1.8rem Georgia,serif;margin:.35rem 0 1rem}.panel p{font-size:.76rem;color:#aeb5b0;line-height:1.5;margin:17px 0 0}.close{position:absolute;right:10px;top:8px;border:0;background:none;font-size:1.6rem;cursor:pointer;color:#bbb}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.control-grid span{padding:10px;background:rgba(255,255,255,.045);display:flex;align-items:center;gap:9px}.control-grid small{color:#d4d4cf}
.touch{position:fixed;z-index:14;inset:0;pointer-events:none}.joystick{position:absolute;left:25px;bottom:max(28px,env(safe-area-inset-bottom));width:112px;height:112px;border:1px solid rgba(255,255,255,.25);background:rgba(10,18,15,.34);border-radius:50%;pointer-events:auto;touch-action:none}.joystick i{position:absolute;left:34px;top:34px;width:44px;height:44px;border-radius:50%;background:rgba(214,177,113,.78);box-shadow:0 4px 18px rgba(0,0,0,.3)}.touch button{position:absolute;right:24px;width:64px;height:64px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(17,27,24,.7);font-weight:750;font-size:.68rem;pointer-events:auto}.touch #touch-door{bottom:max(30px,env(safe-area-inset-bottom))}.touch #touch-mode{bottom:max(107px,calc(env(safe-area-inset-bottom) + 77px));width:49px;height:49px;right:32px;color:var(--gold)}
#VRButton{right:18px!important;left:auto!important;bottom:18px!important;width:auto!important;border:1px solid rgba(255,255,255,.25)!important;background:rgba(17,27,24,.82)!important;opacity:1!important;border-radius:2px!important;font:700 11px system-ui!important;letter-spacing:.08em!important;padding:9px 13px!important}
@media(max-width:680px){.welcome{padding:24px 22px;bottom:20px}.quick{display:grid;grid-template-columns:1fr 1fr}.topbar{left:10px;right:10px}.topbar button span{display:none}.brand span{display:none}.panel{right:10px;top:64px}.crosshair{display:none!important}#VRButton{bottom:102px!important}.welcome h1{font-size:3.25rem}}
@media(hover:none),(pointer:coarse){.touch.active{display:block!important}}
