.sound-toggle { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:42px; padding:9px 13px; border:1px solid #ffffff24; border-radius:12px; background:#ffffff08; color:var(--ink); font-family:inherit; font-size:12px; font-weight:600; line-height:1.2; cursor:pointer; transition:background .18s,border-color .18s; }
.sound-toggle:hover { background:#ffffff12; border-color:#ffffff50; }
.sound-toggle:focus-visible { outline:2px solid var(--accent,#59c9ff); outline-offset:4px; }
.sound-toggle svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.sound-off-mark { display:none; }
.sound-toggle[aria-pressed="false"] .sound-off-mark { display:block; }
.sound-toggle[aria-pressed="false"] .sound-waves { display:none; }
.game-coin-stage,.rocket-stage,.level-one-stage,.plinko-stage,.upgrader-stage,.signup-level-status { position:relative; isolation:isolate; }
.fx-pulse { animation:fx-feedback .65s ease-out; }
.fx-win,.fx-payout { --fx-color:var(--positive,#56e2a0); }
.fx-loss { --fx-color:var(--danger,#ff537e); }
.fx-burst { position:absolute; z-index:5; inset:0; overflow:hidden; pointer-events:none; border-radius:inherit; }
.fx-particle { position:absolute; left:50%; top:50%; width:6px; height:11px; background:var(--accent); border-radius:2px; opacity:0; animation:fx-particle 1s cubic-bezier(.15,.6,.4,1) var(--fx-delay,0s) both; }
.fx-particle:nth-child(3n) { background:#bce9ff; }
.fx-particle:nth-child(3n + 1) { background:#8baeff; width:5px; height:5px; border-radius:50%; }
.rocket-stage.is-flying,.level-one-stage.is-flying { box-shadow:inset 0 0 60px #59c9ff0a; }
.rocket-stage.is-flying .rocket-flight-path { filter:drop-shadow(0 0 5px #59c9ff80); }
.level-one-stage.is-flying .level-one-flame { transform-box:fill-box; transform-origin:center; animation:fx-thrust .25s ease-in-out infinite alternate; }
.level-one-stage.is-flying .level-one-flight-path { filter:drop-shadow(0 0 5px #bce9ff70); }
.game-coin.is-flipping { filter:drop-shadow(0 14px 12px #0006); }
.plinko-ball { filter:drop-shadow(0 0 5px #d1efff65); }
.upgrader-stage.is-spinning { box-shadow:inset 0 0 45px #59c9ff10; }
@keyframes fx-feedback { 0% { box-shadow:0 0 0 0 transparent; } 25% { box-shadow:0 0 0 3px var(--fx-color,#59c9ff),0 0 28px #59c9ff1f; } 100% { box-shadow:0 0 0 0 transparent; } }
@keyframes fx-particle { 0% { opacity:0; transform:translate(0,0) rotate(0deg) scale(.5); } 15% { opacity:1; } 75% { opacity:1; } 100% { opacity:0; transform:translate(var(--fx-x,80px),var(--fx-y,-80px)) rotate(var(--fx-rotation,180deg)) scale(.85); } }
@keyframes fx-thrust { from { transform:scale(.8); opacity:.65; } to { transform:scale(1.1); opacity:1; } }
@media (max-width:600px) { .header-actions { gap:8px; } .sound-toggle { padding:9px; } #sound-toggle-label { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; } }
@media (prefers-reduced-motion:reduce) { html:not([data-game-motion="on"]) .fx-pulse,html:not([data-game-motion="on"]) .fx-particle,html:not([data-game-motion="on"]) .level-one-stage.is-flying .level-one-flame { animation:none; } .sound-toggle { transition:none; } html:not([data-game-motion="on"]) .fx-burst { display:none; } }

/* Lobby atmosphere follows the selected theme and real activity connection. */
body:has(> .site-layout) .site-backdrop::before { content:''; position:absolute; inset:-8%; background:radial-gradient(ellipse at 22% 34%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 42%),radial-gradient(ellipse at 80% 72%,color-mix(in srgb,var(--lavender) 11%,transparent),transparent 38%); opacity:.65; animation:lobby-ambient-drift 30s ease-in-out infinite alternate; }
.site-layout .game-tab { transition:background .18s,color .18s,transform .18s,box-shadow .18s; }
.site-layout .game-tab svg { transition:transform .18s; }
.site-layout .game-tab[aria-selected="true"] svg { transform:translateY(-1px); }
.site-layout .game-tab[aria-selected="true"]::after { transform-origin:center; animation:lobby-tab-select .22s ease-out; }
.site-layout .game-panel:not([hidden]),.site-layout .welcome-bonus-page:not([hidden]) { animation:lobby-panel-enter .26s ease-out; }
.site-layout :is(.game-tab,.welcome-bonus-primary,.button,.upgrader-spin,.roulette-spin,.blackjack-play-actions button):not(:disabled):active { transform:translateY(1px) scale(.985); }
.site-layout .activity-feed[data-connection="live"] .activity-feed-dot { animation:lobby-live-pulse 3.4s ease-out infinite; }
.site-layout .activity-arriving { background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent); border-radius:8px; }
.menu-audio-settings { margin-top:22px; padding-top:20px; border-top:1px solid var(--line); }
.menu-audio-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.menu-audio-heading h3 { flex:1; min-width:0; margin:0; color:var(--ink); font-size:13px; font-weight:650; letter-spacing:0; line-height:1.5; overflow-wrap:anywhere; }
.menu-audio-description { margin:9px 0 0; color:var(--muted); font-size:12px; line-height:1.7; }
#music-toggle { flex:none; max-width:60%; min-height:44px; padding:10px 13px; }
#music-toggle svg { flex:none; }
#music-toggle[aria-pressed="true"] { border-color:color-mix(in srgb,var(--accent) 60%,var(--line)); background:color-mix(in srgb,var(--accent) 9%,var(--surface)); color:var(--accent); }
#music-toggle[aria-pressed="false"] { border-color:var(--line); color:var(--muted); }
@keyframes lobby-ambient-drift { from { transform:translate3d(-2%,-1%,0) scale(1); } to { transform:translate3d(2%,2%,0) scale(1.04); } }
@keyframes lobby-panel-enter { from { opacity:.35; transform:translateY(6px); } to { opacity:1; transform:translateY(0); } }
@keyframes lobby-tab-select { from { opacity:.35; transform:scaleX(.45); } to { opacity:1; transform:scaleX(1); } }
@keyframes lobby-live-pulse { 0%,100% { box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 22%,transparent); } 55% { box-shadow:0 0 0 5px transparent; } }
html[data-lobby-paused="true"] :is(.backdrop-scene,.backdrop-sweep),html[data-lobby-paused="true"] body:has(> .site-layout) .site-backdrop::before,html[data-lobby-paused="true"] .site-layout .activity-feed-dot { animation-play-state:paused; }
@media (hover:hover) and (pointer:fine) { .site-layout .game-tab:hover:not(:disabled) svg { transform:translateY(-2px); } }
@media (max-width:600px) { body:has(> .site-layout) .site-backdrop::before { opacity:.45; } }
@media (prefers-reduced-motion:reduce) { body:has(> .site-layout) .site-backdrop::before,.site-layout .game-panel:not([hidden]),.site-layout .welcome-bonus-page:not([hidden]),.site-layout .game-tab[aria-selected="true"]::after,.site-layout .activity-feed[data-connection="live"] .activity-feed-dot { animation:none; } .site-layout .game-tab,.site-layout .game-tab svg { transition:none; } .site-layout :is(.game-tab,.welcome-bonus-primary,.button,.upgrader-spin,.roulette-spin,.blackjack-play-actions button):not(:disabled):active { transform:none; } }
