body {
    background-color: #030303;
    margin: 40px;
    display: flex;
    justify-content: center;
    align-items: top;
    /*height: 100vh;*/
    overflow: hidden;
    animation: flicker-glow 0.15s infinite linear;

}

u {
    text-decoration: underline;
    color: #00ee00;
    text-underline-offset: 3px;
    cursor: pointer; /* Changes mouse to the hand icon */
    transition: background-color 0.2s;
}

u:hover {
    background-color: rgba(0, 255, 65, 0.2); /* Matches .terminal-link:hover */
}

#terminal-window {
    width: 960px; height: 540px; min-width: 960px;
    background: #000;
    border: 4px solid #1a1a1a;
    border-radius: 20px;
    position: relative; 
    box-shadow: 0 0 80px rgba(0, 255, 65, 0.1), inset 0 0 60px rgba(0, 0, 0, 1);

}

#terminal-scroll-area {
    height: 100%;
    padding: 32px; 
    padding-bottom: 40px; 
    /*box-sizing: border-box;*/
    overflow-y: scroll; 
    scrollbar-width: none;
    position: relative;
    scroll-behavior: auto; 

}

#scroll-anchor {
    float: left;
    width: 100%;
    height: 1px;
    margin-top: -1px;
    clear: both;
}

#terminal-scroll-area::-webkit-scrollbar { display: none; }

#main-content {
    color: #00ee00;
    font-family: 'Courier New', Courier, monospace;
    font-weight: bold;
    white-space: pre-wrap;
    line-height: 1.5;
/*    text-shadow: 0 0 2px rgba(255, 255, 255, 0.2), 0 0 8px rgba(0, 255, 65, 0.8), 0 0 15px rgba(0, 255, 65, 0.3);*/
    text-shadow: 0 0 2px rgba(0, 255, 0, 0.2), 0 0 8px rgba(0, 255, 0, 0.8), 0 0 15px rgba(0, 255, 0, 0.3);
    filter: sepia(1) hue-rotate(90deg) saturate(500%) brightness(0.8) contrast(1.2);
}

/* LINK STYLE */
.terminal-link {
    color: #00ee00;
    text-decoration: underline;
    cursor: pointer;
}
.terminal-link:hover {
    background-color: rgba(0, 255, 65, 0.2);
}

.terminal-canvas {
    display: block;
    margin-top: 15px;
    margin-bottom: 15px;
}

.cursor {
    display: inline-block;
    width: 12px; height: 1.2em;
    background-color: #00ee00;
    animation: blink 0.8s infinite;
    vertical-align: middle;
    box-shadow: 0 0 12px rgba(0, 255, 65, 1);
    z-index: 10;
}

.cursor.abs-mode {
    position: absolute;
    vertical-align: top;
    margin: 0;
}

.scanlines {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background: repeating-linear-gradient(0deg, rgba(0,0,0,0.35), rgba(0,0,0,0.35) 1px, transparent 1px, transparent 3px);
    pointer-events: none; z-index: 100;
}

.crt-overlay {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    /*background: radial-gradient(circle, rgba(18,16,16,0) 50%, rgba(0,0,0,0.5) 120%);*/
    pointer-events: none; z-index: 101;
}

.screen-glow {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    /*background: radial-gradient(circle, rgba(0,255,65,0.03) 0%, transparent 70%);*/
    pointer-events: none; z-index: 50;
}

@keyframes flicker-glow {
            0%   { opacity: 0.942; }
            5%   { opacity: 0.981; }
            10%  { opacity: 0.935; }
            15%  { opacity: 0.991; }
            20%  { opacity: 0.912; }
            25%  { opacity: 0.975; }
            30%  { opacity: 0.923; }
            35%  { opacity: 0.988; }
            40%  { opacity: 0.932; }
            45%  { opacity: 0.965; }
            50%  { opacity: 0.941; }
            55%  { opacity: 0.983; }
            60%  { opacity: 0.921; }
            65%  { opacity: 0.995; }
            70%  { opacity: 0.932; }
            75%  { opacity: 0.971; }
            80%  { opacity: 0.925; }
            85%  { opacity: 0.981; }
            90%  { opacity: 0.932; }
            95%  { opacity: 0.978; }
            100% { opacity: 0.945; }
  }
@keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
