/* CRT Overlay Effect */
.crt::before {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: linear-gradient(
        rgba(18, 16, 16, 0) 50%, 
        rgba(0, 0, 0, 0.25) 50%
    );
    background-size: 100% 4px;
    z-index: 999;
    pointer-events: none;
}

/* Glitch Animation */
.glitch {
    position: relative;
    color: #00ff41;
}

.glitch::before,
.glitch::after {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #050505;
}

.glitch::before {
    left: 2px;
    text-shadow: -1px 0 #ff00c1;
    clip: rect(44px, 450px, 56px, 0);
    animation: glitch-anim 5s infinite linear alternate-reverse;
}

.glitch::after {
    left: -2px;
    text-shadow: -1px 0 #00fff9;
    clip: rect(44px, 450px, 56px, 0);
    animation: glitch-anim2 5s infinite linear alternate-reverse;
}

@keyframes glitch-anim {
    0% { clip: rect(38px, 9999px, 80px, 0); }
    20% { clip: rect(31px, 9999px, 12px, 0); }
    40% { clip: rect(37px, 9999px, 16px, 0); }
    60% { clip: rect(47px, 9999px, 20px, 0); }
    80% { clip: rect(9px, 9999px, 4px, 0); }
    100% { clip: rect(13px, 9999px, 24px, 0); }
}

@keyframes glitch-anim2 {
    0% { clip: rect(65px, 9999px, 92px, 0); }
    20% { clip: rect(14px, 9999px, 41px, 0); }
    40% { clip: rect(91px, 9999px, 7px, 0); }
    60% { clip: rect(74px, 9999px, 35px, 0); }
    80% { clip: rect(98px, 9999px, 52px, 0); }
    100% { clip: rect(8px, 9999px, 46px, 0); }
}

/* Scrollbar */
::-webkit-scrollbar {
    width: 10px;
}
::-webkit-scrollbar-track {
    background: #050505; 
}
::-webkit-scrollbar-thumb {
    background: #00ff41; 
    border-radius: 2px;
}
::-webkit-scrollbar-thumb:hover {
    background: #008f11; 
}

/* Utilities */
.text-justify-last-center {
    text-align-last: center;
}
