/* roulang page: index */
:root {
            --pitch-bg: #0A0D14;
            --pitch-card: #0F1715;
            --signal-green: #00C853;
            --signal-glow: rgba(0, 200, 83, 0.25);
            --amber-highlight: #FF6D00;
            --text-primary: #1E293B;
            --text-secondary: #64748B;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: #F8FAFC;
            color: #0F172A;
            overflow-x: hidden;
        }

        .code-font {
            font-family: 'JetBrains Mono', 'Fira Code', monospace;
        }

        .green-glow {
            box-shadow: 0 0 25px rgba(0, 200, 83, 0.2);
        }

        .green-glow-sm {
            box-shadow: 0 0 12px rgba(0, 200, 83, 0.25);
        }

        .live-dot {
            display: inline-block;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background-color: #00C853;
            box-shadow: 0 0 8px #00C853;
            animation: pulse-dot 1.8s infinite;
        }

        @keyframes pulse-dot {
            0%, 100% {
                transform: scale(1);
                opacity: 1;
            }
            50% {
                transform: scale(1.4);
                opacity: 0.4;
            }
        }

        .dark-field-bg {
            background-color: #0A0D14;
            background-image: radial-gradient(rgba(0, 200, 83, 0.08) 1px, transparent 1px);
            background-size: 24px 24px;
        }

        .badge-live {
            background: rgba(255, 109, 0, 0.15);
            color: #FF6D00;
            border: 1px solid rgba(255, 109, 0, 0.3);
        }

        .terminal-scroll::-webkit-scrollbar {
            width: 5px;
        }
        .terminal-scroll::-webkit-scrollbar-thumb {
            background: #1E293B;
            border-radius: 4px;
        }
