:root{--color-bg: #ffffff;--color-surface: #f6f8fa;--color-surface-blur: rgba(255,255,255,.16);--color-muted: #8b949e;--color-accent: #e758bd;--color-primary: #59aad5;--color-text: #312a2a;--glass-bg: var(--color-surface-blur);--glass-border: rgba(255,255,255,.3);--glass-blur: 10px;--font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", monospace;--radius-sm: 6px;--radius-md: 10px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--blur-xs: 6px;--blur-sm: 8px;--blur-md: 10px;--blur-lg: 12px;--blur-xl: 16px;--blur-2xl: 20px;--saturate-low: 120%;--saturate-md: 160%;--saturate-high: 180%;--glass-blur-light: blur(var(--blur-sm)) saturate(var(--saturate-low));--glass-blur-medium: blur(var(--blur-md)) saturate(var(--saturate-md));--glass-blur-heavy: blur(var(--blur-xl)) saturate(var(--saturate-high));--glass-blur-xheavy: blur(var(--blur-2xl)) saturate(var(--saturate-md));--ease-out-cubic: cubic-bezier(.16, 1, .3, 1);--ease-in-out-cubic: cubic-bezier(.4, 0, .2, 1);--ease-bounce-cubic: cubic-bezier(.34, 1.56, .64, 1);--ease-sharp-cubic: cubic-bezier(.4, 0, 1, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .5s;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 25px rgba(0, 0, 0, .15);--color-shadow: var(--shadow-lg);--widget-border-width: 4px;--widget-border-duration: 3s}html,body{background:var(--color-bg);color:var(--color-text);box-sizing:border-box;margin:0;padding:0}a{color:var(--color-accent);text-decoration:none}.ripple-starburst{position:absolute;inset:0;animation:starburstEffect var(--ripple-duration) ease-out forwards}.starburst-core{position:absolute;top:50%;left:50%;width:30%;height:30%;background:var(--ripple-color, rgba(255, 215, 0, .6));border-radius:50%;transform:translate(-50%,-50%);animation:starburstCoreEffect var(--ripple-duration, .8s) ease-out forwards}.starburst-ray{position:absolute;top:50%;left:50%;width:4px;height:50%;background:linear-gradient(to top,transparent,var(--ripple-color, rgba(255, 215, 0, .6)));transform-origin:bottom center;opacity:0;animation:starburstRayEffect var(--ripple-duration, .8s) ease-out forwards}@keyframes starburstEffect{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1)}}@keyframes starburstCoreEffect{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}@keyframes starburstRayEffect{0%{opacity:1;transform:rotate(var(--angle)) translateY(0)}to{opacity:0;transform:rotate(var(--angle)) translateY(-200%)}}.ripple-water{position:absolute;inset:0}.water-wave{position:absolute;top:50%;left:50%;border-radius:50%;border:2px solid var(--ripple-color);transform:translate(-50%,-50%) scale(0);animation:waterRippleEffect var(--ripple-duration) ease-out forwards}@keyframes waterRippleEffect{0%{opacity:1;transform:translate(-50%,-50%) scale(0);border-width:3px}to{opacity:0;transform:translate(-50%,-50%) scale(3);border-width:1px}}.ripple-pulse{position:absolute;inset:0}.pulse-ring{position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;border:2px solid var(--ripple-color);box-shadow:0 0 10px var(--ripple-color);transform:translate(-50%,-50%) scale(0);animation:pulseRingEffect var(--ripple-duration) ease-out forwards}.pulse-ring:nth-child(2n){border-color:var(--ripple-secondary);box-shadow:0 0 15px var(--ripple-secondary)}@keyframes pulseRingEffect{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(2.5)}}.ripple-blossom{position:absolute;inset:0}.blossom-petal{position:absolute;top:50%;left:50%;width:15px;height:30px;background:linear-gradient(to top,var(--ripple-secondary),var(--ripple-color));border-radius:50%/60% 60% 40% 40%;transform-origin:bottom center;opacity:0;animation:blossomPetalEffect var(--ripple-duration) ease-out forwards}.blossom-center{position:absolute;top:50%;left:50%;width:15px;height:15px;background:var(--ripple-color);border-radius:50%;transform:translate(-50%,-50%) scale(0);animation:blossomCenterEffect var(--ripple-duration) ease-out forwards}@keyframes blossomPetalEffect{0%{opacity:1;transform:rotate(var(--angle)) translateY(0) scale(0)}to{opacity:0;transform:rotate(var(--angle)) translateY(-250%) scale(1) rotate(45deg)}}@keyframes blossomCenterEffect{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.ripple-aurora{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at center,var(--ripple-color) 0%,var(--ripple-secondary) 40%,transparent 70%);box-shadow:0 0 20px var(--ripple-color),0 0 40px var(--ripple-secondary);transform:scale(0);animation:auroraEffect var(--ripple-duration) ease-out forwards}@keyframes auroraEffect{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(3)}}.ripple-sparkle{position:absolute;inset:0}.sparkle-main{position:absolute;top:50%;left:50%;width:8px;height:8px;background:var(--ripple-color);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 10px var(--ripple-color);animation:sparkleMainEffect var(--ripple-duration) ease-out forwards}.sparkle-particle{position:absolute;top:50%;left:50%;width:4px;height:4px;background:var(--ripple-color);border-radius:50%;opacity:0;animation:sparkleParticleEffect var(--ripple-duration) ease-out forwards}@keyframes sparkleMainEffect{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}50%{opacity:1;transform:translate(-50%,-50%) scale(2)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}@keyframes sparkleParticleEffect{0%{opacity:1;transform:rotate(var(--angle)) translateY(0)}to{opacity:0;transform:rotate(var(--angle)) translateY(calc(-50% * var(--distance) * var(--ripple-size)))}}
