        /* =========================================
           CORE VARIABLES & RESET
           ========================================= */
        :root {
            --bg-deep: #050505;
            --bg-panel: rgba(20, 20, 25, 0.6);
            --bg-glass: rgba(255, 255, 255, 0.03);
            
            --accent-primary: #00f3ff; /* Cyan Electric */
            --accent-secondary: #bc13fe; /* Neon Purple */
            --accent-warn: #ff2a6d; /* Glitch Red */
            --accent-success: #05ff00; /* Terminal Green */
            
            --text-main: #e0e6ed;
            --text-muted: #6c757d;
            
            --font-main: 'Be Vietnam Pro', sans-serif;
            --font-code: 'JetBrains Mono', monospace;
            --font-display: 'Syncopate', sans-serif;

            --border-glass: 1px solid rgba(255, 255, 255, 0.08);
            --shadow-glow: 0 0 20px rgba(0, 243, 255, 0.15);
            
            --transition-smooth: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
            cursor: none; /* Custom cursor used */
        }

        body {
            background-color: var(--bg-deep);
            color: var(--text-main);
            font-family: var(--font-main);
            overflow: hidden; /* Hide scrollbars, custom scroll handled inside */
            height: 100vh;
            width: 100vw;
            font-size: 14px;
            line-height: 1.6;
        }

        a { text-decoration: none; color: inherit; }
        ul { list-style: none; }

        /* =========================================
           BACKGROUND & CANVAS FX
           ========================================= */
        #canvas-wrapper {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: -1;
            background: radial-gradient(circle at center, #0a0b10 0%, #000000 100%);
        }

        .noise-overlay {
            position: fixed;
            top: 0; left: 0; width: 100%; height: 100%;
            pointer-events: none;
            z-index: 9000;
            opacity: 0.03;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='1'/%3E%3C/svg%3E");
        }

        /* =========================================
           CUSTOM CURSOR
           ========================================= */
        #cursor-dot, #cursor-ring {
            position: fixed;
            top: 0; left: 0;
            transform: translate(-50%, -50%);
            border-radius: 50%;
            z-index: 9999;
            pointer-events: none;
        }
        #cursor-dot {
            width: 6px; height: 6px;
            background: var(--accent-primary);
        }
        #cursor-ring {
            width: 30px; height: 30px;
            border: 1px solid var(--accent-primary);
            transition: width 0.2s, height 0.2s, background-color 0.2s;
        }
        body:hover #cursor-ring.active {
            width: 50px; height: 50px;
            background: rgba(0, 243, 255, 0.1);
            border-color: var(--accent-secondary);
        }

        /* =========================================
           LOADER SCREEN
           ========================================= */
        #preloader {
            position: fixed;
            top: 0; left: 0; width: 100%; height: 100%;
            background: #000;
            z-index: 10000;
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
        }
        .equalizer {
            display: flex;
            gap: 5px;
            height: 60px;
            align-items: center;
        }
        .bar {
            width: 8px;
            background: var(--accent-primary);
            animation: equalize 1s infinite ease-in-out;
        }
        .bar:nth-child(2) { animation-delay: 0.1s; background: var(--accent-secondary); }
        .bar:nth-child(3) { animation-delay: 0.2s; background: var(--accent-primary); }
        .bar:nth-child(4) { animation-delay: 0.3s; background: var(--accent-warn); }
        .bar:nth-child(5) { animation-delay: 0.4s; background: var(--accent-primary); }
        
        @keyframes equalize {
            0%, 100% { height: 10px; }
            50% { height: 60px; box-shadow: 0 0 15px var(--accent-primary); }
        }
        .loader-text {
            margin-top: 20px;
            font-family: var(--font-display);
            letter-spacing: 4px;
            color: var(--text-muted);
            font-size: 12px;
            animation: pulse 2s infinite;
        }

        /* =========================================
           LAYOUT GRID (APP SHELL)
           ========================================= */
        .app-shell {
            display: grid;
            grid-template-columns: 280px 1fr 300px;
            grid-template-rows: 80px 1fr 60px;
            height: 100vh;
            gap: 15px;
            padding: 15px;
            opacity: 0; /* Hidden initially for animation */
            transition: opacity 1s ease;
        }

        /* =========================================
           HEADER (HUD)
           ========================================= */
        .header-hud {
            grid-column: 1 / -1;
            display: flex;
            justify-content: space-between;
            align-items: center;
            background: var(--bg-glass);
            backdrop-filter: blur(10px);
            border: var(--border-glass);
            border-radius: 12px;
            padding: 0 30px;
            position: relative;
            overflow: hidden;
        }
        .header-hud::before {
            content: '';
            position: absolute;
            bottom: 0; left: 0; width: 100%; height: 2px;
            background: linear-gradient(90deg, transparent, var(--accent-primary), transparent);
            animation: scanLine 4s linear infinite;
        }
        .brand {
            display: flex;
            align-items: center;
            gap: 15px;
        }
        .brand i {
            font-size: 24px;
            color: var(--accent-primary);
            text-shadow: 0 0 10px var(--accent-primary);
        }
        .brand-text h1 {
            font-family: var(--font-display);
            font-size: 20px;
            font-weight: 700;
            line-height: 1;
            letter-spacing: 2px;
        }
        .brand-text span {
            font-family: var(--font-code);
            font-size: 10px;
            color: var(--accent-secondary);
        }

        .nav-spectrum {
            flex-grow: 1;
            height: 40px;
            margin: 0 40px;
            display: flex;
            align-items: center;
            gap: 4px;
            opacity: 0.5;
            mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
        }
        .spec-bar {
            width: 4px;
            background: var(--text-muted);
            height: 10%;
            transition: height 0.1s;
            border-radius: 2px;
        }

        .header-actions {
            display: flex;
            gap: 20px;
            font-family: var(--font-code);
            font-size: 12px;
        }
        .status-badge {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 5px 12px;
            background: rgba(0,0,0,0.3);
            border-radius: 20px;
            border: 1px solid rgba(255,255,255,0.1);
        }
        .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--accent-success); box-shadow: 0 0 8px var(--accent-success); animation: pulse 2s infinite; }
        
        /* =========================================
           SIDEBAR LEFT (PROFILE RACK)
           ========================================= */
        .sidebar-left {
            grid-row: 2 / 3;
            background: var(--bg-panel);
            backdrop-filter: blur(12px);
            border: var(--border-glass);
            border-radius: 12px;
            padding: 25px;
            display: flex;
            flex-direction: column;
            gap: 25px;
            transform: perspective(1000px) rotateY(2deg);
            transition: var(--transition-smooth);
        }
        .sidebar-left:hover { transform: perspective(1000px) rotateY(0deg); }

        .profile-section {
            text-align: center;
            position: relative;
        }
        .avatar-glitch {
            width: 120px;
            height: 120px;
            margin: 0 auto 20px;
            position: relative;
            clip-path: polygon(10% 0, 100% 0, 100% 90%, 90% 100%, 0 100%, 0 10%);
            background: #000;
        }
        .avatar-glitch img {
            width: 100%; height: 100%; object-fit: cover;
            filter: grayscale(100%) contrast(1.2);
            transition: 0.3s;
        }
        .avatar-glitch:hover img {
            filter: grayscale(0%) contrast(1);
        }
        
        .profile-name {
            font-family: var(--font-display);
            font-size: 22px;
            margin-bottom: 5px;
            text-transform: uppercase;
            position: relative;
            display: inline-block;
        }
        .profile-name::after {
            content: attr(data-text);
            position: absolute;
            left: 2px; text-shadow: -1px 0 red; top: 0; color: white; background: transparent;
            overflow: hidden; clip: rect(0, 900px, 0, 0); animation: noise-anim 2s infinite linear alternate-reverse;
        }
        .profile-role {
            font-family: var(--font-code);
            font-size: 11px;
            color: var(--accent-primary);
            letter-spacing: 1px;
            border: 1px solid var(--accent-primary);
            padding: 2px 8px;
            display: inline-block;
            border-radius: 4px;
        }

        .bio-terminal {
            background: rgba(0,0,0,0.4);
            padding: 15px;
            border-radius: 6px;
            font-family: var(--font-code);
            font-size: 12px;
            color: #bbb;
            border-left: 2px solid var(--accent-secondary);
            height: 100px;
            overflow: hidden;
        }
        .typing-cursor::after {
            content: '_';
            animation: blink 1s step-end infinite;
        }

        .stats-rack {
            display: flex;
            flex-direction: column;
            gap: 15px;
            margin-top: auto;
        }
        .stat-item label {
            display: flex;
            justify-content: space-between;
            font-size: 10px;
            font-family: var(--font-code);
            margin-bottom: 4px;
        }
        .progress-bar {
            height: 6px;
            background: rgba(255,255,255,0.1);
            border-radius: 3px;
            overflow: hidden;
        }
        .fill {
            height: 100%;
            background: linear-gradient(90deg, var(--accent-primary), var(--accent-secondary));
            width: 0%;
            transition: width 1s ease-out;
        }

        .contact-btn {
            background: transparent;
            border: 1px solid var(--accent-primary);
            color: var(--accent-primary);
            padding: 12px;
            font-family: var(--font-display);
            font-weight: 700;
            cursor: none; /* using custom cursor */
            transition: 0.3s;
            text-align: center;
            clip-path: polygon(0 0, 100% 0, 100% 70%, 90% 100%, 0 100%);
        }
        .contact-btn:hover {
            background: var(--accent-primary);
            color: #000;
            box-shadow: var(--shadow-glow);
        }

        /* =========================================
           MAIN CENTER (THE PADS / MODULES)
           ========================================= */
        .main-stage {
            grid-column: 2 / 3;
            grid-row: 2 / 3;
            display: flex;
            flex-direction: column;
            gap: 20px;
            overflow-y: auto;
            padding-right: 5px;
        }
        
        /* Hide Scrollbar */
        .main-stage::-webkit-scrollbar { width: 4px; }
        .main-stage::-webkit-scrollbar-thumb { background: var(--accent-secondary); border-radius: 2px; }

        .stage-header h2 {
            font-family: var(--font-code);
            font-weight: 400;
            font-size: 16px;
            color: var(--text-muted);
            margin-bottom: 10px;
            display: flex;
            align-items: center;
            gap: 10px;
        }
        .stage-header h2::after {
            content: ''; flex-grow: 1; height: 1px; background: rgba(255,255,255,0.1);
        }

        .grid-modules {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
            gap: 20px;
        }

        /* THE CARD DESIGN - "DRUM PAD" STYLE */
        .module-pad {
            aspect-ratio: 1/1;
            background: linear-gradient(145deg, rgba(255,255,255,0.05) 0%, rgba(0,0,0,0.2) 100%);
            border: 1px solid rgba(255,255,255,0.05);
            border-radius: 12px;
            position: relative;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            transition: var(--transition-smooth);
            overflow: hidden;
            group;
        }
        .module-pad::before {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at center, var(--pad-color, var(--accent-primary)) 0%, transparent 70%);
            opacity: 0;
            transition: opacity 0.3s;
            z-index: 0;
        }
        .module-pad:hover {
            transform: translateY(-5px);
            border-color: var(--pad-color, var(--accent-primary));
            box-shadow: 0 5px 20px rgba(0,0,0,0.5);
        }
        .module-pad:hover::before { opacity: 0.15; }
        
        .pad-icon {
            font-size: 32px;
            color: var(--text-main);
            z-index: 2;
            margin-bottom: 10px;
            transition: 0.3s;
        }
        .pad-img {
            width: 40px; height: 40px;
            background-size: cover;
            background-position: center;
            border-radius: 6px;
            margin-bottom: 10px;
            z-index: 2;
        }
        .pad-label {
            font-family: var(--font-code);
            font-size: 11px;
            text-align: center;
            z-index: 2;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }
        
        /* Active State indicator (like a lit LED) */
        .pad-led {
            position: absolute;
            top: 10px; right: 10px;
            width: 6px; height: 6px;
            border-radius: 50%;
            background: #333;
            transition: 0.3s;
        }
        .module-pad:hover .pad-led {
            background: var(--pad-color, var(--accent-primary));
            box-shadow: 0 0 10px var(--pad-color, var(--accent-primary));
        }

        /* =========================================
           SIDEBAR RIGHT (TERMINAL / INFO)
           ========================================= */
        .sidebar-right {
            grid-column: 3 / 4;
            grid-row: 2 / 3;
            display: flex;
            flex-direction: column;
            gap: 15px;
        }
        
        .panel-box {
            background: rgba(10, 10, 12, 0.8);
            border: 1px solid #333;
            border-radius: 8px;
            padding: 0;
            overflow: hidden;
            display: flex;
            flex-direction: column;
        }
        .panel-header {
            background: #1a1a1a;
            padding: 8px 12px;
            font-family: var(--font-code);
            font-size: 10px;
            color: var(--text-muted);
            border-bottom: 1px solid #333;
            display: flex;
            justify-content: space-between;
        }
        
        /* Terminal Style */
        .terminal-content {
            padding: 15px;
            font-family: var(--font-code);
            font-size: 11px;
            color: var(--accent-success);
            height: 250px;
            overflow-y: auto;
        }
        .cmd-line { display: flex; gap: 5px; margin-top: 5px; }
        .cmd-input {
            background: transparent; border: none; color: #fff;
            width: 100%; font-family: inherit; font-size: inherit; outline: none;
        }

        .system-log {
            font-size: 10px; color: #888;
            line-height: 1.4;
        }
        .log-entry { margin-bottom: 4px; }
        .log-time { color: var(--accent-primary); margin-right: 5px; }

        /* =========================================
           FOOTER (PLAYBACK CONTROLS)
           ========================================= */
        .footer-control {
            grid-column: 1 / -1;
            grid-row: 3 / 4;
            background: var(--bg-panel);
            backdrop-filter: blur(10px);
            border-top: var(--border-glass);
            display: flex;
            align-items: center;
            padding: 0 30px;
            justify-content: space-between;
        }

        .now-playing {
            display: flex;
            align-items: center;
            gap: 15px;
            width: 300px;
        }
        .waveform-mini {
            width: 50px; height: 30px;
            display: flex; align-items: center; gap: 2px;
        }
        .wave-bar { width: 3px; background: var(--accent-secondary); height: 100%; animation: soundWave 0.5s infinite alternate; }
        
        .track-info marquee {
            font-family: var(--font-code);
            font-size: 12px;
            color: #fff;
            width: 200px;
        }

        .system-metrics {
            display: flex;
            gap: 30px;
            font-family: var(--font-code);
            font-size: 11px;
            color: var(--text-muted);
        }
        .metric span { color: var(--text-main); font-weight: bold; }

        /* =========================================
           ANIMATIONS
           ========================================= */
        @keyframes scanLine {
            0% { left: -100%; }
            100% { left: 100%; }
        }
        @keyframes pulse {
            0% { opacity: 0.5; }
            50% { opacity: 1; }
            100% { opacity: 0.5; }
        }
        @keyframes blink { 50% { opacity: 0; } }
        @keyframes noise-anim {
            0% { clip: rect(2px, 9999px, 86px, 0); }
            5% { clip: rect(66px, 9999px, 19px, 0); }
            10% { clip: rect(12px, 9999px, 12px, 0); }
            100% { clip: rect(89px, 9999px, 5px, 0); }
        }
        @keyframes soundWave {
            0% { height: 10%; }
            100% { height: 100%; }
        }

        /* Responsive */
        @media (max-width: 992px) {
            .app-shell {
                grid-template-columns: 1fr;
                grid-template-rows: 70px auto auto 60px;
                overflow-y: auto;
                height: auto;
                display: block;
            }
            .sidebar-left, .main-stage, .sidebar-right {
                grid-column: 1 / -1;
                margin-bottom: 20px;
            }
            .header-hud { position: sticky; top: 0; z-index: 100; margin-bottom: 20px;}
            .footer-control { position: fixed; bottom: 0; left: 0; width: 100%; z-index: 100;}
            body { overflow-y: auto; height: auto; padding-bottom: 70px; }
        }