/* Purple Animations — ambient glows, particles, gradient shift */
@keyframes glowPulse{0%{box-shadow:0 0 0 0 rgba(122,60,255,.36)}50%{box-shadow:0 0 0 14px rgba(122,60,255,.12)}100%{box-shadow:0 0 0 0 rgba(122,60,255,.0)}}
@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-6px)}100%{transform:translateY(0)}}
@keyframes gradientShift{0%{filter:hue-rotate(0deg)}50%{filter:hue-rotate(20deg)}100%{filter:hue-rotate(0deg)}}
@keyframes shimmer{0%{opacity:.0}30%{opacity:.35}60%{opacity:.15}100%{opacity:.0}}

/* ambient helpers */
.ambient-ring{position:absolute;inset:8px;border-radius:inherit;pointer-events:none;box-shadow:0 0 0 1px var(--border-2),0 8px 24px var(--glow-1),0 20px 60px var(--glow-2);} 
.glow-pulse{animation:glowPulse 2600ms ease-in-out infinite}
.floating{animation:float 3600ms ease-in-out infinite}
.gradient-shift{animation:gradientShift 9800ms linear infinite}
.shimmer{animation:shimmer 2200ms ease infinite}

/* hero aura (optional overlay) */
.hero-aura{position:absolute;inset:0;pointer-events:none;background:radial-gradient(800px 240px at 12% 14%,rgba(122,60,255,.20),transparent),radial-gradient(800px 240px at 88% 86%,rgba(168,85,247,.18),transparent);}