/* Jewel arcade theme. Decoration never changes board or drag geometry. */
.game-page{isolation:isolate;background:radial-gradient(ellipse at 50% 24%,#43228480,transparent 55%),radial-gradient(ellipse at 10% 75%,#07538b60,transparent 52%),#070b26}
.game-bg{background:radial-gradient(ellipse at 65% 20%,#5226a76b,transparent 65%),#070b26!important}
.game-page:before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,#a4ddffbb 0 1px,transparent 2px),radial-gradient(circle,#b99aff99 0 1px,transparent 2px);background-size:137px 151px,213px 197px;background-position:22px 41px,86px 109px;opacity:.35;animation:arcade-starlight 7s ease-in-out infinite alternate}
.board:not(.board-fall-layer){background:linear-gradient(145deg,#132658,#121b46 65%,#20194d);border-radius:16px;box-shadow:inset 0 0 0 2px #8d9aff70,inset 0 0 22px #446eff28,0 0 0 3px #121534,0 0 0 4px #7e6bcb60,0 0 28px #7064ff38,0 14px 40px #0008}
.board:not(.board-fall-layer)>.cell:not(.filled):not(.preview-ok):not(.preview-bad){background:linear-gradient(145deg,#102148,#111a39);box-shadow:inset 0 1px 3px #0004,inset 0 0 0 1px #667bcc12}
.cell.filled,.piece-cell.fill,.hero-cell.on{background:linear-gradient(140deg,color-mix(in srgb,var(--bc),white 22%),var(--bc) 52%,color-mix(in srgb,var(--bc),#16114e 20%));border-top-color:color-mix(in srgb,var(--bc),white 76%);border-left-color:color-mix(in srgb,var(--bc),white 40%);border-right-color:color-mix(in srgb,var(--bc),#16134a 38%);border-bottom-color:color-mix(in srgb,var(--bc),#080827 50%);box-shadow:inset 0 1px 2px #ffffff75,inset 0 0 0 1px #ffffff30,0 0 9px color-mix(in srgb,var(--bc),transparent 55%);border-radius:5px}
.cell.filled:after{content:'';position:absolute;inset:1px;pointer-events:none;border-radius:2px;background:linear-gradient(130deg,#fff8,transparent 36%,transparent 68%,#fff2);opacity:.5}
.cell.preview-ok{background:#5cf5dc40;outline-color:#99fff0;box-shadow:0 0 14px #64f4d28c}.cell.will-clear{filter:brightness(1.2);box-shadow:0 0 13px #fff7,inset 0 0 8px #fff8}.cell.tutorial-target{outline:2px solid #ffdf69;outline-offset:-2px}
.tray-slot{background:linear-gradient(150deg,#26326380,#101635ba);box-shadow:inset 0 0 0 1px #9b9eff30,0 6px 18px #0002;border-radius:14px}.tray-slot.used{opacity:.45}.tray-slot.tutorial-piece-target{box-shadow:inset 0 0 16px #ffc62920,0 0 20px #ffc62940}
.bb-hud-corner{background:#0d123bba;color:#ffe3a1;border:1px solid #d4b45c45;box-shadow:0 0 12px #f2b43e12;padding:4px 10px}.bb-hud-score{color:#87ffdf;text-shadow:0 2px 0 #09283d,0 0 16px #38ffd370,0 0 35px #4e78ff50;font-variant-numeric:tabular-nums}.bb-hud-score.ready{color:#ffe59b;text-shadow:0 2px 0 #44233b,0 0 20px #ffc92885}.bb-hud-progress{background:#070d29;border-color:#8f95dd75;box-shadow:inset 0 2px 5px #0009,0 0 12px #7462ff40;height:11px}.bb-hud-progress-fill{background:linear-gradient(90deg,#7662ff,#4ce1f4,#93ffda);box-shadow:0 0 12px #62efff80}.bb-hud-progress-fill.complete{background:linear-gradient(90deg,#ffad32,#fff2a1)}
.game-page .modal{background:linear-gradient(145deg,#242151,#111634);border-color:#a091ff70;box-shadow:0 0 0 3px #5c40bc28,0 0 65px #775aff38,0 28px 80px #0009}.tutorial-intro-badge{background:#183c4966;border-color:#78ffe370;color:#a0ffe6}.tutorial-intro-actions .btn-accent,.tutorial-win-cta,.cashout-ready{background:linear-gradient(115deg,#ffe88b,#ffba36)!important;color:#342042!important;border:1px solid #fff1ba!important;box-shadow:inset 0 2px 0 #ffffff90,0 5px 0 #a75d25,0 0 25px #ffc63f45!important}.game-mute-btn{background:#141b43e6;border-color:#8b91db55}
.arcade-spark{position:absolute;left:var(--sx);top:var(--sy);width:5px;height:5px;background:var(--spark);box-shadow:0 0 8px var(--spark);border-radius:2px;pointer-events:none;z-index:8;animation:arcade-burst 650ms ease-out forwards}.arcade-ring{position:absolute;inset:-5px;border:2px solid #a8ffef;border-radius:18px;pointer-events:none;z-index:7;animation:arcade-ring 600ms ease-out forwards}
@keyframes arcade-burst{0%{opacity:1;transform:translate(-50%,-50%) scale(1.5)}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(150deg) scale(.1)}}
@keyframes arcade-ring{from{opacity:.8;box-shadow:0 0 18px #8ee5ff80}to{opacity:0;transform:scale(1.07);box-shadow:0 0 35px #8e9fff00}}
@keyframes arcade-starlight{from{opacity:.22}to{opacity:.48}}
@media(prefers-reduced-motion:reduce){.game-page:before{animation:none}.arcade-spark,.arcade-ring{display:none}.cell.will-clear{animation:none}.tutorial-win-cta,.cashout-ready{animation:none!important}}
