/* roulang page: index */
:root {
            --primary: #0F52BA;
            --accent-cyan: #00B4D8;
            --accent-orange: #FF7A00;
            --bg-dark: #0B132B;
            --bg-light: #F8FAFC;
            --text-main: #1E293B;
            --text-muted: #64748B;
            --border-color: #E2E8F0;
        }
        body {
            font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
            color: var(--text-main);
            background-color: var(--bg-light);
            line-height: 1.75;
        }
        .grid-pattern {
            background-image: radial-gradient(rgba(15, 82, 186, 0.08) 1px, transparent 1px);
            background-size: 24px 24px;
        }
        .dark-grid-pattern {
            background-image: radial-gradient(rgba(0, 180, 216, 0.12) 1px, transparent 1px);
            background-size: 20px 20px;
        }
        .phone-frame {
            border: 10px solid #1E293B;
            border-radius: 40px;
            box-shadow: 0 25px 50px -12px rgba(15, 82, 186, 0.25);
        }
        .badge-pulse {
            animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
        }
        @keyframes pulse {
            0%, 100% { opacity: 1; }
            50% { opacity: .5; }
        }
