.arcade-page{max-width:1160px;margin:0 auto;font-family:Menlo,Consolas,monospace;color:var(--ink,#151515)}
.arcade-heading{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:2px solid var(--ink,#151515);padding-bottom:24px;margin-bottom:36px;gap:20px}.arcade-kicker{font-size:11px;letter-spacing:.14em;margin:0 0 9px}.arcade-heading h1{font-size:clamp(40px,6vw,72px);line-height:1;margin:0;letter-spacing:-.07em;font-weight:500}.arcade-heading h1 span{color:var(--accent,#2436b2);font-size:.55em;margin-left:14px;vertical-align:top}.arcade-edition{font-size:10px;line-height:1.7;text-align:right;margin:0;letter-spacing:.05em}.arcade-grid{display:grid;grid-template-columns:minmax(140px,1fr) minmax(280px,462px) minmax(210px,1.25fr);gap:38px;align-items:start}.arcade-page h2{font-size:11px;letter-spacing:.06em;font-weight:500;margin:0 0 18px}.arcade-instructions p{font-size:12px;line-height:1.8;margin:0 0 24px}.arcade-instructions dl{font-size:10px;line-height:1.9;margin:26px 0}.arcade-instructions dt{color:var(--accent,#2436b2);margin-top:12px}.arcade-instructions dd{margin:0}.arcade-instructions .arcade-note{font-size:10px;opacity:.72;line-height:1.8}.arcade-machine{min-width:0}.arcade-screen{background:#000;border:1px solid #252525;padding:6px}.arcade-screen canvas{display:block;width:100%;height:auto;aspect-ratio:224/288;background:#000;image-rendering:pixelated;touch-action:none;outline-offset:6px}.arcade-toolbar{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:5px;margin-top:12px}.arcade-page button{background:transparent;color:inherit;border:1px solid #b9b8b1;border-radius:0;padding:12px 5px;font:9px Menlo,monospace;cursor:pointer;line-height:1.4;min-height:42px}.arcade-page button:hover,.arcade-page button[aria-pressed="true"]{color:var(--accent,#2436b2);border-color:var(--accent,#2436b2)}.arcade-page #arcade-start{background:var(--accent,#2436b2);color:#fff;border-color:var(--accent,#2436b2)}.arcade-page button:disabled{opacity:.4;cursor:default}.arcade-page button:focus-visible,.arcade-page input:focus-visible{outline:2px solid var(--accent,#2436b2);outline-offset:3px}.arcade-touch{display:grid;grid-template-columns:1fr 1fr 1.8fr 1.8fr;gap:5px;margin-top:6px}.arcade-touch button{touch-action:none;user-select:none;-webkit-user-select:none}.arcade-touch [data-control="1"],.arcade-touch [data-control="2"]{font-size:20px;padding:7px}.arcade-fire{letter-spacing:.13em}.arcade-status{font-size:10px;line-height:1.7;min-height:34px;margin:15px 0 0}.arcade-board-heading{border-bottom:1px solid #171717;padding:0 0 14px}.arcade-board-heading h2{font-size:16px;margin:0 0 7px}.arcade-board-heading span,.arcade-board-note{font-size:9px;line-height:1.8;letter-spacing:.04em}.arcade-board-note{margin:12px 0 18px}.arcade-leaderboard table{border-collapse:collapse;width:100%;font-size:12px;font-variant-numeric:tabular-nums}.arcade-leaderboard th{font-size:9px;font-weight:400;opacity:.7;padding:8px 0 12px;text-align:left}.arcade-leaderboard th:last-child,.arcade-leaderboard td:last-child{text-align:right}.arcade-leaderboard td{border-top:1px solid #deddd6;padding:14px 0}.arcade-leaderboard td:first-child{font-size:10px;opacity:.6;width:30px}.arcade-leaderboard tbody tr:first-child td{color:var(--accent,#2436b2)}#arcade-board-status{font-size:10px;line-height:1.7;margin:18px 0 28px}.arcade-personal{border-top:1px solid #171717;padding:18px 0}.arcade-personal span{font-size:9px;display:block;margin-bottom:12px}.arcade-personal strong{font:28px Menlo,monospace;letter-spacing:-.05em;color:var(--accent,#2436b2)}.arcade-refresh{width:100%;text-align:left}.arcade-credit{margin:45px 0 0;border-top:1px solid #d4d3cc;padding-top:18px;font-size:9px;line-height:1.8;max-width:800px;color:#666}.arcade-score-form{border-top:2px solid var(--accent,#2436b2);margin-top:18px;padding-top:16px}.arcade-score-form label{display:block;font-size:10px;margin-bottom:10px}.arcade-score-form div{display:flex;gap:10px}.arcade-score-form input{width:90px;border:1px solid #aaa;background:transparent;color:inherit;border-radius:0;text-transform:uppercase;font:24px Menlo,monospace;letter-spacing:.12em;padding:9px;min-width:0}.arcade-score-form button{flex:1}.arcade-score-form p{font-size:10px;line-height:1.7}.arcade-sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.arcade-machine:fullscreen{background:#080808;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f1eee6;overflow:auto}.arcade-machine:fullscreen .arcade-screen{height:min(75vh,800px);padding:0;border:0;aspect-ratio:224/288}.arcade-machine:fullscreen canvas{height:100%;width:auto;max-width:100vw}.arcade-machine:fullscreen .arcade-toolbar,.arcade-machine:fullscreen .arcade-touch{width:min(95vw,500px)}.arcade-machine:fullscreen .arcade-score-form{width:min(95vw,500px)}
@media(max-width:1050px){.arcade-grid{grid-template-columns:minmax(280px,462px) minmax(210px,1fr);gap:30px}.arcade-instructions{grid-column:1/-1;display:none}.arcade-heading{margin-bottom:25px}.arcade-edition{font-size:9px}}
@media(max-width:680px){.arcade-page{max-width:448px}.arcade-grid{grid-template-columns:1fr;gap:28px}.arcade-heading{gap:10px;padding-bottom:18px;margin-bottom:20px}.arcade-heading h1{font-size:43px}.arcade-edition{font-size:8px}.arcade-credit{margin-top:28px}.arcade-leaderboard{padding-top:20px;border-top:1px solid #222}.arcade-toolbar{grid-template-columns:1.4fr 1fr 1fr 1fr}.arcade-page button{min-height:46px}.arcade-status{font-size:10px}.arcade-personal{display:flex;justify-content:space-between;align-items:center}.arcade-personal span{margin:0}.arcade-leaderboard td{padding:13px 0}}
/* Give the arcade its own wider reading measure without changing music pages. */
.public-page .page-main:has(.arcade-page){max-width:1240px;width:100%;padding:35px 40px 64px}.arcade-page .arcade-heading h1{font-family:Menlo,Consolas,monospace;font-size:clamp(40px,6vw,72px);line-height:1;margin:0;letter-spacing:-.07em;font-weight:500}
@media(max-width:680px){.public-page .page-main:has(.arcade-page){padding:24px 18px 40px}.arcade-page .arcade-heading h1{font-size:43px}}

.public-page:has(.arcade-page) .page-header nav a[href="/arcade/"]{color:var(--accent,#2436b2);text-decoration:underline;text-underline-offset:5px}
