/* Alebrijes — estilo "arcade premium" mexicano. Sin recursos externos salvo la fuente del sitio. */
:root{
  --tinta:#2A1B12; --crema:#FFF6E3; --morado:#3B1A78; --morado2:#5A2CB6; --rosa:#F05A8E; --amarillo:#FFC93C;
  --turquesa:#1FB5C8; --verde:#2FBF71; --naranja:#FF7A2F;
  --cw: min(74vw, 44vh, 300px);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;min-height:100%;background:#1B0B3F;color:#fff;font-family:'Fredoka','Nunito',system-ui,sans-serif}
html,body{overflow-x:hidden}
body{background:
  radial-gradient(1200px 700px at 50% -10%,#6B2FD0 0%,rgba(107,47,208,0) 60%),
  radial-gradient(900px 600px at 100% 100%,#E0457B33 0%,rgba(224,69,123,0) 60%),
  #1B0B3F}
button{font:inherit;cursor:pointer}
h1,h2,h3,p{margin:0}
#app{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.oculto{display:none!important}

/* papel picado decorativo arriba */
.picado{height:34px;flex:none;background:
  linear-gradient(135deg,transparent 50%,#FFC93C 50%) 0 0/34px 34px,
  linear-gradient(225deg,transparent 50%,#1FB5C8 50%) 17px 0/34px 34px;opacity:.0}
.bandera{display:flex;justify-content:center;gap:0;height:26px;overflow:hidden;flex:none;border-bottom:2px solid rgba(255,255,255,.08)}
.bandera i{flex:0 0 28px;height:26px;clip-path:polygon(0 0,100% 0,50% 100%)}

/* barra superior */
.barra{display:flex;align-items:center;gap:10px;padding:10px 14px;flex:none}
.barra .atras{color:#fff;text-decoration:none;font-weight:700;background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 14px;font-size:15px;min-height:44px;display:inline-flex;align-items:center}
.barra .titulo{font-weight:700;font-size:18px;letter-spacing:.3px;margin-right:auto;white-space:nowrap}
.monedas{display:inline-flex;align-items:center;gap:6px;background:#2A1B12;border:3px solid var(--amarillo);color:var(--amarillo);border-radius:999px;padding:6px 14px;font-weight:700;font-size:20px;min-height:44px;box-shadow:0 4px 0 #8a5a00}
.monedas .mon{display:inline-block;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#FFF2A8,#FFC93C 55%,#C98400);border:2px solid #2A1B12;box-shadow:inset 0 -2px 0 rgba(0,0,0,.2)}
.chip-mode{background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.25);color:#fff;border-radius:999px;padding:6px 12px;font-size:14px;min-height:44px}
.snd{background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.25);color:#fff;border-radius:50%;width:44px;height:44px;font-size:20px}

/* pantallas */
.pantalla{flex:1;display:flex;flex-direction:column;align-items:center;padding:6px 16px 30px;width:100%;max-width:1100px;margin:0 auto}

/* ---------- elegir edad ---------- */
.edad-h{text-align:center;margin:10px 0 6px;font-size:clamp(26px,5vw,40px);line-height:1.1}
.edad-p{opacity:.85;text-align:center;margin-bottom:18px;font-size:18px}
.edades{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;width:100%;max-width:860px}
.edad{background:linear-gradient(180deg,#fff,#FFEFD0);color:var(--tinta);border:4px solid var(--tinta);border-radius:26px;padding:18px 10px 16px;text-align:center;box-shadow:0 8px 0 #0008;display:flex;flex-direction:column;align-items:center;gap:8px;transition:transform .12s}
.edad:active{transform:translateY(4px);box-shadow:0 4px 0 #0008}
.edad .em{font-size:clamp(46px,9vw,76px);line-height:1}
.edad b{font-size:clamp(18px,3.4vw,26px)}
.edad span{font-size:clamp(13px,2.4vw,17px);opacity:.75}
@media(max-width:560px){.edades{grid-template-columns:1fr}.edad{flex-direction:row;text-align:left;padding:14px 18px;gap:16px}.edad div{display:flex;flex-direction:column}}

/* ---------- inicio / tienda ---------- */
.escenario{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;margin:4px 0 8px}
.escenario::before{content:"";position:absolute;width:min(90vw,520px);height:min(90vw,520px);border-radius:50%;background:conic-gradient(from 0deg,#FFC93C22,#F05A8E22,#1FB5C822,#FFC93C22);filter:blur(10px);animation:gira 18s linear infinite;z-index:0}
@keyframes gira{to{transform:rotate(360deg)}}
.sobre-wrap{position:relative;z-index:1;width:min(46vw,200px);aspect-ratio:2/3;animation:flota 3s ease-in-out infinite;cursor:pointer;touch-action:manipulation}
@keyframes flota{50%{transform:translateY(-8px) rotate(1.5deg)}}
.sobre-wrap svg{width:100%;height:100%;display:block;filter:drop-shadow(0 14px 18px #0009)}
.grande{position:relative;z-index:1;margin-top:14px;background:linear-gradient(180deg,#FFE45C,#FFB400);color:var(--tinta);border:4px solid var(--tinta);border-radius:24px;padding:14px 26px;font-weight:700;font-size:22px;box-shadow:0 7px 0 #8a5a00;min-height:60px;display:inline-flex;align-items:center;gap:10px;transition:transform .1s}
.grande:active{transform:translateY(4px);box-shadow:0 3px 0 #8a5a00}
.grande[disabled]{filter:grayscale(.85) brightness(.8);cursor:not-allowed}
.sec{background:rgba(255,255,255,.1);color:#fff;border:3px solid rgba(255,255,255,.35);border-radius:20px;padding:12px 18px;font-weight:600;font-size:17px;min-height:52px;display:inline-flex;align-items:center;gap:8px;text-decoration:none;justify-content:center}
.sec:active{transform:translateY(2px)}
.ganar{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:640px;margin:14px 0 4px}
.ganar .sec{flex-direction:column;text-align:center;gap:2px;padding:14px 10px}
.ganar .sec small{font-weight:400;opacity:.8;font-size:13px}
@media(max-width:420px){.ganar{grid-template-columns:1fr}}
.mini-prog{width:100%;max-width:640px;margin-top:10px}
.barra-prog{height:16px;background:#0006;border-radius:999px;border:2px solid rgba(255,255,255,.3);overflow:hidden}
.barra-prog i{display:block;height:100%;background:linear-gradient(90deg,#1FB5C8,#7ED957,#FFC93C,#F05A8E);border-radius:999px;transition:width .6s}
.mini-prog .fila{display:flex;justify-content:space-between;margin-bottom:6px;font-weight:600}
.aviso{background:#2A1B12;border:2px solid var(--amarillo);color:var(--amarillo);padding:8px 14px;border-radius:14px;font-weight:600;margin:8px 0;text-align:center}
.peq .txt-menor{display:none}

/* ---------- carta ---------- */
.carta{position:relative;container-type:inline-size;width:100%;aspect-ratio:5/7;border-radius:7cqw;color:var(--tinta);--rc:#8a6a4a}
.carta.r-r{--rc:#2E86DE}.carta.r-e{--rc:#8A4FD8}.carta.r-l{--rc:#E0A100}
.carta .marco{position:absolute;inset:0;border-radius:6.5cqw;padding:2.6cqw;background:linear-gradient(160deg,#FFF6E3,#F3DDB5);border:.9cqw solid var(--tinta);box-shadow:0 0 0 1.2cqw var(--rc),0 2cqw 5cqw #0008;overflow:hidden;display:flex;flex-direction:column;gap:1.6cqw}
.r-r .marco{background:linear-gradient(160deg,#EAF4FF,#BFD9F7)}
.r-e .marco{background:linear-gradient(160deg,#F3E8FF,#CDB4F2)}
.r-l .marco{background:linear-gradient(160deg,#FFF7CF,#FFDB6B)}
.c-top{display:flex;justify-content:space-between;align-items:center;gap:2cqw}
.c-nombre{font-weight:700;font-size:7.4cqw;line-height:1.05;text-wrap:balance}
.c-num{font-weight:700;font-size:5cqw;background:var(--tinta);color:#fff;border-radius:99px;padding:.6cqw 2.4cqw;flex:none}
.c-arte{position:relative;border:.9cqw solid var(--tinta);border-radius:3.6cqw;overflow:hidden;aspect-ratio:1/.84;background:#fff;flex:none}
.c-arte svg{width:100%;height:100%;display:block}
.c-chips{display:flex;justify-content:space-between;align-items:center;gap:2cqw;font-weight:600}
.c-el{font-size:5.4cqw;background:#fff9;border:.6cqw solid var(--tinta);border-radius:99px;padding:.5cqw 2.6cqw}
.c-rz{font-size:5.4cqw;color:var(--rc);font-weight:700;text-shadow:0 .3cqw 0 #0003;white-space:nowrap}
.c-linea{font-size:5cqw;line-height:1.15;font-weight:500;flex:1;display:flex;align-items:center;min-height:0;overflow:hidden}
.c-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6cqw}
.c-stat{background:var(--tinta);color:#fff;border-radius:2cqw;padding:1cqw 1.4cqw;text-align:center;font-size:4cqw;line-height:1.05}
.c-stat b{display:block;font-size:6cqw;color:var(--amarillo)}
.c-shine{position:absolute;inset:0;pointer-events:none;border-radius:6.5cqw;opacity:0}
.r-r .c-shine,.r-e .c-shine,.r-l .c-shine{opacity:1;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 45%,transparent 60%);background-size:250% 100%;animation:brillo 3.2s linear infinite;mix-blend-mode:soft-light}
.r-e .c-shine{background-image:linear-gradient(115deg,transparent 30%,rgba(255,230,120,.8) 45%,transparent 60%)}
.r-l .c-shine{background-image:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.95) 40%,rgba(255,120,200,.5) 50%,rgba(120,220,255,.6) 58%,transparent 72%);animation-duration:2.2s}
@keyframes brillo{from{background-position:180% 0}to{background-position:-80% 0}}
.r-l .marco{box-shadow:0 0 0 1.2cqw #E0A100,0 0 6cqw 2cqw #FFD23Fcc,0 2cqw 5cqw #0008}
.r-e .marco{box-shadow:0 0 0 1.2cqw #8A4FD8,0 0 5cqw 1cqw #B88CFF99,0 2cqw 5cqw #0008}
.r-r .marco{box-shadow:0 0 0 1.2cqw #2E86DE,0 0 4cqw .5cqw #6CB8FF88,0 2cqw 5cqw #0008}
.c-stats{display:none}
body.m-grandes .carta:not(.mini) .c-stats,.carta.stats:not(.mini) .c-stats{display:grid}
.carta.mini .c-linea{display:none}
.carta.mini.stats .c-stats{display:none}
.carta.mini .c-nombre{font-size:8cqw}
.carta.sin .marco{background:#3a2a5a;border-color:#1b0b3f;box-shadow:0 0 0 1.2cqw #4a3a72}
.carta.sin .c-arte{background:#241545}
.carta.sin .c-arte svg{filter:brightness(0) opacity(.28)}
.carta.sin .c-nombre,.carta.sin .c-el,.carta.sin .c-linea{visibility:hidden}
.carta.sin .c-rz{color:#ffffffaa;text-shadow:none}
.carta.sin .c-top .c-num{background:#1b0b3f}
.carta.sin .c-arte::after{content:"?";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:40cqw;font-weight:700;color:#ffffff44}
.carta .dup{position:absolute;right:-2cqw;top:-6.5cqw;background:var(--rosa);color:#fff;border:.8cqw solid var(--tinta);border-radius:99px;font-weight:700;font-size:6cqw;padding:.4cqw 2.6cqw;z-index:3}
.carta .nueva{position:absolute;left:-2cqw;top:-6.5cqw;background:var(--verde);color:#fff;border:.8cqw solid var(--tinta);border-radius:99px;font-weight:700;font-size:6cqw;padding:.4cqw 2.6cqw;z-index:3;animation:late .8s ease-in-out infinite}
@keyframes late{50%{transform:scale(1.12)}}
.carta .nueva{text-align:center;white-space:nowrap}

/* ---------- álbum ---------- */
.album-cab{width:100%;margin:6px 0 12px}
.album-cab h2{font-size:clamp(24px,4.6vw,34px)}
.cuadricula{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px 16px;width:100%;margin:12px 0 18px;padding:8px 4px}
@media(max-width:480px){.cuadricula{grid-template-columns:repeat(2,1fr);gap:18px 12px}}
.cuadricula .celda{cursor:pointer;background:none;border:0;padding:0;position:relative;color:inherit}
.cuadricula .celda:focus-visible{outline:4px solid var(--amarillo);outline-offset:6px;border-radius:20px}
.probas{width:100%;background:rgba(255,255,255,.08);border:2px solid rgba(255,255,255,.22);border-radius:20px;padding:6px 16px;margin:6px 0 14px}
.probas summary{font-weight:700;font-size:18px;padding:10px 0;cursor:pointer;min-height:44px}
.probas ul{margin:4px 0 12px 18px;padding:0;line-height:1.6;font-size:16px}
.probas p{font-size:15px;opacity:.9;margin-bottom:10px}
.fila-btn{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;width:100%;margin:6px 0}

/* ---------- ventana de carta grande ---------- */
.modal{position:fixed;inset:0;background:rgba(10,4,30,.86);z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;-webkit-overflow-scrolling:touch}
.modal .caja{background:#2A1450;border:3px solid rgba(255,255,255,.3);border-radius:26px;padding:20px;max-width:460px;width:100%;text-align:center;box-shadow:0 20px 60px #000a}
.modal .caja h3{font-size:24px;margin-bottom:8px}
.modal .caja p{margin-bottom:12px;font-size:17px;line-height:1.35}
.modal input{font:inherit;font-size:28px;text-align:center;width:150px;padding:10px;border-radius:16px;border:4px solid var(--tinta);background:#fff;color:var(--tinta)}
.modal .fila-btn{margin-top:14px}
.modal.zoom .carta{width:min(78vw,320px,50vh * .714);margin:0 auto}
.modal.zoom .carta .c-linea{display:flex}
.modal.zoom .carta .c-stats{display:grid}
.sacude{animation:no .4s}
@keyframes no{20%{transform:translateX(-10px)}40%{transform:translateX(10px)}60%{transform:translateX(-6px)}80%{transform:translateX(6px)}}

/* ---------- apertura del sobre ---------- */
#apertura{position:fixed;inset:0;z-index:40;background:radial-gradient(800px 600px at 50% 40%,#5A2CB6 0%,#1B0B3F 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;touch-action:none}
#apertura .tit{position:absolute;top:max(14px,env(safe-area-inset-top));left:0;right:0;text-align:center;font-size:clamp(20px,4.5vw,28px);font-weight:700;padding:0 60px;text-shadow:0 3px 0 #0006;min-height:34px}
.cerrar-ap{position:absolute;top:max(10px,env(safe-area-inset-top));right:12px;z-index:60;background:rgba(255,255,255,.14);border:2px solid rgba(255,255,255,.3);color:#fff;width:46px;height:46px;border-radius:50%;font-size:22px}
.rayos{position:absolute;width:160vmax;height:160vmax;left:50%;top:44%;margin:-80vmax 0 0 -80vmax;background:repeating-conic-gradient(from 0deg,var(--rayo,#FFD23F55) 0 7deg,transparent 7deg 22deg);animation:gira 14s linear infinite;opacity:0;transition:opacity .6s;pointer-events:none;-webkit-mask-image:radial-gradient(circle,#000 8%,transparent 55%);mask-image:radial-gradient(circle,#000 8%,transparent 55%)}
.rayos.on{opacity:1}
.destello{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:45}
.destello.on{animation:flash .9s ease-out}
@keyframes flash{0%{opacity:1}100%{opacity:0}}
.zona{position:relative;width:min(80vw,320px);height:min(60vh,480px);display:flex;align-items:center;justify-content:center;perspective:1400px}
.sobre-ap{position:absolute;width:min(56vw,230px);aspect-ratio:2/3;cursor:pointer;touch-action:manipulation}
.sobre-ap svg{width:100%;height:100%;display:block;filter:drop-shadow(0 16px 24px #000a)}
.sobre-ap .tapa,.sobre-ap .cuerpo{position:absolute;inset:0}
.sobre-ap .tapa{clip-path:polygon(0 0,100% 0,100% 13%,0 13%)}
.sobre-ap .cuerpo{clip-path:polygon(0 13%,100% 13%,100% 100%,0 100%)}
.tiembla1{animation:t1 .18s linear infinite}
.tiembla2{animation:t2 .11s linear infinite}
.tiembla3{animation:t3 .07s linear infinite}
@keyframes t1{0%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}100%{transform:rotate(-3deg)}}
@keyframes t2{0%{transform:rotate(-6deg) scale(1.04)}50%{transform:rotate(6deg) scale(1.04)}100%{transform:rotate(-6deg) scale(1.04)}}
@keyframes t3{0%{transform:rotate(-9deg) scale(1.1) translateX(-5px)}50%{transform:rotate(9deg) scale(1.1) translateX(5px)}100%{transform:rotate(-9deg) scale(1.1) translateX(-5px)}}
.rasga-tapa{animation:vuela 1s cubic-bezier(.2,.7,.3,1) forwards}
.rasga-cuerpo{animation:cae .9s ease-in forwards}
@keyframes vuela{0%{transform:translate(0,0) rotate(0)}100%{transform:translate(-60vw,-70vh) rotate(-80deg);opacity:0}}
@keyframes cae{0%{transform:translateY(0);opacity:1}100%{transform:translateY(60px) scale(.7);opacity:0}}
.pista{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:0;right:0;text-align:center;font-size:clamp(18px,4vw,24px);font-weight:600;padding:0 16px;display:flex;flex-direction:column;align-items:center;gap:10px}
.pista .manito{font-size:56px;animation:toca 1s ease-in-out infinite}
@keyframes toca{50%{transform:translate(8px,-12px) scale(1.08)}}
.pila{touch-action:none;position:absolute;width:var(--cw);aspect-ratio:5/7;transform-style:preserve-3d}
.pila-carta{position:absolute;inset:0;transform-style:preserve-3d;transform-origin:left center;will-change:transform;touch-action:none;cursor:grab}
.cara{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.cara.frente{transform:rotateY(180deg)}
.dorso{width:100%;height:100%;border-radius:7cqw;border:.9cqw solid var(--tinta)}
.brillo-atras{position:absolute;left:50%;top:50%;width:calc(var(--cw)*1.7);height:calc(var(--cw)*1.7);margin:calc(var(--cw)*-.85) 0 0 calc(var(--cw)*-.85);border-radius:50%;background:radial-gradient(circle,var(--gl,#fff) 0%,transparent 65%);opacity:0;pointer-events:none}
.ap-abajo{position:absolute;bottom:max(20px,env(safe-area-inset-bottom));left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 14px}
.ap-abajo .contador{font-weight:600;opacity:.9;font-size:17px}
.deslizador{font-size:18px;opacity:.85;display:flex;align-items:center;gap:10px}
.deslizador .flecha{display:inline-block;animation:desliza 1.3s ease-in-out infinite}
@keyframes desliza{0%{transform:translateX(18px);opacity:0}50%{opacity:1}100%{transform:translateX(-18px);opacity:0}}
.resumen{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;padding:10px;max-width:96vw}
.resumen .carta{width:min(28vw,150px)}
.resumen-wrap{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;z-index:5}
.confeti{position:absolute;top:-20px;width:12px;height:18px;z-index:44;pointer-events:none;animation:cae-c linear forwards}
@keyframes cae-c{to{transform:translateY(110vh) rotate(720deg)}}
.chispa{position:absolute;z-index:44;pointer-events:none;font-size:22px;animation:chispa .9s ease-out forwards}
@keyframes chispa{0%{transform:translate(0,0) scale(.4);opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(1.3);opacity:0}}
.sacudida-1{animation:sk1 .5s linear}
.sacudida-2{animation:sk2 .8s linear}
.sacudida-3{animation:sk3 1.4s linear}
.sacudida-0{animation:sk2 1.5s linear infinite}
@keyframes sk1{10%{transform:translate(-3px,2px)}30%{transform:translate(4px,-3px)}50%{transform:translate(-4px,-2px)}70%{transform:translate(3px,3px)}100%{transform:none}}
@keyframes sk2{10%{transform:translate(-8px,5px) rotate(-.4deg)}25%{transform:translate(9px,-6px) rotate(.4deg)}40%{transform:translate(-9px,-4px)}55%{transform:translate(8px,7px) rotate(.3deg)}70%{transform:translate(-6px,4px)}85%{transform:translate(5px,-5px)}100%{transform:none}}
@keyframes sk3{8%{transform:translate(-14px,8px) rotate(-.8deg)}16%{transform:translate(15px,-10px) rotate(.8deg)}24%{transform:translate(-16px,-8px) rotate(-.6deg)}32%{transform:translate(14px,12px) rotate(.7deg)}42%{transform:translate(-12px,6px)}54%{transform:translate(10px,-8px)}68%{transform:translate(-7px,5px)}84%{transform:translate(4px,-3px)}100%{transform:none}}
.flotante{position:absolute;left:50%;top:16%;transform:translate(-50%,-50%);font-weight:700;font-size:clamp(26px,6.5vw,42px);text-align:center;z-index:46;pointer-events:none;text-shadow:0 4px 0 #0008,0 0 20px var(--c,#fff);animation:anuncio 2.2s ease-out forwards;color:var(--c,#fff);width:90vw}
@keyframes anuncio{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}15%{transform:translate(-50%,-50%) scale(1.15);opacity:1}30%{transform:translate(-50%,-50%) scale(1)}85%{opacity:1}100%{transform:translate(-50%,-60%) scale(1);opacity:0}}

/* ---------- duelo ---------- */
.duelo{width:100%;max-width:760px;display:flex;flex-direction:column;align-items:center;gap:14px}
.duelo .rival{width:min(46vw,200px)}
.duelo .mano{display:flex;gap:10px;justify-content:center;width:100%}
.duelo .mano .op{flex:1;max-width:200px;display:flex;flex-direction:column;gap:6px}
.duelo .mano .op .carta{width:100%}
.stat-btn{background:#fff;color:var(--tinta);border:3px solid var(--tinta);border-radius:12px;padding:6px 4px;font-weight:700;font-size:14px;min-height:40px}
.stat-btn:active{background:var(--amarillo)}
.marcador{font-size:24px;font-weight:700}
.resultado{font-size:26px;font-weight:700;text-align:center}

/* ---------- pequeños: botones gigantes ---------- */
.peq .grande{font-size:30px;padding:18px 34px;min-height:80px;border-radius:30px}
.peq .sec{font-size:22px;min-height:70px}
.peq .barra .titulo{font-size:22px}
.peq .monedas{font-size:28px}
.peq .pista{font-size:26px}
.peq .pista .manito{font-size:84px}

@media (prefers-reduced-motion:reduce){
  .sobre-wrap,.escenario::before,.rayos,.c-shine,.carta .nueva{animation:none!important}
  .sacudida-1,.sacudida-2,.sacudida-3,.sacudida-0,.sacude{animation:none!important}
  .tiembla1,.tiembla2,.tiembla3{animation:none!important}
  .destello{display:none!important}.chispa,.confeti,.flotante,.brillo-atras,.manito,.deslizador .flecha{animation:none!important}
}

.mon-i{display:inline-block;width:1.15em;height:1.15em;border-radius:50%;background:radial-gradient(circle at 35% 30%,#FFF2A8,#FFC93C 55%,#C98400);border:2px solid #2A1B12;vertical-align:-.2em}
.resumen .carta .nueva,.resumen .carta .dup{font-size:8cqw}
.carta.mini .c-arte{aspect-ratio:auto;flex:1;min-height:0}
.stat-btn{min-height:44px}

.regalo{font-size:120px;line-height:1;display:inline-block;animation:regtiembla .5s ease-in-out 3,regpop .6s ease-out 1.5s both}
@keyframes regtiembla{25%{transform:rotate(-12deg) scale(1.08)}75%{transform:rotate(12deg) scale(1.08)}}
@keyframes regpop{0%{transform:scale(1)}50%{transform:scale(1.35)}100%{transform:scale(1)}}
.modal .caja{position:relative}
@media (prefers-reduced-motion:reduce){.regalo{animation:none!important}}

.sets{display:flex;gap:8px;overflow-x:auto;width:100%;padding:4px 2px 10px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.set-chip{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:0;min-width:84px;min-height:64px;background:rgba(255,255,255,.1);border:3px solid rgba(255,255,255,.28);color:#fff;border-radius:18px;padding:6px 10px;font-weight:600}
.set-chip .si{font-size:26px;line-height:1.1}.set-chip .sn{font-size:13px;white-space:nowrap}.set-chip small{opacity:.8;font-size:12px}
.set-chip.on{background:linear-gradient(180deg,#FFE45C,#FFB400);color:#2A1B12;border-color:#2A1B12;box-shadow:0 4px 0 #8a5a00}
.diario{width:100%;max-width:640px;text-align:center;display:flex;flex-direction:column;gap:8px;align-items:center;margin:4px 0 6px}
.diario-ya{background:rgba(255,255,255,.1);border:2px solid rgba(255,255,255,.3);border-radius:18px;padding:10px 14px;font-weight:600}
.racha{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}
.hito{background:rgba(255,255,255,.1);border-radius:99px;padding:3px 10px;font-size:14px}.hito.ok{background:#1b6b3a}
.peq .set-chip .sn{display:none}.peq .set-chip{min-width:72px}
.barra .atras{white-space:nowrap}.barra .titulo{overflow:hidden;text-overflow:ellipsis;min-width:0}.hito{font-size:13px;padding:2px 8px}.racha{gap:5px}

.c-serie{position:absolute;left:2cqw;top:2cqw;background:#2A1B12;color:#FFE45C;font-weight:700;font-size:5cqw;padding:.6cqw 2.6cqw;border-radius:99px;border:.6cqw solid #FFE45C;z-index:2}
.r-u .marco{background:linear-gradient(160deg,#1B0B3F,#3B1A78 55%,#1B0B3F);color:#fff;box-shadow:0 0 0 1.4cqw #FF4FD8,0 0 7cqw 2cqw #FF4FD8cc,0 2cqw 5cqw #0008}
.r-u .c-linea,.r-u .c-nombre{color:#fff}.r-u .c-el{color:var(--tinta)}.r-u .c-rz{color:#FF9AF0}
.r-u .c-shine{opacity:1;background:linear-gradient(115deg,transparent 20%,rgba(255,80,200,.7) 36%,rgba(80,230,255,.7) 48%,rgba(255,230,80,.7) 60%,transparent 76%);background-size:260% 100%;animation:brillo 1.8s linear infinite;mix-blend-mode:screen}
.carta.mist .c-num,.carta.mist .c-rz{visibility:hidden}
.ult-1{animation:t1 .12s linear infinite}.ult-2{animation:t2 .09s linear infinite}.ult-3,.ult-4{animation:t3 .06s linear infinite}
#apertura.suspenso::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,transparent 25%,rgba(0,0,0,.8));pointer-events:none;z-index:41}
@media (prefers-reduced-motion:reduce){.ult-1,.ult-2,.ult-3,.ult-4{animation:none!important}}

.c-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#241545}
.carta.sin .c-img{filter:brightness(0) opacity(.28)}
