.nn-node{background:#6366f124;border:1px solid #6366f138;border-radius:50%;width:10px;height:10px;transform:translate(-50%,-50%)}.nn-lit{background:#818cf88c;border-color:#a5b4fc66;animation:3s ease-in-out infinite nnPulse;box-shadow:0 0 14px #6366f161}.nn-accent{background:#a5b4fcbf;box-shadow:0 0 18px #6366f18c}.nn-beam{background:linear-gradient(90deg,#0000,#6366f16b,#0000);animation:2.6s ease-in-out infinite nnBeam}@keyframes nnPulse{0%,to{opacity:.55;transform:translate(-50%,-50%)scale(.88)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.18)}}@keyframes nnBeam{0%,to{opacity:.18;transform:scaleX(.55)}50%{opacity:.82;transform:scaleX(1)}}.sp-bar{transform-origin:bottom;animation:3.4s ease-in-out infinite spWave}@keyframes spWave{0%,to{opacity:.76;transform:scaleY(.93)}50%{opacity:1;transform:scaleY(1.07)}}.ob-spinner{animation:7s linear infinite obSpin}.ob-badge1{animation:3s ease-in-out infinite obBadge}.ob-badge2{animation:3s ease-in-out 1.5s infinite obBadge}@keyframes obSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes obBadge{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.sh-ring1{animation:2.8s ease-in-out infinite shRing}.sh-ring2{animation:2.8s ease-in-out .5s infinite shRing}.sh-lock{animation:2.8s ease-in-out infinite shLock}@keyframes shRing{0%,to{opacity:.32;transform:scale(.9)}50%{opacity:.88;transform:scale(1.12)}}@keyframes shLock{0%,to{filter:drop-shadow(0 0 #f59e0b00)}50%{filter:drop-shadow(0 0 10px #f59e0b8c)}}.sc-divider{background:linear-gradient(#0000,#38bdf8e6 28% 72%,#0000);animation:3s ease-in-out infinite scPulse;box-shadow:0 0 8px #38bdf880}@keyframes scPulse{0%,to{opacity:.42}50%{opacity:1;box-shadow:0 0 14px #38bdf8bf}}.rs-cell{background:#ffffff0a;border:1px solid #ffffff0a;border-radius:2px}.rs-lit,.rs-accent{animation:4s ease-in-out infinite rsCell}.rs-lit{background:linear-gradient(#60a5faad,#2563eb70);box-shadow:0 0 12px #3b82f633}.rs-accent{background:linear-gradient(#ffffff2e,#3b82f647);box-shadow:0 0 8px #ffffff14}@keyframes rsCell{0%,to{opacity:.68;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}.cl-sweep{background:linear-gradient(90deg,#0000,#ffffff8c,#0000);animation:2.5s ease-in-out infinite clSweep}@keyframes clSweep{0%{opacity:0;transform:translate(-100%)}15%,85%{opacity:1}to{opacity:0;transform:translate(550%)}}.dn-dot{background:#94a3b873;border-radius:50%;animation:2.2s ease-in-out infinite dnNoise}.dn-lit{background:#cbd5e1cc;animation:2.2s ease-in-out infinite dnClean}@keyframes dnNoise{0%,to{opacity:.6;transform:translate(0)scale(1.2)}33%{opacity:.25;transform:translate(1px,-1px)scale(.7)}66%{opacity:.8;transform:translate(-1px,1px)scale(1.4)}}@keyframes dnClean{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.shp-ring{animation:3.2s ease-in-out infinite shpFocus}@keyframes shpFocus{0%,to{opacity:.28;transform:scale(1.25)}50%{opacity:1;transform:scale(1)}}.rt-sweep{background:linear-gradient(90deg,#0000,#fbbf249e,#0000);animation:2.6s ease-in-out infinite rtSweep;box-shadow:0 0 12px #fbbf2447}@keyframes rtSweep{0%{opacity:0;transform:translate(-100%)}15%,85%{opacity:1}to{opacity:0;transform:translate(500%)}}.skt-line{transform-origin:0;background:linear-gradient(90deg,#0000,#d4d4d894,#0000);animation:2.8s ease-in-out infinite sktLine}.skt-dot{background:#d4d4d8b8;animation:2.8s ease-in-out infinite sktDot}@keyframes sktLine{0%{opacity:0;transform:scaleX(0)}25%{opacity:1}70%{opacity:.9;transform:scaleX(1)}to{opacity:.28;transform:scaleX(1)}}@keyframes sktDot{0%,to{opacity:.2;transform:translate(-50%,-50%)scale(.8)}50%{opacity:.95;transform:translate(-50%,-50%)scale(1.25)}}.bgr-fg{animation:2.8s ease-in-out infinite bgrFloat}@keyframes bgrFloat{0%,to{transform:translateY(0);box-shadow:0 4px 14px #a855f726}50%{transform:translateY(-7px);box-shadow:0 14px 28px #a855f752}}.fc-oval{animation:2.8s ease-in-out infinite fcOval}.fc-dot{animation:2.8s ease-in-out infinite fcDot}.fc-scan{background:linear-gradient(90deg,#0000,#ec4899c7,#0000);animation:2.4s ease-in-out infinite fcScan;box-shadow:0 0 6px #ec489973}@keyframes fcOval{0%,to{border-color:#ec489959}50%{border-color:#ec4899ad}}@keyframes fcDot{0%,to{opacity:.38;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}@keyframes fcScan{0%{opacity:0;top:15%}10%{opacity:1}90%{opacity:1}to{opacity:0;top:80%}}.cp-frame{animation:2.8s ease-in-out infinite cpPulse}@keyframes cpPulse{0%,to{border-color:#14b8a67a}50%{border-color:#14b8a6d1;box-shadow:0 0 10px #14b8a647}}
