/* TERMINAL V2.1 - ROBUST FIX */
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;700&display=swap');

body {
    background-color: #050505 !important; /* FORCE BLACK BACKGROUND */
    color: #00ff41;
    font-family: 'JetBrains Mono', monospace;
    overflow: hidden; /* Stops scrolling */
    margin: 0;
    height: 100vh;
    font-size: 12px;
}

/* CRT Overlay - Made softer */
.scanlines {
    position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
    background: repeating-linear-gradient(
        0deg, 
        rgba(0,0,0,0.1), 
        rgba(0,0,0,0.1) 1px, 
        transparent 1px, 
        transparent 2px
    );
    pointer-events: none; z-index: 50;
}

/* Vignette - Darkens corners */
.vig {
    position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
    background: radial-gradient(circle, rgba(0,0,0,0) 60%, rgba(0,0,0,0.8) 100%);
    pointer-events: none; z-index: 51;
}

/* Utilities */
.text-dim { color: #008f11; }
.text-alert { color: #ff3333; text-shadow: 0 0 5px red; }
.border-theme { border: 1px solid #003b0f; background: rgba(0, 20, 0, 0.3); }

/* Glitch Animation */
@keyframes glitch {
    0% { transform: translate(0); }
    20% { transform: translate(-2px, 2px); }
    40% { transform: translate(-2px, -2px); }
    60% { transform: translate(2px, 2px); }
    80% { transform: translate(2px, -2px); }
    100% { transform: translate(0); }
}
.glitch-target:hover { animation: glitch 0.2s cubic-bezier(.25, .46, .45, .94) both infinite; }

::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: #000; }
::-webkit-scrollbar-thumb { background: #003b0f; }