/* roulang page: index */
:root {
            --primary: #00F5A0;
            --primary-dark: #00D2B4;
            --accent: #6366F1;
            --bg-dark: #0A0D14;
            --bg-card: #111622;
            --text-main: #0F172A;
            --text-muted: #64748B;
            --border-light: #E2E8F0;
            --border-dark: rgba(255, 255, 255, 0.08);
        }
        body {
            font-family: 'Inter', system-ui, -apple-system, 'PingFang SC', 'Microsoft YaHei', sans-serif;
            background-color: #0A0D14;
            color: #F8FAFC;
            overflow-x: hidden;
        }
        .hash-code {
            font-family: 'JetBrains Mono', monospace;
        }
        .glow-cyan {
            box-shadow: 0 0 25px rgba(0, 245, 160, 0.18);
        }
        .glow-accent {
            box-shadow: 0 0 30px rgba(99, 102, 241, 0.2);
        }
        .custom-scrollbar::-webkit-scrollbar {
            width: 6px;
            height: 6px;
        }
        .custom-scrollbar::-webkit-scrollbar-thumb {
            background: rgba(255, 255, 255, 0.15);
            border-radius: 3px;
        }
        .glass-panel {
            background: rgba(17, 22, 34, 0.75);
            backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.08);
        }
        .dot-matrix {
            background-image: radial-gradient(rgba(0, 245, 160, 0.15) 1px, transparent 1px);
            background-size: 24px 24px;
        }
        .pulse-beacon {
            animation: beacon 2s infinite ease-in-out;
        }
        @keyframes beacon {
            0%, 100% { opacity: 1; transform: scale(1); }
            50% { opacity: 0.4; transform: scale(1.3); }
        }
