body.arcade-screen{height:100dvh;overflow:hidden;background:#020914}
body.arcade-screen:before{content:'';position:fixed;inset:-30px;background:linear-gradient(#02091499,#020914cc),var(--arcade-art) center/cover;filter:blur(20px);pointer-events:none}
body.arcade-screen .header,body.arcade-screen .footer{display:none}
body.arcade-screen main{height:100dvh;width:100%;max-width:none;margin:0;padding:0}
#arcade-view{position:fixed;inset:0;display:grid;place-items:center;isolation:isolate}
.arcade-frame{position:relative;width:min(100vw,56.28dvh);aspect-ratio:941/1672;container-type:inline-size;background:var(--arcade-art) center/100% 100% no-repeat;box-shadow:0 0 80px #0008;overflow:hidden;color:#fff1be}
.arcade-frame button,.arcade-frame input{touch-action:manipulation}
.a-back,.a-sound{position:absolute;top:1%;z-index:8;font:600 2.25cqw Inter,Arial,sans-serif;padding:1.2cqw 1.8cqw;border:1px solid #f2d17c66;border-radius:5px;background:#03121bbe;color:#ffe5a5;line-height:1.1}
.a-back{left:2%}.a-sound{right:2%;min-width:7%;text-align:center}
.a-board{position:absolute;left:8.6%;top:24.1%;width:82.8%;height:45.5%;overflow:hidden}
.a-candies{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));gap:2px;padding:3px;border-radius:5px;background:#1c0a2e66}
.a-tile{position:relative;min-width:0;min-height:0;display:grid;place-items:center;overflow:hidden;background:#190d3055;border:1px solid #ffbde333;border-radius:8%;isolation:isolate}
.a-art{position:absolute;inset:0;display:block;background-repeat:no-repeat;mix-blend-mode:lighten;clip-path:inset(4%);filter:drop-shadow(0 2px 3px #0005)}
.a-cluster{box-shadow:inset 0 0 0 2px #fff1bc,0 0 12px #ffdb6f;z-index:2;animation:aCluster .6s ease-in-out infinite}
@keyframes aCluster{50%{filter:brightness(1.6);transform:scale(.9)}}
.a-drop{animation:aDrop .4s cubic-bezier(.2,.6,.3,1.2) both}
@keyframes aDrop{from{opacity:.25;transform:translateY(-45%)}to{opacity:1;transform:translateY(0)}}
.a-status{position:absolute;left:8%;top:76.6%;width:84%;height:2.9%;padding:.5cqw 1cqw;font:600 2.15cqw/1.2 Inter,Arial,sans-serif;text-align:center;background:#16122dbb;border:1px solid #f0d18444;border-radius:4px;display:grid;place-items:center;z-index:2;overflow:hidden;text-wrap:balance}
.a-balance{position:absolute;left:5.5%;top:85.1%;width:27.8%;height:3.6%;display:grid;place-items:center;font:700 4.1cqw/1 Georgia,serif;font-variant-numeric:tabular-nums;text-shadow:0 2px 3px #000;color:#ffe9a1}
.a-bet{position:absolute;left:73.5%;top:85.1%;width:13.8%;height:3.6%;padding:0;border:0;border-radius:3px;background:#081627;color:#ffe7a0;text-align:center;font:700 4cqw Georgia,serif;appearance:textfield;-moz-appearance:textfield}
.a-bet::-webkit-inner-spin-button{appearance:none}
.a-minus,.a-plus{position:absolute;top:84.9%;width:6.7%;height:4.3%;padding:0;border:0;border-radius:50%;background:transparent;font-size:0;color:transparent}
.a-minus{left:66.3%}.a-plus{left:87%}
.a-minus:hover,.a-plus:hover,.a-info:hover,.a-account:hover,.a-menu:hover{background:#ffe48c25}
.a-action{position:absolute;left:36.5%;top:79.3%;width:27%;height:13.9%;padding:0;border:0;border-radius:50%;background:transparent;filter:drop-shadow(0 0 4px #97ffff33);z-index:3}
.a-action span{display:inline-block;max-width:96%;padding:1.1cqw .9cqw;font:800 5.8cqw/1.15 Cinzel,Georgia,serif;color:#fff2b8;text-shadow:0 3px 2px #23304b;background:radial-gradient(ellipse,#063b58f5,#063b58e6 60%,#063b5800 75%);white-space:nowrap}
.a-action:hover{filter:brightness(1.2) drop-shadow(0 0 8px #7dffff55)}
.a-action:disabled{opacity:.8;cursor:wait}
.a-busy .a-action:after{content:'';position:absolute;inset:9%;border:2px solid #fff2b32b;border-top-color:#fff5d1;border-radius:50%;animation:rotate .9s linear infinite}
.a-info,.a-account,.a-menu,.a-load{position:absolute;padding:0;border:0;border-radius:50%;background:none;z-index:4}
.a-info{left:73.5%;top:71.8%;width:6.8%;height:4.2%}
.a-account{left:3.3%;top:90.7%;width:9.5%;height:5.2%}
.a-menu{left:87%;top:90.7%;width:9.5%;height:5.2%}
.a-load{display:none}
.arcade-frame[data-mode=rueda] .a-board{left:10.7%;top:24.4%;width:78.6%;height:44.3%;overflow:visible}
.a-wheel{display:block;width:100%;height:100%;filter:drop-shadow(0 0 8px #b486f344);border-radius:50%;will-change:transform}
.a-wheel text{paint-order:stroke;stroke:#080e2844;stroke-width:1px}
.a-wheel-pointer{position:absolute;left:46%;top:-2.5%;width:8%;height:10%;background:linear-gradient(90deg,#b5832d,#fff2ab,#c49029);clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 2px 4px #000);z-index:4}
.arcade-frame[data-mode=rueda] .a-balance{left:5.5%;top:85.7%;width:20.2%;height:3.5%}
.arcade-frame[data-mode=rueda] .a-bet{left:73%;top:85.7%;width:14%;height:3.5%;background:#051332}
.arcade-frame[data-mode=rueda] .a-minus,.arcade-frame[data-mode=rueda] .a-plus{top:85.4%}
.arcade-frame[data-mode=rueda] .a-action span{background:radial-gradient(ellipse,#442095f5,#442095dd 60%,#44209500 75%)}
.arcade-frame[data-mode=rueda] .a-info{left:73.5%;top:73.7%}
.arcade-frame[data-mode=rueda] .a-status{top:78%;height:2.6%}
.arcade-frame[data-mode=rueda] .a-account,.arcade-frame[data-mode=rueda] .a-menu{top:91.7%}
.arcade-frame[data-mode=rueda] .a-load{display:block;left:27%;top:85.5%;width:7%;height:4%}
.arcade-frame[data-mode=raspa] .a-board{left:8.3%;top:24.3%;width:83.4%;height:42%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:2.3%;padding:1%;overflow:hidden}
.a-scratch-cell{position:relative;border:2px ridge #ac874b;border-radius:7px;background:#041b25;isolation:isolate;min-width:0;min-height:0;overflow:hidden;touch-action:none;padding:0}
.a-scratch-cell .a-tile{position:absolute;inset:0;border:0;border-radius:0;background:transparent}
.a-scratch-cell canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}
.a-scratch-cell:disabled{opacity:1;cursor:default}
.a-scratch-cell.a-match{box-shadow:inset 0 0 0 2px #ffe59d,0 0 20px #e4b44d66;border-color:#fff1bd}
.a-revealed .a-art{animation:aReveal .5s ease-out}
@keyframes aReveal{from{filter:brightness(2.4);transform:scale(.75)}to{filter:brightness(1);transform:scale(1)}}
.arcade-frame[data-mode=raspa] .a-status{top:75.5%;height:2.8%;background:#052b29bf}
.arcade-frame[data-mode=raspa] .a-action{left:35.5%;top:77.7%;width:29%;height:16.3%}
.arcade-frame[data-mode=raspa] .a-action span{font-size:5.6cqw;background:radial-gradient(ellipse,#006b69f5,#006b69e6 60%,#006b6900 75%)}
.arcade-frame[data-mode=raspa] .a-balance{left:4.5%;top:85.1%;width:23%;height:3.5%}
.arcade-frame[data-mode=raspa] .a-info{left:75.2%;top:69.2%;height:4.4%}
.arcade-frame[data-mode=raspa] .a-load{display:block;left:27%;top:84.5%;width:7%;height:4.4%}
.arcade-frame[data-mode=raspa] .a-account,.arcade-frame[data-mode=raspa] .a-menu{top:90.2%}
.a-win{position:absolute;left:9%;top:35%;width:82%;text-align:center;padding:5cqw 3cqw;border:3px ridge #e8c582;border-radius:12px;background:radial-gradient(ellipse at 50% 0,#3b326e,#081624f5);box-shadow:0 0 45px #f9d87566;z-index:10;animation:winnerEntrance .35s ease-out}
.a-win small{font-size:2.1cqw;letter-spacing:.3cqw;color:#d8d0af}
.a-win h2{font:800 7cqw Cinzel,Georgia,serif;color:#fff0b1;margin:2cqw 0;text-shadow:0 2px #71502b}
.a-win strong{display:block;font:800 9cqw Inter,Arial,sans-serif;color:#fff3c7;font-variant-numeric:tabular-nums;text-shadow:0 3px #7b5723}
.a-win button{margin:3cqw auto 0;font-size:2.5cqw;color:#fff1b0;border:1px solid #ceb26a;border-radius:5px;padding:1.7cqw 3cqw;background:#352846}
.a-demo{position:absolute;left:18%;right:18%;bottom:.3%;z-index:12;background:#04111fdc;border:1px solid #d0b97788;border-radius:5px;padding:.5cqw;display:flex;gap:1cqw;align-items:center;justify-content:center;font-size:1.7cqw}
.a-demo button{font-size:1.8cqw;color:#ffe9ac;background:#34274e;border:1px solid #a4894d;border-radius:3px;padding:1cqw}
.a-demo span{font-size:1.45cqw;color:#d5c493}
#arcade-rules{max-width:620px;width:92vw;max-height:88dvh;overflow:auto;background:radial-gradient(ellipse at 50% 0,#204452,#081525);border:3px ridge #d5b06b;color:#f5e9ca;border-radius:10px}
#arcade-rules h2{font-family:Cinzel,Georgia,serif;color:#ffe8a0}#arcade-rules p{line-height:1.7;font-size:13px}
.arcade-card{background-position:center;background-size:100% 100%;border-color:#d8b06b;isolation:isolate}
.arcade-card-tag{position:absolute;bottom:0;left:0;right:0;padding:8px 2px;background:linear-gradient(#121b2ee6,#05101efc);border-top:1px solid #e3bd7488;color:#fff0bc;font-size:9px;letter-spacing:1.5px;font-weight:700}
.game-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
@media(max-width:640px){.game-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.a-cluster,.a-drop,.a-revealed .a-art,.a-busy .a-action:after{animation:none!important}}
/* Cascadas: gravedad, azúcar y celebración; sin modificar los premios. */
[data-mode="cascada"] .a-art{animation:cIdle 3s ease-in-out infinite alternate}
[data-mode="cascada"] .a-tile:nth-child(3n) .a-art{animation-delay:-1.4s}
[data-mode="cascada"] .a-candies{overflow:hidden;box-shadow:inset 0 0 25px #f883e840}
[data-mode="cascada"] .c-playing .a-art{animation:none}
[data-mode="cascada"] .c-hit{z-index:3;border-color:#fff5c0;box-shadow:inset 0 0 16px #fff5ad,0 0 18px #ff6bd9;animation:cHit .4s ease-in-out infinite alternate}
[data-mode="cascada"] .c-dim .a-art{filter:brightness(.55) saturate(.7)}
.c-fx{position:absolute;inset:0;z-index:7;pointer-events:none;overflow:hidden}
.c-sugar{position:absolute;width:7px;height:7px;border-radius:2px;box-shadow:0 0 8px currentColor}
.c-chain{position:absolute;left:6%;right:6%;top:43%;text-align:center;display:grid;gap:2cqw;color:white;text-shadow:0 3px 2px #a71d91,0 0 18px #ff55e7;font-family:Georgia,serif;animation:cBanner .8s ease both}
.c-chain b{font-size:6cqw;-webkit-text-stroke:.4px #ffe6a4}
.c-chain span{font-size:12cqw;font-weight:900;color:#fff2a5}
.c-coin{position:absolute;font-style:normal;font-size:7cqw;color:#ffdf69;text-shadow:0 0 8px #ff8e19,0 2px 1px #94580b}
.c-award{z-index:11}
[data-mode="cascada"].c-winning .a-win{border:2px solid #ffe6a9;background:radial-gradient(ellipse,#a927a9ed,#30115af5);box-shadow:0 0 40px #ff7fe6,0 0 80px #ffcc7177;animation:cWin .5s ease both}
[data-mode="cascada"].c-winning .a-win strong{color:#fff0a6;text-shadow:0 0 20px #ffc83b}
@keyframes cIdle{to{transform:translateY(-3%) scale(1.035);filter:drop-shadow(0 0 6px #ff9bde66)}}
@keyframes cHit{to{transform:scale(.92);filter:brightness(1.55)}}
@keyframes cBanner{0%{opacity:0;transform:scale(.5)}25%{opacity:1;transform:scale(1.08)}70%{opacity:1;transform:scale(1)}100%{opacity:0;transform:translateY(-20px)}}
@keyframes cWin{from{opacity:0;transform:scale(.5) rotate(-5deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@media(prefers-reduced-motion:reduce){[data-mode="cascada"] .a-art,[data-mode="cascada"] .c-hit,.c-chain,[data-mode="cascada"].c-winning .a-win{animation:none}}
/* Movimiento y celebración para rueda y cofres. */
.a-treasure-fx{position:absolute;inset:0;z-index:12;overflow:hidden;pointer-events:none}
.a-treasure-spark{position:absolute;font-style:normal;font-size:5cqw;color:#ffe39c;text-shadow:0 0 12px #ffb32d,0 2px 2px #8f461c}
[data-mode="rueda"] .a-wheel-board:after{content:'';position:absolute;inset:1%;border-radius:50%;border:2px dotted #fff2bf;box-shadow:inset 0 0 15px #bda0ff,0 0 15px #ffc96b;pointer-events:none;animation:aRim 3s linear infinite}
.a-wheel-spinning .a-wheel{filter:drop-shadow(0 0 20px #d4a0ff) saturate(1.3)}
.a-wheel-spinning:after{animation-duration:.7s!important}
.a-wheel-landed .a-wheel{animation:aWheelLand .65s ease}
[data-mode="raspa"] .a-scratch-cell:not(.a-revealed):not(:disabled){animation:aChestIdle 2.6s ease-in-out infinite}
[data-mode="raspa"] .a-scratch-cell:nth-child(3n){animation-delay:-1.2s!important}
[data-mode="raspa"] .a-revealed .a-art{animation:aTreasureOpen .7s cubic-bezier(.2,.8,.3,1.2)}
[data-mode="raspa"] .a-match{animation:aTreasureGlow 1s ease-in-out infinite alternate}
.a-dealing .a-scratch-cell{animation:aDeal .65s ease both!important}
.a-dealing .a-scratch-cell:nth-child(2n){animation-delay:.12s!important}
.a-dealing .a-scratch-cell:nth-child(3n){animation-delay:.22s!important}
.a-celebrating .a-win{box-shadow:0 0 45px #ffd573,0 0 80px #b977ff99;border:2px solid #ffe5a1;animation:aPrizeBloom .65s ease both}
[data-mode="raspa"].a-celebrating .a-win{background:radial-gradient(ellipse at top,#775622f5,#081c29f7)}
.a-celebrating .a-win h2{font-size:5.7cqw}
.a-celebrating .a-win strong{animation:aPrizeGlow .9s ease-in-out infinite alternate}
@keyframes aRim{to{transform:rotate(360deg)}}
@keyframes aWheelLand{40%{filter:brightness(1.6) drop-shadow(0 0 25px #ffe798)}}
@keyframes aChestIdle{50%{filter:brightness(1.2);transform:translateY(-2%)}}
@keyframes aTreasureOpen{0%{opacity:0;transform:scale(.2) rotate(-18deg)}65%{opacity:1;transform:scale(1.16)}100%{transform:scale(1)}}
@keyframes aTreasureGlow{to{filter:brightness(1.35);box-shadow:inset 0 0 18px #ffe698,0 0 24px #ffca63}}
@keyframes aDeal{from{opacity:0;transform:translateY(-45px) rotateY(70deg)}to{opacity:1;transform:translateY(0) rotateY(0)}}
@keyframes aPrizeBloom{from{opacity:0;transform:scale(.45)}70%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}
@keyframes aPrizeGlow{to{text-shadow:0 0 24px #ffd146;filter:brightness(1.2)}}
@media(prefers-reduced-motion:reduce){[data-mode="rueda"] .a-wheel-board:after,[data-mode="raspa"] .a-scratch-cell,[data-mode="raspa"] .a-revealed .a-art,.a-celebrating .a-win,.a-celebrating .a-win strong,.a-wheel-landed .a-wheel{animation:none!important}}
/* Dedicated full-art covers for the three original arcade games. */
.game-card.arcade-cover-v2{border-color:#e0b96d;background-repeat:no-repeat}.arcade-cover-v2 .card-action{bottom:2%;padding:6px 0;left:20%;right:20%;z-index:2;font-size:12px}.arcade-cover-v2:after{content:'';position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffdf9d33;pointer-events:none}
.a-scratch-cell{box-shadow:inset 0 0 0 1px #f0d78c55,inset 0 0 20px #051723,0 5px 9px #0009;border:2px ridge #bda66c}.a-chest-opening-art{position:absolute;inset:0;background:url('assets/interactive-polish-v1.webp') 100% 100%/400% 300% no-repeat;z-index:5;pointer-events:none;animation:aChestArtOpen 1s ease-out both;filter:drop-shadow(0 0 15px #ffc355)}.a-scratch-cell canvas{filter:drop-shadow(0 3px 4px #0009)}.a-candies .a-art{filter:drop-shadow(0 4px 3px #36124788);transform:scale(.94)}.a-candies .a-tile{background:radial-gradient(ellipse at 40% 25%,#ffedff22,#32124133);box-shadow:inset 0 0 0 1px #ffe9ff22,inset 0 -4px 8px #140e2f33;border-radius:18%}@keyframes aChestArtOpen{0%{opacity:1;transform:scale(.75)}35%{opacity:1;transform:scale(1.13)}70%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.22)}}@media(prefers-reduced-motion:reduce){.a-chest-opening-art{animation-duration:.1s}}
