/* roulang page: index */
:root {
            --color-bg-primary: #FFFFFF;
            --color-bg-alt: #F8FAFC;
            --color-slate-dark: #0F172A;
            --color-brand-blue: #2563EB;
            --color-brand-cyan: #06B6D4;
            --color-text-main: #0F172A;
            --color-text-muted: #64748B;
            --radius-card: 12px;
        }
        html {
            scroll-behavior: smooth;
            scroll-padding-top: 88px;
        }
        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            color: var(--color-text-main);
            background-color: var(--color-bg-primary);
            line-height: 1.75;
            -webkit-font-smoothing: antialiased;
        }
        h1, h2, h3, h4, h5, h6 {
            line-height: 1.25;
            letter-spacing: -0.02em;
        }
        .custom-card {
            border-radius: var(--radius-card);
            border: 1px solid #E2E8F0;
            background-color: #FFFFFF;
            transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
        }
        .custom-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 32px -8px rgba(15, 23, 42, 0.08);
            border-color: #CBD5E1;
        }
        .gradient-border-cyan {
            border-left: 4px solid var(--color-brand-cyan);
        }
        .accordion-content {
            transition: max-height 0.3s ease-out, opacity 0.3s ease;
        }
        .interactive-btn {
            min-height: 44px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-weight: 600;
            transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .metric-mono {
            font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
        }
