/* Arcade lounge. Static artwork, no continuously running card canvases. */
.arcade-page{background:#090f1f}.arcade-page:after{display:none}
.arcade-page .arcade-hero{padding:65px max(30px,calc((100% - 1160px)/2));min-height:490px;display:flex;align-items:center;text-align:left;background:linear-gradient(90deg,#080f20f5 0%,#080f20d9 32%,#080f2040 65%,#080f2010),url('../assets/arcade/retro-world.webp') center 57%/cover;border-bottom:1px solid #759fc636}
.arcade-hero-copy{max-width:610px}.arcade-page .arcade-title{font-size:clamp(46px,5.8vw,78px);line-height:1.04;text-shadow:none;margin:20px 0 24px;color:#f5f4ff}
.arcade-page .arcade-hero .arcade-sub{letter-spacing:0;color:#cfdef2;line-height:1.75}.arcade-hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:25px}.arcade-board-link{color:#b5ede8;font-weight:600;text-decoration:none;border-bottom:1px solid #b5ede866;padding-bottom:5px}.arcade-hero-note{font-size:12px;color:#a3b9d0;margin-top:25px}
.arcade-scoreboard{max-width:1160px;margin:36px auto 0;padding:30px;display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;background:linear-gradient(130deg,#1b3041,#1c233b);border:1px solid #66879c66;border-radius:24px;box-shadow:0 20px 50px #0002;scroll-margin-top:120px}
.arcade-scoreboard h2{font-size:34px;margin:8px 0}.arcade-scoreboard p{color:#b8cbdc;font-size:14px;line-height:1.6}.arcade-scoreboard label{display:block;font-size:12px;margin:15px 0 7px;color:#c5dce8}.arcade-scoreboard select{width:100%;padding:12px;border-radius:9px;border:1px solid #829ab85c;background:#111e32;color:#fff;font:15px Inter,sans-serif}
.scoreboard-modes{display:flex;gap:8px;margin-top:12px}.scoreboard-modes button,.arcade-scoreboard #scoreboard-play{padding:10px 14px;border-radius:8px;border:1px solid #627e9966;background:#18283b;color:#d6e7f4;cursor:pointer}.scoreboard-modes button[aria-pressed=true]{color:#152f39;background:#a5e1d6}.arcade-scoreboard #scoreboard-play{background:#f5b584;color:#241c24;font-weight:600}
.scoreboard-columns,.scoreboard-row{display:grid;grid-template-columns:50px 1fr 100px;gap:15px;align-items:center}.scoreboard-columns{font:10px monospace;letter-spacing:.12em;color:#9cb6cf;padding-bottom:12px;border-bottom:1px solid #8da8c13d}.scoreboard-columns span:last-child,.scoreboard-row span:last-child{text-align:right}.scoreboard-row{padding:12px 0;border-bottom:1px solid #8da8c125;font:600 15px monospace;color:#e6f1ff}.scoreboard-row:first-child{color:#ffc99a}.arcade-scoreboard .scoreboard-note{font-size:11px;line-height:1.55;max-width:530px}.scoreboard-empty{padding:10px 0;min-height:65px}
.arcade-page .arcade-library-head{padding-top:48px}.arcade-page .cards-grid{gap:22px}.arcade-page .game-card{border-radius:20px;background:linear-gradient(135deg,#1b2b40,#151b30);border-color:#53668066}.arcade-page .card-preview{height:185px;background:radial-gradient(ellipse at 40% 30%,#32435f,#0c1325);isolation:isolate}.arcade-page .card-preview img{mix-blend-mode:screen;transition:transform .2s}.arcade-page .game-card:hover .card-preview img{transform:scale(1.04)}.arcade-page .card-preview:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#172439,transparent 40%)}.arcade-page .arcade-badge{font:10px monospace;letter-spacing:.12em;top:12px;left:12px;color:#d6e5f4;border-color:#8fb5ca55;background:#101e32eb;border-radius:6px}
.arcade-page .card-body{padding:22px;flex:1;display:flex;flex-direction:column}.arcade-page .card-title{font-size:23px;margin:0 0 12px}.arcade-page .card-desc{min-height:0;margin:0 0 15px;font-size:14px}.arcade-page .card-controls{margin-top:auto;font-size:11px;min-height:35px}.arcade-page .personal-best{font:12px monospace;color:#a6dcd2}.arcade-page .card-play{margin-top:12px;background:#b8d7e5;color:#142837;border:0;border-radius:9px;letter-spacing:0;min-height:44px}.arcade-page .card-play:hover{background:#daf1f6}
.arcade-page .homage{background:#101b2d;padding:45px 25px}.arcade-page .homage-card{background:transparent;border:0;box-shadow:none;text-align:left}.arcade-page .homage-card h2{font-family:'Space Grotesk',sans-serif;letter-spacing:-.03em}.arcade-page .popup-window{border-color:#789cba;background:#121e33}.arcade-page .popup-titlebar,.arcade-page .popup-footer{background:#17263b}.arcade-page #touchControls button{min-width:52px;min-height:44px}
@media(max-width:900px){.arcade-scoreboard{margin:25px 22px 0;gap:25px}.arcade-page .arcade-hero{background-position:60% center}}
@media(max-width:600px){.arcade-page .arcade-hero{padding:42px 24px 180px;min-height:590px;background:linear-gradient(180deg,#090f20f5,#090f20c0 48%,#090f2020),url('../assets/arcade/retro-world.webp') 65% bottom/cover}.arcade-scoreboard{grid-template-columns:1fr;padding:22px}.arcade-page .arcade-title{font-size:48px}.scoreboard-row{font-size:13px}.scoreboard-columns,.scoreboard-row{grid-template-columns:35px 1fr 80px}.arcade-page .card-preview{height:205px}}
@media(prefers-reduced-motion:reduce){.arcade-page .game-card,.arcade-page .card-preview img{transition:none}}
.arcade-page .arcade-hero>.arcade-hero-copy{max-width:610px;margin:0}
.arcade-page:has(#gamePopup.open) #voiceflow-chat{display:none!important}

.arcade-page .popup-title-text{font:700 19px "Space Grotesk",sans-serif;letter-spacing:.02em;color:#d2e5f4;text-shadow:none}.arcade-page #popupScore{color:#bde9dc;text-shadow:none;font:700 25px "Space Grotesk",sans-serif}.arcade-page .popup-footer{gap:8px;flex-wrap:wrap}.arcade-page .popup-close{color:#c9def0;text-shadow:none}.arcade-page #arcadeSound[aria-pressed=true]{border-color:#9cddc9;color:#9cddc9}
.arcade-page .card-journey{font-size:12px;line-height:1.6;color:#a9ddce;border-left:2px solid #70ac9b;padding-left:10px;margin:0 0 18px}.arcade-page .card-preview{background-size:cover;background-position:center}.arcade-page .card-preview img{opacity:.8;mix-blend-mode:screen}.arcade-page .game-card[data-game="bubbles"] .card-preview img{opacity:.45}.arcade-page .popup-controls-hint{max-width:850px;font-size:11px;line-height:1.5;letter-spacing:0;color:#bdcfda}.arcade-page .popup-titlebar{min-height:68px}
/* Instructions stay readable outside the canvas at every screen size. */
.arcade-page #arcadeReady{position:absolute;inset:0;z-index:3;display:grid;place-items:center;padding:20px;background:linear-gradient(120deg,#0e2134ed,#121c35e6);overflow:auto}
.arcade-ready-card{width:min(540px,100%);text-align:center;color:#e4eef7}.arcade-ready-card .ready-eyebrow{font:11px Inter,sans-serif;letter-spacing:.16em;color:#a9decf}.arcade-ready-card h2{font:700 clamp(25px,4vw,38px) 'Space Grotesk',sans-serif;margin:15px 0 22px}.arcade-ready-card #readyGoal{font:600 19px/1.45 Inter,sans-serif;color:#ffe0b9}.arcade-ready-card #readyTip{font:15px/1.75 Inter,sans-serif;color:#c3d3e4}.arcade-ready-card #readyControls{font:13px/1.6 Inter,sans-serif;color:#b6d8d9;margin:22px 0}.arcade-ready-card button,.arcade-page .cs-retry{background:#b8e2d4;color:#173a38;border:0;border-radius:9px;padding:14px 30px;font:700 15px Inter,sans-serif;cursor:pointer;min-height:48px}.arcade-ready-card small{display:block;margin-top:18px;font:12px/1.5 Inter,sans-serif;color:#a8bcd0}.arcade-page #csProgress{color:#e5d3b5;font:15px Inter,sans-serif;margin:15px 0}.arcade-page .cs-retry{width:100%;margin-top:12px}.arcade-page .popup-titlebar{gap:16px}.arcade-page .popup-titlebar>div{min-width:0}.arcade-page .popup-close{flex-shrink:0}.arcade-page button:focus-visible{outline:2px solid #b5e8e1;outline-offset:3px}
@media(max-height:520px){.arcade-ready-card h2{margin:5px 0;font-size:24px}.arcade-ready-card #readyGoal{margin:8px 0}.arcade-ready-card #readyTip{margin:8px 0;font-size:13px}.arcade-ready-card #readyControls{margin:8px 0}.arcade-ready-card small{display:none}}
.arcade-page .popup-window:has(#arcadeReady:not([hidden])) #touchControls,.arcade-page .popup-window:has(#arcadeReady:not([hidden])) #pauseButton{visibility:hidden}
.arcade-page .card-progress{font:12px Inter,sans-serif;color:#b9cadb;margin:2px 0 4px}.arcade-page #arcadeStageToast{position:absolute;top:12%;left:50%;transform:translateX(-50%);z-index:2;width:min(500px,90%);padding:15px 22px;border:1px solid #a2dcc585;border-radius:12px;background:#142c3af5;color:#d9eee7;box-shadow:0 12px 35px #0005;pointer-events:none;text-align:center}.arcade-page #arcadeStageToast strong{display:block;font:700 23px 'Space Grotesk',sans-serif;color:#ffe0b5;margin-bottom:7px}.arcade-page #arcadeStageToast span{font:13px/1.5 Inter,sans-serif}
.arcade-page .cs-box{border:1px solid #7799b1;border-radius:18px;background:#142238;box-shadow:0 24px 90px #0008}.arcade-page .cs-bar{background:#1c3043;border-color:#7799b144;color:#b7e1d5;font:12px Inter,sans-serif;letter-spacing:.14em}.arcade-page .cs-score{color:#c9eee0;text-shadow:none;font:700 52px 'Space Grotesk',sans-serif;letter-spacing:-.03em}.arcade-page .cs-game{font:600 16px Inter,sans-serif;color:#d3e1ef}.arcade-page .cs-skip{margin-top:10px;min-height:44px;font:14px Inter,sans-serif;color:#d1dfeb;border:1px solid #819ab455;border-radius:8px}.arcade-page .cs-submit{border-radius:8px;font:14px Inter,sans-serif}.arcade-page .cs-input{font:16px Inter,sans-serif;border-radius:8px}.arcade-page .cs-box:before,.arcade-page .cs-box:after{display:none}
/* Community board: deliberate spacing, a readable table, and quiet share actions. */
.arcade-page main>.arcade-scoreboard{padding:34px;margin:40px auto;max-width:1160px;width:calc(100% - 48px);gap:38px;border:1px solid #66879c66;background:linear-gradient(135deg,#193443,#171d35);border-radius:22px;align-items:start}
.arcade-scoreboard .scoreboard-intro h2{font-size:clamp(27px,3vw,38px);line-height:1.12;max-width:390px;margin:14px 0}
.arcade-scoreboard .scoreboard-modes{flex-wrap:wrap;margin:14px 0 20px}.arcade-scoreboard .scoreboard-modes button{font:600 12px Inter,sans-serif;min-height:42px}.arcade-scoreboard #scoreboard-play{min-height:46px;padding:12px 22px;font:700 15px Inter,sans-serif}
.arcade-scoreboard .board-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.arcade-scoreboard .board-heading h3{font:700 25px 'Space Grotesk',sans-serif;margin:9px 0;color:#eff6ff}.arcade-scoreboard #scoreboard-refresh{background:transparent;border:1px solid #89a4b961;color:#d0e9ed;border-radius:8px;padding:10px;cursor:pointer;min-height:42px}.arcade-scoreboard #scoreboard-refresh:disabled{opacity:.4;cursor:default}.arcade-scoreboard #board-status{font-size:12px;color:#9bc9c9;min-height:36px}.arcade-scoreboard #scoreboard-content{min-height:180px;max-height:460px;overflow:auto;border-block:1px solid #92bfd030}.arcade-scoreboard .scoreboard-empty{padding:25px 15px;color:#b9d1de;line-height:1.9}.scoreboard-empty strong{display:inline-block;font:600 21px 'Space Grotesk',sans-serif;color:#eff5fd;margin-bottom:12px}.score-table{width:100%;border-collapse:collapse;font:600 15px Inter,sans-serif}.score-table caption{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.score-table th{font:11px Inter,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:#9ec0ce;text-align:left;background:#172b3c;position:sticky;top:0;padding:14px 10px}.score-table td{padding:16px 10px;border-bottom:1px solid #7695aa26;color:#deedf6}.score-table th:last-child,.score-table td:last-child{text-align:right;font-variant-numeric:tabular-nums}.score-table tbody tr:first-child td{color:#ffd2a4;background:#f5b5840a}.score-table .my-score td{background:#89d4c513;color:#bdf3de}.arcade-scoreboard .scoreboard-note{font-size:12px;line-height:1.7;margin-top:18px}
.arcade-page .game-share{background:transparent;border:0;color:#aad9d6;text-decoration:underline;text-underline-offset:4px;min-height:44px;margin-top:8px;cursor:pointer;font:13px Inter,sans-serif}.arcade-page .score-consent{font:12px/1.6 Inter,sans-serif;color:#b6cada;margin:12px 0}.arcade-page .cs-box{max-height:90dvh;overflow:auto}.arcade-page .game-share+input{width:100%;font-size:13px}.arcade-page .popup-footer{padding:10px 14px}.arcade-page .popup-footer .popup-btn{min-height:40px}
@media(max-width:700px){.arcade-page main>.arcade-scoreboard{grid-template-columns:1fr;padding:24px;width:calc(100% - 28px);gap:22px;margin:24px auto}.arcade-scoreboard .board-heading h3{font-size:22px}.arcade-scoreboard #scoreboard-content{min-height:140px}.score-table td{font-size:13px;padding:14px 7px}.arcade-page .popup-footer{gap:5px}.arcade-page .popup-footer .popup-btn{font-size:11px;padding:8px}.arcade-page .cs-box{width:calc(100% - 24px)}}
.arcade-page .cs-body{padding:20px 24px}.arcade-page .cs-score{margin:0 0 8px;font-size:44px}.arcade-page .cs-game{margin:0 0 12px;letter-spacing:0}.arcade-page #csProgress{margin:10px 0}.arcade-page #scoreStatus{font:14px/1.55 Inter,sans-serif;margin:10px 0}.arcade-page .cs-input,.arcade-page .cs-submit,.arcade-page .cs-skip{letter-spacing:.02em}.arcade-page .cs-input{padding:11px}.arcade-page .cs-submit:disabled{opacity:.65;cursor:default}

.arcade-page .arcade-tactical{order:-1;min-height:44px;padding:9px 14px;border:1px solid #8ee2c4;border-radius:8px;background:#173f42;color:#d2fff0;font:600 13px Inter,sans-serif;cursor:pointer}.arcade-page .arcade-tactical:hover{background:#23585b}.arcade-page .arcade-tactical:focus-visible{outline:3px solid #ffd29d;outline-offset:2px}.arcade-page .popup-window:has(#arcadeReady:not([hidden])) .arcade-tactical{visibility:hidden}

#pauseLayer .popup-btn{display:block;margin:16px auto 0;min-height:44px;}
