/* roulang page: index */
:root {
            --primary: #00f5a0;
            --secondary: #7b2cbf;
            --bg-main: #0b0f17;
            --bg-sub: #121824;
            --card-bg: #161f30;
            --text-main: #ffffff;
            --text-muted: #94a3b8;
            --border-line: rgba(255, 255, 255, 0.08);
            --border-highlight: rgba(0, 245, 160, 0.4);
        }
        body {
            background-color: var(--bg-main);
            color: var(--text-main);
            font-family: -apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            overflow-x: hidden;
            line-height: 1.75;
        }
        .code-font {
            font-family: 'JetBrains Mono', 'Fira Code', monospace;
        }
        .glass-panel {
            background: rgba(22, 31, 48, 0.85);
            backdrop-filter: blur(12px);
            border: 1px solid var(--border-line);
        }
        .glow-hover:hover {
            border-color: var(--border-highlight);
            box-shadow: 0 0 25px rgba(0, 245, 160, 0.15);
        }
        .pulse-beacon {
            animation: beacon 2s infinite cubic-bezier(0.4, 0, 0.6, 1);
        }
        @keyframes beacon {
            0%, 100% { opacity: 1; transform: scale(1); }
            50% { opacity: .4; transform: scale(1.15); }
        }
