/* One game world, with in-game overlays rather than website navigation. */
.lobby-view-toggle{display:none;position:absolute;right:18px;top:82px;align-items:center;gap:7px;min-height:38px;padding:7px 12px;border:1px solid #97b59b77;border-radius:8px;background:#193a3deb;color:#d9ecc2;z-index:4;font-size:11px!important}.lobby-view-toggle[aria-pressed=true]{background:#cce4aa;color:#254635}.lobby-view-toggle>span:first-child{font-size:18px}
.fallback-group-signs{position:absolute;top:27%;left:4%;right:4%;display:flex;justify-content:space-around;color:#e2edb5;font-size:clamp(12px,2.5vw,30px);font-weight:700;pointer-events:none}
@media(max-aspect-ratio:.95){.lobby-view-toggle{display:flex}}
@media(max-width:600px){.fallback-room.is-overview .fallback-station{display:block;width:13%;left:var(--left);bottom:36%;height:26%}.fallback-room.is-overview .fallback-station strong{font-size:7px;padding:4px}.fallback-group-signs{display:none}#lobby[data-overview=true] .fallback-group-signs{display:flex;top:34%}}
.play-mode{color-scheme:dark;background:#07191f;--green:#c4e8ba;--ink:#e9f3df;--muted:#94b2ab;--line:#476b65}
.play-mode body.play-app{margin:0;overflow:hidden;background:#07191f;color:#e9f3df;font:14px/1.5 Arial,'Microsoft YaHei',sans-serif;min-width:300px}
.play-app *{box-sizing:border-box}.play-app button,.play-app select{font:inherit}.play-app button{cursor:pointer}.play-app a{color:inherit}.play-app [hidden]{display:none!important}.play-app :focus-visible{outline:2px solid #dcf3ab;outline-offset:4px}.play-app button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#universe,#lobby,#minigame{position:fixed;inset:0;overflow:hidden}#lobby{background:radial-gradient(ellipse at 40% 28%,#28525c,#0c252e 55%,#06151b)}
#lobbyRoom{position:absolute;inset:0}#lobbyCanvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.room-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#03131670,transparent 25%,transparent 60%,#05171dde),radial-gradient(ellipse at center,transparent 40%,#06171b77)}
.lobby-hud{position:absolute;top:max(22px,env(safe-area-inset-top));left:26px;right:26px;display:flex;align-items:center;justify-content:space-between;gap:15px;pointer-events:none}.lobby-hud button{pointer-events:auto}
.pilot-chip{border:1px solid #819b7955;border-bottom:2px solid #546e58;background:linear-gradient(120deg,#1d3b3beb,#102b32e8);border-radius:12px 28px 28px 12px;display:flex;align-items:center;gap:12px;min-width:170px;padding:7px 18px 7px 8px;color:#e3efcf;text-align:left;box-shadow:0 6px 22px #001a1d55,inset 0 1px #bce5c022}
.pilot-chip small{display:block;font:9px 'Courier New',monospace;color:#8aa59a;letter-spacing:2px}.pilot-chip strong{display:block;font-size:14px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}.pilot-face{display:block;width:43px;height:43px;background:#183f3b;border:1px solid #91bb8b88;border-radius:10px;position:relative;overflow:hidden}.pilot-face:before{content:'';position:absolute;width:28px;height:25px;border-radius:42% 42% 50% 50%;background:#bed897;top:8px;left:7px;transform:rotate(-9deg);box-shadow:0 23px 0 5px #b29c74}.pilot-face:after{content:'';position:absolute;width:6px;height:10px;background:#183b30;border-radius:50%;left:12px;top:15px;transform:rotate(-20deg);box-shadow:12px 2px 0 #183b30}
.orbit-title{text-align:center;position:absolute;left:50%;transform:translateX(-50%);color:#d3e8d0;text-shadow:0 3px 10px #082724}.orbit-title strong{font:900 16px Arial;letter-spacing:2px}.orbit-title span{display:block;font:9px monospace;letter-spacing:4px;color:#8ea99e;margin-top:5px}.hud-tools{display:flex;gap:10px}.hud-icon,.wallet-chip,.hud-button{color:#d7eaca;border:1px solid #799a7f66;background:linear-gradient(#294842e8,#142f32ec);box-shadow:inset 0 1px #aec6ad22,0 4px 12px #00141b55;min-width:44px;min-height:44px;border-radius:10px;padding:9px 13px}.hud-icon{font-size:21px!important}.wallet-chip{display:flex;align-items:center;gap:10px;min-width:87px}.wallet-chip>span{color:#e4cb8f;font-size:25px;line-height:1}.wallet-chip strong{font:700 17px monospace}
.room-caption{position:absolute;left:30px;top:114px;display:flex;align-items:center;gap:8px;pointer-events:none;color:#adccc0;font:10px 'Courier New',monospace;letter-spacing:2px}.room-caption small{color:#77978f;letter-spacing:1px;margin-left:10px;font-size:8px}.online-light{width:5px;height:5px;border-radius:50%;background:#c9e7aa;box-shadow:0 0 12px #b1e8a9}
.station-selector{position:absolute;bottom:33px;left:50%;transform:translateX(-50%);width:min(620px,calc(100% - 310px));z-index:3}.selection-readout{display:flex;align-items:center;gap:10px;font:10px monospace;letter-spacing:2px;margin:0 18px 12px;color:#adc5b2}.selection-line{width:24px;height:1px;background:#b7d797}.selection-readout>span:last-child{margin-left:auto;letter-spacing:0}
.station-console{position:relative;display:flex;align-items:center;gap:8px;padding:14px 14px 14px 8px;background:linear-gradient(130deg,#24413eee,#122b32f2);border:1px solid #879d7e80;box-shadow:0 12px 50px #0008,inset 0 1px #c6d5a02b;border-radius:18px 5px 18px 5px}.station-console:before,.station-console:after{content:'';position:absolute;top:8px;width:3px;height:3px;border-radius:50%;background:#8fa79d}.station-console:before{left:9px}.station-console:after{right:9px}.station-copy{flex:1;min-width:0;padding:3px 8px}.station-copy h1{font-size:21px;line-height:1.15;margin:0 0 5px;letter-spacing:-.3px;color:#e6efd4}.station-copy p{font-size:10px;letter-spacing:.5px;color:#a1b6ab;margin:0 0 6px}.station-copy>span{font-size:11px;color:#c5d29e}.station-step{border:0;background:none;color:#a6c4b6;font-size:32px!important;min-height:44px;min-width:32px;padding:0}.station-step:hover{color:#f2f5d8}.enter-game{flex-shrink:0;display:flex;justify-content:center;align-items:center;gap:20px;min-height:58px;padding:12px 23px;border:1px solid #dcebaf;background:linear-gradient(#d0e8ac,#9ebd86);color:#203829;border-radius:11px 3px 11px 3px;box-shadow:inset 0 1px #f9ffce,0 4px 0 #425c44;font-weight:700!important}.enter-game:hover{filter:brightness(1.1)}.enter-game b{font-size:24px;font-weight:400}.enter-game:disabled{opacity:.6;cursor:wait}.selection-help{text-align:center;margin:13px 0 0;font-size:10px;color:#8ba69c}
.locker-button{position:absolute;bottom:47px;right:30px;border:0;background:none;color:#b1c8b6;display:grid;justify-items:center;gap:5px;z-index:3}.locker-icon{display:grid;place-items:center;width:54px;height:54px;font-size:31px;border:1px solid #7c9f7c88;border-radius:16px 4px;background:linear-gradient(#284940dd,#143137dd);box-shadow:inset 0 1px #b9d49c22,0 5px 16px #0004}.locker-button>span:nth-child(2){font-size:12px}.locker-button small{font:8px monospace;letter-spacing:3px;color:#759589}.local-badge{position:absolute;bottom:27px;left:30px;color:#75998a;font-size:10px;letter-spacing:.5px}
.game-hud{position:absolute;top:0;left:0;right:0;z-index:20;height:64px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));background:linear-gradient(#0c2329,#0c2028f5);border-bottom:1px solid #68866b55}.hud-button{display:flex;align-items:center;gap:10px;font-size:12px!important}.hud-button>span:first-child{font-size:26px;line-height:1}.game-hud-title{text-align:center;min-width:0}.game-hud-title h1{font-size:14px;margin:0;color:#cfe3bd}.game-hud-title>span{font-size:10px;color:#8ea996}.game-hud-actions{display:flex;gap:7px}#gameHost{position:absolute;top:64px;left:0;right:0;bottom:0;overflow:auto;background:#071218;isolation:isolate}
#gameHost .game-view{min-height:100%;min-width:0;width:100%;margin:0;position:relative;overflow:clip}#gameHost .experience{margin:0;padding:0;width:100%;max-width:none;border:0;border-radius:0;box-shadow:none;background:none;overflow:visible}#gameHost .game-view main{margin:0;padding:0;max-width:none;width:100%}#gameHost :is(.bud-layout,.tower-layout,.ufo-layout,.matter-layout,.signal-layout){display:block;margin:0;padding:0;max-width:none}#gameHost :is(.bud-title,.tower-heading,.flight-heading,.matter-heading,.game-heading){display:none}#gameHost :is(.bud-game,.tower-game,.flight-panel){margin:0;border:0;box-shadow:none;max-width:none;width:100%;border-radius:0}
#gameHost .bud-stage,#gameHost .bud-in-session .bud-stage{height:calc(100dvh - 118px)!important;min-height:300px!important;width:100%!important;max-width:none!important;aspect-ratio:auto;margin:0;border:0;border-radius:0;background-color:#ece9cd}#gameHost #budCanvas{width:auto;max-width:100%;height:100%;display:block;margin:auto;object-fit:contain}#gameHost .bud-game-toolbar{position:absolute;top:12px;right:16px;z-index:15;border:0;padding:0;background:none}#gameHost .bud-game-toolbar>span,#gameHost .bud-session-top{display:none!important}#gameHost :is(.bud-controls,.bud-bottom-bar){max-width:600px;margin-left:auto;margin-right:auto}
#gameHost .tower-stage{height:calc(100dvh - 128px);min-height:430px;aspect-ratio:auto;border-radius:0}#gameHost .tower-toolbar{z-index:10}#gameHost .flight-stage{height:calc(100dvh - 130px);max-height:none;aspect-ratio:auto;border-radius:0}#gameHost #ufoCanvas{width:100%;height:100%;object-fit:contain}#gameHost .game-details{display:none;margin:0!important;padding:24px;max-width:none;border-top:1px solid #37563f}#gameHost .game-details.details-open{display:block}
#gameHost .matter-main{padding:0!important}#gameHost .matter-game{padding:10px 0 25px;max-width:760px;margin:auto}#gameHost .capsule-page .scene{width:100%;max-width:670px;margin:auto;max-height:65dvh}#gameHost .capsule-page .console{max-width:500px;margin:0 auto;width:85%}#gameHost .reward-result{position:relative;z-index:12;background:#14271b;border-radius:12px;padding:18px;margin:12px auto;max-width:500px}#gameHost .chamber{height:calc(100dvh - 100px);min-height:620px;border:0;border-radius:0}#gameHost .transmission-game{padding:18px 28px;max-width:1300px;margin:auto}#gameHost .transmission-game .play-layout{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr)}.game-load-error{padding:80px 24px;text-align:center}
.play-dialog{width:min(870px,calc(100% - 32px));max-height:86dvh;overflow:auto;color:#dfebd7;background:linear-gradient(135deg,#23413f,#102c33);border:1px solid #99b087;border-radius:22px 5px 22px 5px;padding:0;font:14px/1.6 Arial,'Microsoft YaHei',sans-serif;box-shadow:0 25px 120px #000a,inset 0 0 0 5px #54796022}.play-dialog::backdrop{background:#03131bc9;backdrop-filter:blur(9px)}.play-dialog>header{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid #7c9d7444;position:sticky;top:0;background:#1b363b;z-index:1}.play-dialog>header h2{font-size:18px;margin:0;letter-spacing:.5px}.play-dialog button,.game-load-error button{min-height:44px;border:1px solid #779f7b66;background:#25443f;color:#e0eecb;border-radius:9px 3px;padding:9px 16px;font:inherit}.play-dialog>header button{font-size:24px;padding:0 12px}.play-dialog-body{padding:24px}.play-dialog a{color:#c6e0a7}.play-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.play-page-heading h1{font-size:24px}.play-eyebrow,.play-record-game{font:10px monospace;color:#a3bfa5}.play-muted{color:#9bae9d;font-size:12px}.play-record-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.play-record-section>h2{font-size:17px}.play-record{padding:16px 0;border-top:1px solid #789f7555}.play-record h3{font-size:15px;margin:6px 0}.play-record p,.play-record-status{font-size:12px;color:#a1b9a4}.play-empty{padding:20px 0;color:#a1b9a4}.account-name{font-size:24px}.pilot-profile{display:flex;align-items:center;gap:18px;margin-bottom:22px}.pilot-profile .pilot-face{width:64px;height:64px;transform:scale(1.2);margin:8px 12px}.profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-stat{padding:18px;background:#0c242b99;border:1px solid #77987944;border-radius:12px}.profile-stat strong{display:block;font-size:27px;color:#d7eab0}.profile-stat span{font-size:12px;color:#a4baaa}.menu-list{display:grid;gap:12px;min-width:220px}.menu-list button{text-align:left;padding:13px 18px}.settings-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;border-bottom:1px solid #799e6c33}.settings-row select{background:#123039;color:#d8e9cf;border:1px solid #759476;border-radius:6px;padding:8px}.settings-row .language-select{width:160px}
.shell-toast{position:fixed;bottom:10px;left:50%;transform:translateX(-50%);z-index:70;max-width:min(580px,90%);background:#112e35f5;color:#dce9c3;border:1px solid #9fbb8c77;border-radius:8px;padding:10px 18px;margin:0;text-align:center;box-shadow:0 6px 30px #0008;font-size:12px;pointer-events:none}.shell-toast:empty{display:none}.travel-curtain{position:absolute;inset:0;z-index:65;background:#081e27ed;display:grid;place-content:center;justify-items:center;gap:22px;color:#c5dbba;font:12px monospace;letter-spacing:2px;backdrop-filter:blur(12px)}.travel-orbit{width:70px;height:70px;border:1px solid #506f65;border-top:2px solid #d0e5a1;border-radius:50%;animation:orbit-loading 1.2s linear infinite}.travel-orbit:after{content:'';display:block;width:24px;height:24px;background:#a5c789;border-radius:50%;margin:22px;box-shadow:0 0 25px #9ed59866}@keyframes orbit-loading{to{transform:rotate(360deg)}}
/* Lightweight room if a device cannot start WebGL. Every machine remains usable. */
.fallback-room{position:absolute;inset:0;perspective:1000px;background:linear-gradient(#142e3caa,#0a262dcc),url('assets/tower/orbital-city-v5.png') center 55%/cover}.fallback-deck{position:absolute;left:-10%;right:-10%;top:47%;height:80%;border:2px solid #8fae9577;border-radius:50%;background:repeating-linear-gradient(90deg,transparent 0 99px,#7ac6ad18 100px),#244a4dbb;transform:rotateX(50deg);box-shadow:0 -5px 50px #81c29e44}.fallback-station{position:absolute;bottom:31%;left:var(--left);width:13%;height:43%;border:0;background:none;color:#e1ebcd;padding:0;transform:translateX(-50%);filter:drop-shadow(0 16px 15px #00141b)}.fallback-station img{width:100%;height:80%;object-fit:contain}.fallback-station strong{display:block;font-size:11px;background:#13383d;padding:8px;border:1px solid #95b69177;border-radius:7px}.fallback-station[aria-pressed=true]{filter:drop-shadow(0 0 15px #bedc9f99)}
@media(max-width:900px){.orbit-title{display:none}.station-selector{width:calc(100% - 220px);bottom:25px}.station-copy h1{font-size:18px}.enter-game{padding:12px 16px;gap:8px}.locker-button{right:22px;bottom:45px}.local-badge{left:20px}.station-step{min-width:24px}.selection-help{font-size:9px}.room-caption{left:22px}}
@media(max-width:600px){.lobby-hud{left:14px;right:14px;top:max(14px,env(safe-area-inset-top))}.pilot-chip{min-width:0;padding:5px 11px 5px 5px;gap:8px}.pilot-chip strong{font-size:11px;max-width:85px}.pilot-chip small{font-size:8px;letter-spacing:1px}.pilot-face{width:38px;height:38px}.hud-tools{gap:6px}.wallet-chip{min-width:65px;padding:8px;gap:6px}.wallet-chip strong{font-size:15px}.hud-icon{min-width:42px;padding:8px}.room-caption{left:18px;top:88px;font-size:8px;letter-spacing:1.5px}.room-caption small{display:none}.station-selector{width:calc(100% - 28px);bottom:max(65px,calc(env(safe-area-inset-bottom) + 52px))}.station-console{padding:11px 8px;gap:3px;border-radius:15px 4px}.station-copy{padding:3px 5px}.station-copy h1{font-size:17px}.station-copy p{font-size:9px;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.station-copy>span{font-size:10px}.enter-game{min-height:56px;padding:10px 14px;font-size:12px!important;gap:7px}.enter-game b{font-size:21px}.selection-readout{font-size:9px;margin-bottom:8px;letter-spacing:1px}.selection-help{font-size:9px;margin:12px 0 0;max-width:100%}.locker-button{bottom:max(12px,env(safe-area-inset-bottom));right:19px;display:flex;gap:7px;padding:0}.locker-icon{width:30px;height:30px;border-radius:8px 2px;font-size:21px}.locker-button>span:nth-child(2){font-size:11px}.locker-button small{display:none}.local-badge{bottom:max(19px,env(safe-area-inset-bottom));left:19px;font-size:9px}.game-hud{height:59px;padding:7px 9px;gap:6px}.game-hud-title h1{font-size:11px}.game-hud-title>span{font-size:8px}.hud-button{min-width:40px;padding:5px 10px;font-size:10px!important;gap:5px}.game-hud-actions{gap:4px}.game-hud-actions .hud-icon{min-width:36px;min-height:40px;padding:5px 9px;font-size:18px!important}#gameHost{top:59px}#gameHost .bud-stage,#gameHost .bud-in-session .bud-stage{height:calc(100dvh - 118px)!important;min-height:270px!important}#gameHost .tower-stage{height:calc(100dvh - 116px);min-height:430px}#gameHost .chamber{height:calc(100dvh - 85px);min-height:650px}#gameHost .transmission-game{padding:8px}#gameHost .transmission-game .play-layout{display:block}#gameHost .game-details{padding:18px}.play-dialog{max-height:90dvh}.play-dialog-body{padding:18px}.play-record-columns,.play-page-heading{display:block}.fallback-station{display:none;width:58%;left:50%;bottom:30%;height:51%}.fallback-station[aria-pressed=true]{display:block}.fallback-station strong{font-size:17px}}
@media(max-height:580px) and (min-width:601px){.lobby-hud{top:12px}.room-caption{top:80px}.station-selector{bottom:13px;width:510px}.station-console{padding:7px}.selection-readout{margin-bottom:6px}.selection-help{display:none}.station-copy h1{font-size:17px}.enter-game{min-height:48px}.locker-button{bottom:22px}.local-badge{bottom:17px}}
@media(prefers-reduced-motion:reduce){.travel-orbit{animation:none}}
#gameHost .game-details-dialog{position:fixed}#gameHost .game-details-dialog .game-details{padding:0;border:0;background:none}#gameHost .game-details-dialog .play-dialog-body{padding:22px}#gameHost .game-details-dialog::backdrop{background:#03131bc9;backdrop-filter:blur(9px)}
/* Direct game controls in the top HUD. */
.hud-language{display:flex;align-items:center;pointer-events:auto}.hud-language .language-select{color:#e0ecd2;background:#19363cee;border:1px solid #8da28a77;border-radius:9px;padding:10px 9px;min-height:44px;width:112px;font:14px Arial,'Microsoft YaHei',sans-serif}
#gameHost .bud-game-toolbar{display:none!important}
/* A transparent title readout; the planet itself is the launch control. */
.station-selector{bottom:24px;width:min(880px,calc(100% - 250px));text-align:center}.selection-readout{justify-content:center;margin:0 0 10px;gap:12px;opacity:.8}.selection-readout>span:last-child{margin-left:0}.station-console{border:0;background:none;box-shadow:none;border-radius:0;padding:0;gap:18px}.station-console:before,.station-console:after{display:none}.station-copy{padding:0;filter:drop-shadow(0 3px 8px #06191c)}.station-copy h1{color:#edf6e1;font:900 clamp(28px,3.8vw,54px)/1.15 Arial,sans-serif;text-transform:uppercase;letter-spacing:.065em;margin:0 0 9px;text-shadow:0 0 24px color-mix(in srgb,var(--station-color),transparent 67%)}.station-copy p{font-size:14px;line-height:1.5;letter-spacing:.08em;color:#c2d6cc;margin:0 0 9px}.station-copy>span{font-size:16px;line-height:1.5;font-weight:700;color:#d7efae;text-shadow:0 0 13px #aad37555}.station-copy>span:before{content:'◇';margin-right:8px;color:var(--station-color)}#lobby[data-kind=draw] .station-copy>span{color:#ffe3a0;text-shadow:0 0 16px #e6be6c55}.station-step{min-width:44px;min-height:52px;font-size:42px!important;color:#c8dfd0}.selection-help{margin-top:12px;font-size:11px;line-height:1.5}
.planet-entry{position:absolute;z-index:4;left:50%;top:64%;width:160px;aspect-ratio:1;transform:translate(-50%,-42.5%);padding:0;border:0;background:none;color:#e8ffd0;cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 0 7px #9bc87988)}.planet-entry svg{display:block;width:100%;height:100%;overflow:visible}.planet-entry text{font:700 19px Arial,'Microsoft YaHei',sans-serif;fill:currentColor;letter-spacing:1px}.entry-orbit{fill:none;stroke:var(--station-color,#c5e8b0);stroke-width:1;stroke-opacity:.35;transform:translateY(8px)}.planet-entry:hover{color:white;filter:drop-shadow(0 0 13px #c6fa94)}.planet-entry:disabled{opacity:.4;cursor:wait}.planet-entry:focus-visible{outline:2px solid #d4edac;outline-offset:0;border-radius:50%}
@media(max-width:600px){.hud-language .language-select{width:88px;font-size:12px;padding:8px 5px;min-height:40px}.pilot-chip{gap:5px;padding-right:7px}.pilot-chip strong{max-width:61px}.pilot-chip small{font-size:7px}.hud-tools{gap:5px}.wallet-chip{min-width:49px;padding:6px;gap:4px}.hud-icon{min-width:38px;padding:6px}.lobby-hud{left:12px;right:12px}.station-selector{width:calc(100% - 26px);bottom:max(61px,calc(env(safe-area-inset-bottom) + 52px))}.station-console{gap:3px;padding:0}.station-copy h1{font-size:27px;letter-spacing:.015em;line-height:1.2;margin-bottom:7px;overflow-wrap:normal}.station-copy p{font-size:12px;line-height:1.5;white-space:normal;max-width:none;overflow:visible;letter-spacing:0;margin-bottom:8px}.station-copy>span{font-size:15px}.station-step{min-width:28px;font-size:33px!important}.selection-readout{margin-bottom:8px;font-size:9px}.selection-help{font-size:10px;margin-top:9px}.game-hud{height:96px;align-items:flex-start;padding-top:9px}.game-hud-title{position:absolute;top:64px;left:12px;right:12px;display:flex;justify-content:center;align-items:center;gap:10px}.game-hud-title h1{font-size:14px}.game-hud-title>span{font-size:11px}.game-hud-actions{align-items:center;gap:4px}.game-hud-actions .hud-icon{min-width:33px;padding:5px 7px}.game-hud .hud-button{min-height:40px}.game-hud .hud-language .language-select{width:83px}#gameHost{top:96px}#gameHost .bud-stage,#gameHost .bud-in-session .bud-stage{height:calc(100dvh - 156px)!important}.planet-entry text{font-size:20px}}
@media(max-height:580px) and (min-width:601px){.station-selector{bottom:12px}.station-copy h1{font-size:29px}.station-copy p{font-size:12px;margin-bottom:3px}.station-copy>span{font-size:14px}.selection-readout{margin-bottom:4px}}
.selection-readout{justify-content:flex-start;padding-left:60px}.station-copy h1{font-family:Bahnschrift,Arial,sans-serif;font-weight:800;letter-spacing:.08em}
@media(max-width:600px){.selection-readout{justify-content:center;padding-left:0}.station-copy h1{letter-spacing:.025em}}
#gameHost .bud-page .bud-game{height:calc(100dvh - 64px);display:flex;flex-direction:column}#gameHost .bud-page .bud-stage{flex:1 1 auto;height:auto!important;min-height:0!important}#gameHost .bud-page .game-bottomline{flex:0 0 auto;width:100%;max-width:none;margin:0;padding:8px 15px;gap:16px}#gameHost .bud-page .game-bottomline>button{flex:0 0 auto;max-width:100px}#gameHost .bud-page .bud-controls{flex:0 0 auto;width:min(100%,600px)}
@media(max-width:600px){#gameHost .bud-page .bud-game{height:calc(100dvh - 96px)}}
.lobby-fallback .planet-entry:before{content:'';position:absolute;left:50%;top:42.5%;transform:translate(-50%,-50%);width:45%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 30% 25%,#e2f3d4,#92bba0 55%,#376966);box-shadow:0 0 28px #99cc9966}
/* Mounted BUD uses the available game viewport in both menu and live play. */
#gameHost:has(>.bud-page){overflow:hidden}
#gameHost>.bud-page,#gameHost .bud-page>.bud-shell,#gameHost .bud-page .bud-shell>main,#gameHost .bud-page .bud-layout{height:100%;min-height:0;overflow:hidden}
#gameHost .bud-page .bud-game,#gameHost .bud-page.bud-in-session .bud-game{position:relative!important;inset:auto!important;z-index:auto!important;display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;height:100%!important;min-height:0;padding:0;overflow:hidden}
#gameHost .bud-page .bud-stage,#gameHost .bud-page.bud-in-session .bud-stage{position:relative;flex:1 1 0;min-height:0!important;height:0!important;aspect-ratio:auto;width:100%!important}
#gameHost .bud-page #budCanvas{position:absolute;top:0;left:50%;width:auto;max-width:100%;height:100%;transform:translateX(-50%);object-fit:contain;display:block;margin:0}
#gameHost .bud-page .bud-overlay{overflow-y:auto;overscroll-behavior:contain}
#gameHost .bud-page .bud-tilt-setup{position:static;flex:0 0 auto;margin:0;padding:5px 10px}
#gameHost .bud-page .bud-controls{flex:0 0 auto;margin:4px auto}
#gameHost .bud-page #budMessage{flex:0 0 auto;margin:0;padding:0 12px;font-size:13px;max-height:3.2em;overflow:auto}
@media(max-height:550px){#gameHost .bud-page .bud-overlay.is-menu{justify-content:center;padding:10px 24px 28px}#gameHost .bud-page .bud-overlay.is-menu .eyebrow{display:none}#gameHost .bud-page .bud-overlay.is-menu h2{font-size:42px;line-height:.95;margin:0 0 6px}#gameHost .bud-page .bud-overlay.is-menu p{font-size:14px;line-height:1.4;margin:0 0 5px}#gameHost .bud-page .bud-overlay.is-menu .bud-primary{font-size:18px;padding:5px 26px}#gameHost .bud-page .bud-overlay.is-menu .bud-menu-link{font-size:16px;line-height:1.3;padding:2px 12px;margin-top:3px}#gameHost .bud-page .bud-overlay.is-menu small{font-size:12px;bottom:4px}}
/* Localized names keep their script's natural spacing and can use two lines. */
.station-copy h1{max-width:100%;text-wrap:balance;overflow-wrap:anywhere;word-break:normal;line-height:1.2;font-family:Bahnschrift,'Microsoft YaHei','Noto Sans Thai',Tahoma,Arial,sans-serif}
.station-copy h1:lang(zh){letter-spacing:.08em;text-transform:none}
.station-copy h1:lang(th),.station-copy h1:lang(ru){letter-spacing:0;text-transform:none}
.station-copy h1:lang(th){line-height:1.45}
.station-copy p:lang(th),.station-copy p:lang(ru){letter-spacing:0}
.game-hud-title h1{overflow-wrap:anywhere;line-height:1.25}
@media(max-width:600px){.station-copy h1{font-size:clamp(22px,6.6vw,27px)}.station-copy h1:lang(th){font-size:clamp(21px,6vw,25px)}.game-hud-title h1{font-size:13px}.game-hud-title>span{flex-shrink:0}}
@media(min-width:601px){.station-copy h1:lang(ru){font-size:clamp(26px,3.2vw,44px)}}
@media(min-width:601px) and (max-width:1000px){.station-selector{width:calc(100% - 80px)}}
/* Fixed entry orbit; the label follows its lower, outer edge. */
.lobby-view-toggle{display:flex}
.entry-orbit{transform:none;stroke:#b4d8be;stroke-width:2;stroke-opacity:.7}
.planet-entry text{letter-spacing:.3px;paint-order:stroke;stroke:#133535;stroke-width:2px;stroke-linejoin:round}
@media(min-aspect-ratio:.95){#lobby[data-overview=false] .lobby-projection{top:18px;width:140px;height:140px}#lobby[data-overview=false] .projection-category{display:block;bottom:-22px}}
@media(min-width:601px){.fallback-room:not(.is-overview) .fallback-station{display:none}.fallback-room:not(.is-overview) .fallback-station[aria-pressed=true]{display:block;width:28%;left:50%;height:52%;bottom:30%}#lobby[data-overview=false] .fallback-group-signs{display:none}}
/* The decorative SVG must not intercept taps meant for a nearby cabinet. */
.planet-entry,.planet-entry svg{pointer-events:none}
.planet-entry .entry-hit{fill:transparent;pointer-events:all}
.planet-entry:disabled .entry-hit{pointer-events:none}
.planet-entry .entry-orbit,.planet-entry text{pointer-events:none}

/* Low quality keeps text and controls crisp while reducing compositing work. */
html[data-graphics-quality=low] .lobby-projection *{animation:none!important;filter:none!important}
html[data-graphics-quality=low] .lobby-projection .machine-effects{display:none}
html[data-graphics-quality=low] .play-dialog::backdrop,html[data-graphics-quality=low] .travel-curtain,html[data-graphics-quality=low] #gameHost .game-details-dialog::backdrop{backdrop-filter:none}

/* The capsule operator dock and outcome belong to the game viewport. */
#gameHost:has(.matter-immersive){overflow:hidden}
#gameHost .capsule-page,#gameHost .capsule-page>.experience,#gameHost .capsule-page main,#gameHost .capsule-page .matter-layout{height:100%;min-height:0}
#gameHost .matter-immersive{position:relative;height:100%;min-height:0;overflow:hidden;padding:0;margin:0;background:radial-gradient(ellipse at 50% 32%,#25433b,#071619 75%)}
#gameHost .matter-immersive>.matter-description{position:absolute;top:8px;left:20px;right:20px;text-align:center;z-index:2;margin:0;font-size:13px}
#gameHost .matter-immersive .scene{position:absolute;top:28px;left:50%;transform:translateX(-50%);width:min(100%,calc(100dvh - 260px));height:auto;aspect-ratio:1;max-height:none;margin:0;min-height:0}
#gameHost .matter-immersive>.console{position:absolute;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);width:calc(100% - 32px);max-width:430px;margin:0!important;padding:12px 16px!important;background:#112b27ed;border:1px solid #75957966;border-radius:16px;z-index:4}
#gameHost .matter-immersive .voucher-summary{margin:0 0 8px;gap:12px;padding:0;justify-content:space-between}#gameHost .matter-immersive .voucher-summary strong{font-size:18px}#gameHost .matter-immersive .voucher-summary span{font-size:12px}
#gameHost .matter-immersive .open-button{height:52px;min-height:48px;margin:0;font-size:16px;letter-spacing:.04em}#gameHost .matter-immersive .status-row{margin:7px 0 0;min-height:20px;font-size:12px;line-height:1.4}#gameHost .matter-immersive .progress-track{position:relative;top:auto;margin-top:5px}
#gameHost .matter-immersive>#rewardResult{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(420px,calc(100% - 32px));max-height:calc(100% - 32px);overflow:auto;margin:0;padding:24px;z-index:8;text-align:center;border:1px solid #b5d89b;background:#102d29;box-shadow:0 0 0 100vmax #021210b8;border-radius:18px;color:#e2eed5}
#gameHost .matter-immersive #rewardTitle{font-size:24px;line-height:1.3;margin:10px 0}#gameHost .matter-immersive #rewardDescription{font-size:15px;line-height:1.5}#gameHost .matter-immersive #claimButton{min-height:48px;font-size:16px}
@media(max-height:540px) and (min-aspect-ratio:1){#gameHost .matter-immersive .scene{left:28%;top:8px;width:calc(100dvh - 95px)}#gameHost .matter-immersive>.console{left:auto;right:16px;bottom:16px;transform:none;width:43%}#gameHost .matter-immersive>.matter-description{left:52%;top:16px}}

#gameHost .game-view.ufo-page,#gameHost .ufo-page>.experience,#gameHost .ufo-page main,#gameHost .ufo-page .ufo-layout{height:100%;min-height:0}
#gameHost .ufo-page .flight-panel{display:flex;flex-direction:column;height:100%;min-height:0}
#gameHost .ufo-page .flight-stage{flex:1;min-height:0;height:auto}
#gameHost .ufo-page .flight-dock{flex:none;padding:8px 14px;gap:8px}
#gameHost .ufo-page .flight-message{flex:none;margin:4px 14px 8px}
.lobby-hud{height:54px;padding:0 12px;border:1px solid #58736355;border-radius:16px;background:#06100bd6;backdrop-filter:blur(16px)}.lobby-menu{width:38px;height:38px;padding:9px;display:grid;align-content:center;gap:5px;border:1px solid #66816d66;border-radius:50%;background:transparent}.lobby-menu i{display:block;width:18px;height:1px;background:#e8eee8}.lobby-brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:8px;color:#eef3ef;text-decoration:none;pointer-events:auto}.lobby-brand .motion-planet{position:relative;width:28px;height:22px;color:#c7e744}.lobby-brand strong{font-size:13px;font-weight:550;letter-spacing:.22em;white-space:nowrap}.lobby-hud>.hud-language{margin-left:auto;pointer-events:auto}.lobby-member-tools{position:absolute;z-index:3;top:max(88px,calc(env(safe-area-inset-top) + 66px));left:30px;right:30px;display:flex;align-items:center;justify-content:space-between;gap:12px}.lobby-member-tools .hud-tools{display:flex;gap:8px}@media(max-width:600px){.lobby-hud{left:10px;right:10px;top:max(8px,env(safe-area-inset-top));height:52px;padding:0 9px}.lobby-brand{gap:5px}.lobby-brand strong{font-size:11px;letter-spacing:.15em}.lobby-brand .motion-planet{transform:scale(.88)}.lobby-hud>.hud-language .language-select{width:62px;min-height:34px;font-size:10px}.lobby-member-tools{top:max(70px,calc(env(safe-area-inset-top) + 62px));left:12px;right:12px}.room-caption{top:126px}}
