@keyframes fadeInUp{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@keyframes fadeInDown{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes scaleIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
@keyframes slideInLeft{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:none}}
@keyframes slideInRight{from{opacity:0;transform:translateX(32px)}to{opacity:1;transform:none}}
@keyframes shimmer{0%{background-position:-400px 0}100%{background-position:400px 0}}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes spinOnce{from{transform:rotate(0deg)}to{transform:rotate(var(--spin-deg,1440deg))}}
@keyframes glowGold{0%,100%{box-shadow:0 0 0 0 rgba(240,192,64,0)}50%{box-shadow:0 0 20px 4px rgba(240,192,64,.25)}}
@keyframes countUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes borderPulse{0%,100%{border-color:var(--clr-border)}50%{border-color:#7a4a90}}
@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@keyframes slideUp{from{transform:translateY(100%);opacity:0}to{transform:none;opacity:1}}

.anim-fade-up{animation:fadeInUp .55s ease both}
.anim-fade-down{animation:fadeInDown .45s ease both}
.anim-fade{animation:fadeIn .4s ease both}
.anim-scale{animation:scaleIn .4s ease both}
.anim-slide-left{animation:slideInLeft .5s ease both}
.anim-slide-right{animation:slideInRight .5s ease both}
.anim-float{animation:floatY 3.5s ease-in-out infinite}
.anim-glow-gold{animation:glowGold 2.5s ease-in-out infinite}
.anim-border-pulse{animation:borderPulse 2s ease-in-out infinite}
.anim-slide-up{animation:slideUp .35s ease both}

.delay-100{animation-delay:.1s}
.delay-200{animation-delay:.2s}
.delay-300{animation-delay:.3s}
.delay-400{animation-delay:.4s}
.delay-500{animation-delay:.5s}
.delay-600{animation-delay:.6s}

.hero-anim .q9f3r-hero-label{animation:fadeInDown .5s ease both}
.hero-anim .q9f3r-hero-title{animation:fadeInUp .6s .1s ease both}
.hero-anim .q9f3r-hero-bonus-badge{animation:fadeInUp .6s .2s ease both}
.hero-anim .q9f3r-hero-desc{animation:fadeInUp .6s .25s ease both}
.hero-anim .q9f3r-hero-btns{animation:fadeInUp .6s .35s ease both}
.hero-anim .q9f3r-hero-stats{animation:fadeInUp .6s .45s ease both}

.p5n2t-jackpot-card{animation:glowGold 3.5s ease-in-out infinite}
.p5n2t-jackpot-card.grand{animation-delay:.5s}
.p5n2t-jackpot-card.major{animation-delay:1s}
.p5n2t-jackpot-card.mini{animation-delay:1.5s}

.lb-widget{animation:slideUp .4s ease both}

.r4m8x-adv-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.w2j6k-table tbody tr{transition:background .18s ease}

.xb7k2-site-header{transition:box-shadow .25s ease}
.xb7k2-site-header.scrolled{box-shadow:0 4px 32px rgba(0,0,0,.7)}

.btn{transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease,border-color .2s ease}

.lb-shimmer{background:linear-gradient(90deg,var(--clr-card) 0%,#2a1840 50%,var(--clr-card) 100%);background-size:800px 100%;animation:shimmer 1.5s infinite linear}

@media(prefers-reduced-motion:reduce){
  *, *::before, *::after{animation-duration:.01ms !important;transition-duration:.01ms !important}
}
