body{isolation:isolate}.playful-background{z-index:-1;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}.ambient-bubble{width:var(--bubble-size);height:var(--bubble-size);margin:calc(var(--bubble-size) / -2);animation:bubble-drift var(--bubble-time) ease-in-out var(--bubble-delay) infinite;border-radius:50%;position:absolute}.bubble-skin{width:100%;height:100%;filter:blur(var(--bubble-blur));background:radial-gradient(circle at 28% 23%,#ffffffb8,transparent 24%),radial-gradient(circle at 65% 75%,hsl(calc(var(--bubble-hue) + 35) 90% 68% / .4),transparent 68%),radial-gradient(circle at 35% 35%,hsl(var(--bubble-hue) 85% 80% / .12),hsl(var(--bubble-hue) 85% 65% / .35));border:1px solid hsl(var(--bubble-hue) 80% 70% / .3);box-shadow:inset -6px -9px 20px hsl(var(--bubble-hue) 80% 65% / .12);border-radius:50%;display:block}.dark .bubble-skin{opacity:.65}.ambient-bubble.is-popped{opacity:1;margin:0;animation:.55s linear forwards bubble-burst-done;transform:none}.is-popped .bubble-skin{animation:80ms linear forwards bubble-skin-pop}.bubble-splash-origin{width:0;height:0;position:absolute}.bubble-splash-flash{background:hsl(var(--bubble-hue) 90% 73%);clip-path:polygon(49% 0,59% 34%,89% 12%,69% 43%,100% 55%,65% 61%,83% 95%,53% 73%,33% 100%,37% 66%,0 75%,27% 48%,5% 21%,40% 32%);width:26px;height:26px;animation:.18s ease-out forwards bubble-flash;position:absolute;top:-13px;left:-13px}.bubble-splash{width:var(--splash-length);transform-origin:0;background:hsl(var(--bubble-hue) 90% 66%);clip-path:polygon(0 50%,65% 0,100% 35%,90% 80%,60% 100%);height:4px;animation:bubble-splash-pop var(--splash-time) cubic-bezier(.12,.65,.3,1) forwards;position:absolute;top:-2px;left:0}@keyframes bubble-burst-done{0%,to{opacity:1}}@keyframes bubble-skin-pop{0%{opacity:var(--burst-opacity)}to{opacity:0}}@keyframes bubble-flash{0%{opacity:.9;transform:scale(.45)}to{opacity:0;transform:scale(1.3)}}@keyframes bubble-splash-pop{0%{opacity:1;transform:translate(0,0) rotate(var(--splash-angle)) scale(.45)}20%{opacity:.9}to{opacity:0;transform:translate(var(--splash-x),var(--splash-y)) rotate(var(--splash-angle)) scale(.15,.4)}}@keyframes bubble-drift{0%,to{opacity:0;transform:translateY(24px)scale(.8)}15%,75%{opacity:.7}50%{transform:translate(16px,-24px)scale(1.04)}90%{opacity:0;transform:translate(-10px,-46px)scale(1.13)}}@media (max-width:600px){.ambient-bubble:nth-child(n+7){display:none}}@media (prefers-reduced-motion:reduce){.ambient-bubble{opacity:.35;animation:none}.ambient-bubble.is-popped{animation:10ms linear forwards bubble-burst-done}.is-popped .bubble-skin,.bubble-splash-flash,.bubble-splash{opacity:0;animation:none}}html:not([data-bubbles=on]) .playful-background{visibility:hidden}html:not([data-bubbles=on]) .playful-background *{animation-play-state:paused}
