.upgrade-wheel-spin{animation:8s cubic-bezier(.17,.67,.12,.99) forwards upgrade-wheel-spin}.upgrade-wheel-blur{animation:8s ease-in-out forwards upgrade-wheel-blur}.upgrade-screen-shake{animation:8s ease-in-out forwards upgrade-screen-shake}.upgrade-card-pulse{animation:1.6s ease-in-out infinite upgrade-card-pulse}.upgrade-panel-scroll{scrollbar-width:thin;scrollbar-color:#2a2a3e transparent}.upgrade-panel-scroll::-webkit-scrollbar{width:8px}.upgrade-panel-scroll::-webkit-scrollbar-track{background:0 0}.upgrade-panel-scroll::-webkit-scrollbar-thumb{background-color:#2a2a3e;border-radius:4px}.upgrade-panel-scroll::-webkit-scrollbar-thumb:hover{background-color:#3a3a52}.upgrade-spark{animation:upgrade-spark-fly var(--spark-duration,1.2s) ease-out forwards}.upgrade-confetti{animation:upgrade-confetti-burst var(--confetti-duration,1.4s) ease-out forwards}.upgrade-result-ring{animation:1.2s ease-out forwards upgrade-result-ring}@keyframes upgrade-wheel-spin{0%{transform:rotate(0)}to{transform:rotate(4320deg)}}@keyframes upgrade-wheel-blur{0%,20%{filter:blur()}25%,70%{filter:blur(1.5px)}75%,to{filter:blur()}}@keyframes upgrade-screen-shake{0%,20%,75%,to{transform:translate(0)}25%{transform:translate(-2px)}30%{transform:translate(2px)}35%{transform:translate(-3px)}40%{transform:translate(3px)}45%{transform:translate(-2px)}50%{transform:translate(2px)}55%{transform:translate(-3px)}60%{transform:translate(3px)}65%{transform:translate(-2px)}70%{transform:translate(2px)}}@keyframes upgrade-card-pulse{0%,to{transform:scale(1);box-shadow:0 0 #f7974a00}50%{transform:scale(1.02);box-shadow:0 0 24px #f7974a26}}@keyframes upgrade-spark-fly{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(var(--spark-x,40px), var(--spark-y,-40px)) scale(.2)}}@keyframes upgrade-confetti-burst{0%{opacity:1;transform:translate(0)rotate(0)scale(1)}to{opacity:0;transform:translate(var(--confetti-x,60px), var(--confetti-y,-80px)) rotate(var(--confetti-rot,180deg)) scale(.4)}}@keyframes upgrade-result-ring{0%{opacity:.8;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}
