.dark-bonus{grid-column:1/-1;flex-basis:100%;width:100%;order:6;border-top:1px solid var(--line);margin-top:24px;padding:28px 0 10px;display:flex;align-items:center;justify-content:center;gap:24px}
.dark-bonus-invite{display:flex;align-items:center;gap:18px;padding:12px 0;border:0;border-radius:14px;background:transparent;color:var(--ink);cursor:pointer;transition:color .2s;min-width:0}
.dark-bonus-copy{text-align:left;min-width:0}
.dark-bonus-copy strong{font:600 clamp(16px,1.8vw,22px)/1.4 Unbounded,Manrope,sans-serif;letter-spacing:-.03em;white-space:nowrap}
.dark-bonus-arrow{width:72px;height:48px;flex-shrink:0;color:var(--accent);filter:drop-shadow(0 0 7px #8ff7bd45);animation:bonus-arrow-pulse 1.65s ease-in-out infinite}
.bonus-arrow-flow{stroke-dasharray:18 72;animation:bonus-arrow-flow 1.65s linear infinite}
.dark-bonus-invite:is(:hover,:focus-visible){color:var(--accent);outline-offset:6px}
.dark-bonus-invite:is(:hover,:focus-visible) .dark-bonus-arrow,.dark-bonus-invite:is(:hover,:focus-visible) .bonus-arrow-flow{animation-duration:.8s}
.secret-arcade{display:none;width:auto;flex-shrink:0;justify-content:center;gap:12px;padding:12px 0}
.footer-legal{order:5}
html[data-theme="dark"] .secret-arcade{display:flex}
.secret-arcade button{font:600 13px ui-monospace,monospace;color:#91b9a2;background:transparent;border:0;border-radius:14px;padding:0;cursor:pointer;letter-spacing:2px}
.secret-arcade .arcade-game-face{display:block;background:#0a1611;border:1px solid #294636;border-radius:14px;padding:13px 20px;transition:color .2s,box-shadow .2s;transform-origin:50% 100%}
.secret-arcade button:hover .arcade-game-face,.secret-arcade button:focus-visible .arcade-game-face{color:#b4ffd0;box-shadow:0 0 24px #75faaa45}
.dark-bonus-invite:is(:hover,:focus-visible)~.secret-arcade button .arcade-game-face,.secret-arcade button:is(:hover,:focus-visible) .arcade-game-face{animation:bonus-game-hop .72s ease-in-out infinite;transform-origin:50% 100%}
.dark-bonus-invite:is(:hover,:focus-visible)~.secret-arcade button:nth-child(2) .arcade-game-face{animation-delay:.12s}
.dark-bonus-invite:is(:hover,:focus-visible)~.secret-arcade button:nth-child(3) .arcade-game-face{animation-delay:.24s}
.secret-arcade .arcade-game-icon{font-size:19px;vertical-align:-2px;margin-right:10px}
@keyframes bonus-arrow-pulse{0%,100%{transform:translateX(0);opacity:.75}50%{transform:translateX(5px);opacity:1}}
@keyframes bonus-arrow-flow{from{stroke-dashoffset:20}to{stroke-dashoffset:-70}}
@keyframes bonus-game-hop{0%,100%{transform:translateY(0) rotate(0) scale(1)}18%{transform:translateY(2px) scale(1.06,.92)}42%{transform:translateY(-12px) rotate(-5deg) scale(.98,1.05)}65%{transform:translateY(-7px) rotate(5deg)}82%{transform:translateY(1px) scale(1.04,.96)}}
body.arcade-open{overflow:hidden}
.arcade-wall{position:fixed;inset:0;overflow:hidden;z-index:5;pointer-events:none;transform-origin:50% 80%;will-change:transform,opacity}
.arcade-wall .site-shell{position:relative}
body.arcade-open .site-shell{pointer-events:none}
body.arcade-settled .arcade-wall{visibility:hidden}
body.arcade-open .site-shell *,body.arcade-open .scroll-backdrop,body.arcade-open .dark-starfield *{animation-play-state:paused!important}
body.arcade-open .assistant-widget,body.arcade-open .cookie-notice,body.arcade-open .dark-transition{visibility:hidden!important;pointer-events:none!important}
.gv-arcade{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px;background:#02060beF;color:#dfefe9;isolation:isolate;overscroll-behavior:contain;font-family:Manrope,system-ui,sans-serif;animation:arcade-night .85s both}
.gv-arcade[hidden]{display:none!important}
.gv-arcade::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 25%,#16363488,transparent 60%),linear-gradient(#09141c66 1px,transparent 1px);background-size:auto,100% 40px;pointer-events:none}
.arcade-cabinet{width:min(1190px,100%);max-height:100%;display:flex;flex-direction:column;border:1px solid #304b58;border-radius:26px;background:#0a141e;box-shadow:0 40px 100px #000c,0 0 80px #53bbd31c;overflow:hidden;animation:arcade-rise .8s .35s cubic-bezier(.16,1,.3,1) both}
.arcade-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;background:#101e29;border-bottom:1px solid #2c414c;flex-shrink:0}
.arcade-brand{display:flex;align-items:center;gap:14px;min-width:0}
.arcade-brand>b{font:900 23px ui-monospace,monospace;color:#acffd9;border-right:1px solid #42635d;padding-right:14px}
.arcade-name{font:700 15px ui-monospace,monospace;letter-spacing:2px;color:#dfefe9}
.arcade-brand small{display:block;font-size:10px;color:#7aa7ad;letter-spacing:2px;margin-top:4px}
.arcade-tools{display:flex;gap:6px;align-items:center}
.gv-arcade button{font-family:inherit;cursor:pointer;border-radius:12px;border:1px solid #3c5967;min-height:38px;padding:8px 13px;color:#b8d7d4;background:#182a37;font-size:12px}
.gv-arcade button:hover{background:#254555;color:#fff}
.gv-arcade button:focus-visible{outline:3px solid #92f3c9;outline-offset:3px}
.gv-arcade .arcade-exit{background:#19291f;border-color:#4d715d;color:#bef5cb}
.arcade-hud{display:flex;justify-content:space-between;gap:12px;padding:10px 23px;font:700 12px ui-monospace,monospace;color:#96b8bb;letter-spacing:1px;flex-shrink:0}
.arcade-hud strong{color:#e1fff0}
.arcade-level-select{font:600 12px Manrope,Arial,sans-serif;background:#142a34;color:#c6ede2;border:1px solid #32515b;border-radius:9px;max-width:230px;padding:5px 8px;min-width:0;cursor:pointer}
.arcade-level-select option{background:#142a34;color:#c6ede2}
.arcade-level-select:focus-visible{outline:2px solid #92f3c9}
.arcade-screen-wrap{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;background:#03080e;overflow:hidden;flex-shrink:1}
.arcade-screen{position:relative;width:100%;aspect-ratio:16/9;max-width:calc((100dvh - 218px)*16/9);flex-shrink:0;touch-action:none;overflow:hidden}
.arcade-screen canvas{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:none}
.arcade-screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(transparent 0 3px,#00000014 3px 4px);box-shadow:inset 0 0 70px #0004;border-radius:8px}
.arcade-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#040e1cd9;text-align:center;padding:24px;z-index:2;backdrop-filter:blur(3px)}
.arcade-overlay[hidden]{display:none}
.arcade-overlay small{font:700 12px ui-monospace,monospace;color:#73bfa9;letter-spacing:3px}
.arcade-overlay h2{font:700 clamp(23px,5vw,46px) Unbounded,Manrope,Arial,sans-serif;letter-spacing:-1px;line-height:1.25;margin:0;color:#d9fff0;text-shadow:3px 3px #1a6f67;max-width:90%}
.arcade-overlay p{font-size:14px;line-height:1.6;color:#a8c4c7;max-width:540px;margin:0}
.gv-arcade .arcade-play{background:#98edc5;color:#071e1c;font-weight:800;border:0;font-size:14px;padding:14px 30px;box-shadow:0 0 40px #6bebaa25}
.gv-arcade .arcade-play:hover{background:#c2ffdc;color:#071e1c}
.arcade-help{padding:12px 22px;display:flex;justify-content:space-between;gap:12px;flex-shrink:0;font-size:11px;line-height:1.6;color:#85a6ac}
.arcade-help b{color:#d8eee6;font-weight:600}
.arcade-help p{margin:0;max-width:720px}
.arcade-status{font:600 11px ui-monospace,monospace;color:#8ad6bc;text-align:right;min-width:130px}
.arcade-touch{display:none;justify-content:space-between;gap:12px;padding:8px 18px 12px;touch-action:none;flex-shrink:0}
.arcade-touch>div{display:flex;gap:8px}
.gv-arcade .arcade-touch button{width:54px;height:47px;background:#1c3440;border:1px solid #447466;font:800 20px ui-monospace,monospace;user-select:none;-webkit-user-select:none;touch-action:none}
.gv-arcade .arcade-touch button[data-input="action"]{width:90px;font-size:13px;background:#284d46;color:#b8f9d9}
.arcade-live{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.gv-arcade[data-game="breaker"] .arcade-touch [data-input="jump"],.gv-arcade[data-game="breaker"] .arcade-touch [data-input="down"]{display:none}
.gv-arcade[data-game="breaker"] .arcade-touch [data-input="bomb"],.gv-arcade[data-game="breaker"] .arcade-touch [data-input="aimUp"]{display:none}
@media(max-width:700px){.arcade-level-select{font-size:10px;max-width:125px;padding:4px}.gv-arcade[data-game="jungle"] .arcade-touch button{width:35px;height:43px}.gv-arcade[data-game="jungle"] .arcade-touch button[data-input="action"]{width:56px;font-size:11px}.gv-arcade[data-game="jungle"] .arcade-touch>div{gap:4px}.gv-arcade[data-game="jungle"] .arcade-touch button[data-input="down"]{display:none}.arcade-hud{align-items:center}}
.arcade-cabinet:fullscreen{width:100%;height:100%;border-radius:0;justify-content:center;background:#050b12}
.arcade-cabinet:fullscreen .arcade-screen{max-width:calc((100dvh - 200px)*16/9)}
@keyframes arcade-night{0%,40%{background:#02060b00}100%{background:#02060bf5}}
@keyframes arcade-rise{from{transform:translateY(105vh) rotateX(12deg);opacity:0}to{transform:none;opacity:1}}
@media(pointer:coarse){.arcade-touch{display:flex}.arcade-screen{max-width:calc((100dvh - 276px)*16/9)}}
@media(max-width:700px){.dark-bonus{padding-bottom:110px;gap:14px}.dark-bonus-invite{gap:8px}.dark-bonus-copy strong{font-size:13px;white-space:normal}.dark-bonus-arrow{width:32px;height:32px}.secret-arcade{gap:6px}}
@media(max-width:700px){.gv-arcade{padding:8px}.arcade-cabinet{border-radius:17px}.arcade-bar{padding:11px 12px;gap:5px}.arcade-brand{gap:8px}.arcade-brand>b{font-size:18px;padding-right:8px}.arcade-name{font-size:11px;letter-spacing:1px}.arcade-brand small{font-size:8px}.arcade-tools{gap:3px}.gv-arcade .arcade-tools button{font-size:10px;padding:7px;min-height:34px}.arcade-fullscreen{display:none}.arcade-hud{font-size:10px;padding:9px 12px;letter-spacing:0}.arcade-help{padding:10px 12px;display:block;font-size:10px}.arcade-status{text-align:left;margin-top:4px}.arcade-overlay{gap:9px;padding:14px}.arcade-overlay h2{font-size:27px}.arcade-overlay p{font-size:11px;line-height:1.4}.gv-arcade .arcade-play{padding:10px 20px;font-size:12px}.secret-arcade .arcade-game-face{padding:12px 18px}.arcade-touch{padding:5px 10px 10px;gap:5px}.gv-arcade .arcade-touch button{width:43px;height:42px}.gv-arcade .arcade-touch button[data-input="action"]{width:72px}}
@media(max-height:500px){.gv-arcade{padding:4px}.arcade-bar{padding:5px 12px}.arcade-brand small{display:none}.arcade-hud{padding:4px 12px}.arcade-help{padding:4px 12px;font-size:9px}.arcade-touch{position:absolute;bottom:8px;left:8px;right:8px;padding:0;z-index:3;pointer-events:none}.arcade-touch button{pointer-events:auto;opacity:.8}.arcade-screen{max-width:calc((100dvh - 112px)*16/9)}.arcade-overlay p{font-size:12px}}
@media(pointer:coarse) and (max-height:500px){.arcade-help{display:none}.arcade-screen{max-width:calc((100dvh - 78px)*16/9)}}
@media(max-width:700px){.arcade-overlay{gap:7px;padding:8px}.arcade-overlay h2{font-size:18px;letter-spacing:-.5px;max-width:100%}.arcade-overlay small{font-size:9px;letter-spacing:1px}.arcade-overlay p{font-size:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}
@media(prefers-reduced-motion:reduce){.gv-arcade,.arcade-cabinet{animation-duration:.01ms;animation-delay:0s}.secret-arcade button{transition:none}}

@media(prefers-reduced-motion:reduce){.dark-bonus-arrow,.bonus-arrow-flow,.dark-bonus-invite:is(:hover,:focus-visible)~.secret-arcade button .arcade-game-face,.secret-arcade button:is(:hover,:focus-visible) .arcade-game-face{animation:none}.dark-bonus-invite{transition:none}}

/* The handheld LCD stays portrait; the other cabinets keep their wide screens. */
.gv-arcade[data-game="tetris"] .arcade-cabinet{width:min(820px,100%)}
.gv-arcade[data-game="tetris"] .arcade-screen{aspect-ratio:3/4;max-width:calc((100dvh - 218px)*3/4)}
.gv-arcade[data-game="tetris"] .arcade-screen::after{background:none;box-shadow:none}
.gv-arcade[data-game="tetris"] .arcade-overlay h2{text-shadow:none;font-size:clamp(20px,4vw,32px)}
.gv-arcade[data-game="tetris"] .arcade-touch [data-input="aimUp"],.gv-arcade[data-game="tetris"] .arcade-touch [data-input="bomb"]{display:none}
.gv-arcade[data-game="tetris"] .arcade-cabinet:fullscreen .arcade-screen{max-width:calc((100dvh - 200px)*3/4)}
@media(pointer:coarse){.gv-arcade[data-game="tetris"] .arcade-screen{max-width:calc((100dvh - 276px)*3/4)}}
@media(max-width:700px){.secret-arcade{gap:8px}.secret-arcade .arcade-game-face{padding:12px 10px}.secret-arcade .arcade-game-icon{margin-right:6px}.gv-arcade[data-game="tetris"] .arcade-overlay h2{font-size:22px}.gv-arcade[data-game="tetris"] .arcade-overlay p{-webkit-line-clamp:4}.gv-arcade[data-game="tetris"] .arcade-touch button{width:38px}.gv-arcade[data-game="tetris"] .arcade-touch button[data-input="action"]{width:66px;font-size:11px}}
@media(max-height:500px){.gv-arcade[data-game="tetris"] .arcade-screen{max-width:calc((100dvh - 112px)*3/4)}.gv-arcade[data-game="tetris"] .arcade-overlay{gap:6px;padding:8px}.gv-arcade[data-game="tetris"] .arcade-overlay h2{font-size:17px}.gv-arcade[data-game="tetris"] .arcade-overlay p{font-size:10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.gv-arcade[data-game="tetris"] .arcade-overlay small{display:none}.gv-arcade[data-game="tetris"] .arcade-play{font-size:12px;padding:8px 16px}}
@media(pointer:coarse) and (max-height:500px){.gv-arcade[data-game="tetris"] .arcade-screen{max-width:calc((100dvh - 78px)*3/4)}}

@media(max-width:700px){.dark-bonus .secret-arcade{gap:6px}.dark-bonus .arcade-game-face{padding:10px 7px;font-size:11px}.dark-bonus .arcade-game-icon{font-size:16px;margin-right:4px}}
@media(max-width:360px){.dark-bonus{gap:9px}.dark-bonus-invite{gap:5px}.dark-bonus-copy strong{font-size:11px}.dark-bonus-arrow{width:24px}.dark-bonus .secret-arcade{gap:4px}.dark-bonus .arcade-game-face{padding:10px 5px;font-size:10px}.dark-bonus .arcade-game-icon{font-size:13px;margin-right:3px}}
