
:root{color-scheme:dark;font-family:Arial,Helvetica,sans-serif;color:#f4f0ff;background:#070914}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:1px solid #ffffff30;background:#10132385;cursor:pointer;border-radius:3px;padding:12px 17px;backdrop-filter:blur(15px)}button:hover{border-color:#c99aff;background:#9d68d833}button:focus-visible{outline:2px solid #d1a3ff;outline-offset:4px}button:disabled{opacity:.5;cursor:wait}#game{position:fixed;inset:0;width:100%;height:100%;outline:0;touch-action:none}.shade{position:fixed;inset:0;pointer-events:none;background:linear-gradient(#06091440,transparent 22%,transparent 70%,#060914a0)}header{position:fixed;top:34px;left:40px;right:40px;display:flex;justify-content:space-between;align-items:center;z-index:4;pointer-events:none}.brand{color:white;text-decoration:none;font-size:23px;font-weight:800;letter-spacing:5px;pointer-events:auto}.brand span{font-weight:300;color:#c8a9ed}.brand small{display:block;font-size:8px;letter-spacing:3px;margin-top:10px;color:#a7a2b9}.topright{display:flex;align-items:center;gap:24px}.live{font-size:10px;letter-spacing:2px;color:#d5b78f}.topright button{pointer-events:auto}#hud{position:fixed;inset:0;pointer-events:none}#hud button{pointer-events:auto}.location{position:absolute;left:40px;bottom:104px}.location>span{font-size:9px;letter-spacing:3px;color:#cfadf4}.location h2{font-weight:400;font-size:26px;letter-spacing:1px;margin:10px 0}.location p{font-size:10px;color:#aca9bd;letter-spacing:2px}.bottom{position:absolute;left:40px;bottom:28px;right:40px;display:flex;justify-content:space-between;align-items:center}.bottom>span{font-size:10px;letter-spacing:2px}.bottom i{color:#9c98af;font-style:normal;letter-spacing:0}.bottom button{font-size:11px}.map{position:absolute;right:40px;bottom:100px;width:150px;padding:12px;background:#090e1d60;border:1px solid #ffffff15}.map svg{width:100%;fill:none;stroke:#c7a5eb70;stroke-width:1}.map text{fill:#a9a0bd;stroke:none;font-size:8px}.map circle{fill:#e0bcff;stroke:#fff;stroke-width:1}.map span{display:block;text-align:center;font-size:7px;letter-spacing:3px;color:#a9a0bd}#crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#ffffff70;font-size:18px;font-weight:200}#interact{position:absolute;left:50%;top:60%;transform:translateX(-50%);font-size:12px;background:#0d101cbb;max-width:80%}.overlay{position:fixed;inset:0;background:linear-gradient(90deg,#050811ec 0%,#080913b5 45%,#08091320 100%);display:flex;align-items:center;padding:110px 8%;z-index:3}.intro{max-width:620px}.eyebrow{color:#c1a0df;font-size:10px;letter-spacing:4px;margin:0 0 28px}h1{font-size:clamp(42px,5.5vw,82px);font-weight:400;line-height:1.07;letter-spacing:-3px;margin:0 0 28px}h1 em{font-style:normal;color:#c7a3ed}.description{font-size:14px;line-height:1.9;color:#bab7c9;margin:0 0 35px}.primary{background:#c5a0e9;color:#171020;border:0;padding:18px 36px;font-weight:600;font-size:13px;letter-spacing:.5px;min-width:230px}.primary:hover{background:#dec1fa}.instructions{display:flex;gap:28px;margin-top:30px}.instructions span{font-size:9px;color:#9290a6;line-height:2}.instructions b{display:block;color:#d9d3e3;font-weight:400;font-size:11px}.edition{margin-left:auto;text-align:center;font-size:110px;font-weight:200;color:#e0c1ff70;line-height:.9}.edition span{display:block;letter-spacing:12px;font-size:13px;margin:20px 0}.edition small{font-size:8px;letter-spacing:3px;color:#b7a2c8}.touchhelp{display:none;font-size:11px;color:#bbb;line-height:1.7}#error{color:#e4baa9;font-size:12px;max-width:400px}dialog{width:min(1100px,94vw);max-height:94dvh;padding:16px;background:#090c17;border:1px solid #b385d24a}dialog::backdrop{background:#030510e8}dialog img{width:100%;max-height:68dvh;object-fit:contain;display:block}.dialogbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:10px;letter-spacing:2px}nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}nav button{font-size:11px}nav button.active{background:#9670b7}#touch{display:none;position:fixed;inset:0;pointer-events:none}#stick{position:absolute;bottom:95px;left:30px;width:115px;height:115px;border-radius:50%;border:1px solid #ffffff35;background:#ffffff08;pointer-events:auto;touch-action:none}#knob{position:absolute;width:45px;height:45px;left:34px;top:34px;border-radius:50%;background:#b790d966;border:1px solid #d9bcff88}.lookhint{position:absolute;right:35px;bottom:150px;color:#ffffff60;font-size:9px;letter-spacing:2px}#toast{position:fixed;left:50%;bottom:85px;transform:translateX(-50%);padding:12px 20px;background:#111426e8;font-size:12px;border:1px solid #b78fd440;opacity:0;transition:opacity .3s;pointer-events:none}.playing #menu{display:none}.paused #hud .location,.paused .map,.paused .bottom,.paused #crosshair{visibility:hidden}@media(pointer:coarse){.playing #touch{display:block}.instructions,.bottom>span{display:none}.touchhelp{display:block}}@media(max-width:650px){header{left:20px;right:20px;top:22px}.brand{font-size:17px;letter-spacing:3px}.brand small{font-size:6px}.live{display:none}.overlay{padding:110px 25px 45px}h1{font-size:46px;letter-spacing:-2px}.description{font-size:12px}.edition{display:none}.eyebrow{font-size:8px;letter-spacing:2px}.location{left:20px;bottom:235px}.location h2{font-size:21px}.map{right:20px;bottom:235px;width:110px}.bottom{left:20px;right:20px;bottom:22px;justify-content:flex-end}#interact{top:57%;white-space:normal}.intro{max-width:100%}}@media(max-height:580px){.overlay{padding-top:80px;padding-bottom:20px}h1{font-size:38px;margin-bottom:14px}.description{margin-bottom:15px}.instructions{margin-top:12px}.eyebrow{margin-bottom:14px}.edition{font-size:70px}}
#conversation{position:fixed;inset:auto 24px 30px;margin:0 auto;width:min(660px,calc(100vw - 36px));max-height:85dvh;padding:25px 28px 18px;background:linear-gradient(120deg,#101221f5,#1b1427f5);border:1px solid #bf92e655;border-top:2px solid #d4a6ff;box-shadow:0 18px 90px #0009;backdrop-filter:blur(22px);border-radius:8px}#conversation::backdrop{background:#04061140}.conversation-heading{display:flex;align-items:center;gap:15px}.conversation-heading h2{margin:5px 0 0;font-weight:400;font-size:25px}.conversation-kicker{font-size:8px;letter-spacing:2px;color:#c8a2e5}.conversation-heading button{margin-left:auto;padding:8px 12px}.companion-portrait{height:64px;width:56px;overflow:hidden;border-radius:4px;background:radial-gradient(#8a599477,#2b203c);flex-shrink:0}#conversation .companion-portrait img{width:150px;max-width:none;height:auto;max-height:none;margin-left:-47px;margin-top:-7px}#dialogue-text{font-size:15px;line-height:1.8;color:#e0dce8;margin:20px 0 22px;min-height:54px}#dialogue-choices{display:grid;gap:8px}#dialogue-choices button{text-align:left;padding:13px 15px;font-size:13px;line-height:1.5;background:#ffffff04;border-color:#ffffff19;display:flex;align-items:center;gap:14px}#dialogue-choices button:hover,#dialogue-choices button:focus-visible{background:#bb81eb1c;border-color:#cda4ed}#dialogue-choices button span{font-size:9px;color:#bc8fdf;letter-spacing:1px}.conversation-help{font-size:9px;letter-spacing:.5px;color:#8c829d;margin:17px 0 0}.talking #crosshair,.talking #interact,.talking #touch,.talking .bottom,.talking .location{display:none!important}.map .npc-map{fill:#e492c9;stroke:#f0c7e2}@media(max-width:650px){#conversation{bottom:14px;padding:18px;max-height:88dvh}.conversation-heading h2{font-size:22px}#dialogue-text{font-size:13px;line-height:1.65;margin:15px 0}#dialogue-choices button{font-size:12px;padding:11px}.conversation-help{font-size:8px}.companion-portrait{height:50px;width:46px}#conversation .companion-portrait img{margin-left:-52px}}
.companion-portrait{display:grid;place-items:center;font-size:26px;font-weight:300;color:#dfbce8;border:1px solid #ba83cf38}
.audio-controls{display:flex;align-items:center;gap:10px;pointer-events:auto}#music{white-space:nowrap;font-size:12px;padding:11px 13px}#music[aria-pressed="false"]{color:#8e889a}#music[aria-pressed="false"] span{text-decoration:line-through}#music-volume{width:64px;accent-color:#c7a3ed;cursor:pointer}@media(max-width:650px){.topright{gap:8px}.audio-controls{gap:5px}#music span{display:none}#music{padding:10px}#music-volume{width:48px}}

.map{width:190px}@media(max-width:650px){.map{width:140px}}

#lift-transit{position:fixed;inset:0;z-index:100;background:radial-gradient(ellipse at center,#20182e,#060a12 75%);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:25px;color:#ddc4f2}#lift-transit[hidden]{display:none}#lift-transit span{font-size:10px;letter-spacing:4px}#lift-transit strong{font-weight:400;font-size:clamp(20px,4vw,34px)}#lift-transit i{width:100px;height:2px;background:#cca5ea;box-shadow:0 0 20px #b876ff}.in-lift header,.in-lift #hud,.in-lift #touch{visibility:hidden}.on-roof .map{display:none}

#dialogue-skip{font-size:11px;color:#d2b0eb;padding:8px 12px;margin:-6px 0 14px;background:#b481db12;border-color:#b481db40;border-radius:5px}#dialogue-skip span{margin-left:16px;opacity:.7}#dialogue-skip[hidden]{display:none}#dialogue-text[aria-busy="true"]::after{content:"▏";color:#d6b3f0;margin-left:2px}#dialogue-choices button:disabled{opacity:.38;cursor:default;pointer-events:none}

#home-controls{width:min(430px,calc(100vw - 30px));padding:26px;border-radius:14px;background:linear-gradient(135deg,#1d172c,#0b101c);border-color:#ad83cc55}#home-controls::backdrop{background:#05081588;backdrop-filter:blur(6px)}.home-heading{display:flex;justify-content:space-between;align-items:center}.home-heading span{font-size:9px;letter-spacing:3px;color:#c3a4d9}.home-heading h2{font-size:27px;font-weight:400;margin:10px 0 23px}.home-heading button{padding:6px 12px;font-size:22px}.home-range{display:block;font-size:13px;margin:8px 0 20px}.home-range output{float:right;color:#c8a5e8}.home-range input{display:block;width:100%;margin-top:15px;accent-color:#c9a6e8}.home-option{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-top:1px solid #ffffff13;font-size:13px}.home-option input{width:18px;height:18px;accent-color:#c9a6e8}.home-music{display:block;margin-top:16px;font-size:13px}.home-music select{display:block;width:100%;padding:12px;margin-top:9px;border:1px solid #ad83cc55;border-radius:6px;color:#e9d9f3;background:#111522;font:inherit}#voice-note{font-size:10px;color:#9e92ad;line-height:1.7;margin-bottom:0}.home-panel #hud,.home-panel #touch,.home-panel header{visibility:hidden}.paused #home-button{display:none}#home-button{font-size:12px;padding:11px 13px}@media(max-width:650px){#home-button{font-size:11px;padding:10px}.playing #music-volume{display:none}}

#game.interactive{cursor:pointer}#crosshair.active{color:#e4bcff;text-shadow:0 0 9px #bb71ff;transform:translate(-50%,-50%) scale(1.3)}#crosshair.free-cursor{visibility:hidden}

.server-notice{padding:10px 15px;border:1px solid #bd91dc44;border-radius:8px;color:#e5d4f1;background:#21172e;font-size:12px;max-width:600px;margin:12px auto}

#floor54-map{display:none}.on-floor54 .map{display:none}.on-floor54 #floor54-map{display:block}.home-option[hidden]{display:none}.floor-shortcuts{flex-wrap:wrap}

.floor-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:520px){.floor-shortcuts{grid-template-columns:1fr 1fr}.floor-shortcuts [data-floor="roof"]{grid-column:1/-1}}

#spa100-map{display:none}.on-spa100 .map{display:none}.on-spa100 #spa100-map{display:block}.floor-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.floor-shortcuts [data-floor="roof"]{grid-column:auto}

#ground-lobby-map{display:none}.on-ground-lobby .map{display:none}.on-ground-lobby #ground-lobby-map{display:block}

.movement-buttons{position:absolute;right:25px;bottom:90px;display:grid;gap:12px;pointer-events:auto}.movement-buttons button{min-height:46px;min-width:112px;touch-action:none;background:#161327d9;font-size:12px}.movement-buttons button[aria-pressed=true]{background:#79528c;border-color:#e9c5ff}.lookhint{bottom:235px}.welcome-controls{flex-wrap:wrap}

#sky-floor-map{display:none}.on-sky-floor .map{display:none}.on-sky-floor #sky-floor-map{display:block}
#prism-map{display:none}.on-neighbor-tower #ground-lobby-map{display:none}.on-neighbor-tower #prism-map{display:block}
#business-map{display:none}.on-business-center #ground-lobby-map{display:none}.on-business-center #business-map{display:block}
