/* roulang page: index */
:root {
            --primary: #10B981;
            --primary-hover: #059669;
            --track-cyan: #06B6D4;
            --alert-orange: #F97316;
            --bg-dark: #0F141C;
            --bg-light: #F8FAFC;
            --text-main: #0F172A;
            --text-muted: #64748B;
        }

        body {
            font-family: system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            color: var(--text-main);
            background-color: var(--bg-light);
            line-height: 1.75;
            letter-spacing: -0.01em;
            overflow-x: hidden;
        }

        h1, h2, h3, h4, h5, h6 {
            line-height: 1.28;
            letter-spacing: -0.02em;
        }

        /* 战术网格背景纹理 */
        .tactical-grid {
            background-image: 
                linear-gradient(to right, rgba(16, 185, 129, 0.05) 1px, transparent 1px),
                linear-gradient(to bottom, rgba(16, 185, 129, 0.05) 1px, transparent 1px);
            background-size: 32px 32px;
        }

        .tactical-grid-dark {
            background-image: 
                linear-gradient(to right, rgba(6, 182, 212, 0.08) 1px, transparent 1px),
                linear-gradient(to bottom, rgba(6, 182, 212, 0.08) 1px, transparent 1px);
            background-size: 40px 40px;
        }

        /* 视频检测框指示线动画 */
        @keyframes scanline {
            0% { transform: translateY(-100%); }
            100% { transform: translateY(1000%); }
        }
        .ai-scanner {
            animation: scanline 4s linear infinite;
        }

        /* 平滑手风琴过渡 */
        .faq-panel {
            transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
        }

        /* 轮播屏过渡样式 */
        .hero-slide {
            transition: opacity 0.7s ease-in-out, transform 0.7s ease-in-out;
        }
        .hero-slide.inactive {
            opacity: 0;
            pointer-events: none;
            transform: scale(0.98);
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
        }
        .hero-slide.active {
            opacity: 1;
            pointer-events: auto;
            transform: scale(1);
            position: relative;
        }
