._{--ray-color-primary: color-mix(in srgb, var(--primary-color, #3b83f6), transparent 30%);--ray-color-secondary: color-mix(in srgb, var(--secondary-color, #8b5cf6), transparent 30%);--ray-color-accent: color-mix(in srgb, var(--accent-color, #6366f1), transparent 30%);--ray-gradient-primary: radial-gradient(var(--ray-color-primary) 0%, transparent 70%);--ray-gradient-secondary: radial-gradient(var(--ray-color-secondary) 0%, transparent 70%);--ray-gradient-accent: radial-gradient(var(--ray-color-accent) 0%, transparent 70%);position:fixed;inset:0;overflow:hidden;animation:a 1.5s ease-out;pointer-events:none;z-index:0}html[data-theme=dark] ._{mix-blend-mode:screen}html[data-theme=light] ._{mix-blend-mode:multiply}.b{--ray-color-primary: color-mix(in srgb, #10b981, transparent 30%);--ray-color-secondary: color-mix(in srgb, #059669, transparent 30%);--ray-color-accent: color-mix(in srgb, #34d399, transparent 30%);--ray-gradient-primary: radial-gradient(var(--ray-color-primary) 0%, transparent 70%);--ray-gradient-secondary: radial-gradient(var(--ray-color-secondary) 0%, transparent 70%);--ray-gradient-accent: radial-gradient(var(--ray-color-accent) 0%, transparent 70%)}.c{--ray-color-primary: color-mix(in srgb, #8b5cf6, transparent 30%);--ray-color-secondary: color-mix(in srgb, #6366f1, transparent 30%);--ray-color-accent: color-mix(in srgb, #a855f7, transparent 30%);--ray-gradient-primary: radial-gradient(var(--ray-color-primary) 0%, transparent 70%);--ray-gradient-secondary: radial-gradient(var(--ray-color-secondary) 0%, transparent 70%);--ray-gradient-accent: radial-gradient(var(--ray-color-accent) 0%, transparent 70%)}.d{position:absolute;border-radius:100%}html[data-theme=dark] .d{mix-blend-mode:screen}html[data-theme=light] .d{mix-blend-mode:multiply;opacity:.4}.e{width:600px;height:800px;background:var(--ray-gradient-primary);transform:rotate(65deg);top:-500px;left:-100px;filter:blur(80px);opacity:.6;animation:f 15s infinite ease-in-out}.g{width:400px;height:600px;background:var(--ray-gradient-secondary);transform:rotate(-30deg);top:-300px;left:200px;filter:blur(60px);opacity:.6;animation:h 18s infinite ease-in-out}.i{width:500px;height:400px;background:var(--ray-gradient-accent);top:-320px;left:500px;filter:blur(65px);opacity:.5;animation:j 20s infinite ease-in-out}.k{width:400px;height:450px;background:var(--ray-gradient-secondary);top:-350px;left:800px;filter:blur(55px);opacity:.55;animation:l 17s infinite ease-in-out}.m{width:350px;height:500px;background:var(--ray-gradient-primary);transform:rotate(-45deg);top:-250px;left:1000px;filter:blur(45px);opacity:.6;animation:n 16s infinite ease-in-out}.o{width:300px;height:700px;background:var(--ray-gradient-accent);transform:rotate(75deg);top:-400px;left:600px;filter:blur(75px);opacity:.45;animation:p 19s infinite ease-in-out}.q{width:450px;height:600px;background:var(--ray-gradient-primary);transform:rotate(45deg);top:-450px;left:350px;filter:blur(65px);opacity:.55;animation:r 21s infinite ease-in-out}.s{width:380px;height:550px;background:var(--ray-gradient-secondary);transform:rotate(-60deg);top:-380px;left:750px;filter:blur(58px);opacity:.6;animation:t 14s infinite ease-in-out}@keyframes f{0%,to{transform:rotate(65deg) translate(0)}25%{transform:rotate(70deg) translate(30px,20px)}50%{transform:rotate(60deg) translate(-20px,40px)}75%{transform:rotate(68deg) translate(-40px,10px)}}@keyframes h{0%,to{transform:rotate(-30deg) scale(1)}33%{transform:rotate(-25deg) scale(1.1)}66%{transform:rotate(-35deg) scale(.95)}}@keyframes j{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(40px,20px) rotate(5deg)}75%{transform:translate(-30px,40px) rotate(-5deg)}}@keyframes l{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.15) rotate(10deg)}}@keyframes n{0%,to{transform:rotate(-45deg) translate(0)}33%{transform:rotate(-40deg) translate(25px,-20px)}66%{transform:rotate(-50deg) translate(-25px,20px)}}@keyframes p{0%,to{transform:rotate(75deg) scale(1);filter:blur(75px)}50%{transform:rotate(85deg) scale(1.1);filter:blur(65px)}}@keyframes r{0%,to{transform:rotate(45deg) translate(0);opacity:.55}50%{transform:rotate(40deg) translate(-30px,30px);opacity:.65}}@keyframes t{0%,to{transform:rotate(-60deg) scale(1)}25%{transform:rotate(-55deg) scale(1.05)}75%{transform:rotate(-65deg) scale(.95)}}@keyframes a{0%{opacity:0}to{opacity:1}}
