/* roulang page: index */
:root {
            --brand-primary: #059669;
            --brand-teal: #0f766e;
            --brand-dark: #064e3b;
            --brand-accent: #ea580c;
            --surface-bg: #f8fafc;
            --text-main: #0f172a;
            --text-muted: #475569;
        }
        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: var(--surface-bg);
            color: var(--text-main);
            overflow-x: hidden;
        }
        .hero-mesh {
            background-image: radial-gradient(at 0% 0%, rgba(5, 150, 105, 0.15) 0px, transparent 50%),
                              radial-gradient(at 100% 100%, rgba(15, 118, 110, 0.15) 0px, transparent 50%);
        }
        .card-shadow {
            box-shadow: 0 20px 25px -5px rgba(5, 150, 105, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.03);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .card-shadow:hover {
            transform: translateY(-4px);
            box-shadow: 0 25px 30px -5px rgba(5, 150, 105, 0.12), 0 12px 16px -6px rgba(0, 0, 0, 0.05);
        }
        .spy-nav-active {
            color: #059669;
            font-weight: 600;
            border-left-color: #059669;
        }
        /* 手风琴平滑展开 */
        .faq-answer {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.35s ease-out;
        }
        .faq-item.active .faq-answer {
            max-height: 240px;
        }
        .faq-item.active .faq-icon {
            transform: rotate(180deg);
        }
        /* 浮动导轨定位 */
        @media (max-width: 1280px) {
            .doc-spy-nav {
                display: none;
            }
        }
