/* Full-screen Star Trials stadium. All controls are shared by touch and keyboard. */
body:not(.at-gateway) .app-shell:not([hidden]):has(#arena.active){display:block!important}
.app-shell:has(#arena.active)>.sidebar,.app-shell:has(#arena.active) .topbar,.app-shell:has(#arena.active) .lobby-player-hud,.app-shell:has(#arena.active) #guestSessionNote,.app-shell:has(#arena.active) .phone-nav,.app-shell:has(#arena.active) .phone-quest-dock{display:none!important}
.app-shell:has(#arena.active)>main{padding:0!important;margin:0!important;max-width:none;width:100%}
#arena{position:relative;padding:0!important;height:100dvh;min-height:560px;background:#071224;color:#edf6ff;overflow:hidden;--game:#9ce8c8}
#arena [hidden]{display:none!important}
#arena button{font:inherit;font-weight:800;min-height:46px;padding:12px 18px;border-radius:13px;border:1px solid #839eb54d;background:#183249;color:#e5f1ff;cursor:pointer;touch-action:manipulation}
#arena button:hover{border-color:#d5f2f1}
#arena button:focus-visible{outline:3px solid #d3b7ff;outline-offset:3px}
#arena button:disabled{opacity:.45;cursor:default}
#arena .ar-primary{background:#b4efd8;color:#123b42;border-color:#c9ffe9}
.ar-world,.ar-vignette{position:absolute;inset:0}
.ar-world canvas{width:100%;height:100%;display:block}
.ar-vignette{pointer-events:none;background:linear-gradient(180deg,#04101ec7,transparent 28%,transparent 68%,#051122ed)}
.ar-loading{position:absolute;inset:0;display:grid;place-items:center;background:#0a1629;padding:25px;text-align:center;pointer-events:none}
.ar-no3d .ar-loading{align-items:start;padding-top:100px;font-size:14px}
.ar-top{position:absolute;top:22px;left:28px;right:28px;z-index:5;display:flex;align-items:center;gap:17px}
.ar-top>div{flex:1}.ar-top>div>span{font-size:12px;letter-spacing:2.3px;font-weight:900;color:#aecddd}
#arena .ar-top h1{font-size:27px;color:#f2f8ff;letter-spacing:-.7px;line-height:1.15;margin:5px 0 0}
.ar-top>b{font:900 19px/1.2 ui-monospace,monospace;border:1px solid #bad7e644;background:#122f43ba;padding:14px 17px;border-radius:13px;color:var(--game);min-width:82px;text-align:center}
#arena .ar-top button{background:#163046c9;backdrop-filter:blur(12px)}
.ar-select{position:absolute;top:110px;bottom:24px;left:30px;width:390px;z-index:3;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain;padding:25px;background:#0e2338ed;border:1px solid #9cbdd13d;border-radius:25px;box-shadow:0 20px 60px #0004;backdrop-filter:blur(16px);scrollbar-width:thin;scrollbar-color:#658099 transparent}
.ar-select>*{flex-shrink:0}
.ar-kicker{font-size:11px;letter-spacing:1.6px;font-weight:900;color:#aadacb;line-height:1.6}
#arena .ar-select h2{font-size:30px;letter-spacing:-1px;line-height:1.15;color:#f2f8ff;margin:12px 0}
#arena .ar-select>p{font-size:14px;line-height:1.5;color:#b3ccde;margin:10px 0 18px}
.ar-game-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:14px 0;flex:1 1 auto;min-height:188px;overflow:auto;scrollbar-width:thin;scrollbar-color:#66899e transparent}
.ar-select>p:not(.ar-fine){display:none}
#arena .ar-game-picker button{display:flex;align-items:center;gap:14px;text-align:left;padding:10px 12px;background:#182f44;border:1px solid #526d883b;min-height:62px;border-radius:12px}
#arena .ar-game-picker button[aria-pressed=true]{background:#24435a;border-color:var(--game);box-shadow:inset 3px 0 var(--game)}
.ar-game-picker button>span{font-size:24px;color:var(--game);width:24px;text-align:center}
.ar-game-picker button>div{flex:1}.ar-game-picker b{font-size:14px;line-height:1.3;display:block}.ar-game-picker small,.ar-game-picker i{display:none}
.ar-game-picker i{font:12px ui-monospace,monospace;color:#97b6cb}
.ar-game-detail{padding:10px 0;border-top:1px solid #7997ac30}
.ar-game-detail>b{font-size:14px;line-height:1.5;color:#dbf3ea}
#arena .ar-game-detail p{font-size:14px;line-height:1.6;color:#a8c5d9;margin:8px 0 0}
.ar-start-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}
#arena .ar-start-buttons button{font-size:14px;line-height:1.4;padding:13px 11px}
#arena .ar-start-buttons .ar-online{grid-column:1/-1;background:#e7afcb;color:#37263f;border-color:#ffc5e0;font-size:16px}
.ar-online span{display:block;font-size:12px;margin-top:5px;font-weight:600}
#arena .ar-fine{font-size:12px!important;line-height:1.55!important;color:#a3bed2!important}
.ar-scene-label{position:absolute;right:5%;bottom:8%;z-index:2;text-align:right;pointer-events:none}
.ar-scene-label span{display:block;font-size:12px;letter-spacing:2px;color:#b8cddd}
.ar-scene-label b{display:block;font-size:clamp(30px,4vw,56px);letter-spacing:-2px;color:var(--game);margin-top:10px;text-shadow:0 4px 20px #0008}
.ar-scores{position:absolute;top:100px;left:26px;right:26px;display:flex;justify-content:center;gap:8px;z-index:3;pointer-events:none}
.ar-scores>div{background:#142c40df;border:1px solid #91b7d033;border-radius:13px;padding:10px 13px;display:grid;grid-template-columns:1fr auto;gap:5px 15px;font-size:13px;min-width:150px;backdrop-filter:blur(10px)}
.ar-scores .ar-you{border-color:var(--game)}.ar-scores .ar-eliminated{opacity:.65}
.ar-scores small{font-size:11px;color:#a5bfd2;font-weight:500}.ar-scores>div>small{grid-column:1/-1}.ar-scores b{color:var(--game)}
.ar-panel{position:absolute;z-index:4;top:53%;left:50%;transform:translate(-50%,-44%);width:min(450px,calc(100% - 32px));max-height:calc(100dvh - 210px);overflow:auto;padding:30px;background:#11283ceb;border:1px solid #acc9db4d;border-radius:25px;box-shadow:0 20px 80px #0006;text-align:center;backdrop-filter:blur(18px)}
#arena .ar-panel h2{font-size:34px;letter-spacing:-1px;line-height:1.1;color:#f5faff;margin:17px 0}
#arena .ar-panel p{font-size:16px;line-height:1.6;color:#b9d0e2;margin:14px 0}
#arena[data-phase=results] .ar-panel{left:28px;top:180px;bottom:25px;transform:none;width:365px;max-height:none;padding:24px}
#arena[data-phase=results] .ar-panel h2{font-size:29px}
.ar-panel-actions{display:flex;gap:10px;justify-content:center;margin-top:18px}.ar-panel-actions>button{flex:1}
.ar-match-pulse{color:#e7aed0;font-size:64px;letter-spacing:15px;margin:25px 0;animation:ar-breathe 2s ease-in-out infinite}
.ar-rule-goal{display:flex;align-items:center;gap:15px;background:#26465a88;border-radius:16px;padding:16px;margin-top:18px;text-align:left}
.ar-rule-goal>span{font-size:44px;color:var(--game)}.ar-rule-goal>b{font-size:16px;line-height:1.5}
.ar-round-result{font-size:45px;color:var(--game);display:flex;align-items:center;justify-content:center;gap:20px;margin:25px 0}
.ar-round-result b{font-size:38px}.ar-round-result small{display:block;font-size:13px;letter-spacing:1px;color:#b8d5e4}
.ar-results-list{display:grid;gap:8px;margin:18px 0}
.ar-results-list>div{display:flex;align-items:center;gap:15px;padding:12px;background:#224257;border-radius:12px;text-align:left}
.ar-results-list span{font-size:28px;color:#ffe1a0}.ar-results-list b{flex:1;font-size:14px}.ar-results-list small{display:block;font-size:12px;font-weight:500;margin-top:4px;color:#aac5d7}.ar-results-list strong{font-size:21px;color:#ffe1a0}
.ar-live-hud{position:absolute;inset:0;pointer-events:none;z-index:2}
.ar-round-strip{position:absolute;top:176px;left:28px;display:flex;gap:6px}
.ar-round-strip span{display:grid;place-items:center;width:33px;height:33px;border:1px solid #799bb344;border-radius:10px;font-size:20px;color:#8babbf;background:#152d40bb}
.ar-round-strip .ar-current{color:var(--game);border-color:var(--game);background:#2c485ddd}
.ar-cue{position:absolute;top:177px;left:50%;transform:translateX(-50%);max-width:80%;background:#132d43ee;border:1px solid var(--game);border-radius:30px;padding:12px 20px;font-size:17px;font-weight:900;color:#e4f3ff;text-align:center;box-shadow:0 7px 25px #0005;line-height:1.5}
.ar-cue[data-kind=green]{background:#133e35ee;border-color:#9aebc8;color:#beffe1}.ar-cue[data-kind=red]{background:#48283cee;border-color:#ffa5bc;color:#ffc6d5}.ar-cue[data-kind=amber]{background:#433b28ee;border-color:#ffd984;color:#ffe7b4}
.ar-player-progress{position:absolute;left:28px;bottom:36px;display:grid;grid-template-columns:1fr auto;gap:9px;width:155px;background:#122a40dd;border:1px solid #779bb347;border-radius:14px;padding:15px}
#arLives{font-size:17px;letter-spacing:0;color:#ffd99a;white-space:nowrap}#arProgress{font:900 14px ui-monospace,monospace;align-self:center}.ar-player-progress>div{grid-column:1/-1;height:5px;background:#5b789344;border-radius:10px;overflow:hidden}.ar-player-progress i{display:block;height:100%;background:var(--game);transition:width .3s}
.ar-bottom{position:absolute;bottom:17px;left:210px;right:210px;z-index:4;text-align:center}
#arena .ar-bottom p{font-size:14px;line-height:1.5;color:#d8eaf6;margin:9px auto;max-width:530px}
.ar-controls{display:flex;justify-content:center;gap:10px}.ar-controls button{min-width:130px;user-select:none;-webkit-user-select:none;box-shadow:0 7px 22px #0004}
.ar-controls small{display:block;font-size:11px;margin-top:4px;font-weight:600;opacity:.7}
#arRun{min-width:225px;touch-action:none}
#arena .ar-controls .ar-chosen{border-color:var(--game);background:#35576c;box-shadow:0 0 18px #a5e1d325}
#arena .ar-tile-button{min-width:90px;font-size:13px;padding:10px;border-color:var(--tile);color:var(--tile)}.ar-tile-button span{font-size:22px;display:block}
#arena .ar-help{min-height:32px;background:transparent;border:0;text-decoration:underline;color:#9abbcf;font-size:12px;padding:6px 10px;margin-top:5px}
.ar-outcome{position:absolute;bottom:180px;left:50%;transform:translateX(-50%);width:max-content;max-width:90%;z-index:3;background:#162e43eb;border:1px solid var(--game);padding:20px 30px;border-radius:20px;text-align:center;pointer-events:none}
.ar-outcome b{display:block;font-size:25px;color:var(--game)}.ar-outcome span{display:block;font-size:14px;color:#c5dceb;margin-top:8px}
#arError{position:absolute;bottom:0;left:50%;transform:translateX(-50%);z-index:9;max-width:90%;padding:8px 14px;font-size:13px;line-height:1.5;color:#ffdc9d;background:#251d34ed;border-radius:12px;text-align:center;pointer-events:none}
#arError:empty{display:none}.ar-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.ar-hit .ar-vignette{animation:ar-impact .65s ease-out}
.ar-help-dialog{width:420px;max-width:calc(100vw - 30px);border:1px solid #96b7cb;background:#172d40;color:#e8f4ff;border-radius:22px;padding:28px}
.ar-help-dialog::backdrop{background:#06111ba8;backdrop-filter:blur(8px)}.ar-help-dialog h2{color:#e8f4ff;margin-top:0}.ar-help-dialog p{font-size:16px;line-height:1.7;color:#c4d9e8}.ar-help-dialog button{border:0;background:#b4efd8;color:#163e47;border-radius:12px;padding:14px 22px;font:800 16px inherit;width:100%}
@keyframes ar-impact{0%{box-shadow:inset 0 0 180px #ff82ad99}100%{box-shadow:inset 0 0 0 #ff82ad00}}
@keyframes ar-breathe{50%{opacity:.6;transform:scale(.95)}}
@media(min-width:1500px){.ar-select{width:430px;top:125px;left:42px;padding:30px}.ar-scene-label{right:8%;bottom:9%}}
@media(max-width:950px){.ar-select{width:350px;left:20px;padding:20px;top:100px}.ar-scene-label b{font-size:32px}.ar-top{left:20px;right:20px}.ar-scores{left:15px;right:15px;gap:6px}.ar-scores>div{min-width:0;flex:1;padding:9px;font-size:12px}.ar-round-strip{top:165px;left:18px;gap:4px}.ar-round-strip span{width:25px;height:28px;font-size:18px}.ar-cue{top:205px;font-size:15px}.ar-bottom{left:185px;right:20px}.ar-player-progress{left:18px;width:150px;bottom:45px}}
@media(max-width:650px){
 #arena{min-height:600px}.ar-top{top:max(12px,env(safe-area-inset-top));left:13px;right:13px;gap:10px}
 #arena .ar-top h1{font-size:21px}.ar-top>div>span{font-size:10px;letter-spacing:1.5px}
 #arena .ar-top button{padding:9px 12px;font-size:14px;min-height:44px}.ar-top button>span{display:none}.ar-top>b{font-size:14px;padding:12px 10px;min-width:61px}
 .ar-select{top:89px;left:12px;right:12px;bottom:14px;width:auto;padding:20px;background:#10253ceb}
 #arena .ar-select h2{font-size:28px}.ar-game-picker{gap:6px;margin:15px 0}.ar-game-picker b{font-size:15px}
 #arena .ar-game-picker button{min-height:59px;padding:9px 12px}.ar-game-picker small{font-size:12px}
 .ar-scene-label{display:none}.ar-scores{top:84px;left:12px;right:12px;display:grid;grid-template-columns:1fr 1fr;gap:5px}.ar-scores>div{font-size:11px;padding:7px 9px;gap:4px}.ar-scores>div>small{display:none}
 .ar-panel{top:51%;max-height:calc(100dvh - 200px);padding:24px;transform:translate(-50%,-38%)}
 #arena[data-phase=results] .ar-panel{left:12px;right:12px;top:auto;bottom:14px;width:auto;max-height:53dvh;padding:20px}
 #arena .ar-panel h2{font-size:29px}.ar-panel-actions{flex-wrap:wrap}#arena .ar-panel p{font-size:15px}
 .ar-round-strip{left:14px;top:165px}.ar-cue{top:208px;max-width:calc(100% - 26px);width:max-content;font-size:14px;padding:10px 14px;border-radius:19px}
 .ar-player-progress{left:auto;right:14px;top:158px;bottom:auto;width:147px;padding:9px 11px;gap:6px}#arLives{font-size:17px}#arProgress{font-size:12px}
 .ar-bottom{left:13px;right:13px;bottom:max(12px,env(safe-area-inset-bottom))}
 #arena .ar-bottom p{font-size:14px;line-height:1.4;padding:0 8px}
 .ar-controls{gap:7px}.ar-controls button{min-width:0;flex:1;padding:12px 10px;font-size:16px}
 #arena .ar-tile-button{min-width:0;flex:1;font-size:13px}
 .ar-outcome{bottom:190px;padding:17px 22px}.ar-outcome b{font-size:24px}.ar-outcome span{font-size:13px}
 #arError{bottom:1px;font-size:12px}.ar-controls small{font-size:10px}.ar-help{font-size:12px}
}
@media(max-height:600px) and (min-width:651px){.ar-top{top:12px}.ar-select{top:83px;bottom:13px}.ar-scores{top:84px}.ar-cue{top:146px}.ar-round-strip{top:146px}.ar-panel{top:54%;max-height:calc(100dvh - 160px);padding:22px}.ar-panel h2{font-size:26px!important}.ar-bottom{bottom:8px}.ar-player-progress{bottom:28px}.ar-outcome{bottom:150px}}
@media(prefers-reduced-motion:reduce){#arena *{animation:none!important;transition:none!important}}
