:root{color-scheme:dark;--ink:#0a121b;--panel:#14212e;--line:#304253;--text:#e4ebf0;--muted:#96a8b8;--amber:#e4bd79;--accent:#9cdaa8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}
body{margin:0;min-width:300px;background:radial-gradient(ellipse at 50% -20%,#223249 0,transparent 60%),linear-gradient(#0d1723,#090f17 74%);color:var(--text)}
body::after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.045;background:repeating-linear-gradient(0deg,transparent 0 3px,#c5d4dd 3px 4px);z-index:10}
button{font:650 11px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.055em;color:var(--text);background:#1b2a38;border:1px solid #3b4c5c;border-radius:5px;min-height:40px;padding:10px 15px;cursor:pointer;transition:border-color .15s,background .15s}
button:hover{background:#263a4a;border-color:#718697}
button:focus-visible,canvas:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
button:disabled{opacity:.4;cursor:default}
button[hidden],[hidden]{display:none!important}
.arcade-room{max-width:1220px;margin:auto;padding:44px 40px 0;min-height:100vh}
.marquee{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding:0 0 27px;border-bottom:1px solid var(--line)}
.volenger-mark,.eyebrow{display:block;font:650 10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.19em;color:var(--amber);text-transform:uppercase;margin:0 0 12px}
h1{font-size:34px;letter-spacing:.11em;line-height:1.13;font-weight:420;margin:0}
h1 strong{font-weight:800}
.marquee-identity>p:not(.volenger-mark){margin:12px 0 0;font-size:13px;color:var(--muted);letter-spacing:.025em}
.volenger-mark a{color:inherit;text-decoration:none}
.volenger-mark a:hover{text-decoration:underline}
.volenger-mark a:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:2px}
.room-controls{text-align:right}
.registered-identity{margin:0 0 12px;color:var(--amber);font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}
.registered-identity b{display:block;margin-top:6px;color:var(--text);font-size:20px;line-height:1.25;font-weight:650;letter-spacing:.02em;overflow-wrap:anywhere}
.callsign-label{display:block;color:var(--muted);font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;margin-bottom:13px}
.callsign-label b{display:inline-block;color:var(--text);margin-left:10px;letter-spacing:0;font-size:12px;font-weight:500}
#callsign-change{min-height:32px;padding:7px 10px;margin-left:8px;font-size:9px}
#callsign-note{font:9px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--amber);margin:-5px 0 12px}
.room-buttons{display:flex;gap:7px;justify-content:flex-end}
.room-buttons button{padding:9px 12px;min-height:34px}
.room-buttons span{color:var(--amber);margin-left:4px}
.room-strip{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:26px 0 23px;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;color:#b0bfca}
.room-strip p{margin:0}
.room-strip p>span{margin-left:18px;color:#748798}
#global-traffic{font-size:9px;text-align:right;color:#869aab}
.status-light{display:inline-block;width:5px;height:5px;background:#a5d7ad;border-radius:50%;margin-right:8px;box-shadow:0 0 9px #b7df9944;vertical-align:2px}
.cabinet-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:29px 30px;padding:0 13px 42px;position:relative;background:linear-gradient(180deg,transparent 70%,#141b2380)}
.cabinet-row::after{content:"";position:absolute;bottom:0;left:0;right:0;height:125px;z-index:-1;background:repeating-linear-gradient(0deg,transparent 0 28px,#26313f44 29px 30px);transform:perspective(330px) rotateX(25deg);transform-origin:bottom}
.cabinet{position:relative;padding:14px 15px 19px;background:linear-gradient(110deg,#233444,#192633 25%,#14202b 85%,#0e1822);border:1px solid #344b5d;border-radius:12px 12px 4px 4px;box-shadow:7px 7px 0 #050b1160,0 20px 24px -15px #0009;--accent:#9cdaa8;transition:border-color .2s,box-shadow .2s}
.cabinet::before{content:"";position:absolute;top:12px;left:-7px;bottom:0;width:7px;background:#0b131c;border:1px solid #2a3b4d;border-radius:8px 0 0 3px}
.cabinet::after{content:"";position:absolute;height:16px;bottom:-17px;left:15px;right:15px;background:linear-gradient(var(--accent),transparent);opacity:.06;transform:scaleY(-1);filter:blur(6px);pointer-events:none}
.cabinet:hover,.cabinet:focus-within{border-color:var(--accent);box-shadow:7px 7px 0 #050b1160,0 0 20px -10px var(--accent)}
.cabinet-top{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:4px 2px 10px}
.cabinet-number{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--accent);letter-spacing:.06em}
.cabinet-top>span:last-child{font:8px ui-monospace,SFMono-Regular,Consolas,monospace;color:#91a5b5;letter-spacing:.06em}
.preview-bezel{position:relative;border:7px solid #09121b;border-top-width:9px;border-radius:9px;background:#081019;box-shadow:inset 0 0 0 1px #364350,0 1px 0 #455465}
.preview-bezel::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,#e3f3ff0c,transparent 40%);pointer-events:none}
.cabinet-preview{display:block;width:100%;height:auto;aspect-ratio:400/170;opacity:.87;transition:opacity .2s}
.cabinet:hover .cabinet-preview,.cabinet:focus-within .cabinet-preview{opacity:1}
.cabinet h2{font-size:16px;letter-spacing:.045em;margin:17px 0 6px;font-weight:780}
.cabinet-tag{font:8px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em;color:var(--accent);margin:0 0 12px}
.cabinet-controls{font-size:10px;line-height:1.5;color:#a4b4c1;margin:0 0 13px;min-height:30px}
.cabinet-scores{display:flex;justify-content:space-between;gap:7px;padding:11px 0 13px;border-top:1px solid #304050;font:8px ui-monospace,SFMono-Regular,Consolas,monospace;color:#8ba0b1;line-height:1.8}
.cabinet-scores b{display:block;font-size:11px;color:var(--text);font-weight:550}
.cabinet-scores>span:last-child{text-align:right}
.token-button{background:#cdae75;color:#161f27;border-color:#d4ba88;min-height:38px;font-weight:800}
.token-button:hover{background:#e8ca91;border-color:#f4daa6}
.cabinet .token-button{width:100%;display:flex;justify-content:space-between;align-items:center}
.cabinet .token-button>span{font-size:16px;font-weight:400;line-height:12px}
.cabinet-feet{display:flex;gap:3px;justify-content:center;margin-top:13px;opacity:.38}
.cabinet-feet i{height:2px;width:15px;background:#b2c1cb}
.dormant{border-color:#293641;background:linear-gradient(110deg,#1a252f,#0d1720);color:#81919e}
.dormant .cabinet-preview{opacity:.3}
.dormant h2{font-weight:550}
.dormant .cabinet-controls{min-height:55px;font-size:11px}
.dormant .bay-note{font:10px ui-monospace,SFMono-Regular,Consolas,monospace;margin:22px 0 17px;color:#5c6e7c}
.dormant.is-ready{border-color:#a58a5c}
.dormant.is-ready .bay-note{color:var(--amber)}
body[data-attract="true"] .cabinet:not(.dormant) .preview-bezel{animation:attract-wake 4s ease-in-out infinite alternate}
body[data-attract="true"] .cabinet:nth-child(2) .preview-bezel{animation-delay:-1.4s}
body[data-attract="true"] .cabinet:nth-child(3) .preview-bezel{animation-delay:-2.8s}
@keyframes attract-wake{from{box-shadow:0 0 0 transparent}to{box-shadow:0 0 15px -7px var(--accent)}}
.room-footer{display:flex;justify-content:space-between;gap:15px;padding:23px 0 30px;border-top:1px solid #293c4b;color:#8fa0ae;font:9px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em}
.room-footer p{margin:0;line-height:1.8}
.room-footer b{font-size:15px;color:var(--amber);margin-left:8px}
.room-footer p>span:last-child{font-size:8px;margin-left:12px;color:#64798b}
.token-symbol{color:var(--amber);font-size:15px;vertical-align:-1px;margin-right:7px}
#room-note{font-size:8px;text-align:right;align-self:center;color:#6f8596}
.game-room{--accent:#9cdaa8;padding-top:28px;padding-bottom:40px;max-width:1000px;margin:auto}
.cabinet-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}
.cabinet-heading .eyebrow{margin-bottom:6px;color:var(--accent)}
.cabinet-heading h2{font-size:26px;letter-spacing:.06em;margin:0}
.game-instruction{color:#acbdcb;font-size:13px;line-height:1.65;max-width:860px;margin:14px 0 20px}
.screen-bezel{background:#08101a;border:10px solid #14212e;border-top-width:15px;border-radius:14px;box-shadow:0 0 0 1px #354a5d,0 12px 25px #0005;max-width:860px;margin:auto}
#game-canvas{width:100%;height:auto;aspect-ratio:3/2;display:block;touch-action:none;border-radius:4px}
.game-control-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0 12px}
.run-controls{display:flex;gap:7px;flex-wrap:wrap}
#game-status{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--accent);text-align:right;margin:0;line-height:1.5}
.touch-controls{display:flex;align-items:center;gap:14px;padding-bottom:20px}
.direction-controls{display:flex;gap:5px}
.direction-controls button{padding:8px 13px;font-size:17px;min-width:43px;min-height:44px}
.primary-control{min-height:44px;background:#243648;border-color:#516575}
#control-hint{font-size:11px;color:var(--muted);line-height:1.4}
.cabinet-bottom{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid #2f4253;padding-top:23px}
.run-result{font-size:13px;line-height:1.7}
.run-result .eyebrow{color:var(--accent)}
#result-message{font-weight:600;margin:0 0 8px}
#local-best{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:#a3b5c5}
#score-retry{margin-top:10px}
.board-title{display:flex;justify-content:space-between;align-items:center;gap:12px}
.board-title h3{margin:0;font:650 11px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}
#board-status{font:9px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}
#leaderboard{list-style:none;margin:13px 0 0;padding:0;font:11px ui-monospace,SFMono-Regular,Consolas,monospace}
#leaderboard li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #20313f;padding:9px 2px}
#leaderboard li b{color:var(--accent);font-weight:550}
.board-ownership{display:block;margin-top:5px;color:var(--muted);font-size:8px;letter-spacing:.08em}
.board-filter{display:flex;gap:6px;margin-top:13px}
.board-filter button{min-height:34px;padding:7px 10px;font-size:9px}
.board-filter button[aria-pressed="true"]{border-color:var(--amber);color:var(--amber)}
dialog{color:var(--text);background:#14212e;border:1px solid #496074;border-radius:12px;max-width:670px;width:calc(100% - 36px);max-height:85vh;padding:27px;box-shadow:0 30px 100px #0009}
dialog::backdrop{background:#030911c9}
.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}
.dialog-heading h2{margin:0;font-size:24px}
.dialog-heading button{font-size:22px;min-width:42px;padding:4px 12px}
dialog>p{color:#b3c2cf;font-size:13px;line-height:1.7}
#result-dialog{--accent:#9cdaa8;max-width:560px;width:calc(100% - 32px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);padding:0;margin:auto;overflow:auto;overscroll-behavior:contain;border-color:var(--accent);background:linear-gradient(145deg,#182c38,#0d1b27 75%);box-shadow:0 25px 100px #000b,0 0 40px -25px var(--accent)}
.result-dialog-content{padding:30px}
.result-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
#result-dialog-cabinet{color:var(--accent);margin-bottom:10px;line-height:1.6;overflow-wrap:anywhere}
#result-dialog-title{font-size:clamp(23px,6vw,31px);letter-spacing:.07em;line-height:1.2;margin:0;font-weight:750}
#result-dialog-title:focus{outline:none}
#result-dialog-close{flex:none;min-width:44px;min-height:44px;padding:4px 10px;font-size:25px;line-height:1}
.result-dialog-score{color:var(--accent);font:750 clamp(34px,8vw,54px)/1.15 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:-.035em;margin:26px 0 8px;overflow-wrap:anywhere}
.result-dialog-context{color:#b7cbd4;font:10px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;margin:0}
.result-dialog-message{color:var(--text);font-size:14px;line-height:1.7;margin:23px 0;overflow-wrap:anywhere;white-space:pre-line}
.result-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.result-dialog-actions button{min-height:44px;white-space:normal;line-height:1.5;padding:11px 14px}
#result-view-details{grid-column:1/-1;background:#142633;color:#c2d2db;border-color:#405968}
.result-dialog-status{color:#98afbf;font-size:11px;line-height:1.65;margin:16px 0 0;overflow-wrap:anywhere}
#result-dialog button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
#result-message:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:2px}
@media(max-width:470px){.result-dialog-content{padding:22px}.result-dialog-heading{gap:10px}.result-dialog-score{margin-top:22px}.result-dialog-message{font-size:13px;margin:18px 0}}
@media(max-height:500px){.result-dialog-content{padding:18px 24px}.result-dialog-heading{align-items:center}#result-dialog-cabinet{margin-bottom:4px}#result-dialog-title{font-size:24px}.result-dialog-score{font-size:36px;margin:12px 0 4px}.result-dialog-message{font-size:12px;line-height:1.5;margin:12px 0}.result-dialog-status{font-size:10px;margin-top:10px}.result-dialog-actions{grid-template-columns:1fr 1fr 1fr;gap:8px}#result-view-details{grid-column:auto}.result-dialog-actions button{padding:9px 8px;font-size:10px}}
#callsign-dialog{max-width:560px}
#callsign-dialog label{display:block;font:11px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;margin:22px 0 8px}
#callsign-stem{display:block;width:100%;min-height:44px;padding:10px 12px;font:16px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--text);background:#0c1824;border:1px solid #506478;border-radius:5px}
#callsign-stem:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.callsign-preview{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}
.callsign-preview b{margin-left:10px;color:var(--text);font-weight:500}
#callsign-status{min-height:44px;color:var(--amber);font:11px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace}
.callsign-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.callsign-actions button:first-child{margin-right:auto}

.account-control{margin-bottom:12px}
#account-toggle{min-height:44px;padding:7px 11px;font-size:9px;letter-spacing:.08em;background:#14212e;color:#b3c2cf}
#account-toggle::before{content:"";display:inline-block;width:5px;height:5px;border:1px solid #96a8b8;border-radius:50%;margin-right:8px;vertical-align:1px}
#account-toggle[data-authenticated="true"]::before{background:#9cdaa8;border-color:#9cdaa8}
#account-toggle[data-authenticated="true"]{color:#b9ddc3;border-color:#4d685c}
#account-toggle[data-signed-out="true"]{border-color:var(--amber);color:#f5ddb0;background:#352d25;box-shadow:0 0 0 1px #eac88935;animation:account-invitation 3.6s ease-in-out infinite}
#account-toggle:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
@keyframes account-invitation{0%,100%{box-shadow:0 0 0 1px #eac88935}50%{box-shadow:0 0 15px 2px #eac88935}}
#account-dialog{max-width:520px}
#account-dialog .dialog-heading{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:22px}
#account-dialog .account-eyebrow{font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;color:var(--amber);margin:0 0 12px}
#account-summary{font-size:19px;line-height:1.4;font-weight:600;margin:0 0 10px}
#account-detail{margin:0 0 14px}
#account-signout-note{font-size:12px;color:var(--muted);margin:0}
#account-status{min-height:40px;font:11px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--amber);margin:18px 0 14px}
#account-notice{font:11px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);margin:0 0 16px}
#account-profile-form{margin:20px 0 18px}
#account-profile-form label{display:block;font:11px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;margin:0 0 8px}
#account-profile-guidance{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 12px}
#account-profile-callsign{display:block;width:100%;min-height:44px;padding:10px 12px;font:16px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--text);background:#0c1824;border:1px solid #506478;border-radius:5px}
#account-profile-callsign:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
#account-profile-status{font:11px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--amber);margin:10px 0}
#account-profile-create{width:100%;min-height:44px;white-space:normal;line-height:1.6;margin-top:12px}
#account-player{border-top:1px solid var(--line);margin:18px 0;padding-top:18px;font-size:12px;line-height:1.65}
#account-player h3{margin:0 0 7px;font-size:20px;overflow-wrap:anywhere}
#account-player h4{font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;color:var(--amber);margin:22px 0 10px}
#account-player-created,#account-player-accepted{color:var(--muted);margin:5px 0}
#account-player-status,#account-rename-status,#account-rename-availability{color:var(--amber);font-size:11px;line-height:1.7}
.player-results{list-style:none;padding:0;margin:0}
.player-results li{display:flex;justify-content:space-between;gap:3px 12px;flex-wrap:wrap;border-bottom:1px solid #293b4a;padding:8px 0;font-size:11px}
.player-results b{font-weight:600;color:var(--text)}
.player-results small{flex-basis:100%;color:var(--muted);font-size:10px}
#account-rename-form{margin:24px 0 18px;border-top:1px solid var(--line);padding-top:18px}
#account-rename-form label{font:11px ui-monospace,SFMono-Regular,Consolas,monospace}
#account-rename-guidance{font-size:11px;color:var(--muted);line-height:1.7}
#account-rename-callsign{display:block;width:100%;min-height:44px;padding:10px 12px;font:16px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--text);background:#0c1824;border:1px solid #506478;border-radius:5px}
#account-rename-callsign:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
#account-rename-save{width:100%;min-height:44px;white-space:normal;line-height:1.6}
.account-actions{display:flex;flex-wrap:wrap;gap:9px}
.account-tab-option{flex-basis:100%}
#account-full-page-note{font-size:12px;line-height:1.6;color:var(--muted);margin:8px 0 4px}
.account-actions .token-button{flex-basis:100%;min-height:44px}
.account-actions a{display:inline-flex;align-items:center;min-height:40px;color:var(--amber);font-size:12px}
.account-actions a:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
#account-dialog .account-guest-note{border-top:1px solid var(--line);padding-top:18px;margin:22px 0 0;font-size:11px;color:var(--muted)}
.account-return{max-width:520px;margin:12vh auto;padding:26px;line-height:1.7}
.account-return h2{font-size:25px;letter-spacing:0}
.account-return>p:not(.eyebrow){font-size:14px;color:#b3c2cf}
body[data-account-return="true"] .arcade-room{display:none}
body[data-account-return="true"] .copyright-footer{max-width:520px;margin:auto}
.achievement-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.achievement-source{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--amber)}
#achievement-sync-status,#account-player-achievements{font-size:11px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere}
#achievement-retry{margin:0 0 18px;max-width:100%;white-space:normal;line-height:1.6;min-height:44px}
.badge{border:1px solid #2f4354;background:#11202c;padding:13px;border-radius:5px;font-size:12px}
.badge strong{display:block;font-weight:600;color:#9bafbd}
.badge p{font-size:11px;color:#8197a8;line-height:1.45;margin:7px 0 0}
.badge.is-earned{border-color:#9b835b;background:#282a29}
.badge.is-earned strong{color:#e6c893}
.badge-toast{pointer-events:none;position:fixed;bottom:22px;left:50%;transform:translateX(-50%);padding:14px 22px;background:#28342e;border:1px solid #aebd89;border-radius:7px;color:#e6eecf;font:12px ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:0 12px 40px #0008;z-index:20;max-width:calc(100% - 30px);text-align:center}
.noscript-note{text-align:center;padding:20px}
.game-room[data-game="circuit-shift"] #game-canvas{aspect-ratio:1}
.game-room[data-game="packet-panic"] .direction-controls button,.game-room[data-game="circuit-shift"] .touch-controls button{min-width:44px;min-height:44px}
@media(min-width:1600px){.arcade-room{padding-top:64px}.cabinet-row{gap:34px 42px;padding-top:10px;padding-bottom:60px}.cabinet{padding:19px 20px 23px}.marquee{padding-bottom:34px}.room-strip{margin-top:31px;margin-bottom:30px}}
@media(max-width:1000px){.arcade-room{padding:32px 27px 0}.marquee{align-items:flex-start}h1{font-size:27px}.cabinet-row{gap:25px 23px;padding-left:5px;padding-right:5px}.cabinet h2{font-size:13px}.room-strip p>span{display:none}.room-footer p>span:last-child{display:none}.room-controls{min-width:280px}}
@media(max-width:720px){#header-identity[data-registered="true"] .callsign-label{justify-content:flex-start}.arcade-room{padding:25px 23px 0}.marquee{flex-direction:column;gap:20px}.room-controls{text-align:left;width:100%;min-width:0}.room-buttons{justify-content:flex-start}.callsign-label{margin-bottom:11px}.cabinet-row{grid-template-columns:repeat(2,minmax(0,1fr))}.room-strip{font-size:9px;align-items:flex-start}.room-footer{flex-direction:column;gap:10px}#room-note{text-align:left;align-self:flex-start}.cabinet-heading h2{font-size:20px}.touch-controls{flex-wrap:wrap}#control-hint{width:100%}.cabinet-bottom{gap:20px;grid-template-columns:1fr}.screen-bezel{border-width:7px}.game-instruction{font-size:12px}.game-control-bar{align-items:flex-start}.game-control-bar button{padding:9px 11px}.achievement-list{grid-template-columns:1fr}}
@media(max-width:470px){#header-identity[data-registered="true"] .callsign-label>span{flex-basis:100%}.cabinet-row{grid-template-columns:1fr;gap:30px;padding:0 15px 40px}.cabinet{padding:17px 19px 21px}.cabinet h2{font-size:18px}.cabinet-tag{font-size:9px}.cabinet-controls{min-height:0;font-size:11px}.room-strip{flex-direction:column;gap:10px}#global-traffic{text-align:left}.marquee h1{font-size:29px;letter-spacing:.065em}.room-buttons button{font-size:10px;padding:8px 10px}.game-control-bar{flex-direction:column;gap:11px}#game-status{text-align:left}.direction-controls{gap:4px}.touch-controls{gap:8px}.direction-controls button{min-width:40px;padding:8px 10px}.primary-control{padding:10px}dialog{padding:20px}.account-actions button{min-height:44px}.account-actions .token-button{white-space:normal;line-height:1.6}}
@media(max-height:500px) and (min-width:600px){.arcade-room{padding-top:18px}.marquee-identity>p:not(.volenger-mark){display:none}.marquee{align-items:center;padding-bottom:17px}.volenger-mark{margin-bottom:7px}.game-room{padding-top:18px}.game-instruction{margin:10px 0}.screen-bezel{max-width:590px}.room-strip{margin:18px 0}.cabinet-row{gap:24px}.cabinet-controls{min-height:42px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body::after{display:none}.cabinet::after{filter:none;opacity:.03}}
@media(max-width:720px),(pointer:coarse){#account-toggle[data-signed-out="true"]{animation:none;box-shadow:0 0 0 1px #eac88955}}
@media(prefers-reduced-motion:reduce){#account-toggle[data-signed-out="true"]{animation:none;box-shadow:0 0 0 2px #eac88955}}
