/* roulang page: index */
:root {
            --primary: #1E2229;
            --secondary: #2C3E50;
            --accent: #E06D53;
            --accent-green: #4A7C59;
            --bg-light: #F8F9FA;
            --bg-dark: #111827;
            --text-dark: #374151;
            --text-gray: #6B7280;
            --border-light: rgba(0, 0, 0, 0.08);
            --border-dark: rgba(255, 255, 255, 0.1);
        }
        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }
        body {
            font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
            color: var(--text-dark);
            background-color: var(--bg-light);
            line-height: 1.75;
            letter-spacing: -0.01em;
            overflow-x: hidden;
        }
        a { text-decoration: none; color: inherit; }
        .section-py { padding-top: 5rem; padding-bottom: 5rem; }
        @media (min-width: 640px) { .section-py { padding-top: 6rem; padding-bottom: 6rem; } }
        .progress-ring-circle {
            transition: stroke-dashoffset 0.8s ease-in-out;
            transform: rotate(-90deg);
            transform-origin: 50% 50%;
        }
        .tab-btn.active {
            background-color: var(--accent);
            color: #ffffff;
            border-color: var(--accent);
        }
        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.35s ease-out;
        }
        .accordion-item.active .accordion-content {
            max-height: 200px;
        }
        .accordion-item.active .accordion-icon {
            transform: rotate(180deg);
        }
