:root {
    --sp-red: #E23636;
    --sp-red-dark: #B71C1C;
    --sp-red-glow: rgba(226, 54, 54, 0.15);
    --sp-red-bright: #FF4444;
    --sp-blue: #1565C0;
    --sp-blue-dark: #0D47A1;
    --sp-blue-glow: rgba(21, 101, 192, 0.15);
    --sp-blue-bright: #42A5F5;
    --sp-bg: #0a0c15;
    --sp-surface: #111428;
    --sp-surface2: #181d35;
    --sp-surface3: #1f2545;
    --sp-border: rgba(226, 54, 54, 0.12);
    --sp-border-blue: rgba(21, 101, 192, 0.12);
    --sp-text: #f0f0f0;
    --sp-text-sec: #94a3b8;
    --sp-text-muted: #8b949e;
    --sp-muted: #64748b;
    --sp-gradient: linear-gradient(135deg, #E23636, #1565C0);
    --sp-gradient-bright: linear-gradient(135deg, #FF4444, #42A5F5);
}

@keyframes spiderPulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

@keyframes spiderGlow {
    0%, 100% { box-shadow: 0 0 20px rgba(226, 54, 54, 0.2), 0 0 40px rgba(21, 101, 192, 0.1); }
    50% { box-shadow: 0 0 30px rgba(226, 54, 54, 0.35), 0 0 60px rgba(21, 101, 192, 0.2); }
}

@keyframes webShimmer {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}

@keyframes spiderBorderGlow {
    0%, 100% { border-color: rgba(226, 54, 54, 0.25); }
    50% { border-color: rgba(21, 101, 192, 0.35); }
}
