
/* K9 ALIEN/CYBERPUNK/STEAMPUNK FX BUS */
.cyber-frame{--hot-x:50%;--hot-y:50%}
.cyber-frame:hover{background-image:radial-gradient(circle at var(--hot-x) var(--hot-y),rgba(73,215,255,.07),transparent 30%)}
.comm-terminal:after{animation:cornerPulse 2.6s ease-in-out infinite alternate}
.mecha-panel:after{animation:cornerPulse 3.1s ease-in-out infinite alternate}
.game-node:after{animation:cornerPulse 3.8s ease-in-out infinite alternate}
.vault-card:after{animation:cornerPulse 4.2s ease-in-out infinite alternate}
@keyframes cornerPulse{to{opacity:.35;filter:drop-shadow(0 0 2px var(--cyan))}}

.comm-terminal .terminal-head:before{
 content:"";position:absolute;left:28%;right:28%;top:-2px;height:3px;
 background:linear-gradient(90deg,transparent,#fff,var(--cyan),var(--mag),transparent);
 box-shadow:0 0 12px var(--cyan);animation:energyNeedle 3.8s ease-in-out infinite
}
.terminal-head{position:relative}
@keyframes energyNeedle{0%,100%{transform:scaleX(.15);opacity:.35}50%{transform:scaleX(1);opacity:1}}

.mecha-panel{position:relative}
.mecha-panel:before{background:conic-gradient(from var(--rail-angle),transparent 0 14%,#3fdcff 18%,transparent 22% 48%,#bd6e35 52%,#e8b65d 54%,transparent 58% 82%,#ff34d3 86%,transparent 90%)}
.mecha-panel .telemetry-list:after{
 content:"";display:block;height:2px;margin:7px 0 0;
 background:linear-gradient(90deg,transparent,var(--cyan),transparent 38%,var(--gold),transparent);
 background-size:240% 100%;animation:dataRail 3.8s linear infinite
}

.game-node:before{background:conic-gradient(from var(--rail-angle),transparent 0 10%,#45dcff 14%,transparent 18% 39%,#b66b37 43%,#e8b65d 45%,transparent 49% 70%,#ff34d3 74%,transparent 79% 93%,#45dcff 97%)}
.game-node.prime:before{background:conic-gradient(from var(--rail-angle),#45dcff,transparent 13%,#7c55ff 22%,#ff34d3 28%,transparent 38%,#e8b65d 49%,transparent 61%,#45dcff 76%,transparent 88%,#fff)}
.game-node.war:before{background:conic-gradient(from var(--rail-angle),#ff4b5e,transparent 15%,#b66b37 28%,transparent 40%,#ff4b5e 58%,transparent 75%,#e8b65d 88%,transparent)}
.game-node .node-icon:after{
 content:"";position:absolute;inset:-22px;border-radius:50%;
 background:conic-gradient(transparent 0 12%,rgba(69,220,255,.3) 14%,transparent 17% 42%,rgba(232,182,93,.22) 45%,transparent 49% 72%,rgba(255,52,211,.2) 75%,transparent 78%);
 animation:spin 7s linear infinite;filter:blur(.2px)
}
.game-node:hover .node-icon:after{animation-duration:1.7s}
.game-node:hover .node-icon{box-shadow:0 0 52px rgba(62,208,255,.3),inset 0 0 30px rgba(62,208,255,.16)}

.forum-hall:before{background:conic-gradient(from var(--rail-angle),#5adfff,transparent 8% 19%,#f444d4 24%,transparent 29% 46%,#e8b55f 51%,transparent 56% 73%,#50dfff 78%,transparent 83% 100%)}
.forum-categories>a:after{
 content:"";position:absolute;left:0;top:0;bottom:0;width:2px;
 background:linear-gradient(180deg,transparent,var(--cyan),#fff,var(--mag),transparent);
 transform:translateY(-100%);animation:forumBus 4s linear infinite
}
@keyframes forumBus{to{transform:translateY(100%)}}

.csd-core:before{background:conic-gradient(from var(--rail-angle),transparent 0 5%,#4de6ff 9%,transparent 13% 28%,#df8144 33%,#f0bc60 35%,transparent 39% 57%,#ff34d2 61%,transparent 65% 83%,#4de6ff 88%,transparent 93%)}
.csd-reactor:after{box-shadow:0 0 40px rgba(59,199,255,.12)}
.csd-reactor{background:radial-gradient(circle,rgba(39,136,200,.13),transparent 58%)}

.banner-shell:after{animation:bannerCorners 3.3s ease-in-out infinite alternate}
@keyframes bannerCorners{to{opacity:.35;filter:drop-shadow(0 0 3px var(--cyan))}}
.banner-shell:hover .official-banner{filter:saturate(1.24) contrast(1.08) brightness(1.04)}
.official-banner{transition:filter .35s ease}

.status-ribbon>div{position:relative;overflow:hidden}
.status-ribbon>div:after{content:"";position:absolute;left:-60%;bottom:0;width:45%;height:1px;background:linear-gradient(90deg,transparent,#fff,var(--cyan),transparent);animation:microBus 4s linear infinite}
.status-ribbon>div:nth-child(2):after{animation-delay:-.8s}.status-ribbon>div:nth-child(3):after{animation-delay:-1.6s}.status-ribbon>div:nth-child(4):after{animation-delay:-2.4s}.status-ribbon>div:nth-child(5):after{animation-delay:-3.2s}
@keyframes microBus{to{left:120%}}

@media(prefers-reduced-motion:reduce){.comm-terminal:after,.mecha-panel:after,.game-node:after,.vault-card:after,.game-node .node-icon:after,.forum-categories>a:after,.banner-shell:after,.status-ribbon>div:after{animation:none!important}}
