.celebration-backdrop{z-index:1000;background:var(--meaning-tint);color:var(--ink);place-items:center;padding:24px 16px;display:grid;position:fixed;inset:0;overflow-y:auto}.celebration{z-index:1;border:2px solid var(--meaning-strong);border-radius:var(--radius);background:var(--surface);width:min(520px,100%);box-shadow:var(--shadow);text-align:center;justify-items:center;gap:20px;padding:40px 28px 28px;display:grid;position:relative}.celebration-emoji{background:var(--meaning-tint);border:2px solid var(--meaning-strong);border-radius:50%;place-items:center;width:96px;height:96px;margin:0;font-size:3rem;line-height:1;display:grid}.celebration-line{overflow-wrap:anywhere;margin:0;font-size:clamp(1.6rem,5vw,2.1rem);line-height:1.2}.celebration-actions{justify-items:center;gap:8px;width:100%;display:grid}.celebration-action.button{background:var(--meaning-strong);width:100%;color:var(--meaning-on-strong)}.celebration-flourish{pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti{opacity:0;width:10px;height:14px;position:absolute;top:-24px}.confetti.shape-1{border-radius:50%;width:8px;height:8px}.confetti.shape-2{border-radius:3px;width:14px;height:6px}.confetti.color-0{background:var(--goto-strong)}.confetti.color-1{background:var(--magenta)}.confetti.color-2{background:var(--try-strong)}.confetti.color-3{background:var(--friend-strong)}@media (prefers-reduced-motion:no-preference){.confetti{animation:celebration-fall 2.4s cubic-bezier(.25, .6, .45, 1) var(--delay) 1 both}}@keyframes celebration-fall{0%{opacity:1;transform:translate(0,0)rotate(0)}80%{opacity:1}to{opacity:0;transform:translate3d(var(--drift), 105vh, 0) rotate(var(--spin))}}
