.score-fx-root{position:fixed;inset:0;z-index:64;pointer-events:none;overflow:hidden}
.score-fx-toast{position:absolute;top:max(65px,calc(env(safe-area-inset-top) + 60px));left:50%;width:max-content;max-width:min(340px,calc(100vw - 24px));padding:9px 14px;border:2px solid #bb745b;border-radius:12px;background:#fff5df;color:#6f3e30;box-shadow:0 7px 0 #ad8469,0 12px 24px #0006;font:900 18px/1.15 var(--f-display),system-ui;text-align:center;transform:translateX(-50%);animation:score-fx-toast 1.4s ease both}
.score-fx-toast--zero{border-color:#83a18d;background:#edf2df;color:#3f6b5b;box-shadow:0 5px 0 #87a894,0 11px 22px #0005}
.score-fx-toast--jackpot{border-color:#d0a45c;background:#fff1cd;color:#a25339}
.score-fx-fly{position:absolute;z-index:2;display:block;padding:2px 6px;border:2px solid #f4d298;border-radius:8px;background:#fff1cd;color:#a3543a;font:900 24px/1 var(--f-display),system-ui;white-space:nowrap;transform:translate(-50%,-50%);animation:score-fx-flight .9s cubic-bezier(.21,.62,.31,1) forwards}
.score-fx-particle{position:absolute;z-index:1;color:#e7b877;font:900 18px/1 var(--f-display),system-ui;text-shadow:0 1px #a44f3d;transform:translate(-50%,-50%);animation:score-fx-burst .78s ease-out forwards}
.score-reference .sr-banner{position:sticky;top:0;z-index:2}
.score-panel .score-fx-select{animation:score-fx-select .42s cubic-bezier(.2,.7,.2,1) both}
.score-panel .score-fx-stamp{animation:score-fx-stamp .65s ease-out both}
.score-panel .score-fx-zero{animation:score-fx-zero .43s ease-in-out both}
.score-panel .score-fx-pulse{animation:score-fx-pulse .7s ease-out both}
.felt.score-fx-roll{animation:score-fx-roll .65s ease-out both}
@keyframes score-fx-toast{0%{opacity:0;transform:translate(-50%,-10px) scale(.93)}13%,90%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-6px) scale(.99)}}
@keyframes score-fx-flight{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--fx-x)),calc(-50% + var(--fx-y))) scale(.75)}}
@keyframes score-fx-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}15%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--fx-x)),calc(-50% + var(--fx-y))) scale(.65)}}
@keyframes score-fx-select{0%{transform:scale(1)}28%{transform:scale(.95)}65%{transform:scale(1.045)}100%{transform:scale(1)}}
@keyframes score-fx-stamp{0%{transform:scale(1.08);filter:brightness(1.3)}45%{transform:scale(.98);filter:brightness(1.12)}100%{transform:scale(1);filter:brightness(1)}}
@keyframes score-fx-zero{0%,100%{transform:rotate(0)}25%{transform:rotate(-2deg)}60%{transform:rotate(1.5deg)}}
@keyframes score-fx-pulse{0%,100%{filter:brightness(1);transform:scale(1)}35%{filter:brightness(1.25);transform:scale(1.1)}}
@keyframes score-fx-roll{0%,100%{box-shadow:inset 0 0 0 1px #b99a6740,0 24px 50px #0004}45%{box-shadow:inset 0 0 0 3px #eed4a47a,0 0 22px #d7b07588}}
@media(prefers-reduced-motion:reduce){.score-fx-root *,.score-panel .score-fx-select,.score-panel .score-fx-stamp,.score-panel .score-fx-zero,.score-panel .score-fx-pulse,.felt.score-fx-roll{animation:none!important;transition:none!important}.score-fx-toast{opacity:1}}
