.glitch{animation:glitch 3s infinite}
@keyframes glitch{0%,100%{text-shadow:0.05em 0 0 rgba(255,0,0,0.5),-0.05em -0.025em 0 rgba(0,255,255,0.5)}25%{text-shadow:-0.05em -0.025em 0 rgba(255,0,0,0.5),0.025em 0.05em 0 rgba(0,255,255,0.5)}50%{text-shadow:0.025em 0.05em 0 rgba(255,0,0,0.5),-0.05em -0.025em 0 rgba(0,255,255,0.5)}75%{text-shadow:-0.025em 0 0 rgba(255,0,0,0.5),0.025em 0.025em 0 rgba(0,255,255,0.5)}}

.scanner{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,transparent 0%,rgba(0,255,157,0.05) 50%,transparent 100%);animation:scan 8s linear infinite;pointer-events:none;z-index:9998}
@keyframes scan{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}

.pulse-dot{animation:softPulse 1.5s ease-in-out infinite;display:inline-block;width:8px;height:8px;background:#22c55e;border-radius:50%;margin-right:6px}
@keyframes softPulse{0%,100%{opacity:0.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}

.crt::before{content:" ";display:block;position:fixed;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,rgba(0,255,157,0.03) 0px,rgba(0,255,157,0.03) 2px,transparent 2px,transparent 4px);pointer-events:none;z-index:9999}

/* Sidebar Scanning Line */
.sidebar::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: rgba(0, 255, 157, 0.2);
    box-shadow: 0 0 10px #00ff9d;
    animation: sideScan 4s linear infinite;
    pointer-events: none;
}
@keyframes sideScan { 0% { top: -5%; } 100% { top: 105%; } }

.cyber-toggle::before {
    content: "";
    position: absolute;
    width: 110%;
    height: 110%;
    border: 1px dashed #00ff9d;
    border-radius: 50%;
    animation: rotateReticle 10s linear infinite;
    opacity: 0.5;
}

@keyframes rotateReticle { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

.sidebar.open ~ .cyber-toggle::before { border-color: #ff6b6b; }
