/* roulang page: index */
:root {
            --primary-emerald: #10B981;
            --primary-emerald-dark: #047857;
            --accent-coral: #F97316;
            --accent-coral-dark: #EA580C;
            --bg-dark-forest: #0B1914;
            --bg-mint-soft: #F4F7F6;
            --text-main: #111827;
            --text-secondary: #4B5563;
            --border-light: #E5E7EB;
        }

        *, *::before, *::after {
            box-sizing: border-box;
        }

        body {
            font-family: var(--font-sans, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", sans-serif);
            color: var(--text-main);
            background-color: #FFFFFF;
            line-height: 1.7;
            -webkit-font-smoothing: antialiased;
        }

        .font-tabular {
            font-variant-numeric: tabular-nums;
        }

        /* 自定义微交互卡片 */
        .glass-bento {
            transition: transform 0.25s ease-out, box-shadow 0.25s ease-out, border-color 0.25s ease-out;
        }
        .glass-bento:hover {
            transform: translateY(-4px);
            border-color: #10B981;
            box-shadow: 0 16px 30px -6px rgba(16, 185, 129, 0.12);
        }

        /* 原生手风琴细节优化 */
        details summary::-webkit-details-marker {
            display: none;
        }
        details[open] summary .faq-icon {
            transform: rotate(180deg);
        }

        /* 轮播图视差指示器微动画 */
        @keyframes pulseProgress {
            0% { transform: scaleX(0); }
            100% { transform: scaleX(1); }
        }
        .carousel-indicator-active {
            transform-origin: left;
            animation: pulseProgress 5s linear infinite;
        }
