/* ═══════════════════════════════════════════════════════════════════════════
   BLACKJACK CHILE — Premium Aesthetics v4.0 — 50 Millones Edition
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── AURORA / NEBULA DE FONDO ───────────────────────────────────────────── */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(ellipse 90% 65% at 15% 25%, rgba(20,50,28,.22) 0%, transparent 55%),
    radial-gradient(ellipse 70% 80% at 85% 75%, rgba(8,16,45,.22) 0%, transparent 50%),
    radial-gradient(ellipse 50% 45% at 50% 5%,  rgba(201,162,39,.07) 0%, transparent 55%),
    radial-gradient(ellipse 40% 40% at 75% 30%, rgba(15,30,50,.15) 0%, transparent 50%);
  animation: auroraShift 20s ease-in-out infinite alternate;
}
@keyframes auroraShift {
  0%   { opacity: .65; transform: scale(1)    rotate(0deg); }
  33%  { opacity: .9;  transform: scale(1.03) rotate(.3deg); }
  66%  { opacity: .75; transform: scale(1.05) rotate(-.2deg); }
  100% { opacity: .85; transform: scale(1.02) rotate(.5deg); }
}

/* ─── TOPBAR PREMIUM ─────────────────────────────────────────────────────── */
.topbar {
  background: linear-gradient(180deg, rgba(1,4,2,.99) 0%, rgba(6,14,7,.97) 100%) !important;
  backdrop-filter: blur(24px) saturate(200%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(200%) !important;
  box-shadow:
    0 0 0 1px rgba(201,162,39,.18),
    0 4px 40px rgba(0,0,0,.7),
    inset 0 -1px 0 rgba(201,162,39,.1) !important;
}
/* Logo con pulso suave y gradiente */
.topbar-logo {
  background: linear-gradient(135deg, #a07c18, #c9a227 40%, #e8c84a 60%, #c9a227);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  background-size: 200% auto;
  animation: logoShimmer 5s linear infinite, logoPulse 4s ease-in-out infinite !important;
  transition: transform .3s ease !important;
  text-shadow: none !important;
  filter: drop-shadow(0 0 12px rgba(201,162,39,.35)) !important;
}
@keyframes logoShimmer {
  0%   { background-position: 0% center; }
  100% { background-position: 200% center; }
}
@keyframes logoPulse {
  0%,100% { filter: drop-shadow(0 0 8px rgba(201,162,39,.3)); }
  50%     { filter: drop-shadow(0 0 22px rgba(201,162,39,.65)) drop-shadow(0 0 44px rgba(201,162,39,.2)); }
}
.topbar-logo:hover {
  transform: scale(1.04) !important;
}

/* ─── JACKPOT BAR — MÁXIMO IMPACTO ──────────────────────────────────────── */
.jackpot-bar {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(90deg,
    rgba(2,8,3,.99) 0%,
    rgba(18,38,18,.97) 20%,
    rgba(26,55,22,.97) 50%,
    rgba(18,38,18,.97) 80%,
    rgba(2,8,3,.99) 100%
  ) !important;
  border-top: 1px solid rgba(201,162,39,.08) !important;
  border-bottom: 1px solid rgba(201,162,39,.18) !important;
  padding: 9px 0 !important;
}
/* Destello que cruza */
.jackpot-bar::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 50% 120% at 50% 50%, rgba(201,162,39,.04), transparent);
  pointer-events: none;
}
.jackpot-bar::after {
  content: '';
  position: absolute;
  top: 0; bottom: 0;
  width: 160px;
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.2), rgba(255,235,100,.12), transparent);
  animation: jpSweep 3.5s linear infinite;
  pointer-events: none;
}
@keyframes jpSweep {
  0%   { left: -200px; }
  100% { left: calc(100% + 200px); }
}

/* Jackpot label */
.jp-label {
  font-family: 'Cinzel', serif;
  font-size: .75rem !important;
  letter-spacing: .18em !important;
  color: rgba(201,162,39,.65) !important;
  text-transform: uppercase !important;
}

/* Jackpot amount — gradiente metálico animado */
.jp-amount {
  font-size: 1.7rem !important;
  background: linear-gradient(135deg, #8b6810 0%, #c9a227 20%, #ffe066 45%, #fff0a0 55%, #c9a227 75%, #8b6810 100%);
  background-size: 250% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: jpMetalShimmer 3s linear infinite, jpPulseBar 3s ease-in-out infinite !important;
  display: inline-block !important;
}
@keyframes jpMetalShimmer {
  0%   { background-position: 0% center; }
  100% { background-position: 250% center; }
}
@keyframes jpPulseBar {
  0%,100% { transform: scale(1);    filter: drop-shadow(0 0 6px rgba(201,162,39,.4)); }
  50%     { transform: scale(1.07); filter: drop-shadow(0 0 20px rgba(201,162,39,.9)) drop-shadow(0 0 40px rgba(201,162,39,.4)); }
}

.jp-sub {
  font-style: italic !important;
  opacity: .5 !important;
  font-size: .8rem !important;
}

/* ─── HERO SECTION — MESA DE CASINO CINEMATOGRÁFICA ─────────────────────── */
.hero {
  background:
    radial-gradient(ellipse 100% 90% at 50% 55%, #1e5a32 0%, #113520 30%, #081a10 65%, #020a04 100%) !important;
}
/* Tejido de fieltro más pronunciado */
.hero::before {
  background:
    repeating-linear-gradient(45deg,  transparent, transparent 20px, rgba(0,0,0,.025) 20px, rgba(0,0,0,.025) 40px),
    repeating-linear-gradient(-45deg, transparent, transparent 20px, rgba(0,0,0,.018) 20px, rgba(0,0,0,.018) 40px),
    repeating-linear-gradient(0deg,   transparent, transparent 30px, rgba(255,255,255,.008) 30px, rgba(255,255,255,.008) 31px) !important;
  pointer-events: none !important;
}

/* Luz cenital cinematográfica */
.hero-ceiling {
  background:
    radial-gradient(ellipse 50% 130% at 50% 0%, rgba(255,245,200,.1) 0%, rgba(201,162,39,.04) 25%, transparent 65%) !important;
  height: 340px !important;
  animation: ceilLight 7s ease-in-out infinite alternate !important;
}
@keyframes ceilLight {
  0%   { opacity: .6; transform: scaleX(.95); }
  100% { opacity: 1;  transform: scaleX(1.08); }
}

/* Grid de fieltro más sutil */
.hero-felt-grid {
  background-image:
    linear-gradient(rgba(201,162,39,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(201,162,39,.035) 1px, transparent 1px) !important;
  background-size: 90px 90px !important;
  mask-image: radial-gradient(ellipse 85% 65% at 50% 40%, black 0%, transparent 75%) !important;
  -webkit-mask-image: radial-gradient(ellipse 85% 65% at 50% 40%, black 0%, transparent 75%) !important;
}

/* TÍTULO con shimmer metálico */
.hero h1 {
  background: linear-gradient(135deg, #8b6810 0%, #c9a227 20%, #ffe066 45%, #fff4b0 55%, #c9a227 78%, #8b6810 100%);
  background-size: 250% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: titleShimmer 4s linear infinite !important;
  text-shadow: none !important;
  filter: drop-shadow(0 2px 30px rgba(201,162,39,.45)) !important;
  letter-spacing: .03em !important;
}
@keyframes titleShimmer {
  0%   { background-position: 0% center; }
  100% { background-position: 250% center; }
}

/* Hero badge más premium */
.hero-badge {
  background: rgba(201,162,39,.1) !important;
  border: 1px solid rgba(201,162,39,.35) !important;
  box-shadow: 0 0 20px rgba(201,162,39,.1), inset 0 1px 0 rgba(255,255,255,.05) !important;
  animation: badgeFade 4s ease-in-out infinite alternate !important;
}
@keyframes badgeFade {
  0%   { box-shadow: 0 0 15px rgba(201,162,39,.08); }
  100% { box-shadow: 0 0 28px rgba(201,162,39,.22); }
}

/* Tagline */
.hero-tagline { font-style: italic; letter-spacing: .06em !important; }

/* Botón hero — shimmer + glow dramático */
.hero .btn-primary,
.hero-actions .btn-primary {
  position: relative !important;
  overflow: hidden !important;
  padding: 17px 48px !important;
  font-size: 1.05rem !important;
  letter-spacing: .14em !important;
  box-shadow:
    0 0 0 1px rgba(201,162,39,.4),
    0 8px 36px rgba(201,162,39,.35),
    0 2px 8px rgba(0,0,0,.6),
    inset 0 1px 0 rgba(255,255,255,.2) !important;
  background: linear-gradient(135deg, #c9a227 0%, #e8c84a 35%, #c9a227 65%, #a07c18 100%) !important;
}
.hero .btn-primary::after,
.hero-actions .btn-primary::after {
  content: '' !important;
  position: absolute !important;
  top: 0; left: -90% !important;
  width: 65%; height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent) !important;
  transform: skewX(-18deg) !important;
  animation: btnShimmerHero 3s ease-in-out 1.5s infinite !important;
  pointer-events: none !important;
}
@keyframes btnShimmerHero {
  0%   { left: -90%; opacity: 0; }
  15%  { opacity: 1; }
  85%  { opacity: 1; }
  100% { left: 130%; opacity: 0; }
}
.hero .btn-primary:hover {
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow:
    0 0 0 1px rgba(201,162,39,.6),
    0 12px 44px rgba(201,162,39,.5),
    0 4px 12px rgba(0,0,0,.7),
    inset 0 1px 0 rgba(255,255,255,.25) !important;
}

/* Partículas de ficha dorada — más visibles */
.hp-gl {
  box-shadow: 0 0 16px rgba(201,162,39,.45), 0 0 32px rgba(201,162,39,.18) !important;
  border-color: rgba(201,162,39,.55) !important;
}

/* Stats del hero */
.hero-stats {
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  background: rgba(0,0,0,.38) !important;
  border: 1px solid rgba(201,162,39,.2) !important;
  box-shadow: 0 8px 36px rgba(0,0,0,.55) !important;
}
.hs-val {
  font-size: 1.45rem !important;
  text-shadow: 0 0 16px rgba(201,162,39,.45) !important;
}

/* ─── TODOS LOS BTN-PRIMARY — SHIMMER EN HOVER ───────────────────────────── */
.btn-primary {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #b89020 0%, #c9a227 35%, #e8c84a 60%, #c9a227 100%) !important;
}
.btn-primary::after {
  content: '' !important;
  position: absolute !important;
  top: -50%; left: -90% !important;
  width: 55%; height: 200% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent) !important;
  transform: skewX(-18deg) !important;
  pointer-events: none !important;
}
.btn-primary:hover::after {
  animation: btnShimmer .7s ease-out forwards !important;
}
@keyframes btnShimmer {
  0%   { left: -90%; }
  100% { left: 130%; }
}

/* ─── TICKER PREMIUM ─────────────────────────────────────────────────────── */
.ticker-wrap {
  background:
    linear-gradient(90deg,
      rgba(1,5,2,.99) 0%,
      rgba(6,14,8,.97) 50%,
      rgba(1,5,2,.99) 100%
    ) !important;
  border-top:    1px solid rgba(201,162,39,.1) !important;
  border-bottom: 1px solid rgba(201,162,39,.1) !important;
}
.tick-item {
  border-left: 1px solid rgba(201,162,39,.07) !important;
  padding: 0 34px !important;
}
.tick-amount {
  text-shadow: 0 0 10px rgba(102,187,106,.5) !important;
  font-weight: 700 !important;
}
.tick-jackpot .tick-amount {
  text-shadow: 0 0 14px rgba(201,162,39,.85) !important;
  font-size: .95rem !important;
}
.tick-jackpot .tick-avatar {
  animation: jackpotAvatar 1.5s ease-in-out infinite !important;
}
@keyframes jackpotAvatar {
  0%,100% { box-shadow: 0 0 8px rgba(201,162,39,.4); }
  50%     { box-shadow: 0 0 24px rgba(201,162,39,.9), 0 0 48px rgba(201,162,39,.3); }
}

/* ─── GAME CARDS — MÁXIMA CALIDAD ────────────────────────────────────────── */
.game-card {
  background: linear-gradient(165deg, #0d1a0f 0%, #070e08 100%) !important;
  border: 1px solid rgba(201,162,39,.14) !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 22px rgba(0,0,0,.55) !important;
  transform-style: preserve-3d;
  will-change: transform;
  transition:
    transform .25s cubic-bezier(.175,.885,.32,1.275),
    box-shadow .25s ease,
    border-color .25s ease !important;
}
.game-card:hover {
  transform: translateY(-7px) scale(1.03) !important;
  box-shadow:
    0 24px 60px rgba(0,0,0,.75),
    0 0 0 1px rgba(201,162,39,.28),
    0 0 40px rgba(201,162,39,.12) !important;
  border-color: rgba(201,162,39,.45) !important;
}

/* Línea dorada superior que aparece en hover */
.game-card::before {
  height: 2px !important;
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.0), transparent) !important;
  transition: background .4s ease !important;
}
.game-card:hover::before {
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.9), transparent) !important;
  box-shadow: 0 0 14px rgba(201,162,39,.5) !important;
}

/* Quitar el ::after de border glow (reemplazado por box-shadow) */
.game-card::after { display: none !important; }

/* Shine holográfico */
.card-shine-layer {
  border-radius: 14px !important;
  overflow: hidden !important;
}
.card-shine-layer::before {
  background: radial-gradient(
    circle at var(--shine-x,50%) var(--shine-y,50%),
    rgba(255,255,255,.24) 0%,
    rgba(255,255,255,.1) 25%,
    transparent 55%
  ) !important;
}
.card-shine-layer::after {
  background: linear-gradient(
    108deg,
    transparent 12%,
    rgba(255,215,0,.07) 28%,
    rgba(255,255,255,.17) 47%,
    rgba(201,162,39,.08) 65%,
    transparent 82%
  ) !important;
  mix-blend-mode: overlay !important;
  transition: background-position .08s linear !important;
}

/* Thumbnail */
.game-thumb {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 13px 13px 0 0 !important;
}
.game-thumb::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(ellipse 80% 55% at 50% 25%, rgba(255,255,255,.06) 0%, transparent 70%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}
.game-thumb::after {
  background: linear-gradient(0deg, rgba(5,12,5,.92) 0%, rgba(5,12,5,.45) 38%, transparent 65%) !important;
}

/* CTA button */
.game-cta {
  position: relative !important;
  overflow: hidden !important;
  transition: all .2s ease !important;
  background: linear-gradient(135deg, rgba(201,162,39,.1), rgba(201,162,39,.05)) !important;
  border: 1px solid rgba(201,162,39,.22) !important;
  color: #e8c84a !important;
  text-shadow: 0 0 12px rgba(201,162,39,.35) !important;
  letter-spacing: .1em !important;
}
.game-cta:hover {
  background: linear-gradient(135deg, rgba(201,162,39,.22), rgba(201,162,39,.1)) !important;
  border-color: rgba(201,162,39,.55) !important;
  box-shadow: 0 0 22px rgba(201,162,39,.2), 0 4px 16px rgba(0,0,0,.45) !important;
  letter-spacing: .12em !important;
}

/* Badge "LIVE" con punto pulsante */
.meta-live::before {
  content: '';
  display: inline-block;
  width: 6px; height: 6px;
  background: #ffe066;
  border-radius: 50%;
  margin-right: 5px;
  box-shadow: 0 0 6px rgba(255,224,102,.9);
  animation: liveDot 1.2s ease-in-out infinite;
}
@keyframes liveDot {
  0%,100% { transform: scale(1); opacity: 1; }
  50%     { transform: scale(1.5); opacity: .65; box-shadow: 0 0 12px rgba(255,224,102,.9); }
}
.meta-live { animation: none !important; }

/* ─── SECTION HEADERS PREMIUM ────────────────────────────────────────────── */
.section-header::before {
  content: '✦  ✦  ✦';
  display: block;
  font-size: .55rem;
  color: rgba(201,162,39,.3);
  letter-spacing: .6em;
  text-align: center;
  margin-bottom: 10px;
}
.section-header h2 {
  text-shadow: 0 0 40px rgba(201,162,39,.35), 0 0 80px rgba(201,162,39,.12) !important;
}

/* ─── HUD DE USUARIO ─────────────────────────────────────────────────────── */
.hud {
  background: linear-gradient(145deg, rgba(18,42,24,.92), rgba(9,18,11,.97)) !important;
  border: 1px solid rgba(201,162,39,.22) !important;
  box-shadow:
    0 8px 44px rgba(0,0,0,.55),
    0 0 0 1px rgba(201,162,39,.06),
    inset 0 1px 0 rgba(201,162,39,.1) !important;
}

/* Avatar con anillo pulsante dorado */
.hud-avatar {
  box-shadow:
    0 0 0 2px rgba(201,162,39,.35),
    0 0 24px rgba(201,162,39,.25),
    0 0 0 4px rgba(201,162,39,.08) !important;
  animation: avatarPulse 4s ease-in-out infinite !important;
}
@keyframes avatarPulse {
  0%,100% { box-shadow: 0 0 0 2px rgba(201,162,39,.3), 0 0 18px rgba(201,162,39,.2), 0 0 0 4px rgba(201,162,39,.06); }
  50%     { box-shadow: 0 0 0 2px rgba(201,162,39,.55), 0 0 32px rgba(201,162,39,.4), 0 0 0 5px rgba(201,162,39,.14); }
}

/* XP bar shimmer */
.xpbar-fill {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(90deg, #8b6810, #c9a227, #ffe066) !important;
  animation: xpGlow 2.5s ease-in-out infinite !important;
}
.xpbar-fill::after {
  content: '' !important;
  position: absolute !important;
  top: 0; left: -70% !important;
  width: 45%; height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent) !important;
  animation: xpShimmer 2.8s ease-in-out 1.2s infinite !important;
}
@keyframes xpShimmer { 0% { left: -70%; } 100% { left: 150%; } }
@keyframes xpGlow {
  0%,100% { box-shadow: none; }
  50%     { box-shadow: 0 0 12px rgba(201,162,39,.55), 0 0 24px rgba(201,162,39,.2); }
}

/* ─── DAILY BONUS BANNER ─────────────────────────────────────────────────── */
.daily-banner {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid rgba(201,162,39,.38) !important;
  box-shadow: 0 4px 24px rgba(201,162,39,.1) !important;
  transition: all .28s ease !important;
}
.daily-banner:hover {
  box-shadow: 0 8px 36px rgba(201,162,39,.2) !important;
  border-color: rgba(201,162,39,.55) !important;
}
.daily-banner::before {
  content: '' !important;
  position: absolute !important;
  top: 0; left: -110% !important;
  width: 80%; height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.08), transparent) !important;
  animation: bannerSweep 6s ease-in-out 2s infinite !important;
  pointer-events: none !important;
}
@keyframes bannerSweep { 0% { left: -110%; } 100% { left: 190%; } }

.db-icon { animation: giftBounce 2.2s ease-in-out infinite !important; }
@keyframes giftBounce {
  0%,100% { transform: translateY(0) rotate(0deg); }
  25%     { transform: translateY(-5px) rotate(-6deg); }
  75%     { transform: translateY(-2px) rotate(4deg); }
}

/* ─── LEVEL TILES ────────────────────────────────────────────────────────── */
.level-tile {
  transition: all .32s cubic-bezier(.175,.885,.32,1.275) !important;
  background: linear-gradient(165deg, rgba(8,18,10,.96), rgba(4,10,5,.99)) !important;
}
.level-tile:hover {
  transform: translateY(-10px) scale(1.04) !important;
  box-shadow:
    0 22px 55px rgba(0,0,0,.55),
    0 0 30px color-mix(in srgb, var(--lv-color, #c9a227) 30%, transparent) !important;
  border-color: var(--lv-color, rgba(201,162,39,.35)) !important;
}
.lt-icon { animation: iconFloat 3.2s ease-in-out infinite !important; }
@keyframes iconFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }

/* ─── LEADERBOARD ────────────────────────────────────────────────────────── */
.lb-table tbody tr:first-child td {
  background: linear-gradient(90deg, rgba(255,215,0,.07), rgba(255,215,0,.02)) !important;
}
.lb-table tbody tr:nth-child(2) td {
  background: linear-gradient(90deg, rgba(192,192,192,.055), rgba(192,192,192,.01)) !important;
}
.lb-table tbody tr:nth-child(3) td {
  background: linear-gradient(90deg, rgba(205,127,50,.055), rgba(205,127,50,.01)) !important;
}
.lb-table tbody tr:first-child .lb-rank {
  animation: goldGlow 2s ease-in-out infinite !important;
}
@keyframes goldGlow {
  0%,100% { text-shadow: 0 0 8px rgba(255,215,0,.5); }
  50%     { text-shadow: 0 0 20px rgba(255,215,0,.95), 0 0 36px rgba(255,215,0,.45); }
}

/* ─── FEAT CARDS ─────────────────────────────────────────────────────────── */
.feat-card {
  border: 1px solid rgba(255,255,255,.045) !important;
  transition: all .35s cubic-bezier(.175,.885,.32,1.275) !important;
}
.feat-card:hover {
  transform: translateY(-7px) scale(1.025) !important;
  border-color: rgba(201,162,39,.38) !important;
  box-shadow: 0 22px 55px rgba(0,0,0,.55), 0 0 44px rgba(201,162,39,.1) !important;
}
.feat-card:hover .feat-icon-wrap {
  transform: scale(1.12) rotate(-6deg) !important;
  box-shadow: 0 0 32px rgba(201,162,39,.28) !important;
}

/* ─── MODALES ────────────────────────────────────────────────────────────── */
.modal {
  box-shadow:
    0 36px 110px rgba(0,0,0,.92),
    0 0 0 1px rgba(201,162,39,.15),
    0 0 70px rgba(201,162,39,.06) !important;
  backdrop-filter: none;
}
.modal::before {
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.75), transparent) !important;
  height: 1px !important;
  animation: modalTopLine 3.5s ease-in-out infinite alternate !important;
}
@keyframes modalTopLine { 0% { opacity: .35; } 100% { opacity: 1; } }

.auth-tab.active::after {
  content: '';
  position: absolute;
  bottom: -1px; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #e8c84a, transparent);
  box-shadow: 0 0 10px rgba(201,162,39,.6);
  animation: tabGlow 2s ease-in-out infinite !important;
}
@keyframes tabGlow { 0%,100% { box-shadow: 0 0 6px rgba(201,162,39,.3); } 50% { box-shadow: 0 0 16px rgba(201,162,39,.75); } }

/* ─── TOASTS ─────────────────────────────────────────────────────────────── */
.toast {
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-left: 3px solid rgba(201,162,39,.55) !important;
  box-shadow: 0 10px 36px rgba(0,0,0,.6), -2px 0 18px rgba(201,162,39,.08) !important;
}
.toast.success { border-left-color: rgba(102,187,106,.75) !important; box-shadow: 0 10px 36px rgba(0,0,0,.6), -2px 0 18px rgba(102,187,106,.18) !important; }
.toast.error   { border-left-color: rgba(239,83,80,.75) !important;  box-shadow: 0 10px 36px rgba(0,0,0,.6), -2px 0 18px rgba(239,83,80,.18) !important; }
.toast.jackpot { border-left-color: rgba(201,162,39,.95) !important; box-shadow: 0 10px 36px rgba(0,0,0,.6), -2px 0 22px rgba(201,162,39,.35) !important; }

/* ─── ACHIEVEMENT NOTIF ──────────────────────────────────────────────────── */
.ach-notif {
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  box-shadow:
    0 14px 55px rgba(0,0,0,.65),
    0 0 0 1px rgba(201,162,39,.28),
    0 0 45px rgba(201,162,39,.12) !important;
  border: 1px solid rgba(201,162,39,.55) !important;
  border-left: 3px solid rgba(201,162,39,.85) !important;
}

/* ─── SCROLL REVEAL ─────────────────────────────────────────────────────── */
.scroll-reveal {
  opacity: 0;
  transform: translateY(32px) scale(.97);
  transition: opacity .6s cubic-bezier(.25,.46,.45,.94),
              transform .6s cubic-bezier(.25,.46,.45,.94);
  will-change: opacity, transform;
}
.scroll-reveal.revealed {
  opacity: 1;
  transform: translateY(0) scale(1);
}

/* Legacy data-sr (kept for any existing markup that uses it) */
[data-sr] {
  opacity: 0 !important;
  transform: translateY(30px) scale(.98) !important;
  transition:
    opacity .8s cubic-bezier(.22,.8,.34,1.12),
    transform .8s cubic-bezier(.22,.8,.34,1.12) !important;
}
[data-sr].sr-in {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
}

/* ─── GAME CARD 3D STAGE ─────────────────────────────────────────────────── */
.games-grid {
  perspective: 1400px;
}
.game-card {
  transform-style: preserve-3d;
  will-change: transform;
}
.game-thumb {
  transform-style: preserve-3d;
  will-change: transform;
}

/* ─── DIGIT SPIN (jackpot slot roll) ─────────────────────────────────────── */
@keyframes digitSpin {
  0%   { opacity: 0; transform: translateY(-80%) scaleY(1.4); }
  60%  { opacity: 1; transform: translateY(8%) scaleY(0.9); }
  100% { opacity: 1; transform: translateY(0) scaleY(1); }
}

/* ─── RIPPLE EXPAND (button click) ──────────────────────────────────────── */
@keyframes rippleExpand {
  0%   { width: 0; height: 0; opacity: 1; }
  100% { width: 300px; height: 300px; opacity: 0; }
}

/* ─── SPARKLES DEL JACKPOT ───────────────────────────────────────────────── */
.jp-sparkle {
  position: absolute;
  pointer-events: none;
  border-radius: 50%;
  background: rgba(201,162,39,.95);
  box-shadow: 0 0 8px rgba(201,162,39,.9);
  animation: sparkleOut var(--dur,.85s) ease-out forwards;
}
@keyframes sparkleOut {
  0%   { transform: translate(0,0) scale(1); opacity: 1; }
  100% { transform: translate(var(--dx,0), var(--dy,-45px)) scale(0); opacity: 0; }
}

/* ─── CURSOR GLOW ────────────────────────────────────────────────────────── */
#cursor-glow {
  width: 400px !important;
  height: 400px !important;
  background: radial-gradient(circle, rgba(201,162,39,.055) 0%, rgba(201,162,39,.018) 40%, transparent 70%) !important;
  mix-blend-mode: screen !important;
}

/* ─── SOUND BUTTON ───────────────────────────────────────────────────────── */
.sound-btn {
  backdrop-filter: blur(18px) !important;
  box-shadow:
    0 4px 22px rgba(0,0,0,.55),
    0 0 0 1px rgba(201,162,39,.18) !important;
  transition: all .25s cubic-bezier(.175,.885,.32,1.275) !important;
}
.sound-btn:hover {
  transform: scale(1.14) !important;
  box-shadow:
    0 6px 32px rgba(0,0,0,.65),
    0 0 0 1px rgba(201,162,39,.4),
    0 0 22px rgba(201,162,39,.18) !important;
}

/* ─── LIVE WIN TOAST ─────────────────────────────────────────────────────── */
.live-win-toast {
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border: 1px solid rgba(201,162,39,.42) !important;
  box-shadow:
    0 14px 44px rgba(0,0,0,.65),
    0 0 0 1px rgba(201,162,39,.1),
    0 0 32px rgba(201,162,39,.08) !important;
}

/* ─── FOOTER ─────────────────────────────────────────────────────────────── */
.footer {
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, #020608 0%, #010405 100%) !important;
}
.footer::after {
  content: '' !important;
  position: absolute !important;
  top: 0; left: 0; right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.45), transparent) !important;
  animation: footerLine 4.5s ease-in-out infinite alternate !important;
}
@keyframes footerLine { 0% { opacity: .28; } 100% { opacity: .85; } }

.footer-badge {
  background: rgba(201,162,39,.04) !important;
  border-color: rgba(201,162,39,.1) !important;
  transition: all .22s ease !important;
}
.footer-badge:hover {
  background: rgba(201,162,39,.09) !important;
  border-color: rgba(201,162,39,.22) !important;
  transform: translateY(-1px) !important;
}

/* ─── SECTION DIVIDER ────────────────────────────────────────────────────── */
.section-divider {
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.3), transparent) !important;
  animation: dividerGlow 3.5s ease-in-out infinite alternate !important;
}
@keyframes dividerGlow { 0% { opacity: .4; } 100% { opacity: 1; box-shadow: 0 0 14px rgba(201,162,39,.22); } }

/* ─── INPUTS ─────────────────────────────────────────────────────────────── */
.form-input {
  transition: all .25s ease !important;
  background: rgba(0,0,0,.5) !important;
}
.form-input:focus {
  border-color: rgba(201,162,39,.58) !important;
  box-shadow: 0 0 0 2px rgba(201,162,39,.12), 0 4px 18px rgba(0,0,0,.45) !important;
  background: rgba(0,0,0,.65) !important;
}

/* ─── WALLET AMOUNT CON SHIMMER ──────────────────────────────────────────── */
.wbal-amount {
  background: linear-gradient(135deg, #8b6810, #c9a227 35%, #ffe066 55%, #c9a227);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: titleShimmer 4s linear infinite !important;
}

/* ─── SCROLLBAR ──────────────────────────────────────────────────────────── */
::-webkit-scrollbar { width: 5px; background: #010605; }
::-webkit-scrollbar-track { background: linear-gradient(180deg, #010605, #030e07); }
::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #6b5215, #c9a227);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, #c9a227, #e8c84a); }

/* ─── AVIATOR THUMBNAIL EN LOBBY ─────────────────────────────────────────── */
.av-plane-icon {
  font-size: 3.4rem !important;
  filter: drop-shadow(0 0 30px rgba(201,162,39,.95)) drop-shadow(0 0 65px rgba(201,162,39,.5)) !important;
}
.av-trail {
  height: 2px !important;
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.35), rgba(201,162,39,.75)) !important;
  box-shadow: 0 0 10px rgba(201,162,39,.45) !important;
}

/* ─── RULETA THUMBNAIL ───────────────────────────────────────────────────── */
.rl-wheel { animation: rlSpin 7s linear infinite !important; }
@keyframes rlSpin { 0% { transform: rotate(0); } 100% { transform: rotate(360deg); } }

/* ─── ROULETTE GLOW RING ─────────────────────────────────────────────────── */
.rl-stage::after {
  content: '' !important;
  position: absolute !important;
  width: 162px; height: 162px !important;
  border-radius: 50% !important;
  top: 50%; left: 50%; transform: translate(-50%,-50%) !important;
  animation: rlRing 3s ease-in-out infinite !important;
  pointer-events: none !important; z-index: 0 !important;
}
@keyframes rlRing {
  0%,100% { box-shadow: 0 0 0 3px rgba(201,162,39,.08), 0 0 20px rgba(201,162,39,.06); }
  50%     { box-shadow: 0 0 0 6px rgba(201,162,39,.38), 0 0 44px rgba(201,162,39,.24), 0 0 72px rgba(201,162,39,.08); }
}

/* ─── JACKPOT AMOUNT INNER SHINE OVERRIDE ────────────────────────────────── */
#hero-sparkle { opacity: .65 !important; }

/* ─── MISSION CARDS ──────────────────────────────────────────────────────── */
.mission-card {
  transition: all .3s cubic-bezier(.175,.885,.32,1.275) !important;
}
.mission-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(201,162,39,.28) !important;
  box-shadow: 0 14px 36px rgba(0,0,0,.45), 0 0 22px rgba(201,162,39,.07) !important;
}
.mission-card.done {
  background: linear-gradient(135deg, rgba(102,187,106,.09), rgba(102,187,106,.03)) !important;
  border-color: rgba(102,187,106,.38) !important;
}

/* ─── SLOTS PAYLINE ──────────────────────────────────────────────────────── */
.slots-payline {
  height: 2px !important;
  box-shadow: 0 0 14px rgba(201,162,39,.75), 0 0 28px rgba(201,162,39,.38) !important;
  animation: paylinePulse 1.6s ease-in-out infinite !important;
}
@keyframes paylinePulse {
  0%,100% { opacity: .7; }
  50%     { opacity: 1; box-shadow: 0 0 22px rgba(201,162,39,.95), 0 0 44px rgba(201,162,39,.55) !important; }
}

/* ─── HERO TABLE EDGE ────────────────────────────────────────────────────── */
.hero-table-edge {
  background:
    linear-gradient(180deg, transparent, rgba(8,4,0,.65) 60%, rgba(12,6,0,.88) 100%) !important;
  border-top: 1px solid rgba(201,162,39,.1) !important;
}
.hero-table-edge::before {
  background: linear-gradient(90deg, transparent, rgba(201,162,39,.35), transparent) !important;
}

/* ─── FLOATING SUIT SYMBOLS (héroe) ─────────────────────────────────────── */
.hero-suit-float {
  position: absolute;
  bottom: -8%;
  pointer-events: none;
  z-index: 1;
  font-family: Georgia, serif;
  line-height: 1;
  animation: suitFloat linear infinite;
  user-select: none;
  -webkit-user-select: none;
  will-change: transform, opacity;
}
@keyframes suitFloat {
  0%   { transform: translateY(0) rotate(0deg) scale(1);   opacity: 0; }
  5%   { opacity: 1; }
  50%  { transform: translateY(-55vh) rotate(180deg) scale(.85); }
  95%  { opacity: 1; }
  100% { transform: translateY(-115vh) rotate(360deg) scale(.7); opacity: 0; }
}

/* ─── MOUSE GOLD DUST TRAIL ──────────────────────────────────────────────── */
.mouse-trail-particle {
  position: fixed;
  width: var(--sz, 3px);
  height: var(--sz, 3px);
  border-radius: 50%;
  background: radial-gradient(circle, #ffe066 0%, #c9a227 60%);
  box-shadow: 0 0 6px rgba(201,162,39,.7);
  pointer-events: none;
  z-index: 9997;
  transform: translate(-50%, -50%);
  animation: trailFade .7s ease-out forwards;
}
@keyframes trailFade {
  0%   { transform: translate(-50%, -50%) scale(1);   opacity: .85; }
  100% { transform: translate(-50%, -230%) scale(0);  opacity: 0; }
}

/* ─── COIN BURST (jackpot increment) ─────────────────────────────────────── */
.coin-burst {
  position: fixed;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 25%, #ffe066 0%, #c9a227 55%, #8b6810 100%);
  box-shadow: 0 0 8px rgba(201,162,39,.8), inset 0 1px 0 rgba(255,255,255,.45);
  pointer-events: none;
  z-index: 9998;
  transform: translate(-50%, -50%);
  animation: coinFly .75s cubic-bezier(.25,.46,.45,.94) forwards;
}
@keyframes coinFly {
  0%   { transform: translate(-50%,-50%) scale(1.3);  opacity: 1; }
  60%  { opacity: .9; }
  100% { transform: translate(calc(-50% + var(--cdx,0px)), calc(-50% + var(--cdy,-40px))) scale(0); opacity: 0; }
}

/* ─── PER-GAME CARD ACCENT COLORS ────────────────────────────────────────── */
.games-grid .game-card:nth-child(1):hover { box-shadow: 0 24px 60px rgba(0,0,0,.75), 0 0 0 1px rgba(201,162,39,.35), 0 0 55px rgba(201,162,39,.18) !important; }
.games-grid .game-card:nth-child(2):hover { box-shadow: 0 24px 60px rgba(0,0,0,.75), 0 0 0 1px rgba(39,174,96,.4), 0 0 50px rgba(39,174,96,.12) !important; }
.games-grid .game-card:nth-child(3):hover { box-shadow: 0 24px 60px rgba(0,0,0,.75), 0 0 0 1px rgba(231,76,60,.35), 0 0 50px rgba(231,76,60,.1) !important; }
.games-grid .game-card:nth-child(4):hover { box-shadow: 0 24px 60px rgba(0,0,0,.75), 0 0 0 1px rgba(100,181,246,.35), 0 0 50px rgba(100,181,246,.1) !important; }
.games-grid .game-card:nth-child(5):hover { box-shadow: 0 24px 60px rgba(0,0,0,.75), 0 0 0 1px rgba(201,162,39,.35), 0 0 55px rgba(201,162,39,.16) !important; }
.games-grid .game-card:nth-child(6):hover { box-shadow: 0 24px 60px rgba(0,0,0,.75), 0 0 0 1px rgba(171,71,188,.35), 0 0 50px rgba(171,71,188,.1) !important; }
.games-grid .game-card:nth-child(7):hover { box-shadow: 0 24px 60px rgba(0,0,0,.75), 0 0 0 1px rgba(255,167,38,.38), 0 0 50px rgba(255,167,38,.1) !important; }
.games-grid .game-card:nth-child(8):hover { box-shadow: 0 24px 60px rgba(0,0,0,.75), 0 0 0 1px rgba(201,162,39,.35), 0 0 55px rgba(201,162,39,.16) !important; }

/* VIP ribbon on first game card */
.games-grid .game-card:first-child {
  position: relative !important;
}
.games-grid .game-card:first-child::after {
  display: block !important;
  content: 'VIP' !important;
  position: absolute !important;
  top: 12px !important; right: -8px !important;
  background: linear-gradient(135deg, #a07c18, #c9a227, #ffe066) !important;
  color: #0a0500 !important;
  font-family: 'Cinzel', serif !important;
  font-size: .5rem !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  padding: 3px 12px 3px 8px !important;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 6% 50%) !important;
  z-index: 10 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.5) !important;
}

/* ─── JACKPOT BAR — DIAGONAL SHIMMER ─────────────────────────────────────── */
.jackpot-bar {
  background: linear-gradient(90deg,
    rgba(2,8,3,.99) 0%,
    rgba(18,38,18,.97) 20%,
    rgba(26,55,22,.97) 50%,
    rgba(18,38,18,.97) 80%,
    rgba(2,8,3,.99) 100%
  ),
  repeating-linear-gradient(
    -55deg,
    transparent,
    transparent 8px,
    rgba(201,162,39,.015) 8px,
    rgba(201,162,39,.015) 9px
  ) !important;
}

/* ─── STAT CARD HOVER DEPTH ──────────────────────────────────────────────── */
.hs-item {
  transition: transform .25s cubic-bezier(.175,.885,.32,1.275), box-shadow .25s ease !important;
  cursor: default !important;
}
.hs-item:hover {
  transform: translateY(-3px) scale(1.03) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.45), 0 0 18px rgba(201,162,39,.1) !important;
}

/* ─── HERO STATS COUNTER HIGHLIGHT ──────────────────────────────────────── */
.hs-val {
  background: linear-gradient(135deg, #c9a227 0%, #ffe066 50%, #c9a227 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: titleShimmer 4s linear infinite, none !important;
  font-size: 1.55rem !important;
}

/* ─── RESPONSIVE — TABLET (≤1024px) ──────────────────────────────────────── */
@media (max-width: 1024px) {
  /* Hero */
  .hero h1 { font-size: clamp(1.8rem, 5vw, 3rem) !important; }

  /* Games grid max 2 cols */
  .games-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 18px !important; }

  /* Level tiles scroll */
  .levels-grid { flex-wrap: nowrap !important; overflow-x: auto !important; padding-bottom: 12px !important; }
  .level-tile { min-width: 155px !important; }

  /* Leaderboard */
  .lb-table { font-size: .82rem !important; }

  /* Features grid 2 cols */
  .features-grid { grid-template-columns: repeat(2, 1fr) !important; }
}

/* ─── RESPONSIVE — MOBILE (≤768px) ───────────────────────────────────────── */
@media (max-width: 768px) {
  /* Topbar */
  .topbar { padding: 0 14px !important; height: 52px !important; }
  .topbar-logo { font-size: .95rem !important; }
  .topbar-logo .suit { display: none !important; }
  .topbar-center { display: none !important; }
  .topbar-right { gap: 7px !important; }

  /* Jackpot bar */
  .jackpot-bar { gap: 8px !important; padding: 6px 14px !important; flex-wrap: wrap !important; }
  .jp-amount { font-size: 1.1rem !important; }
  .jp-sub { display: none !important; }

  /* Hero */
  .hero { padding-top: 100px !important; min-height: auto !important; padding-bottom: 48px !important; }
  .hero h1 { font-size: clamp(1.5rem, 7vw, 2.4rem) !important; }
  .hero-tagline { font-size: .95rem !important; }
  .hero-stats { gap: 16px !important; padding: 12px 16px !important; }
  .hs-val { font-size: 1.15rem !important; }
  .hs-lbl { font-size: .62rem !important; }
  .hero-actions { flex-direction: column !important; align-items: center !important; gap: 10px !important; }
  .hero .btn-primary { width: 100% !important; max-width: 320px !important; text-align: center !important; padding: 14px 24px !important; }
  .hero-badge { font-size: .68rem !important; }

  /* Container */
  .container { padding: 0 16px !important; }

  /* Section */
  .section { padding: 36px 0 !important; }
  .section-header h2 { font-size: 1.35rem !important; }

  /* Games grid — 1 col */
  .games-grid { grid-template-columns: 1fr !important; gap: 16px !important; }

  /* HUD */
  .hud { padding: 16px !important; }
  .hud-row { flex-direction: column !important; align-items: flex-start !important; gap: 12px !important; }
  .hud-stats { gap: 14px !important; }
  .hud-avatar { width: 42px !important; height: 42px !important; }

  /* Features grid */
  .features-grid { grid-template-columns: 1fr !important; gap: 14px !important; }

  /* Leaderboard */
  .lb-table th:nth-child(3), .lb-table td:nth-child(3) { display: none !important; }

  /* Level tiles */
  .levels-grid { flex-wrap: nowrap !important; overflow-x: auto !important; padding-bottom: 12px !important; -webkit-overflow-scrolling: touch !important; }
  .level-tile { min-width: 140px !important; }

  /* Ticker */
  .tick-item { padding: 0 18px !important; }

  /* Daily banner */
  .daily-banner { padding: 14px !important; }

  /* VIP ribbon remove on mobile (too small) */
  .games-grid .game-card:first-child::after { display: none !important; }

  /* Jackpot sparkles smaller */
  .jp-sparkle { width: 4px !important; height: 4px !important; }

  /* Sound button */
  .sound-btn { width: 36px !important; height: 36px !important; font-size: .85rem !important; }

  /* Footer */
  .footer { padding: 28px 16px !important; }
  .footer-badges { gap: 8px !important; }
  .footer-links { gap: 12px !important; font-size: .78rem !important; }

  /* Modal */
  .modal { width: calc(100% - 32px) !important; max-height: 92vh !important; padding: 20px !important; }

  /* Wallet in profile */
  .wallet-actions { flex-direction: column !important; gap: 8px !important; }

  /* Coin burst — disable on mobile (performance) */
  .coin-burst { display: none !important; }
}

/* ─── RESPONSIVE — SMALL MOBILE (≤420px) ─────────────────────────────────── */
@media (max-width: 420px) {
  .hero h1 { font-size: 1.35rem !important; }
  .jp-amount { font-size: .95rem !important; }
  .topbar-logo { font-size: .85rem !important; }
  .hero-stats { flex-direction: column !important; gap: 8px !important; align-items: center !important; }
  .btn-sm { font-size: .68rem !important; padding: 7px 12px !important; }
  .game-card { border-radius: 10px !important; }
  .game-thumb { height: 140px !important; }
  .games-grid .game-card:nth-child(1)::after { display: none !important; }
}

/* ─── MONEY RAIN — BILLETES CAYENDO ─────────────────────────────────────── */
.money-bill {
  position: absolute;
  top: -20px;
  background: linear-gradient(90deg,
    rgba(39,174,96,.06) 0%,
    rgba(39,174,96,.14) 35%,
    rgba(60,200,100,.18) 50%,
    rgba(39,174,96,.14) 65%,
    rgba(39,174,96,.06) 100%
  );
  border: 1px solid rgba(39,174,96,.1);
  border-radius: 3px;
  pointer-events: none;
  opacity: var(--bop, .1);
  animation: billFall var(--bd, 7s) linear var(--bdel, 0s) infinite;
}
/* Mini "número" de billete */
.money-bill::before {
  content: '$';
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  font-size: 7px; font-weight: 700;
  color: rgba(39,174,96,.5);
  font-family: 'Cinzel', serif;
  letter-spacing: .02em;
}
@keyframes billFall {
  0%   { transform: translateY(-20px)   rotate(var(--br,0deg))                         skewX(0deg);   opacity: var(--bop,.1); }
  18%  { transform: translateY(18vh)    rotate(calc(var(--br,0deg) + 18deg))           skewX(3deg); }
  45%  { transform: translateY(48vh)    rotate(calc(var(--br,0deg) + 80deg))           skewX(-4deg); }
  72%  { transform: translateY(76vh)    rotate(calc(var(--br,0deg) + 200deg))          skewX(3deg);   opacity: var(--bop,.1); }
  100% { transform: translateY(108vh)   rotate(calc(var(--br,0deg) + 360deg))          skewX(0deg);   opacity: 0; }
}

/* ─── FLOATING HERO COINS ────────────────────────────────────────────────── */
@keyframes heroCoinFloat {
  0%   { transform: translateY(0)     rotateY(0deg)   translateX(0)    scale(1);   opacity: var(--op, .2); }
  20%  { transform: translateY(-20vh) rotateY(72deg)  translateX(12px) scale(.95); }
  45%  { transform: translateY(-45vh) rotateY(162deg) translateX(-8px) scale(.88); }
  70%  { transform: translateY(-70vh) rotateY(252deg) translateX(15px) scale(.78); opacity: calc(var(--op, .2) * .6); }
  100% { transform: translateY(-110vh) rotateY(360deg) translateX(0)  scale(.5);  opacity: 0; }
}

/* ─── LIVE WIN TOAST — CINEMATOGRÁFICO ───────────────────────────────────── */
.live-win-toast {
  position: fixed !important;
  bottom: 24px !important; right: 18px !important;
  min-width: 230px; max-width: 300px !important;
  background: linear-gradient(135deg, rgba(12,18,12,.97) 0%, rgba(8,14,8,.98) 100%) !important;
  border: 1px solid rgba(201,162,39,.35) !important;
  border-radius: 16px !important;
  padding: 13px 16px !important;
  box-shadow:
    0 12px 40px rgba(0,0,0,.7),
    0 0 0 1px rgba(255,255,255,.04),
    0 0 30px rgba(201,162,39,.08) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  z-index: 9000 !important;
  animation: lwtEnter .45s cubic-bezier(.175,.885,.32,1.275) forwards !important;
}
@keyframes lwtEnter {
  0%   { transform: translateX(120%) scale(.88); opacity: 0; }
  60%  { transform: translateX(-6px) scale(1.02); opacity: 1; }
  100% { transform: translateX(0)   scale(1);    opacity: 1; }
}
.lwt-avatar {
  width: 38px !important; height: 38px !important;
  border-radius: 50% !important;
  font-size: .8rem !important; font-weight: 800 !important;
  background: linear-gradient(135deg, #1a2060, #2a3490) !important;
  border: 2px solid rgba(201,162,39,.4) !important;
  box-shadow: 0 0 12px rgba(201,162,39,.25) !important;
  flex-shrink: 0 !important;
}
.lwt-body { font-size: .74rem !important; line-height: 1.5 !important; }
.lwt-amount {
  font-family: 'Cinzel', serif !important;
  font-size: .88rem !important;
  color: #ffe066 !important;
  text-shadow: 0 0 10px rgba(255,224,102,.6) !important;
  display: block !important; margin-top: 2px !important;
}
.lwt-body.jackpot .lwt-amount {
  font-size: 1.05rem !important;
  color: #fff !important;
  text-shadow: 0 0 20px rgba(255,224,102,1) !important;
  animation: jackpotAmt 1.2s ease-in-out infinite !important;
}
@keyframes jackpotAmt {
  0%,100% { text-shadow: 0 0 14px rgba(255,224,102,.8); }
  50%     { text-shadow: 0 0 28px rgba(255,224,102,1), 0 0 56px rgba(201,162,39,.5); }
}

/* ─── SCROLL-REVEAL — GAME CARDS 3D ENTRANCE ────────────────────────────── */
.scroll-reveal:not(.revealed) {
  transform: translateY(36px) scale(.96) perspective(600px) rotateX(4deg) !important;
  opacity: 0 !important;
}
.scroll-reveal.revealed {
  transform: translateY(0) scale(1) perspective(600px) rotateX(0deg) !important;
  opacity: 1 !important;
  transition: transform .6s cubic-bezier(.25,.46,.45,.94), opacity .55s ease !important;
}

/* ─── GAME CARDS GLASS MORPHISM ENHANCEMENT ─────────────────────────────── */
.game-card {
  backdrop-filter: blur(8px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(8px) saturate(140%) !important;
  background: linear-gradient(160deg,
    rgba(26,51,32,.88) 0%,
    rgba(13,26,16,.94) 50%,
    rgba(8,18,10,.96) 100%
  ) !important;
  box-shadow:
    0 4px 24px rgba(0,0,0,.55),
    0 0 0 1px rgba(201,162,39,.14),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.game-card:hover {
  box-shadow:
    0 28px 72px rgba(0,0,0,.75),
    0 0 0 1px rgba(201,162,39,.4),
    0 0 50px rgba(201,162,39,.12),
    inset 0 1px 0 rgba(255,255,255,.1) !important;
}

/* ─── LEVEL TILES NEON BORDER ────────────────────────────────────────────── */
.level-tile {
  box-shadow: 0 0 0 1px rgba(255,255,255,.05), inset 0 0 30px rgba(0,0,0,.3) !important;
  transition: transform .3s, box-shadow .4s ease !important;
}
.level-tile:hover {
  transform: translateY(-8px) scale(1.02) !important;
  box-shadow:
    0 20px 50px rgba(0,0,0,.6),
    0 0 0 1px var(--lv-color, #c9a227),
    0 0 30px color-mix(in srgb, var(--lv-color, #c9a227) 30%, transparent) !important;
}

/* ─── ANIMATED SECTION DIVIDERS ──────────────────────────────────────────── */
.section-divider {
  height: 1px !important;
  background: linear-gradient(90deg, transparent 0%, rgba(201,162,39,.15) 20%, rgba(201,162,39,.5) 50%, rgba(201,162,39,.15) 80%, transparent 100%) !important;
  position: relative !important;
  overflow: visible !important;
}
.section-divider::after {
  content: '✦';
  position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
  color: var(--gold); font-size: .65rem;
  background: #050e07; padding: 0 12px;
  animation: dividerGem 4s ease-in-out infinite;
}
@keyframes dividerGem {
  0%,100% { text-shadow: 0 0 6px rgba(201,162,39,.4); opacity: .7; }
  50%     { text-shadow: 0 0 16px rgba(201,162,39,.9), 0 0 32px rgba(201,162,39,.3); opacity: 1; }
}

/* ─── TOPBAR PREMIUM GLASS ───────────────────────────────────────────────── */
.topbar {
  backdrop-filter: blur(24px) saturate(200%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(200%) !important;
  border-bottom: 1px solid rgba(201,162,39,.22) !important;
  box-shadow: 0 1px 0 rgba(201,162,39,.15), 0 4px 48px rgba(0,0,0,.8), inset 0 -1px 0 rgba(201,162,39,.08) !important;
}

/* ─── HERO H1 GLOW INTENSIFY ─────────────────────────────────────────────── */
.hero h1 {
  animation: titleShimmer 4s linear infinite, h1Breathe 5s ease-in-out infinite !important;
}
@keyframes h1Breathe {
  0%,100% { filter: drop-shadow(0 2px 30px rgba(201,162,39,.45)); }
  50%     { filter: drop-shadow(0 2px 55px rgba(201,162,39,.75)) drop-shadow(0 0 90px rgba(201,162,39,.2)); }
}

/* ─── FEAT CARDS HOVER GLOW ──────────────────────────────────────────────── */
.feat-card {
  transition: all .3s cubic-bezier(.175,.885,.32,1.275) !important;
  position: relative !important;
}
.feat-card:hover {
  transform: translateY(-6px) !important;
  background: rgba(201,162,39,.06) !important;
  border-color: rgba(201,162,39,.28) !important;
  box-shadow: 0 16px 48px rgba(0,0,0,.5), 0 0 24px rgba(201,162,39,.08) !important;
}
.feat-icon {
  transition: transform .3s cubic-bezier(.175,.885,.32,1.275), filter .3s ease !important;
}
.feat-card:hover .feat-icon {
  transform: scale(1.22) translateY(-3px) !important;
  filter: drop-shadow(0 0 12px rgba(201,162,39,.5)) !important;
}

/* ─── LEADERBOARD TOP 3 GLOW ─────────────────────────────────────────────── */
.lb-rank.r1 { text-shadow: 0 0 12px rgba(255,215,0,.8) !important; }
.lb-rank.r2 { text-shadow: 0 0 10px rgba(192,192,192,.7) !important; }
.lb-rank.r3 { text-shadow: 0 0 10px rgba(205,127,50,.7) !important; }
.lb-table tr:first-child td { background: rgba(255,215,0,.04) !important; }

/* ─── HERO BADGE PREMIUM ─────────────────────────────────────────────────── */
.hero-badge {
  backdrop-filter: blur(12px) !important;
  animation: badgeFade 5s ease-in-out infinite alternate !important;
}

/* ─── CUSTOM GOLD SCROLLBAR ──────────────────────────────────────────────── */
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: rgba(0,0,0,.25); }
::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #7a5a0a 0%, #c9a227 50%, #7a5a0a 100%);
  border-radius: 3px;
  box-shadow: 0 0 6px rgba(201,162,39,.4);
}
::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #c9a227 0%, #ffe066 50%, #c9a227 100%);
}

/* ─── TEXT SELECTION GOLD ────────────────────────────────────────────────── */
::selection      { background: rgba(201,162,39,.28); color: #ffe577; }
::-moz-selection { background: rgba(201,162,39,.28); color: #ffe577; }

/* ─── CUSTOM CURSOR STYLE ────────────────────────────────────────────────── */
@media (pointer: fine) {
  * { cursor: none !important; }
}

/* ─── GAME CARD VIP STRIP ────────────────────────────────────────────────── */
.game-card::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, var(--gold,.c9a227) 50%, transparent 100%);
  opacity: 0;
  transition: opacity .3s ease;
  border-radius: 0 0 inherit inherit;
}
.game-card:hover::after { opacity: .7; }

/* ─── JACKPOT AMOUNT GOLD GLOW ───────────────────────────────────────────── */
#jackpotAmount {
  animation: jpAmtGlow 3s ease-in-out infinite !important;
}
@keyframes jpAmtGlow {
  0%,100% { text-shadow: 0 0 10px rgba(201,162,39,.4), 0 0 20px rgba(201,162,39,.15); }
  50%     { text-shadow: 0 0 20px rgba(201,162,39,.8), 0 0 40px rgba(201,162,39,.35), 0 0 80px rgba(201,162,39,.1); }
}

/* ─── HERO SECTION DEPTH LAYERS ──────────────────────────────────────────── */
.hero {
  isolation: isolate;
}
.hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 60% 40% at 50% 100%, rgba(201,162,39,.06) 0%, transparent 60%),
    radial-gradient(ellipse 30% 25% at 20% 50%, rgba(15,50,20,.2) 0%, transparent 55%),
    radial-gradient(ellipse 30% 25% at 80% 50%, rgba(8,20,40,.18) 0%, transparent 55%);
  pointer-events: none;
  z-index: 0;
  animation: heroDepth 12s ease-in-out infinite alternate;
}
@keyframes heroDepth {
  0%   { opacity: .7;  transform: scale(1); }
  50%  { opacity: 1;   transform: scale(1.015); }
  100% { opacity: .85; transform: scale(1.008); }
}

/* ─── JACKPOT BAR STREAK LINE ────────────────────────────────────────────── */
.jackpot-bar::after {
  content: '';
  position: absolute;
  top: 0; bottom: 0; left: -100%;
  width: 60%;
  background: linear-gradient(90deg, transparent 0%, rgba(201,162,39,.07) 50%, transparent 100%);
  animation: jpStreak 5s linear infinite;
  pointer-events: none;
}
@keyframes jpStreak {
  0%   { left: -60%; }
  100% { left: 110%; }
}

/* ─── TOPBAR NAV LINK UNDERLINE SWEEP ────────────────────────────────────── */
.topbar-nav a, .nav-link {
  position: relative;
  overflow: hidden;
}
.topbar-nav a::after, .nav-link::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0;
  width: 100%; height: 1px;
  background: linear-gradient(90deg, transparent, #c9a227, transparent);
  transform: translateX(-110%);
  transition: transform .35s ease;
}
.topbar-nav a:hover::after, .nav-link:hover::after {
  transform: translateX(0);
}

/* ─── FEAT-CARD ICON RING ────────────────────────────────────────────────── */
.feat-icon {
  position: relative;
}
.feat-icon::before {
  content: '';
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  border: 1px solid rgba(201,162,39,.0);
  transition: border-color .3s ease, box-shadow .3s ease;
}
.feat-card:hover .feat-icon::before {
  border-color: rgba(201,162,39,.35);
  box-shadow: 0 0 14px rgba(201,162,39,.12);
}

/* ─── LIVE WIN TOAST UPGRADE ─────────────────────────────────────────────── */
.live-win-toast {
  border-left: 3px solid #c9a227 !important;
}
.live-win-toast.jackpot {
  border-left-color: #ffe066 !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.65), 0 0 20px rgba(201,162,39,.25) !important;
}

/* ─── SCROLL PROGRESS BAR GLOW PULSE ─────────────────────────────────────── */
#scrollProgressBar {
  box-shadow: 0 0 12px rgba(201,162,39,.8), 0 0 24px rgba(201,162,39,.3) !important;
}

/* ─── SOUND TOGGLE HOVER ─────────────────────────────────────────────────── */
#soundToggleBtn:hover {
  border-color: rgba(201,162,39,.65) !important;
  box-shadow: 0 0 16px rgba(201,162,39,.25), 0 2px 14px rgba(0,0,0,.55) !important;
  transform: scale(1.08);
}

/* ─── MOTION REDUCE ──────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   LUXURY ENHANCEMENT v6.0 — Targeted visual refinements
   ═══════════════════════════════════════════════════════════════════════════ */

/* ─── BODY: RICHER AMBIENT DEPTH ─────────────────────────────────────────── */
body {
  background-image:
    radial-gradient(ellipse 35% 25% at 5% 85%, rgba(80,30,5,.06) 0%, transparent 70%),
    radial-gradient(ellipse 25% 35% at 95% 15%, rgba(10,25,70,.05) 0%, transparent 65%),
    radial-gradient(ellipse at 30% 20%, rgba(201,162,39,.04) 0%, transparent 60%),
    radial-gradient(ellipse at 70% 80%, rgba(24,51,32,.25) 0%, transparent 50%) !important;
}

/* ─── TOPBAR: ANIMATED GOLD BOTTOM BORDER ────────────────────────────────── */
.topbar::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0; left: 0; right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(201,162,39,.25) 20%,
    rgba(255,224,100,.55) 50%,
    rgba(201,162,39,.25) 80%,
    transparent 100%
  ) !important;
  animation: topbarGoldLine 7s ease-in-out infinite !important;
  pointer-events: none !important;
}
@keyframes topbarGoldLine {
  0%,100% { opacity: .55; }
  50%     { opacity: 1; }
}

/* ─── GAME THUMB BACKGROUNDS: RICHER PER-GAME SPOTLIGHTS ─────────────────── */
.gt-bj {
  background:
    radial-gradient(ellipse 80% 80% at 50% 110%, rgba(0,0,0,.5) 0%, transparent 65%),
    radial-gradient(circle at 50% 38%, rgba(55,130,75,.38) 0%, transparent 55%),
    radial-gradient(circle at 50% 70%, #1e4a2a 0%, #0d2410 100%) !important;
}
.gt-rl {
  background:
    radial-gradient(ellipse 80% 80% at 50% 110%, rgba(0,0,0,.5) 0%, transparent 65%),
    radial-gradient(circle at 50% 38%, rgba(160,35,35,.38) 0%, transparent 55%),
    radial-gradient(circle at 50% 70%, #4a1a1a 0%, #1a0808 100%) !important;
}
.gt-bc {
  background:
    radial-gradient(ellipse 80% 80% at 50% 110%, rgba(0,0,0,.5) 0%, transparent 65%),
    radial-gradient(circle at 50% 38%, rgba(28,60,140,.38) 0%, transparent 55%),
    radial-gradient(circle at 50% 70%, #1a1a4a 0%, #080828 100%) !important;
}

/* ─── AUTH MODAL: DIAMOND LATTICE BACKGROUND ──────────────────────────────── */
.modal {
  background-image:
    radial-gradient(circle at 50% 0%, rgba(201,162,39,.05) 0%, transparent 55%),
    repeating-linear-gradient(
      45deg,
      transparent,
      transparent 26px,
      rgba(201,162,39,.011) 26px,
      rgba(201,162,39,.011) 27px
    ),
    repeating-linear-gradient(
      -45deg,
      transparent,
      transparent 26px,
      rgba(201,162,39,.008) 26px,
      rgba(201,162,39,.008) 27px
    ) !important;
}

/* ─── MISSION PROGRESS: ANIMATED SHIMMER ─────────────────────────────────── */
.mc-fill {
  position: relative !important;
  overflow: hidden !important;
}
.mc-fill::after {
  content: '' !important;
  position: absolute !important;
  top: 0; left: -60% !important;
  width: 40%; height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.45), transparent) !important;
  animation: mcShimmer 2.5s ease-in-out 1.5s infinite !important;
  pointer-events: none !important;
}
@keyframes mcShimmer { from { left: -60%; } to { left: 140%; } }

/* ─── GAME CARD: TITLE SHIMMER ON HOVER ──────────────────────────────────── */
.game-card:hover .game-title {
  background: linear-gradient(135deg, #c9a227 0%, #ffe066 45%, #c9a227 100%) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: titleShimmer 2s linear infinite !important;
}

/* ─── FEAT CARD: ICON FLOAT + GLOW ON HOVER ──────────────────────────────── */
.feat-card:hover .feat-icon-wrap {
  transform: translateY(-7px) scale(1.1) !important;
  box-shadow:
    0 8px 32px rgba(0,0,0,.45),
    0 0 28px rgba(201,162,39,.24),
    0 0 0 1px rgba(201,162,39,.22) !important;
  transition: all .3s cubic-bezier(.175,.885,.32,1.275) !important;
}
.feat-card:hover .feat-icon {
  filter: drop-shadow(0 0 14px rgba(201,162,39,.55)) !important;
}

/* ─── LEVEL TILE: COLORED GLOW ON HOVER ──────────────────────────────────── */
.level-tile:hover::before {
  height: 3px !important;
  box-shadow: 0 0 16px var(--lv-color, rgba(201,162,39,.5)) !important;
}

/* ─── HERO STATS: SUBTLE INNER GLOW ──────────────────────────────────────── */
.hero-stats {
  background:
    radial-gradient(circle at 50% 0%, rgba(201,162,39,.05) 0%, transparent 65%),
    rgba(0,0,0,.35) !important;
}

/* ─── TICKER: AVATAR RING GLOW ───────────────────────────────────────────── */
.tick-avatar {
  box-shadow:
    0 0 0 2px rgba(201,162,39,.3),
    0 2px 10px rgba(0,0,0,.55) !important;
}

/* ─── DAILY BONUS: ICON GLOW ON HOVER ────────────────────────────────────── */
.daily-banner:hover .db-icon {
  filter: drop-shadow(0 0 10px rgba(201,162,39,.6)) !important;
  transition: filter .3s ease !important;
}

/* ─── FOOTER: AMBIENT WARM GLOW AT BOTTOM ────────────────────────────────── */
footer, .footer {
  background:
    radial-gradient(ellipse 70% 35% at 50% 100%, rgba(201,162,39,.035) 0%, transparent 65%),
    linear-gradient(180deg, #030808 0%, #020506 100%) !important;
}

/* ─── JP2 SECONDARY JACKPOT: SUBTLE PULSE ────────────────────────────────── */
.jp2-val {
  animation: jp2Pulse 4.5s ease-in-out infinite !important;
}
@keyframes jp2Pulse {
  0%,100% { text-shadow: none; opacity: .8; }
  50%     { text-shadow: 0 0 10px rgba(201,162,39,.45); opacity: 1; }
}

/* ─── WALLET TOP BUTTON: ENHANCED GLOW ───────────────────────────────────── */
.btn-wallet-top {
  box-shadow: 0 2px 12px rgba(79,195,247,.08) !important;
}
.btn-wallet-top:hover {
  box-shadow: 0 0 22px rgba(79,195,247,.22), 0 4px 16px rgba(0,0,0,.35) !important;
}

/* ─── GAME GRID PERSPECTIVE ENHANCEMENT ──────────────────────────────────── */
.games-grid {
  perspective: 1600px !important;
  perspective-origin: 50% 30% !important;
}

/* ─── HERO BADGE: REFINED SPACING ────────────────────────────────────────── */
.hero-badge {
  letter-spacing: .26em !important;
}

/* ─── INPUT FOCUS: WARMER GLOW ───────────────────────────────────────────── */
.form-input:focus, .input-field:focus {
  box-shadow: 0 0 0 2px rgba(201,162,39,.14), 0 4px 20px rgba(0,0,0,.5) !important;
}

/* ─── PROMO BANNER: DEEPER GRADIENT ──────────────────────────────────────── */
.promo-inner {
  background: linear-gradient(140deg,
    #170030 0%,
    #2c0055 30%,
    #1a1a45 60%,
    #0d1c12 100%
  ) !important;
  border: 1px solid rgba(201,162,39,.38) !important;
}

/* ─── SECTION HEADER H2: REFINED SHIMMER ─────────────────────────────────── */
.section-header h2 {
  letter-spacing: .06em !important;
}

/* ─── LEADERBOARD: FIRST ROW EXTRA GOLD ──────────────────────────────────── */
.lb-table tbody tr:first-child .lb-name {
  color: rgba(255,230,100,.92) !important;
}

/* ─── XPBAR: RICHER GRADIENT ─────────────────────────────────────────────── */
.xpbar-fill {
  background: linear-gradient(90deg, #7a5800 0%, #c9a227 35%, #ffe066 60%, #c9a227 100%) !important;
}

/* ════════════════════════════════════════════════════════════════════════════
   MOBILE PERFORMANCE OVERRIDES
   En dispositivos táctiles: eliminar backdrop-filter y animaciones pesadas
   que saturan el GPU en Android/iOS antiguos
   ════════════════════════════════════════════════════════════════════════════ */

/* Desactivar aurora de fondo (body::before) en pantallas táctiles — consume
   2-4ms por frame en viewport completo */
@media (hover: none) {
  body::before { animation: none !important; opacity: .4 !important; }

  /* Sin backdrop-filter en NINGÚN elemento — es la causa #1 de lag en móvil */
  .topbar,
  .modal,
  .modal-sm,
  .toast,
  .toast.offer,
  .lwt,
  .dnd-item,
  .pg,
  .profile,
  [style*="backdrop-filter"],
  [class*="panel"],
  [class*="modal"] {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  /* Detener animaciones infinitas de bajo impacto visual */
  .jp-amount {
    animation: none !important;
    background: none !important;
    -webkit-text-fill-color: #c9a227 !important;
    color: #c9a227 !important;
    filter: none !important;
  }
  /* Aurora en topbar logo */
  .topbar-logo,
  .logo-text,
  .logo-suits {
    animation: none !important;
    background: none !important;
    -webkit-text-fill-color: #c9a227 !important;
    color: #c9a227 !important;
    filter: none !important;
  }

  /* Jackpot sweep: simplificar */
  .jackpot-bar::after { animation: none !important; display: none !important; }

  /* Reducir box-shadows grandes — cada nivel extra cuesta render */
  .game-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.7) !important;
  }

  /* Floating cards del hero — pausar en móvil */
  .sv-fc { animation: none !important; }
  .wm-card, [class*="fc"] { animation-play-state: paused !important; }
}

/* Forzar GPU-only animations (transform/opacity) en todos los dispositivos.
   Cualquier animación que use filter/left/top/width se cancela en móvil */
@media (hover: none) and (max-width: 768px) {
  /* Ceiling light del hero — scaleX anima layout */
  .hero-ceiling { animation: none !important; }

  /* Live win notification — sin animación para no interrumpir al jugador */
  .live-win-notif { animation: none !important; transition: opacity .2s !important; }

  /* Sparkle/glow en badge — pausa */
  .hero-badge { animation: none !important; }

  /* Jackpot bar shimmer — quitar */
  .jackpot-bar::before { display: none !important; }
}
