.al-rain{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.al-rain i{position:absolute;top:-12%;width:1.5px;height:9%;background:linear-gradient(transparent,#cfe3ffaa);transform:rotate(12deg);animation:alr linear infinite}
@keyframes alr{to{transform:translate(-14vh,125vh) rotate(12deg)}}
.al-bolt{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6;animation:alb .6s steps(1) forwards}
.al-bolt path{fill:none;stroke-linecap:round;stroke-linejoin:round}.ab-glow{stroke:#9fd0ff;stroke-width:12;opacity:.45;filter:blur(5px)}.ab-core{stroke:#fff;stroke-width:3}.ab-br{stroke:#dff0ff;stroke-width:1.6;opacity:.8}
@keyframes alb{0%{opacity:1}15%{opacity:.2}25%{opacity:1}60%{opacity:.8}100%{opacity:0}}
.al-flash{position:absolute;inset:0;background:#e9f3ff;z-index:5;pointer-events:none;animation:alf .55s ease-out forwards;mix-blend-mode:screen}
@keyframes alf{0%{opacity:.75}12%{opacity:.1}22%{opacity:.5}100%{opacity:0}}
.al-jolt .title-logo,.al-jolt .splash-logo,.al-jolt .cr-head{animation:alj .35s}
@keyframes alj{0%,100%{transform:none}20%{transform:translate(-4px,2px) rotate(-1deg)}40%{transform:translate(4px,-2px) rotate(1deg)}60%{transform:translate(-2px,1px)}}
.al-gang{position:absolute;left:0;right:0;bottom:-2vh;height:36vh;display:flex;justify-content:center;align-items:flex-end;z-index:2;pointer-events:auto}
.al-g{height:88%;margin:0 -5.5%;transform-origin:50% 100%;filter:drop-shadow(0 8px 10px #000a);animation:alin .7s cubic-bezier(.2,1.4,.4,1) backwards,albr calc(2.6s + var(--i)*.37s) ease-in-out infinite;animation-delay:calc(var(--i)*.12s + .2s),calc(var(--i)*-.6s)}
.al-nathan{height:96%;z-index:3}.al-kelly,.al-simon{z-index:2;height:91%}
@keyframes alin{from{transform:translateY(60%) scale(.8);opacity:0}}
@keyframes albr{0%,100%{transform:scaleY(1) rotate(0)}50%{transform:scaleY(1.018) rotate(calc((var(--i) - 2)*.5deg))}}
.al-g.zap{animation:alzap .5s}.al-g.poke{animation:alpoke .45s}
@keyframes alzap{0%{filter:brightness(3) drop-shadow(0 0 18px #9fd0ff)}30%{transform:translateX(-4px)}60%{transform:translateX(4px);filter:brightness(1.6) drop-shadow(0 0 10px #9fd0ff)}100%{filter:drop-shadow(0 8px 10px #000a)}}
@keyframes alpoke{30%{transform:translateY(-6%) scale(1.04)}60%{transform:translateY(0) scale(.98)}}
.title-menu,.title-logo,#evb{z-index:4;position:relative}
.al-prev{position:relative;height:190px;display:flex;justify-content:center;align-items:flex-end;overflow:visible;background:radial-gradient(ellipse at 50% 100%,#ff7a1a33,transparent 70%)}
.al-prev img{height:100%;transform-origin:50% 100%;animation:albr 2.8s ease-in-out infinite;filter:drop-shadow(0 6px 8px #000)}
.al-spot{position:absolute;bottom:0;width:120px;height:18px;border-radius:50%;background:#000a;filter:blur(4px)}
.al-prev.charging img{animation:alchg .18s linear infinite;filter:drop-shadow(0 0 14px #9fd0ff) brightness(1.15)}
@keyframes alchg{0%,100%{transform:translateX(-1px)}50%{transform:translateX(1px) scaleY(1.01)}}
.al-prev img.react{animation:alreact .55s cubic-bezier(.2,1.6,.4,1)}@keyframes alreact{30%{transform:translateY(-10px) rotate(-3deg)}}
.al-prev img.struck{animation:alstruck .9s}@keyframes alstruck{0%{filter:brightness(4) drop-shadow(0 0 30px #fff)}10%{transform:translateY(4px) scale(1.03,.96)}25%{transform:translateY(-14px)}50%{filter:brightness(1.4) drop-shadow(0 0 16px #9fd0ff);transform:none}}
.al-bubble{position:absolute;top:6px;left:58%;background:#f4f1ea;color:#141414;font:13px Typewriter,monospace;padding:5px 8px;border:3px solid #141414;box-shadow:3px 3px 0 #000;white-space:nowrap}
.al-bubble.pop{animation:alpop .35s cubic-bezier(.2,1.6,.4,1)}@keyframes alpop{from{transform:scale(0) rotate(-8deg)}}
.al-stamp{animation:alst .4s}@keyframes alst{0%{transform:scale(1.25) rotate(-4deg)}60%{transform:scale(.95)}}
.al-slap{animation:alsl .45s cubic-bezier(.2,1.5,.4,1)}@keyframes alsl{from{transform:translateX(-30px) rotate(-3deg);opacity:0}}
#creator{position:relative}#creator .cr-card{position:relative;z-index:3}
@media (prefers-reduced-motion:reduce){.al-rain,.al-bolt,.al-flash{display:none}}
