:root{--confetti-duration:12s}.confetti-emojis{position:fixed;inset:0;overflow:hidden;pointer-events:none}.confetti-emoji{position:absolute;top:-3rem;font-size:clamp(1.25rem,3vw,2.5rem);transform-origin:center;will-change:transform,opacity;--dur-mult:1;--delay-mult:0;animation-name:fall-left;animation-duration:calc(var(--confetti-duration) * var(--dur-mult));animation-delay:calc(var(--confetti-duration) * var(--delay-mult));animation-timing-function:linear;animation-iteration-count:infinite}.confetti-emoji:nth-child(2n){animation-name:fall-right}.confetti-emoji:first-child{left:4%;--dur-mult:1.08;--delay-mult:-0.2}.confetti-emoji:nth-child(2){left:12%;--dur-mult:1.2;--delay-mult:-0.38}.confetti-emoji:nth-child(3){left:21%;--dur-mult:1;--delay-mult:-0.15}.confetti-emoji:nth-child(4){left:30%;--dur-mult:0.92;--delay-mult:-0.3}.confetti-emoji:nth-child(5){left:38%;--dur-mult:1.17;--delay-mult:-0.43}.confetti-emoji:nth-child(6){left:47%;--dur-mult:1.13;--delay-mult:-0.07}.confetti-emoji:nth-child(7){left:56%;--dur-mult:0.97;--delay-mult:-0.22}.confetti-emoji:nth-child(8){left:64%;--dur-mult:1.1;--delay-mult:-0.33}.confetti-emoji:nth-child(9){left:73%;--dur-mult:1.22;--delay-mult:-0.18}.confetti-emoji:nth-child(10){left:82%;--dur-mult:0.98;--delay-mult:-0.4}.confetti-emoji:nth-child(11){left:7%;--dur-mult:1.03;--delay-mult:-0.28}.confetti-emoji:nth-child(12){left:16%;--dur-mult:1.15;--delay-mult:-0.1}.confetti-emoji:nth-child(13){left:25%;--dur-mult:0.95;--delay-mult:-0.37}.confetti-emoji:nth-child(14){left:34%;--dur-mult:1.18;--delay-mult:-0.23}.confetti-emoji:nth-child(15){left:43%;--dur-mult:1.07;--delay-mult:-0.13}.confetti-emoji:nth-child(16){left:52%;--dur-mult:0.93;--delay-mult:-0.35}.confetti-emoji:nth-child(17){left:61%;--dur-mult:1.12;--delay-mult:-0.17}.confetti-emoji:nth-child(18){left:70%;--dur-mult:1.23;--delay-mult:-0.42}.confetti-emoji:nth-child(19){left:79%;--dur-mult:0.97;--delay-mult:-0.12}.confetti-emoji:nth-child(20){left:88%;--dur-mult:1.05;--delay-mult:-0.32}@keyframes fall-left{0%{transform:translateY(-100vh) rotate(0deg);opacity:1}50%{transform:translate(-6vw,-10vh) rotate(1turn);opacity:.9}to{transform:translate(-12vw,110vh) rotate(2turn);opacity:0}}@keyframes fall-right{0%{transform:translateY(-100vh) rotate(0deg);opacity:1}50%{transform:translate(6vw,-10vh) rotate(-1turn);opacity:.9}to{transform:translate(12vw,110vh) rotate(-2turn);opacity:0}}