.reward-stage{position:relative;isolation:isolate;display:grid;place-items:center;min-height:290px;border:1px solid #24345a;border-radius:24px;background:radial-gradient(ellipse at 50% 100%,#105eff25,transparent 68%),#080c16;overflow:hidden;padding:38px 24px}
.reward-stage::before{content:"";position:absolute;inset:25px;border:1px solid #225dbe33;border-radius:50%;z-index:-1;transform:scaleX(1.3)}
.reward-stage::after{content:"";position:absolute;width:180px;height:180px;background:#1768ff22;filter:blur(55px);z-index:-1}
.reward-amount{display:flex;gap:12px;align-items:baseline;justify-content:center;direction:ltr;unicode-bidi:isolate}
[data-reward-value]{font-size:clamp(60px,12vw,112px);font-weight:650;line-height:1.1;letter-spacing:-4px;font-variant-numeric:tabular-nums;color:#fff}
[data-reward-unit]{font-size:21px;color:#77a8ff;letter-spacing:0}
.reward-stage.is-spinning [data-reward-value]{animation:reward-flicker .18s linear infinite}
.reward-stage.is-spinning::before{animation:reward-orbit 2.4s linear infinite;border-color:#347eff88}
.reward-stage.is-revealed{border-color:#3d7cef;box-shadow:0 0 55px #1264ff20}
.reward-stage.is-revealed [data-reward-value]{animation:reward-reveal .65s cubic-bezier(.16,1,.3,1)}
.reward-stage.is-spinning{background:radial-gradient(ellipse at 50% 100%,#105eff35,transparent 68%),#080c16}
.reward-stage.is-spinning .reward-max::after{content:"";display:block;width:0;height:3px;border-radius:3px;background:#4e8dff;margin:14px auto 0;animation:reward-progress var(--draw-duration,20s) linear forwards}
@keyframes reward-progress{to{width:160px}}
@keyframes reward-flicker{50%{opacity:.62;transform:translateY(2px)}}
@keyframes reward-orbit{to{transform:scaleX(1.3) rotate(360deg)}}
@keyframes reward-reveal{from{opacity:0;transform:scale(.86);filter:blur(6px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.reward-stage,.reward-stage::before,.reward-stage::after,.reward-stage [data-reward-value]{animation:none!important;transition:none!important}}
