/* ===== Retro arcade screen filter (decorative, non-blocking) =====
   Two stacked fixed layers simulate looking at the whole page through
   an arcade CRT: scanlines + a fine pixel grid + vignette (darkening,
   multiply) and a soft color-bleed glow in the corners (brightening,
   screen). Both are pointer-events: none so they never block clicks. */

.crt-overlay,
.crt-glow {
    position: fixed;
    inset: 0;
    pointer-events: none;
}

.crt-overlay {
    z-index: 500;
    mix-blend-mode: multiply;
    opacity: 0.4;
    background-image:
        repeating-linear-gradient(to bottom, rgba(0, 0, 0, 0.45) 0px, rgba(0, 0, 0, 0.45) 1px, transparent 2px, transparent 6px),
        repeating-linear-gradient(to right, rgba(0, 0, 0, 0.1) 0px, rgba(0, 0, 0, 0.1) 1px, transparent 1px, transparent 5px),
        radial-gradient(ellipse at 50% 50%, transparent 60%, rgba(0, 0, 0, 0.3) 100%);
    animation: crt-flicker 6s linear infinite;
}

.crt-glow {
    z-index: 501;
    mix-blend-mode: screen;
    opacity: 0.1;
    background-image:
        radial-gradient(circle at 8% 10%, var(--color-pink), transparent 35%),
        radial-gradient(circle at 92% 88%, var(--color-green), transparent 35%);
}

@keyframes crt-flicker {
    0%, 100%, 48% { opacity: 0.4; }
    50%            { opacity: 0.34; }
    52%, 77%       { opacity: 0.4; }
    79%            { opacity: 0.36; }
    81%            { opacity: 0.4; }
}
