How the Cryptographic Wheel Works
Unlike simple hobbyist spinners that use Math.random(), Randomy determines the outcome before the animation starts using crypto.getRandomValues rejection sampling. This ensures that physical drag or frame rate drops have zero influence
over the prize selection.
Algorithm: Rejection Sampling
Entropy: 256-bit Web Crypto
Deceleration: easeOutQuart