/* [[type:jackpot]] live counter — casino-style display */

.m-jackpot {
  --jackpot-size: 48px;
  --jackpot-gold: #f5c842;
  --jackpot-gold-deep: #c9971a;
  --jackpot-glow: rgba(245, 200, 66, 0.45);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: var(--jackpot-size);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.04em;
  line-height: 1.1;
  color: var(--jackpot-gold);
  text-shadow:
    0 0 12px var(--jackpot-glow),
    0 2px 0 var(--jackpot-gold-deep),
    0 4px 16px rgba(0, 0, 0, 0.35);
  padding: 0.15em 0.35em;
  border-radius: 0.2em;
  user-select: none;
}

.m-jackpot--has-currency {
  gap: 0.35em;
}

.m-jackpot__currency {
  font-size: 0.72em;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: var(--jackpot-gold);
  opacity: 0.95;
}

.m-jackpot__value {
  display: inline-block;
  transition:
    opacity var(--jackpot-anim-ms, 220ms) ease,
    transform var(--jackpot-anim-ms, 280ms) ease;
}

.m-jackpot__value--roll {
  display: inline-flex;
  align-items: baseline;
  gap: 0.02em;
}

.m-jackpot__digit {
  display: inline-block;
  overflow: hidden;
  height: 1.1em;
  vertical-align: bottom;
}

.m-jackpot__digit-inner {
  display: block;
  transition: transform var(--jackpot-anim-ms, 320ms) cubic-bezier(0.22, 1, 0.36, 1);
}

.m-jackpot__digit--roll .m-jackpot__digit-inner {
  transform: translateY(-8%);
}

.m-jackpot__sep {
  opacity: 0.85;
  margin: 0 0.02em;
}

.m-jackpot--pulse {
  animation: jackpot-pulse var(--jackpot-anim-ms, 420ms) ease-out;
}

.m-jackpot__value--fade-out {
  opacity: 0;
}

.m-jackpot__value--fade-in {
  opacity: 1;
}

.m-jackpot__value--slide-out {
  opacity: 0;
  transform: translateY(0.35em);
}

.m-jackpot__value--slide-in {
  opacity: 1;
  transform: translateY(0);
}

@keyframes jackpot-pulse {
  0% {
    transform: scale(1);
    filter: brightness(1);
  }
  35% {
    transform: scale(1.06);
    filter: brightness(1.25);
  }
  100% {
    transform: scale(1);
    filter: brightness(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .m-jackpot__digit-inner,
  .m-jackpot__value {
    transition: none;
  }

  .m-jackpot--pulse {
    animation: none;
  }
}
