.celestial{pointer-events:none;z-index:2;transition:opacity 1.2s;position:absolute;inset:0;overflow:hidden}.celestial__anchor{width:0;height:0;position:absolute;top:clamp(70px,13vh,155px);right:clamp(58px,11vw,175px)}.celestial__glow,.celestial__disc,.celestial__moon,.celestial__flare-streak,.celestial__flare-ring{position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.celestial__glow--sun{filter:blur(40px);background:radial-gradient(circle,#fff5d6b3 0%,#fcdf9c52 45%,#0000 72%);border-radius:50%;width:clamp(280px,38vw,520px);height:clamp(280px,38vw,520px);animation:11s ease-in-out infinite alternate celestialBreath}.celestial__disc--sun{filter:blur(2.5px);background:radial-gradient(circle,#fff 0%,#fffbf0 38%,#feeec2eb 58%,#fcdf9c73 78%,#0000 100%);border-radius:50%;width:clamp(86px,11vw,150px);height:clamp(86px,11vw,150px);animation:9s ease-in-out infinite alternate celestialPulse}.celestial__flare-streak{filter:blur(1px);transform-origin:100%;background:linear-gradient(90deg,#0000,#fffbf0cc 50%,#0000);border-radius:2px;width:clamp(320px,62vw,860px);height:2px;animation:12s ease-in-out infinite celestialShimmer;transform:translate(-94%,-50%)rotate(18deg)}.celestial__flare-ring{filter:blur(2px);background:radial-gradient(circle,#0000 34%,#fff6db80 62%,#fdeab42e 80%,#0000 100%);border-radius:50%;animation:16s ease-in-out infinite celestialShimmer}.celestial__flare-ring--1{width:64px;height:64px;transform:translate(calc(-50% - 120px),calc(92px - 50%))}.celestial__flare-ring--2{width:120px;height:120px;animation-duration:22s;animation-direction:reverse;transform:translate(calc(-50% - 250px),calc(188px - 50%))}.celestial__flare-ring--3{width:38px;height:38px;animation-duration:19s;transform:translate(calc(-50% - 360px),calc(270px - 50%))}.celestial__glow--moon{filter:blur(40px);mix-blend-mode:screen;background:radial-gradient(circle,#d4e6f780 0%,#a8c2e633 45%,#0000 72%);border-radius:50%;width:clamp(230px,30vw,420px);height:clamp(230px,30vw,420px);animation:12s ease-in-out infinite alternate celestialBreath}.celestial__moon{mix-blend-mode:screen;width:clamp(78px,10.5vw,138px);height:clamp(78px,10.5vw,138px);animation:14s ease-in-out infinite alternate celestialPulse}.celestial__moon img{border-radius:50%}@keyframes celestialPulse{0%{opacity:.96;scale:1}to{opacity:1;scale:1.05}}@keyframes celestialBreath{0%{opacity:.82;scale:1}to{opacity:1;scale:1.08}}@keyframes celestialShimmer{0%,to{opacity:.55}50%{opacity:.9}}@media (prefers-reduced-motion:reduce){.celestial__glow,.celestial__disc,.celestial__moon,.celestial__flare-streak,.celestial__flare-ring{animation:none!important}}
.fog-background{pointer-events:none;z-index:0;isolation:isolate;position:absolute;inset:0;overflow:hidden}.fog-band{filter:blur(60px);will-change:transform;border-radius:45%;width:220%;height:140%;animation-name:fog-drift;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate;position:absolute;top:-20%;left:-60%}.fog-background--day .fog-band{background:radial-gradient(ellipse at center,rgba(232,236,240,calc(var(--fog-opacity,.6)*.85))0%,rgba(214,221,228,calc(var(--fog-opacity,.6)*.5))45%,#c8d0da00 75%)}.fog-background--night .fog-band{background:radial-gradient(ellipse at center,rgba(120,132,156,calc(var(--fog-opacity,.6)*.7))0%,rgba(70,82,108,calc(var(--fog-opacity,.6)*.45))45%,#28324800 75%)}.fog-band--1{animation-duration:calc(46s/var(--fog-speedup,1));opacity:.9;top:-25%}.fog-band--2{animation-duration:calc(62s/var(--fog-speedup,1));opacity:1;animation-delay:-14s;top:10%}.fog-band--3{animation-duration:calc(78s/var(--fog-speedup,1));opacity:.85;animation-delay:-30s;top:38%}@keyframes fog-drift{0%{transform:translate(-8%)scale(1.05)}to{transform:translate(8%,2%)scale(1.15)}}@media (prefers-reduced-motion:reduce){.fog-band{animation:none!important;transform:none!important}}
.lens-flare-background{pointer-events:none;z-index:0;animation:20s ease-in-out infinite alternate backgroundDrift;position:absolute;inset:0;overflow:hidden}.lens-center{aspect-ratio:1;filter:blur(4px);background:radial-gradient(circle closest-side,#fff 0% 15%,#b3b3b3b3 30%,#8080804d 55%,#1a1a1a0d 75%,#0000 99%);border-radius:50%;width:40%;animation:8s ease-in-out infinite alternate subtlePulse;position:absolute;top:20%;left:55%}.circle-1,.circle-2{filter:blur(5px);border-radius:50%;position:absolute;top:20%;left:55%;transform:translate(-50%,-50%)}.circle-1{background:radial-gradient(circle closest-side,#0000 50%,#b3b3b366 90%,#0000 100%);width:80%;height:80%;animation:12s ease-in-out infinite alternate circleFade,18s ease-in-out infinite circleFloat}.circle-2{background:radial-gradient(circle closest-side,#0000 50%,#b3b3b333 90%,#0000 100%);width:120%;height:120%;animation:15s ease-in-out infinite alternate circleFade,25s ease-in-out infinite reverse circleFloat}.horizontal-flare{filter:blur(3px);background:linear-gradient(90deg,#0000,#ffffff80,#0000);height:2px;animation:10s ease-in-out infinite shimmer;position:absolute;top:20%;left:55%}.left-flare{width:40%;transform:translate(-100%)}.right-flare{width:40%}.full-flare{opacity:.3;width:100%}.conic-1,.conic-2,.conic-3{transform-origin:50%;pointer-events:none;opacity:.25;filter:blur(40px);background:conic-gradient(at 0 100%,#0000 0deg,#ffd96699 20deg,#0000 40deg);width:200%;height:200%;animation:25s linear infinite rotateFlare;position:absolute;bottom:0;left:0}.conic-2{opacity:.4;filter:blur(40px);background:conic-gradient(from 90deg at 0 100%,#0000 0deg,#f736 25deg,#0000 50deg);animation-duration:40s}.conic-3{opacity:.3;filter:blur(50px);background:conic-gradient(from 180deg at 0 100%,#0000 0deg,#ff66664d 15deg,#0000 35deg);animation-duration:60s}@keyframes subtlePulse{0%{opacity:.3;transform:scale(1)}to{opacity:1;transform:scale(1.3)}}@keyframes rotateFlare{to{transform:rotate(360deg)}}@keyframes backgroundDrift{0%{transform:translate(0)}to{transform:translate(50px,-50px)}}@keyframes shimmer{0%,to{opacity:.1}50%{opacity:.6}}@keyframes circleFade{0%,to{opacity:.25}50%{opacity:.5}}@keyframes circleFloat{0%{transform:translate(-50%,-50%)translate(0)}50%{transform:translate(-50%,-50%)translate(30px,-20px)}to{transform:translate(-50%,-50%)translate(-20px,25px)}}
.lightning-flash{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.lightning-flash__sheet{opacity:0;mix-blend-mode:screen;will-change:opacity;background:radial-gradient(at 50% 20%,#e2eaffd9 0%,#c4d2f559 30%,#a0b4e600 65%);animation-timing-function:ease-out;animation-iteration-count:infinite;position:absolute;inset:0}.lightning-flash__sheet--a{animation-name:lightning-strike;animation-duration:9s}.lightning-flash__sheet--b{background:radial-gradient(at 30% 15%,#e2eaffb3 0%,#c4d2f547 28%,#a0b4e600 60%);animation-name:lightning-strike;animation-duration:13s;animation-delay:-5s}@keyframes lightning-strike{0%,to{opacity:0}1%{opacity:.9}3%{opacity:.1}5%{opacity:.8}8%{opacity:0}}@media (prefers-reduced-motion:reduce){.lightning-flash__sheet{opacity:0!important;animation:none!important}}
.night-background{pointer-events:none;z-index:0;background:linear-gradient(#020408 0%,#04070d 40%,#070b13 70%,#0a0f18 100%);position:absolute;inset:0;overflow:hidden}.night-background:before{content:"";opacity:.35;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' seed='1'/%3E%3C/filter%3E%3Crect width='400' height='400' filter='url(%23noiseFilter)' opacity='0.05'/%3E%3C/svg%3E");background-size:400px 400px;position:absolute;inset:0}.stars-container{position:absolute;inset:0}.star{filter:blur(.2px);background:#dce6f8f2;border-radius:50%;animation:4s ease-in-out infinite twingleMuted;position:absolute;box-shadow:0 0 3px #c8daf880}@keyframes twingleMuted{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.9;transform:scale(1.15)}}@keyframes groundPulseMuted{0%,to{opacity:.3}50%{opacity:.15}}.shooting-star{opacity:0;filter:blur(.4px);background:#cddcf5d9;border-radius:50%;width:2px;height:2px;animation:4s infinite shootingStarMuted;position:absolute;top:20%;right:30%;box-shadow:0 0 4px #bed2f580}@keyframes shootingStarMuted{0%{opacity:0;transform:translate(0)rotate(-45deg)}8%{opacity:.25}25%{opacity:.25}45%{opacity:0;transform:translate(-300px,300px)rotate(-45deg)}to{opacity:0;transform:translate(-300px,300px)rotate(-45deg)}}.shooting-star:after{content:"";background:linear-gradient(270deg,#c8d7f580,#0000);border-radius:50%;width:60px;height:1px;position:absolute;top:0;right:0;transform:translate(2px)}.atmosphere-haze{background:linear-gradient(#0000 0%,#1c284433 70%,#26345466 100%);height:50%;animation:25s ease-in-out infinite hazeShiftMuted;position:absolute;bottom:0;left:0;right:0}@keyframes hazeShiftMuted{0%,to{opacity:.4}50%{opacity:.25}}.ground-glow{filter:blur(50px);background:radial-gradient(at bottom,#2e406638 0%,#1c28441a 30%,#0000 70%);height:35%;animation:18s ease-in-out infinite groundPulseMuted;position:absolute;bottom:0;left:0;right:0}@keyframes groundPulse{0%,to{opacity:.5;transform:scaleY(1)}50%{opacity:.7;transform:scaleY(1.1)}}
.rainfall-background{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.rainfall-tilt{width:160%;height:160%;transform:rotate(var(--rain-angle,0deg));transform-origin:50%;will-change:transform;position:absolute;top:-30%;left:-30%}.raindrop{width:var(--thickness,1px);height:var(--len,10vh);background:linear-gradient(to bottom,transparent 0%,var(--rain-color,#ffffff73)35%,var(--rain-color,#ffffff73)70%,transparent 100%);opacity:var(--drop-opacity,.3);will-change:transform;border-radius:9999px;animation-name:rainfall-drop;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;top:0}@keyframes rainfall-drop{0%{transform:translateY(-20vh)}to{transform:translateY(150vh)}}@media (prefers-reduced-motion:reduce){.raindrop{opacity:0!important;animation:none!important}}
.snow-background{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.snow-glow{position:absolute;inset:0}.snow-glow-day{background:linear-gradient(#d2e6ff59,#f5faff33)}.snow-glow-night{background:linear-gradient(#2d467373,#121d3440)}.snowflake{filter:blur(.2px);background:#fffffff2;border-radius:9999px;animation-name:snowfall;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;top:-12px}@keyframes snowfall{0%{transform:translateY(-5vh)}to{transform:translate3d(var(--snow-drift,0),105vh,0)}}
.sun-background{pointer-events:none;z-index:0;background:#fff7e6;position:absolute;inset:0;overflow:hidden}
