/* roulang page: index */
:root {
            --color-primary: #0F243A;
            --color-accent: #00A896;
            --color-surface-dark: #09131F;
            --color-text-main: #0A1118;
            --color-text-body: #334155;
            --color-text-muted: #64748B;
            --border-light: #E2E8F0;
        }
        html { scroll-behavior: smooth; }
        body { color: var(--color-text-body); background-color: #F8FAFC; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif; }
        .hero-bg-overlay {
            background: linear-gradient(135deg, rgba(10, 23, 38, 0.94) 0%, rgba(15, 36, 58, 0.88) 100%), url('/assets/images/4c9fe059726622e2.jpg') center/cover no-repeat;
        }
        .section-header-badge {
            display: inline-flex;
            align-items: center;
            padding: 0.35rem 0.85rem;
            font-size: 0.75rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
            border-radius: 9999px;
            background-color: #E6F6F4;
            color: #00A896;
            margin-bottom: 0.75rem;
        }
        .badge-dark {
            background-color: rgba(0, 168, 150, 0.18);
            color: #2DD4BF;
            border: 1px solid rgba(45, 212, 191, 0.3);
        }
        .code-pill {
            font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
            font-size: 0.75rem;
        }
        .card-custom-hover {
            transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .card-custom-hover:hover {
            transform: translateY(-4px);
            border-color: #00A896;
            box-shadow: 0 12px 24px -8px rgba(15, 36, 58, 0.08);
        }
        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.35s ease-out;
        }
        .accordion-item.active .accordion-content {
            max-height: 500px;
        }
        .accordion-item.active .accordion-icon {
            transform: rotate(180deg);
        }
