/* Particle background, shining title, radar sweep, pulses, launch flash */
#bg{position:fixed;inset:0;z-index:0;pointer-events:none}
h1{font-size:clamp(34px,6vw,72px);line-height:1.04;max-width:16ch;background:linear-gradient(100deg,#fff 25%,var(--cy) 45%,#fff 65%) 0 0/250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 0 20px #00e5ff55);animation:shine 7s linear infinite}
@keyframes shine{to{background-position:-250% 0}}
.stage{padding:34px 10px 18px;overflow:hidden}
.sweep{position:absolute;left:50%;top:48%;width:640px;height:640px;margin:-320px 0 0 -320px;border-radius:50%;background:conic-gradient(from 0deg,#00e5ff66,transparent 22%);-webkit-mask:radial-gradient(circle,#000 25%,transparent 68%);mask:radial-gradient(circle,#000 25%,transparent 68%);animation:sp 5s linear infinite;opacity:.55;pointer-events:none}
svg{position:relative;max-width:780px}
.pl{fill:none;stroke:var(--cy);stroke-width:1.5;opacity:0;transform-origin:200px 160px}
.act .pl{animation:pl 2.4s ease-out infinite}
@keyframes pl{from{transform:scale(.5);opacity:.9}to{transform:scale(2.3);opacity:0}}
#pct{font-size:30px}
.agents{perspective:900px}.ag{transform-style:preserve-3d;transition:transform .15s,box-shadow .3s}
.flash{position:fixed;left:0;right:0;top:-140px;height:140px;background:linear-gradient(transparent,#00e5ff66,transparent);z-index:10;pointer-events:none;animation:fs 1.2s ease-in forwards}
@keyframes fs{to{top:100%}}
.go{animation:gp 2.4s ease-in-out infinite}@keyframes gp{50%{box-shadow:0 0 48px var(--cy)}}
.go:disabled{animation:none}


.pl2{animation-delay:1.2s}
