/* roulang page: index */
:root {
            --color-primary: #0A252C;
            --color-primary-dark: #06171B;
            --color-accent: #059669;
            --color-accent-light: #10B981;
            --color-bg-light: #F8FAFC;
            --color-text-main: #0F172A;
            --color-text-muted: #475569;
            --color-border: rgba(226, 232, 240, 0.85);
            --shadow-card: 0 1px 3px rgba(0,0,0,0.05), 0 10px 25px -5px rgba(10,37,44,0.05);
        }
        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: var(--color-bg-light);
            color: var(--color-text-main);
            overflow-x: hidden;
        }
        .tabular-nums {
            font-variant-numeric: tabular-nums;
        }
        .glass-header {
            background: rgba(255, 255, 255, 0.92);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }
        .hero-mesh {
            background-image: radial-gradient(circle at 80% 20%, rgba(16, 185, 129, 0.08) 0%, transparent 50%),
                              radial-gradient(circle at 20% 80%, rgba(10, 37, 44, 0.04) 0%, transparent 60%);
        }
        .card-hover {
            transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
            border: 1px solid var(--color-border);
        }
        .card-hover:hover {
            transform: translateY(-4px);
            border-color: rgba(16, 185, 129, 0.5);
            box-shadow: 0 15px 30px -8px rgba(10, 37, 44, 0.1);
        }
        .glow-btn {
            box-shadow: 0 0 18px rgba(16, 185, 129, 0.35);
            transition: all 0.25s ease;
        }
        .glow-btn:hover {
            box-shadow: 0 0 24px rgba(16, 185, 129, 0.55);
            transform: translateY(-1px);
        }
        .glow-btn:active {
            transform: scale(0.98);
        }
        .accordion-content {
            transition: max-height 0.3s ease-out, opacity 0.3s ease-out;
            max-height: 0;
            opacity: 0;
            overflow: hidden;
        }
        .accordion-content.active {
            max-height: 500px;
            opacity: 1;
        }

/* roulang: framework shim */
/* 覆盖 Bootstrap 等对 a/btn 的全局默认，避免导航出现下划线/蓝链 */
.site-header a,.site-header a:hover,.navbar a,.navbar a:hover,.nav-links a,.nav-links a:hover,header nav a,header nav a:hover{text-decoration:none}
.site-header .btn,.navbar .btn,.nav-cta{text-decoration:none}
