/* roulang page: index */
:root {
            --bg-base: #0B0E14;
            --bg-surface: #141A23;
            --primary: #6366F1;
            --accent: #06B6D4;
            --text-main: #F8FAFC;
            --text-sub: #94A3B8;
            --border-subtle: rgba(71, 85, 105, 0.35);
        }
        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }
        body {
            background-color: var(--bg-base);
            color: var(--text-main);
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            line-height: 1.75;
            -webkit-font-smoothing: antialiased;
            overflow-x: hidden;
        }
        .glow-border {
            border: 1px solid rgba(99, 102, 241, 0.25);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .glow-border:hover {
            border-color: rgba(6, 182, 212, 0.6);
            box-shadow: 0 0 25px rgba(6, 182, 212, 0.15);
        }
        .hero-gradient {
            background: linear-gradient(180deg, rgba(11, 14, 20, 0.4) 0%, rgba(11, 14, 20, 0.95) 80%, #0B0E14 100%);
        }
        .custom-glass {
            background: rgba(20, 26, 35, 0.85);
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
        }
        .text-gradient {
            background: linear-gradient(135deg, #F8FAFC 20%, #06B6D4 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }
        .text-purple-gradient {
            background: linear-gradient(135deg, #818CF8 0%, #C084FC 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }
        .tab-btn.active {
            background: linear-gradient(135deg, #4F46E5, #06B6D4);
            color: #ffffff;
            border-color: transparent;
        }
