/* roulang page: index */
:root {
            --primary: #00A86B;
            --primary-hover: #008f5a;
            --secondary: #1A1A1A;
            --dark-card: #242424;
            --accent: #FF5722;
            --accent-hover: #e64a19;
            --bg-light: #F8F9FA;
            --bg-white: #FFFFFF;
            --text-main: #2D3748;
            --text-muted: #718096;
            --border: #E2E8F0;
            --radius-sm: 4px;
            --radius-md: 8px;
            --radius-lg: 12px;
            --container-w: 1200px;
            --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Microsoft YaHei", sans-serif;
            color: var(--text-main);
            background-color: var(--bg-white);
            line-height: 1.6;
            -webkit-font-smoothing: antialiased;
        }

        a {
            text-decoration: none;
            color: inherit;
            transition: all 0.25s ease;
        }

        img {
            max-width: 100%;
            height: auto;
            display: block;
        }

        .container {
            width: 100%;
            max-width: var(--container-w);
            margin: 0 auto;
            padding: 0 20px;
        }

        /* 顶部导航 */
        .site-header {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            z-index: 1000;
            background: rgba(26, 26, 26, 0.95);
            backdrop-filter: blur(8px);
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        }

        .nav-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            height: 72px;
        }

        .site-logo {
            font-size: 20px;
            font-weight: 700;
            color: #ffffff;
            letter-spacing: 0.5px;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .site-logo span {
            color: var(--primary);
        }

        .nav-menu {
            display: flex;
            align-items: center;
            list-style: none;
            gap: 24px;
        }

        .nav-menu a {
            color: #E2E8F0;
            font-size: 15px;
            font-weight: 500;
            padding: 8px 12px;
        }

        .nav-menu a:hover,
        .nav-menu a.active {
            color: var(--primary);
        }

        .nav-actions {
            display: flex;
            align-items: center;
            gap: 12px;
        }

        .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 10px 22px;
            font-size: 15px;
            font-weight: 600;
            border-radius: var(--radius-sm);
            cursor: pointer;
            border: 1px solid transparent;
            transition: all 0.2s ease;
        }

        .btn-primary {
            background-color: var(--primary);
            color: #ffffff;
        }

        .btn-primary:hover {
            background-color: var(--primary-hover);
            transform: scale(1.03);
        }

        .btn-accent {
            background-color: var(--accent);
            color: #ffffff;
        }

        .btn-accent:hover {
            background-color: var(--accent-hover);
            transform: scale(1.03);
        }

        .btn-outline {
            border-color: rgba(255, 255, 255, 0.4);
            color: #ffffff;
            background: transparent;
        }

        .btn-outline:hover {
            background: rgba(255, 255, 255, 0.1);
            border-color: #ffffff;
        }

        /* 布局通用组件 */
        section {
            padding: 90px 0;
            border-bottom: 1px solid var(--border);
        }

        .section-header {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 50px auto;
        }

        .section-tag {
            display: inline-block;
            font-size: 13px;
            font-weight: 700;
            color: var(--primary);
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 10px;
            background: rgba(0, 168, 107, 0.1);
            padding: 4px 12px;
            border-radius: 20px;
        }

        .section-title {
            font-size: 32px;
            font-weight: 700;
            color: var(--secondary);
            line-height: 1.3;
            margin-bottom: 16px;
        }

        .section-desc {
            font-size: 16px;
            color: var(--text-muted);
            line-height: 1.7;
        }

        /* 1. Hero 首屏 - 蓝图：直播预告封面 + 开播倒计时 + 提醒订阅 */
        .hero-section {
            padding-top: 150px;
            padding-bottom: 90px;
            background: linear-gradient(135deg, rgba(26, 26, 26, 0.95), rgba(15, 23, 42, 0.92)), url('/assets/images/智动AI---国家队级AI数字科技运动技术---水滴智店.webp') center/cover no-repeat;
            color: #ffffff;
            border-bottom: none;
        }

        .hero-grid {
            display: grid;
            grid-template-columns: 1.2fr 0.8fr;
            gap: 50px;
            align-items: center;
        }

        .hero-content h1 {
            font-size: 40px;
            font-weight: 800;
            line-height: 1.25;
            margin-bottom: 20px;
            color: #ffffff;
        }

        .hero-lead {
            font-size: 16px;
            color: #CBD5E1;
            margin-bottom: 30px;
            line-height: 1.8;
        }

        .hero-actions {
            display: flex;
            gap: 16px;
            margin-bottom: 40px;
        }

        .hero-badge-row {
            display: flex;
            gap: 20px;
            border-top: 1px solid rgba(255, 255, 255, 0.15);
            padding-top: 24px;
        }

        .hero-badge-item {
            font-size: 13px;
            color: #94A3B8;
        }

        .hero-badge-item strong {
            display: block;
            font-size: 18px;
            color: #ffffff;
            font-family: var(--font-mono);
        }

        /* 首屏右侧：现场赛事推流预告与倒计时看板 */
        .live-preview-card {
            background: rgba(36, 36, 36, 0.9);
            border: 1px solid rgba(255, 255, 255, 0.15);
            border-radius: var(--radius-md);
            padding: 24px;
            box-shadow: 0 20px 40px rgba(0,0,0,0.4);
        }

        .live-card-head {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 20px;
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
            padding-bottom: 12px;
        }

        .live-status-pill {
            background: rgba(255, 87, 34, 0.2);
            color: var(--accent);
            border: 1px solid var(--accent);
            font-size: 12px;
            padding: 3px 10px;
            border-radius: 12px;
            font-weight: 700;
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .live-status-pill::before {
            content: "";
            width: 8px;
            height: 8px;
            background: var(--accent);
            border-radius: 50%;
            display: inline-block;
        }

        .timer-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 10px;
            margin-bottom: 24px;
            text-align: center;
        }

        .timer-box {
            background: #111827;
            padding: 12px 6px;
            border-radius: var(--radius-sm);
            border: 1px solid rgba(255, 255, 255, 0.08);
        }

        .timer-box .num {
            font-family: var(--font-mono);
            font-size: 24px;
            font-weight: 700;
            color: #10B981;
            display: block;
        }

        .timer-box .label {
            font-size: 11px;
            color: #64748B;
        }

        .match-stream-preview {
            background: #182234;
            border-radius: var(--radius-sm);
            padding: 14px;
            margin-bottom: 20px;
        }

        .match-stream-preview .league-info {
            font-size: 12px;
            color: #94A3B8;
            margin-bottom: 8px;
        }

        .stream-teams {
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-weight: 600;
            font-size: 15px;
        }

        .stream-score {
            font-family: var(--font-mono);
            font-size: 20px;
            color: var(--primary);
        }

        /* 2. 倒计时与实时同步指标 (倒计时/数据指标条) */
        .metric-bar-section {
            background: #111827;
            padding: 40px 0;
            color: #ffffff;
            border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        }

        .metric-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 24px;
            text-align: center;
        }

        .metric-item .val {
            font-size: 38px;
            font-weight: 800;
            font-family: var(--font-mono);
            color: var(--primary);
            margin-bottom: 4px;
        }

        .metric-item .desc {
            font-size: 14px;
            color: #94A3B8;
        }

        /* 3. 活动亮点 / 核心卖点 */
        .highlight-section {
            background-color: var(--bg-light);
        }

        .tri-cards {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 30px;
        }

        .card {
            background: #ffffff;
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            padding: 32px 28px;
            transition: all 0.25s ease;
        }

        .card:hover {
            border-color: var(--primary);
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
            transform: translateY(-4px);
        }

        .card-icon {
            width: 48px;
            height: 48px;
            background: rgba(0, 168, 107, 0.12);
            color: var(--primary);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 20px;
            font-weight: bold;
            border-radius: var(--radius-sm);
            margin-bottom: 20px;
            font-family: var(--font-mono);
        }

        .card h3 {
            font-size: 20px;
            color: var(--secondary);
            margin-bottom: 12px;
        }

        .card p {
            font-size: 14px;
            color: var(--text-muted);
            line-height: 1.65;
        }

        /* 4. 礼包/权益 (数据接口能力矩阵) */
        .perks-section {
            background-color: #ffffff;
        }

        .split-feature-box {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 50px;
            align-items: center;
        }

        .split-img-wrap {
            border-radius: var(--radius-md);
            overflow: hidden;
            box-shadow: 0 16px 32px rgba(0,0,0,0.08);
            border: 1px solid var(--border);
        }

        .perk-checklist {
            list-style: none;
            margin-top: 24px;
        }

        .perk-checklist li {
            position: relative;
            padding-left: 28px;
            margin-bottom: 16px;
            font-size: 15px;
            color: var(--text-main);
        }

        .perk-checklist li::before {
            content: "✓";
            position: absolute;
            left: 0;
            top: 0;
            color: var(--primary);
            font-weight: bold;
        }

        /* 5. 玩法步骤 (系统接入与分发工作流) */
        .workflow-section {
            background-color: var(--bg-light);
        }

        .step-timeline-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            position: relative;
        }

        .step-card {
            background: #ffffff;
            border: 1px solid var(--border);
            padding: 24px;
            border-radius: var(--radius-md);
            position: relative;
        }

        .step-card .step-num {
            font-size: 32px;
            font-family: var(--font-mono);
            font-weight: 800;
            color: rgba(0, 168, 107, 0.25);
            margin-bottom: 10px;
        }

        .step-card h4 {
            font-size: 17px;
            color: var(--secondary);
            margin-bottom: 8px;
        }

        .step-card p {
            font-size: 13px;
            color: var(--text-muted);
            line-height: 1.6;
        }

        /* 6. 奖励预览 (技术规格与接口能力输出) */
        .specs-section {
            background-color: #ffffff;
        }

        .specs-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 24px;
        }

        .spec-item {
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            padding: 24px;
            background: #fafafa;
        }

        .spec-item h4 {
            font-size: 16px;
            color: var(--secondary);
            border-bottom: 1px solid var(--border);
            padding-bottom: 12px;
            margin-bottom: 14px;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

        .spec-item .badge {
            background: #E2E8F0;
            font-size: 11px;
            padding: 2px 8px;
            border-radius: 4px;
            color: #475569;
        }

        .spec-item p {
            font-size: 13px;
            color: var(--text-muted);
            line-height: 1.6;
        }

        /* 7. 深色案例区 (高并发处理验证) */
        .case-dark-section {
            background: #111827;
            color: #ffffff;
            border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        }

        .case-dark-section .section-title {
            color: #ffffff;
        }

        .case-dark-section .section-desc {
            color: #94A3B8;
        }

        .case-dashboard-mock {
            background: #1F2937;
            border: 1px solid #374151;
            border-radius: var(--radius-md);
            padding: 30px;
        }

        .dashboard-header-bar {
            display: flex;
            justify-content: space-between;
            align-items: center;
            border-bottom: 1px solid #374151;
            padding-bottom: 16px;
            margin-bottom: 24px;
        }

        .dash-terminal {
            font-family: var(--font-mono);
            font-size: 13px;
            color: #10B981;
            background: #0F172A;
            padding: 16px;
            border-radius: var(--radius-sm);
            line-height: 1.8;
            margin-bottom: 24px;
        }

        .dash-stat-row {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 20px;
        }

        .dash-stat-box {
            background: #111827;
            padding: 16px;
            border-radius: var(--radius-sm);
            border: 1px solid #374151;
        }

        .dash-stat-box span {
            font-size: 12px;
            color: #9CA3AF;
        }

        .dash-stat-box h5 {
            font-size: 22px;
            color: #ffffff;
            font-family: var(--font-mono);
            margin-top: 4px;
        }

        /* 8. 解决方案深拆 (数据采集与洗练方案) */
        .solution-section {
            background: #ffffff;
        }

        .reverse-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 50px;
            align-items: center;
        }

        /* 9. 接入模式 (SDK / WebSocket / RESTful) */
        .integration-section {
            background: var(--bg-light);
        }

        .integration-cards {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 24px;
        }

        .int-box {
            background: #ffffff;
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            padding: 28px;
        }

        .int-box .tag {
            font-family: var(--font-mono);
            font-size: 11px;
            background: #EEF2F6;
            color: var(--text-muted);
            padding: 2px 6px;
            border-radius: 4px;
        }

        .int-box h4 {
            font-size: 18px;
            margin: 12px 0 8px 0;
            color: var(--secondary);
        }

        .int-box p {
            font-size: 13px;
            color: var(--text-muted);
            line-height: 1.6;
        }

        /* 10. 对比差异 (传统自研爬虫 vs 平台托管方案) */
        .compare-section {
            background: #ffffff;
        }

        .compare-table {
            width: 100%;
            border-collapse: collapse;
            background: #ffffff;
            border-radius: var(--radius-md);
            overflow: hidden;
            box-shadow: 0 4px 16px rgba(0,0,0,0.03);
            border: 1px solid var(--border);
        }

        .compare-table th,
        .compare-table td {
            padding: 18px 24px;
            text-align: left;
            border-bottom: 1px solid var(--border);
            font-size: 14px;
        }

        .compare-table th {
            background: #F1F5F9;
            color: var(--secondary);
            font-weight: 700;
        }

        .compare-table tr:last-child td {
            border-bottom: none;
        }

        .compare-table td.brand-col {
            background: rgba(0, 168, 107, 0.04);
            color: var(--primary);
            font-weight: 600;
        }

        /* 11. 资讯 (行业动态与技术通报) */
        .news-section {
            background: var(--bg-light);
        }

        .news-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 24px;
        }

        .news-card {
            background: #ffffff;
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            overflow: hidden;
            display: flex;
            flex-direction: column;
        }

        .news-card img {
            height: 180px;
            width: 100%;
            object-fit: cover;
        }

        .news-body {
            padding: 20px;
            flex-grow: 1;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }

        .news-meta {
            font-size: 12px;
            color: var(--text-muted);
            margin-bottom: 8px;
        }

        .news-body h4 {
            font-size: 16px;
            color: var(--secondary);
            margin-bottom: 10px;
            line-height: 1.4;
        }

        .news-body p {
            font-size: 13px;
            color: var(--text-muted);
            line-height: 1.6;
        }

        /* 12. 口碑与评价 (社会认同与用户反馈) */
        .reviews-section {
            background: #ffffff;
        }

        .review-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
        }

        .review-card {
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            padding: 22px;
            background: #fafafa;
        }

        .review-card .stars {
            color: #F59E0B;
            font-size: 14px;
            margin-bottom: 10px;
        }

        .review-card p {
            font-size: 13px;
            color: #4B5563;
            line-height: 1.65;
            margin-bottom: 14px;
        }

        .review-author {
            display: flex;
            flex-direction: column;
        }

        .review-author strong {
            font-size: 13px;
            color: var(--secondary);
        }

        .review-author span {
            font-size: 11px;
            color: var(--text-muted);
        }

        /* 13. 异议拆解 / FAQ */
        .faq-section {
            background: var(--bg-light);
        }

        .faq-list {
            max-width: 860px;
            margin: 0 auto;
            display: flex;
            flex-direction: column;
            gap: 16px;
        }

        .faq-item {
            background: #ffffff;
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            padding: 24px;
        }

        .faq-item h4 {
            font-size: 16px;
            color: var(--secondary);
            margin-bottom: 10px;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .faq-item h4::before {
            content: "Q";
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 22px;
            height: 22px;
            background: rgba(0, 168, 107, 0.15);
            color: var(--primary);
            font-size: 12px;
            font-weight: 700;
            border-radius: 4px;
        }

        .faq-item p {
            font-size: 14px;
            color: var(--text-muted);
            line-height: 1.7;
            padding-left: 30px;
        }

        /* 14. 保障条 (SLA与服务承诺) */
        .assurance-bar {
            background: #ffffff;
            padding: 40px 0;
            border-bottom: 1px solid var(--border);
        }

        .assurance-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            text-align: center;
        }

        .assurance-item h5 {
            font-size: 16px;
            color: var(--secondary);
            margin-bottom: 4px;
        }

        .assurance-item p {
            font-size: 12px;
            color: var(--text-muted);
        }

        /* 15. 底部报名入口与收口行动区 (底部固定转化) */
        .cta-bottom-section {
            background: linear-gradient(135deg, #1A1A1A, #0F172A);
            color: #ffffff;
            padding: 80px 0;
            text-align: center;
            border-bottom: none;
        }

        .cta-box {
            max-width: 650px;
            margin: 0 auto;
        }

        .cta-box h3 {
            font-size: 30px;
            font-weight: 700;
            margin-bottom: 14px;
        }

        .cta-box p {
            font-size: 15px;
            color: #94A3B8;
            margin-bottom: 30px;
            line-height: 1.7;
        }

        .cta-form {
            display: flex;
            gap: 10px;
            justify-content: center;
        }

        .cta-form input[type="text"] {
            width: 65%;
            padding: 14px 18px;
            border-radius: var(--radius-sm);
            border: 1px solid rgba(255, 255, 255, 0.2);
            background: rgba(255, 255,255, 0.08);
            color: #ffffff;
            font-size: 14px;
            outline: none;
        }

        .cta-form input[type="text"]:focus {
            border-color: var(--primary);
            background: rgba(255, 255, 255, 0.12);
        }

        /* 统一页脚 */
        .site-footer {
            background: #0B0F19;
            color: #94A3B8;
            padding: 60px 0 30px 0;
            font-size: 13px;
        }

        .footer-grid {
            display: grid;
            grid-template-columns: 1.5fr 1fr 1fr;
            gap: 40px;
            margin-bottom: 40px;
        }

        .footer-logo {
            font-size: 18px;
            font-weight: 700;
            color: #ffffff;
            margin-bottom: 14px;
            display: inline-block;
        }

        .footer-logo span {
            color: var(--primary);
        }

        .footer-links {
            list-style: none;
        }

        .footer-links li {
            margin-bottom: 10px;
        }

        .footer-links a:hover {
            color: #ffffff;
        }

        .footer-bottom {
            border-top: 1px solid rgba(255, 255, 255, 0.08);
            padding-top: 24px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-size: 12px;
            color: #64748B;
        }

        /* 响应式断点 */
        @media (max-width: 1024px) {
            .hero-grid,
            .split-feature-box,
            .reverse-grid {
                grid-template-columns: 1fr;
                gap: 40px;
            }
            .step-timeline-grid,
            .review-grid {
                grid-template-columns: repeat(2, 1fr);
            }
            .footer-grid {
                grid-template-columns: 1fr 1fr;
            }
        }

        @media (max-width: 768px) {
            .site-header {
                position: static;
            }
            .nav-inner {
                height: auto;
                padding: 16px 0;
                flex-direction: column;
                gap: 12px;
            }
            .nav-menu {
                gap: 12px;
                flex-wrap: wrap;
                justify-content: center;
            }
            .hero-section {
                padding-top: 50px;
                padding-bottom: 60px;
            }
            .hero-content h1 {
                font-size: 28px;
            }
            .section-title {
                font-size: 24px;
            }
            .tri-cards,
            .specs-grid,
            .integration-cards,
            .news-grid,
            .metric-grid,
            .assurance-grid,
            .dash-stat-row {
                grid-template-columns: 1fr;
            }
            .step-timeline-grid,
            .review-grid {
                grid-template-columns: 1fr;
            }
            .cta-form {
                flex-direction: column;
            }
            .cta-form input[type="text"] {
                width: 100%;
            }
            .footer-grid {
                grid-template-columns: 1fr;
            }
            .footer-bottom {
                flex-direction: column;
                gap: 10px;
                text-align: center;
            }
        }
