.celebration-container{pointer-events:none;z-index:50;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0;overflow:hidden}.celebration-banner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#fffffff2,#f5f5f5f2);border:2px solid #ffc8004d;border-radius:12px;align-items:center;gap:12px;padding:16px 32px;animation:.4s cubic-bezier(.34,1.56,.64,1) messageBounceIn;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 32px #0000001a,inset 0 0 0 1px #ffffff80}.celebration-banner.dark{background:linear-gradient(135deg,#1e1e1ef2,#141414f2);border-color:#ffc80033;box-shadow:0 8px 32px #0000004d,inset 0 0 0 1px #ffffff1a}.celebration-emoji{font-size:32px;line-height:1;animation:.6s ease-out emojiSpin}.celebration-text{color:#1f2937;white-space:nowrap;font-size:18px;font-weight:600}.celebration-dismiss{color:#6b7280;cursor:pointer;background:#00000014;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin-left:4px;transition:background .15s,color .15s;display:flex}.celebration-dismiss:hover{color:#374151;background:#00000026}.celebration-banner.dark .celebration-text{color:#f3f4f6}@keyframes messageBounceIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}50%{transform:translate(-50%,-50%)scale(1.1)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes emojiSpin{0%{transform:scale(0)rotate(-20deg)}50%{transform:scale(1.2)rotate(10deg)}to{transform:scale(1)rotate(0)}}@media (prefers-reduced-motion:reduce){.celebration-banner,.celebration-emoji,.confetti{transition:none!important;animation:none!important}.celebration-banner{opacity:1}}@keyframes confettiFall{0%{opacity:1;transform:translateY(-10px)translate(0)rotate(0)scaleY(1)}25%{opacity:1;transform:translateY(25vh)translate(30px)rotate(90deg)scaleY(.95)}50%{opacity:1;transform:translateY(50vh)translate(-20px)rotate(180deg)scaleY(.9)}75%{opacity:.8;transform:translateY(75vh)translate(25px)rotate(270deg)scaleY(.95)}to{opacity:0;transform:translateY(100vh)translate(0)rotate(360deg)scaleY(1)}}.confetti{top:0;left:var(--left);background-color:var(--color);opacity:1;width:10px;height:10px;transform:scaleY(1) rotateZ(var(--rotation));animation:2.5s ease-in forwards confettiFall;animation-delay:var(--delay);position:absolute}.confetti-square{width:calc(10px * var(--size));height:calc(10px * var(--size));border-radius:2px}.confetti-circle{width:calc(10px * var(--size));height:calc(10px * var(--size));border-radius:50%}.confetti-triangle{width:calc(10px * var(--size));height:calc(10px * var(--size));background-color:var(--color);clip-path:polygon(50% 0%,0% 100%,100% 100%);border-radius:0}
