/* One navigation / utility system for every physical Arcade game. */
body[data-player-shell=ready]{--player-cyan:#31e9df;--player-line:#9f73c532;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
[data-player-shell=ready] .arcade-player-nav{display:flex;align-items:center;gap:10px;min-width:0;height:36px;z-index:12;font-size:8px;letter-spacing:.1em}
[data-player-shell=ready] .arcade-player-nav>a,[data-player-shell=ready] .arcade-player-nav>.return-lobby{display:inline-flex!important;align-items:center;position:static;min-height:36px;width:auto;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;text-decoration:none;color:#ddcce9;font:800 8px/1.2 Inter,system-ui,sans-serif;letter-spacing:.12em;white-space:nowrap}
.arcade-player-wordmark{margin:auto;color:#c6b8d4;font-size:9px;font-weight:900;white-space:nowrap}
[data-player-shell=ready] .arcade-player-nav #connection-state,[data-player-shell=ready] .arcade-player-nav #connection{position:static;inset:auto;display:flex;align-items:center;gap:5px;transform:none;max-width:170px;margin:0 0 0 auto;padding:0;border:0;background:none;box-shadow:none;color:var(--player-cyan);font-size:7px;font-weight:800;white-space:nowrap}
[data-player-shell=ready] .arcade-player-nav #connection-state i{width:5px;height:5px}
[data-player-shell=ready] .arcade-player-nav #account-button{max-width:120px;min-height:30px;padding:4px 6px;font-size:8px}
.arcade-player-title{display:none}
[data-player-shell=ready] .arcade-player-footer{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-height:44px;min-width:0;border-top:1px solid var(--player-line);padding:0;margin:0;color:#d5c6df;font-size:9px;letter-spacing:0}
[data-player-shell=ready] .arcade-player-footer .arcade-player-status{flex:1;min-width:0;margin:0;text-align:left;font:750 9px/1.4 Inter,system-ui,sans-serif;overflow-wrap:anywhere;color:#d5c6df}
[data-player-shell=ready] .arcade-player-footer button{position:static;inset:auto;transform:none;min-width:0;width:auto;min-height:44px;height:auto;flex:none;margin:0;padding:8px 7px;border:1px solid transparent;border-radius:10px;box-shadow:none;font:800 8px/1.2 Inter,system-ui,sans-serif;letter-spacing:.05em;white-space:nowrap;touch-action:manipulation}
[data-player-shell=ready] .arcade-player-footer .arcade-sound-button,[data-player-shell=ready] .arcade-player-footer #music-toggle{background:transparent;color:#bbfdf8;border-color:transparent}
[data-player-shell=ready] .arcade-player-footer .arcade-player-scores{display:flex;align-items:center;justify-content:center;background:transparent;border-color:#ffd57825;color:#ffd578;text-align:center;font-size:8px}
[data-player-shell=ready] .arcade-player-footer .arcade-player-scores[hidden]{display:none}
[data-player-shell=ready] .arcade-player-footer .points-status b,[data-player-shell=ready] .arcade-player-footer .points-status small{display:none}
[data-player-shell=ready] .arcade-player-footer .points-status em{display:block;font:inherit;letter-spacing:inherit;color:inherit}
[data-player-shell=ready] .arcade-player-footer #scores-button span{display:inline}
[data-player-shell=ready] .arcade-player-footer [data-legacy-sound]{display:none!important}
[data-player-shell=ready] .game-screen>.top-bar,[data-player-shell=ready] .range>.top-bar,[data-player-shell=ready] .range>.queue-bar,[data-player-game=rover][data-player-shell=ready] main>header{display:none}
[data-player-shell=ready] .bottom-utility-actions{display:none!important}
[data-player-game=target][data-player-shell=ready] .arcade-player-nav{grid-column:1/-1;grid-row:1}
[data-player-game=target][data-player-shell=ready] .arcade-player-footer{grid-column:1/-1;grid-row:5}
[data-player-game=rover][data-player-shell=ready] main>footer:not(.arcade-player-footer){display:none}
[data-player-shell=ready] .controls,[data-player-shell=ready] .deck{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none}
@media(min-width:900px){
  [data-player-shell=ready] .game-screen>.arcade-player-nav{position:absolute;left:24px;right:24px;top:18px}
  [data-player-shell=ready] .game-screen>.arcade-player-footer{position:absolute;left:24px;right:24px;bottom:16px;z-index:12}
  [data-player-shell=ready] .game-screen>.bottom-bar{bottom:72px}
  [data-player-shell=ready] .game-screen>.overlay,[data-player-shell=ready] .game-screen>.overlay:has(.panel:not([hidden])){bottom:72px}
}
@media(max-width:899px){
  [data-player-shell=ready] .arcade-player-wordmark{display:none}
  [data-player-shell=ready] .arcade-player-nav{height:32px;grid-area:nav}
  [data-player-shell=ready] .arcade-player-title{display:block;grid-area:title;align-self:center;margin:0;font:950 italic 25px/1.1 Inter,system-ui,sans-serif;letter-spacing:-.05em;color:#f4eeff;text-shadow:2px 2px #4c2064}
  [data-player-shell=ready] .arcade-player-footer{grid-area:utilities}
  [data-player-shell=ready] .app-shell{display:block;padding:0;min-height:100dvh;background:#10051e}
  [data-player-shell=ready] .game-screen,[data-player-shell=ready] .game-screen:has(#playing-panel:not([hidden])){display:grid;position:relative;inset:auto;width:min(100%,760px);height:100dvh;min-height:560px;margin:auto;padding:6px max(10px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border:0;border-radius:0;overflow:visible;grid-template-columns:minmax(0,1fr);grid-template-rows:32px 38px minmax(186px,1fr) auto auto 44px;grid-template-areas:"nav" "title" "camera" "views" "panel" "utilities";align-items:stretch;align-content:stretch;gap:6px;background:var(--player-grid-background);background-size:var(--player-grid-size);box-shadow:none}
  [data-player-shell=ready] .game-screen>.brand-stamp,[data-player-shell=ready] .game-screen>.winner-ticker{display:none}
  [data-player-shell=ready] .game-screen>.video-stage{position:relative;inset:auto;grid-area:camera;width:100%;height:100%;min-height:0;overflow:hidden;border:1px solid #76aab34d;border-radius:14px;background:#05040a;isolation:isolate}
  [data-player-shell=ready] .game-screen>.video-stage:after,[data-player-shell=ready] .game-screen>.video-stage:before{display:none}
  [data-player-shell=ready] .video-stage .live-camera-video,[data-player-shell=ready] .snake-app .video-stage #snake-camera,html.top-camera-selected [data-player-shell=ready] .video-stage #live-video-top{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:contain;object-position:center;max-width:100%;max-height:100%}
  [data-player-shell=ready] .game-screen>.turn-hud{position:absolute;grid-area:auto;inset:98px 22px auto;width:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;z-index:3;text-shadow:0 1px 4px #000}
  [data-player-shell=ready] .game-screen>.turn-hud[hidden]{display:none}
  [data-player-shell=ready] .game-screen>.turn-hud span{font-size:8px;padding:4px 7px}
  [data-player-shell=ready] .game-screen>.turn-hud b{font-size:25px}
  [data-player-shell=ready] .game-screen>.overlay,[data-player-shell=ready] .game-screen>.overlay:has(.panel:not([hidden])){position:static;inset:auto;grid-area:panel;display:block;min-width:0;width:100%;margin:0;transform:none;align-self:center}
  [data-player-shell=ready] .overlay>.panel{width:100%;max-width:none;max-height:none;margin:0;padding:8px;background:none;border:0;box-shadow:none}
  [data-player-shell=ready] .overlay>.panel[hidden]{display:none}
  [data-player-shell=ready] .overlay>.panel h1{font-size:21px;margin:4px 0 8px}
  [data-player-shell=ready] #spectator-panel .description,[data-player-shell=ready] #queued-panel .description,[data-player-shell=ready] .desktop-high-scores,[data-player-shell=ready] .desktop-control-keyboard{display:none}
  [data-player-shell=ready] #playing-panel{padding:2px 0}
  [data-player-shell=ready] #playing-panel>.fair-note{display:none}
  [data-player-shell=ready] .playing-panel .controls{display:flex;justify-content:space-evenly;align-items:center;gap:18px;padding:4px 0}
  [data-player-shell=ready] .playing-panel .direction-pad{position:relative;display:grid;grid-template:repeat(3,44px)/repeat(3,44px);gap:0;width:132px;height:132px;flex:0 0 auto;background:radial-gradient(circle at 40% 25%,#23424d,#111527 78%);border:1px solid #6cbdb448;border-radius:50%}
  [data-player-shell=ready] .playing-panel .direction-pad button,[data-player-shell=ready] .playing-panel .direction-pad i{position:static;inset:auto;width:44px;height:44px;border:0;border-radius:14px;min-height:44px;background:none;box-shadow:none;color:#b5e7e3;font-size:18px}
  [data-player-shell=ready] .direction-pad button:nth-child(1){grid-area:1/2}[data-player-shell=ready] .direction-pad button:nth-child(2){grid-area:2/1}[data-player-shell=ready] .direction-pad i{grid-area:2/2}[data-player-shell=ready] .direction-pad button:nth-child(4){grid-area:2/3}[data-player-shell=ready] .direction-pad button:nth-child(5){grid-area:3/2}
  [data-player-shell=ready] .playing-panel .direction-pad i{place-self:center;width:8px;height:8px;min-height:8px;border-radius:50%;background:#31e9df66}
  [data-player-shell=ready] .playing-panel .direction-pad button.is-pressed{background:#31e9df27;color:white}
  [data-player-shell=ready] .playing-panel .drop{width:108px;height:96px;border:1px solid #ff92cc8f;border-radius:28px;background:linear-gradient(145deg,#842b65,#421d49);color:#ffeafa;font-size:12px;box-shadow:inset 0 1px 0 #ffd4ef22}
  [data-player-shell=ready] .snake-run-readout{margin:0 0 4px;gap:8px}
  [data-player-shell=ready] .snake-run-readout span{min-width:0;flex:1;padding:4px 5px;background:none;border:0;font-size:7px}
  [data-player-shell=ready] .snake-run-readout b{display:inline;font-size:13px;margin:0 4px 0 0}
  [data-player-shell=ready] .bottom-bar{display:contents}
  [data-player-shell=ready] .camera-control-group{grid-area:views}
  [data-player-shell=ready] .camera-control-label{display:none}
  [data-player-shell=ready] .camera-switcher{display:flex;width:100%;gap:6px;padding:0;background:none;border:0}
  [data-player-shell=ready] .camera-switcher button{min-width:0;flex:1;min-height:44px;padding:6px;border-radius:10px;font-size:8px}
  [data-player-shell=ready] .status-message{position:static;grid-column:1;margin:0;font-size:10px}
  [data-player-shell=ready] .status-message:empty{display:none}
  [data-player-shell=ready] .high-scores-sheet,[data-player-shell=ready] .game-mode-guide{position:fixed}
  [data-player-game=target][data-player-shell=ready] .range>.range-heading{display:none}
  [data-player-game=target][data-player-shell=ready] .arcade-player-nav{grid-area:1/1/2/-1}
  [data-player-game=target][data-player-shell=ready] .arcade-player-title{grid-area:2/1/3/-1}
  [data-player-game=target][data-player-shell=ready] .arcade-player-footer{grid-area:6/1/7/-1}
  [data-player-game=rover][data-player-shell=ready] main{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:32px 38px minmax(230px,1fr) auto auto 44px;grid-template-areas:"nav" "title" "camera" "panel" "queue" "utilities";gap:6px;height:100dvh;min-height:600px;max-width:760px;padding:6px 10px;margin:auto}
  [data-player-game=rover][data-player-shell=ready] main>.title{display:none}
  [data-player-game=rover][data-player-shell=ready] .layout,[data-player-game=rover][data-player-shell=ready] .main-column{display:contents}
  [data-player-game=rover][data-player-shell=ready] .viewport{grid-area:camera;aspect-ratio:auto;min-height:0;height:100%;border:1px solid #76aab34d;border-radius:14px}
  [data-player-game=rover][data-player-shell=ready] .deck{grid-area:panel;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:132px 64px;gap:8px 16px;padding:6px 0;background:none;border:0;border-radius:0}
  [data-player-game=rover][data-player-shell=ready] .drive-pad{grid-area:1/1;justify-self:center}
  [data-player-game=rover][data-player-shell=ready] .deck .hint,[data-player-game=rover][data-player-shell=ready] .drive-pad .deck-label{display:none}
  [data-player-game=rover][data-player-shell=ready] .stop-wrap{grid-area:1/2;align-self:center;justify-self:center}
  [data-player-game=rover][data-player-shell=ready] #stop{width:108px;height:96px;border-radius:28px}
  [data-player-game=rover][data-player-shell=ready] .drive-settings{grid-area:2/1/3/-1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:16px 44px;gap:4px 16px;min-width:0}
  [data-player-game=rover][data-player-shell=ready] .drive-settings>.deck-label{grid-area:1/1;font-size:7px;margin:0}
  [data-player-game=rover][data-player-shell=ready] .segmented{grid-area:2/1;margin:0}
  [data-player-game=rover][data-player-shell=ready] .zoom-label{grid-area:1/2;margin:0;font-size:7px}
  [data-player-game=rover][data-player-shell=ready] #zoom{grid-area:2/2;height:44px;margin:0}
  [data-player-game=rover][data-player-shell=ready] aside{grid-area:queue;display:block}
  [data-player-game=rover][data-player-shell=ready] .player-card,[data-player-game=rover][data-player-shell=ready] .arcade-is-playing aside{display:none}
  [data-player-game=rover][data-player-shell=ready] .queue-card{padding:8px;border-radius:12px}
  [data-player-game=rover][data-player-shell=ready] #queue-list{max-height:70px;overflow:auto}
  [data-player-game=rover][data-player-shell=ready] #notice{margin:0;font-size:10px}
  [data-player-game=rover][data-player-shell=ready] #notice:empty{display:none}
}
@media(max-width:899px){
  [data-player-game=rover][data-player-shell=ready] .deck .pad{display:grid;position:relative;grid-template:repeat(3,44px)/repeat(3,44px);gap:0;width:132px;height:132px;margin:0;border:1px solid #6cbdb448;border-radius:50%;background:radial-gradient(circle at 40% 25%,#23424d,#111527 78%);box-shadow:inset 0 1px 0 #ffffff12}
  [data-player-game=rover][data-player-shell=ready] .deck .pad button{position:static;inset:auto;width:44px;height:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:14px;background:none;box-shadow:none;color:#b5e7e3;font-size:18px}
  [data-player-game=rover][data-player-shell=ready] .pad button small{display:none}
  [data-player-game=rover][data-player-shell=ready] .pad button:nth-child(1){grid-area:1/2}
  [data-player-game=rover][data-player-shell=ready] .pad button:nth-child(2){grid-area:2/1}
  [data-player-game=rover][data-player-shell=ready] .pad button:nth-child(4){grid-area:2/3}
  [data-player-game=rover][data-player-shell=ready] .pad button:nth-child(5){grid-area:3/2}
  [data-player-game=rover][data-player-shell=ready] .pad .pad-core{display:block;grid-area:2/2;place-self:center;width:8px;height:8px;border:0;border-radius:50%;background:#31e9df66;font-size:0}
  [data-player-game=rover][data-player-shell=ready] .pad button.held,[data-player-game=rover][data-player-shell=ready] .pad button.is-pressed{background:#31e9df27;color:white}
  [data-player-game=rover][data-player-shell=ready] #stop{background:linear-gradient(145deg,#842b65,#421d49);border-color:#ff92cc8f;color:#ffeafa}
  [data-player-game=rover][data-player-shell=ready] #stop small{display:none}
}
@media(min-width:761px) and (max-width:899px){
  [data-player-game=target][data-player-shell=ready] .arcade-player-title{display:none}
  [data-player-game=target][data-player-shell=ready] .range>.range-heading{display:flex}
  [data-player-game=target][data-player-shell=ready] .arcade-player-footer{grid-area:5/1/6/-1}
}
@media(max-width:899px){
  [data-player-shell=ready] .arcade-player-nav #account-button{width:auto;max-width:160px;min-width:0;flex:0 1 auto;margin-left:auto;padding:5px 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
  [data-player-game=claw][data-player-shell=ready] .arcade-player-nav #connection-state{flex:0 0 8px;width:8px;min-width:8px;margin-left:0}
  [data-player-game=claw][data-player-shell=ready] .arcade-player-nav #connection-state span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  /* Legacy mobile.css assigns this badge to a removed grid area, creating an
     implicit second column. It must never participate in the player grid. */
  [data-player-game=claw][data-player-shell=ready] .game-screen>.replay-notice{position:absolute;grid-area:auto;inset:104px 22px auto auto;justify-self:auto;max-width:calc(100% - 44px);padding:5px 8px;z-index:5}
  [data-player-game=claw][data-player-shell=ready] .replay-notice span{display:none}
}

[data-player-shell=ready] .arcade-player-footer .arcade-player-queue-action{max-width:90px;white-space:normal;line-height:1.2}
[data-player-shell=ready] .arcade-player-footer :is(#join-button,#join,#queue){background:linear-gradient(115deg,#40e4d7,#369fc6);border-color:#a8fff255;color:#031f2b}
[data-player-shell=ready] .arcade-player-footer .arcade-player-status{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
@media(max-width:899px) and (max-height:650px){
  [data-player-game=rover][data-player-shell=ready] main{min-height:560px;grid-template-rows:32px 38px minmax(196px,1fr) auto auto 44px}
  [data-player-game=rover][data-player-shell=ready] .hud-top{top:12px}
  [data-player-game=rover][data-player-shell=ready] .timer b{font-size:22px}
  [data-player-game=rover][data-player-shell=ready] .chassis-hud{bottom:58px;width:76px;height:54px}
  [data-player-game=rover][data-player-shell=ready] .chassis-hud canvas{height:50px}
  [data-player-game=rover][data-player-shell=ready] .tilt-status-hud{bottom:51px}
  [data-player-game=rover][data-player-shell=ready] .pitch-hud{bottom:104px}
  [data-player-game=rover][data-player-shell=ready] .roll-hud{bottom:68px}
  [data-player-game=rover][data-player-shell=ready] .hud-bottom{bottom:12px}
  [data-player-game=rover][data-player-shell=ready] .speed strong{font-size:20px}
  [data-player-game=rover][data-player-shell=ready] .battery>b{font-size:17px}
  [data-player-game=rover][data-player-shell=ready] .feed-footer,[data-player-game=rover][data-player-shell=ready] .drive-status>span{display:none}
}

[data-player-shell=ready] :is(.deck,.control-deck)[hidden]{display:none!important}
@media(max-width:899px){
  [data-player-game=rover][data-player-shell=ready] main:has(.deck[hidden]){grid-template-rows:32px 38px minmax(196px,1fr) 0 auto 44px}
}

/* Claw is the layout reference: camera, player/queue panel, utility row. */
[data-player-shell=ready] .arcade-player-summary{text-align:center;align-self:center;min-width:0;padding:12px 8px;color:#f4eeff}
[data-player-shell=ready] .arcade-player-summary[hidden]{display:none!important}
[data-player-shell=ready] .arcade-player-summary .eyebrow{margin:0 0 4px;font:900 10px/1.3 Inter,system-ui,sans-serif;letter-spacing:.12em;color:#d89bf0}
[data-player-shell=ready] .arcade-player-summary h1{margin:0 0 8px;font:900 21px/1.15 Inter,system-ui,sans-serif;letter-spacing:-.04em;overflow-wrap:anywhere}
[data-player-shell=ready] .arcade-player-summary .queue-summary{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 12px;margin:0;font:500 11px/1.5 Inter,system-ui,sans-serif;color:#ddd0e5}
[data-player-shell=ready] .arcade-player-summary .queue-active-player{margin:5px 0 8px;font:700 11px/1.4 Inter,system-ui,sans-serif;color:#f4eeff}
[data-player-shell=ready] .arcade-player-summary .queue-active-player[hidden]{display:none}
[data-player-shell=ready] .arcade-player-summary .queue-active-player span{font-size:8px;letter-spacing:.08em;color:#31e9df;margin-right:6px}
[data-player-game=rover][data-player-shell=ready] .layout>aside{display:none}
[data-player-game=rover][data-player-shell=ready] .layout{grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){
  [data-player-game=target][data-player-shell=ready] .range:has(.control-deck[hidden]){grid-template-columns:minmax(0,1fr) 280px}
  [data-player-game=target][data-player-shell=ready] .arcade-player-summary{grid-column:2;grid-row:3/5}
}
@media(max-width:899px) and (min-height:561px){
  [data-player-game=target][data-player-shell=ready] .range,
  [data-player-game=target][data-player-shell=ready] .range:has(.control-deck[hidden]),
  [data-player-game=rover][data-player-shell=ready] main,
  [data-player-game=rover][data-player-shell=ready] main:has(.deck[hidden]){
    display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:32px 38px minmax(186px,1fr) auto auto 44px;
    grid-template-areas:"nav" "title" "camera" "controls" "summary" "utilities";
    gap:6px;width:min(100%,760px);height:100dvh;min-height:560px;margin:auto;
    padding:6px max(10px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));
    background:var(--player-grid-background);background-size:var(--player-grid-size);
  }
  [data-player-game=target][data-player-shell=ready] .range>.range-heading{display:none}
  [data-player-game=target][data-player-shell=ready] .arcade-player-title{display:block;grid-area:title}
  [data-player-game=target][data-player-shell=ready] .arcade-player-nav{grid-area:nav}
  [data-player-game=target][data-player-shell=ready] .arcade-player-footer{grid-area:utilities}
  [data-player-game=target][data-player-shell=ready] .stage{grid-area:camera;height:100%;border:1px solid #76aab34d;border-radius:14px}
  [data-player-game=target][data-player-shell=ready] .control-deck{grid-area:controls}
  [data-player-game=rover][data-player-shell=ready] .deck{grid-area:controls}
  [data-player-shell=ready] :is(main,.range)>.arcade-player-summary{grid-area:summary;padding:8px}
  [data-player-game=target][data-player-shell=ready] .sound-bar{grid-row:7}
  [data-player-game=target][data-player-shell=ready] .sound-bar:has(#message:empty){display:none}
  [data-player-game=target][data-player-shell=ready] .control-deck{grid-template-rows:132px 44px;gap:8px 18px;padding:4px 0}
  [data-player-game=target][data-player-shell=ready] .aim,[data-player-game=target][data-player-shell=ready] .pad{width:132px;height:132px}
  [data-player-game=target][data-player-shell=ready] .fire{width:108px;height:96px}
}

[data-player-shell=ready] .arcade-player-summary .queue-summary{padding:0;border:0;border-radius:0;background:none;box-shadow:none}
[data-player-shell=ready] .arcade-player-footer :is(#leave-button,#leave){background:#281b36;border-color:#9f73c532;color:#ddd0e5}

/* Identity has the same space and visual treatment in every game. */
[data-player-shell=ready] .arcade-player-nav #account-button{display:block;box-sizing:border-box;width:auto;min-width:0;max-width:200px;min-height:30px;padding:6px 9px;border:1px solid #bc649873;border-radius:10px;background:#541b493d;color:#efd5ec;font:800 10px/16px Inter,system-ui,sans-serif;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}
[data-player-shell=ready] .arcade-player-nav #account-button[hidden]{display:none}
@media(max-width:899px){
  [data-player-shell=ready] .arcade-player-nav #account-button{margin-left:auto;max-width:160px}
  [data-player-shell=ready] .arcade-player-nav #connection-state{flex:0 0 8px;width:8px;min-width:8px;margin-left:0}
  [data-player-shell=ready] .arcade-player-nav #connection-state span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  [data-player-shell=ready] .arcade-player-nav #connection{flex:0 0 8px;width:8px;height:8px;min-width:8px;max-width:8px;overflow:hidden;font-size:0;border-radius:50%;background:currentColor;margin-left:0}
}

/* Restore the Arcade grid in page margins and exposed video letterboxing. */
body[data-player-shell=ready]{
  --player-grid-background:linear-gradient(#31e9df14 1px,transparent 1px),linear-gradient(90deg,#ff4ba81a 1px,transparent 1px),radial-gradient(ellipse at 70% 0,#361142,transparent 55%),radial-gradient(ellipse at 10% 95%,#12313e88,transparent 50%),linear-gradient(#10051e,#10051e);
  --player-grid-size:28px 28px,28px 28px,100% 100%,100% 100%,100% 100%;
  background:var(--player-grid-background);background-size:var(--player-grid-size);
}
[data-player-shell=ready] .game-screen,
[data-player-game=target][data-player-shell=ready] .range,
[data-player-game=rover][data-player-shell=ready] main{
  background:var(--player-grid-background);background-size:var(--player-grid-size);
}
[data-player-shell=ready] .game-screen>.video-stage,
[data-player-game=target][data-player-shell=ready] .stage,
[data-player-game=rover][data-player-shell=ready] .viewport{
  background:var(--player-grid-background);background-size:var(--player-grid-size);
}
[data-player-shell=ready] .game-screen>.video-stage:before{display:none}
[data-player-shell=ready] .video-stage :is(.live-camera-video,#snake-camera){background:transparent}
@media(max-width:899px){
  /* Old glass buttons used backdrop blur beyond the new circular pad. */
  [data-player-shell=ready] .playing-panel .direction-pad{overflow:hidden;isolation:isolate;clip-path:circle(50%);backdrop-filter:none;-webkit-backdrop-filter:none}
  [data-player-shell=ready] .playing-panel .direction-pad button{backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
}
