.completion-celebration{position:relative;display:inline-flex;align-items:center;justify-content:center;transition:transform .7s ease,opacity .7s ease,filter .7s ease;transform:scale(.96);opacity:0;filter:saturate(.95);overflow:visible}.completion-celebration.is-complete{opacity:1}.completion-celebration.is-active{transform:scale(1);filter:saturate(1.1)}.completion-celebration__visual{--completion-shadow: 0 0 0 1px rgba(153, 153, 153, .65) inset;transition:width .7s ease,height .7s ease,box-shadow .7s ease,border-radius .7s ease,transform .7s ease,filter .7s ease;border-radius:16px;box-shadow:var(--completion-shadow)}.completion-celebration__visual.is-active{--completion-shadow: 0 18px 38px rgba(24, 24, 24, .16), 0 0 0 4px rgba(255, 255, 255, .6) inset;transform:translateY(0)}.completion-celebration--frameless .completion-celebration__visual{border-radius:0;box-shadow:none}.completion-celebration--frameless .completion-celebration__visual.is-active{box-shadow:none}.completion-celebration__stars{pointer-events:none;position:absolute;inset:0;overflow:visible;z-index:2}.completion-celebration__star{--size: 20px;--twinkle-duration: 2.5s;--twinkle-delay: 0s;position:absolute;width:var(--size);height:var(--size);left:var(--left, 50%);top:var(--top, 50%);--offset-x: 0px;--offset-y: 0px;transform:translate(calc(-50% + var(--offset-x)),calc(-50% + var(--offset-y))) scale(0);opacity:0;background:radial-gradient(circle,#fffffff2,#fff0 70%);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 72%,21% 91%,32% 57%,2% 35%,39% 35%);animation:celebration-twinkle var(--twinkle-duration) ease-in-out infinite;animation-delay:var(--twinkle-delay)}.completion-celebration__star:nth-child(odd){filter:hue-rotate(12deg)}@keyframes celebration-twinkle{0%,to{opacity:0;transform:translate(calc(-50% + var(--offset-x)),calc(-50% + var(--offset-y))) scale(.4) rotate(0)}20%{opacity:.85;transform:translate(calc(-50% + var(--offset-x)),calc(-50% + var(--offset-y))) scale(1) rotate(8deg)}50%{opacity:.55;transform:translate(calc(-50% + var(--offset-x)),calc(-50% + var(--offset-y))) scale(.75) rotate(-8deg)}80%{opacity:.95;transform:translate(calc(-50% + var(--offset-x)),calc(-50% + var(--offset-y))) scale(1.05) rotate(3deg)}}
