
 /* --- [ SYSTEM VARIABLES ] --- */
:root {
    --term-bg: #050505;
    --term-green: #00bfff;
    --term-dark-green: #00678f;
       --term-dim: #00153b;
    }

        /* --- [ CRT MONITOR EFFECT ] --- */
body {
    background-color: var(--term-bg);
    color: var(--term-green);
    font-family: 'Courier New', Courier, monospace;
    margin: 0;
    padding: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    /* Blocky, retro crosshair */
    cursor: crosshair;
    }

    /* This creates the scanlines over the entire screen! */
body::after {
    content: " ";
            display: block;
            position: fixed;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
            z-index: 2;
            background-size: 100% 4px, 6px 100%;
            pointer-events: none; /* Crucial: lets you click the buttons underneath! */
        }

        /* --- [ MAIN TERMINAL WINDOW ] --- */
        .terminal-container {
            width: 100%;
            max-width: 800px;
            border: 2px solid var(--term-green);
            background-color: #000;
            box-shadow: 0 0 15px var(--term-dark-green), inset 0 0 15px var(--term-dim);
            padding: 20px;
            position: relative;
            z-index: 1;
        }

        /* --- [ HEADER & ASCII ] --- */
        .ascii-art {
            white-space: pre;
            font-size: 10px;
            line-height: 12px;
            text-align: center;
            color: var(--term-dark-green);
            margin-bottom: 20px;
            text-shadow: 0 0 5px var(--term-dim);
        }

        .sys-header {
            border-bottom: 1px dashed var(--term-green);
            padding-bottom: 10px;
            margin-bottom: 20px;
            display: flex;
            justify-content: space-between;
            text-transform: uppercase;
            font-weight: bold;
        }

        /* --- [ BLINKING CURSOR EFFECT ] --- */
        .typewriter {
            display: inline-block;
        }
        .typewriter::after {
            content: '█';
            animation: blink 1s step-start infinite;
        }
        @keyframes blink {
            50% { opacity: 0; }
        }

        /* --- [ LAYOUT GRID ] --- */
        .grid-layout {
            display: grid;
            grid-template-columns: 200px 1fr;
            gap: 20px;
        }

        /* --- [ LEFT COLUMN: PFP & STATS ] --- */
        .profile-pic-container {
            border: 2px solid var(--term-green);
            padding: 5px;
            margin-bottom: 15px;
            background: var(--term-dim);
        }

        .profile-pic {
            width: 100%;
            aspect-ratio: 1/1;
            object-fit: cover;
            display: block;
            /* THE MAGIC FILTER: Turns ANY photo into a green phosphor image */
            filter: saturate(300%) contrast(1.5);
        }

        .stat-block {
            border: 1px solid var(--term-dark-green);
            padding: 10px;
            font-size: 12px;
            margin-bottom: 15px;
        }

        .stat-block div {
            margin-bottom: 5px;
        }

        /* --- [ RIGHT COLUMN: DATA & AUDIO ] --- */
        .data-panel h2 {
            margin-top: 0;
            font-size: 18px;
            background: var(--term-green);
            color: #000;
            padding: 2px 10px;
            display: inline-block;
        }

        p {
            line-height: 1.5;
            font-size: 14px;
        }

        .carousel {
            margin-top: 18px;
            display: flex;
            justify-content: center;
        }

        .carousel-frame {
            position: relative;
            width: min(100%, 320px);
            aspect-ratio: 1 / 1;
            border: 1px solid var(--term-green);
            background: var(--term-dim);
            overflow: hidden;
            box-shadow: 0 0 12px rgba(0, 191, 255, 0.2);
        }

        .carousel-slide {
            position: absolute;
            inset: 0;
            opacity: 0;
            transition: opacity 0.8s ease;
        }

        .carousel-slide.is-active {
            opacity: 1;
        }

        .carousel-slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            filter: saturate(250%) contrast(1.2);
        }

        .carousel-slide span {
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            padding: 10px 12px;
            background: linear-gradient(transparent, rgba(0, 0, 0, 0.85));
            color: var(--term-green);
            font-weight: bold;
            letter-spacing: 0.18em;
            text-align: center;
            text-shadow: 0 0 6px #000;
        }

        .hardware-image-wrap {
            margin-top: 18px;
            display: flex;
            justify-content: center;
        }

        .hardware-image-frame {
            position: relative;
            width: min(100%, 320px);
            aspect-ratio: 1 / 1;
            border: 1px solid var(--term-green);
            background: var(--term-dim);
            overflow: hidden;
            box-shadow: 0 0 12px rgba(0, 191, 255, 0.2);
        }

        .hardware-image {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            filter: saturate(250%) contrast(1.2);
        }

        .hardware-image-label {
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            padding: 10px 12px;
            background: linear-gradient(transparent, rgba(0, 0, 0, 0.85));
            color: var(--term-green);
            font-weight: bold;
            letter-spacing: 0.18em;
            text-align: center;
            text-shadow: 0 0 6px #000;
        }

        a {
            color: var(--term-green);
            text-decoration: none;
            border-bottom: 1px solid var(--term-dark-green);
        }

        a:hover {
            background: var(--term-green);
            color: #000;
        }

        /* --- [ FUNCTIONAL AUDIO TERMINAL ] --- */
        .audio-terminal {
            border: 1px solid var(--term-green);
            padding: 15px;
            margin-top: 20px;
            background: rgba(0, 255, 65, 0.05);
        }

        .audio-cmd-line {
            display: flex;
            align-items: center;
            gap: 15px;
            font-size: 14px;
        }

        .cmd-prompt {
            color: var(--term-dark-green);
        }

        .term-btn {
            background: transparent;
            color: var(--term-green);
            border: 1px solid var(--term-green);
            font-family: 'Courier New', Courier, monospace;
            padding: 2px 8px;
            cursor: pointer;
            text-transform: uppercase;
            font-weight: bold;
        }

        .term-btn:hover {
            background: var(--term-green);
            color: #000;
        }

        .term-btn:active {
            transform: translateY(1px);
        }

        /* --- [ MOBILE RESPONSIVENESS ] --- */
        @media (max-width: 720px) {
            body {
                padding: 10px;
                align-items: flex-start;
            }

            .terminal-container {
                max-width: calc(100vw - 20px);
                padding: 14px;
                box-sizing: border-box;
            }

            .sys-header {
                flex-direction: row;
                flex-wrap: wrap;
                align-items: center;
                justify-content: space-between;
                gap: 4px 8px;
            }

            .sys-header span {
                width: auto;
                white-space: nowrap;
                overflow: visible;
                text-overflow: clip;
                font-size: 11px;
            }

            .sys-header span:last-child {
                min-width: 0;
                margin-left: auto;
            }

            .typewriter {
                white-space: nowrap;
            }

            .grid-layout {
                grid-template-columns: 1fr;
                gap: 14px;
            }

            .left-col,
            .right-col {
                min-width: 0;
                width: 100%;
            }

            .data-panel h2 {
                display: block;
                max-width: 100%;
                font-size: 16px;
                padding: 2px 8px;
            }

            p,
            .stat-block,
            .audio-cmd-line {
                font-size: 11px;
                line-height: 1.45;
            }

            .audio-terminal {
                padding: 12px 10px;
                margin-top: 16px;
            }

            .audio-cmd-line {
                display: flex;
                flex-wrap: nowrap;
                gap: 3px;
                align-items: center;
                justify-content: flex-start;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
                font-size: 10px;
            }

            .audio-cmd-line .cmd-prompt {
                white-space: nowrap;
            }

            .audio-cmd-line > button,
            .audio-cmd-line > span {
                white-space: nowrap;
            }

            .audio-cmd-line .term-btn {
                padding: 1px 3px;
                flex: 0 0 auto;
            }

            .audio-cmd-line .term-btn:last-of-type {
                padding-left: 2px;
                padding-right: 2px;
            }

            .audio-cmd-line #vol-display {
                flex: 0 0 auto;
            }

            .carousel-frame {
                max-width: 100%;
            }

            .hardware-image-frame {
                max-width: 100%;
            }

            .carousel,
            .hardware-image-wrap {
                margin-top: 14px;
            }

            .ascii-art {
                display: none; /* Hide complex ASCII on tiny screens */
            }
        }
