.cash-celebration{position:fixed;inset:0;z-index:140;pointer-events:none;overflow:hidden}
.cash-celebration[popover]{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;border:0;padding:0;background:transparent;color:inherit}
.cash-celebration::backdrop{background:transparent;pointer-events:none}
.cash-celebration>span{position:absolute;left:var(--x);top:-10vh;font-size:clamp(24px,3vw,45px);filter:drop-shadow(0 6px 8px #0008);animation:cashRain 2.25s cubic-bezier(.16,.65,.25,1) var(--delay) both}
.cash-celebration-total{position:absolute;left:50%;top:25%;transform:translate(-50%,-50%) scale(.7);padding:13px 22px;border:1px solid #76efb8;border-radius:999px;background:#09241bea;color:#8cf3c2;font:700 13px var(--display);letter-spacing:1.4px;box-shadow:0 0 60px #42e8a45e;animation:cashBadge 1.55s ease both}
.cash-celebration-total b{margin-left:9px;color:#e7fff3;font-size:18px;letter-spacing:0}
@keyframes cashRain{0%{transform:translate3d(0,-10vh,0) rotate(0);opacity:0}12%{opacity:1}100%{transform:translate3d(var(--drift),115vh,0) rotate(var(--spin));opacity:.12}}
@keyframes cashBadge{0%{opacity:0;transform:translate(-50%,-50%) scale(.65)}18%,65%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-60%) scale(.94)}}
.reduced-motion .cash-celebration>span{display:none}
.reduced-motion .cash-celebration-total{animation:cashBadge 1s ease both}
