 @import url('static/css/29f3a5de1fe24620b877fc3e18b8eeab.css');
        
        body {
            font-family: 'Noto Sans SC', sans-serif;
            scroll-behavior: smooth;
        }
        
        .hero-gradient {
            background: linear-gradient(135deg, #1e3a8a 0%, #3b82f6 100%);
        }
        
        .card-hover {
            transition: all 0.3s ease;
        }
        
        .card-hover:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 25px -5px rgba(59, 130, 246, 0.4);
        }
        
        .btn-primary {
            background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%);
            transition: all 0.3s ease;
        }
        
        .btn-primary:hover {
            background: linear-gradient(135deg, #2563eb 0%, #1e3a8a 100%);
            transform: translateY(-2px);
        }
        
        .news-card {
            transition: all 0.3s ease;
        }
        
        .news-card:hover {
            transform: translateY(-3px);
        }
        
        .news-card:hover .news-title {
            color: #3b82f6;
        }
        
        .package-feature {
            transition: all 0.2s ease;
        }
        
        .package-feature:hover {
            background-color: rgba(59, 130, 246, 0.1);
        }
        
        .ai-animation {
            animation: pulse 2s infinite;
        }
        
        @keyframes pulse {
            0% {
                box-shadow: 0 0 0 0 rgba(59, 130, 246, 0.7);
            }
            70% {
                box-shadow: 0 0 0 10px rgba(59, 130, 246, 0);
            }
            100% {
                box-shadow: 0 0 0 0 rgba(59, 130, 246, 0);
            }
        }
        
        /* 响应式导航 */
        .mobile-nav {
            transform: translateX(-100%);
            transition: transform 0.3s ease-in-out;
        }
        
        .mobile-nav.active {
            transform: translateX(0);
        }
        
        /* 二维码弹窗样式 */
        /* 二维码弹窗默认隐藏 */
    .qrcode-popup {
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
        /* 关键：垂直方向不设置 top/bottom，等待 hover 时设置 bottom */
        bottom: auto;
    }

    /* 鼠标指向父容器时显示弹窗，并使其出现在按钮上方 */
    .qrcode-trigger:hover .qrcode-popup {
        opacity: 1;
        visibility: visible;
        bottom: 100%;          /* 弹窗底部对齐按钮顶部 */
        margin-bottom: 10px;   /* 向上偏移 10px 留出间距，可根据需要调整 */
    }
        /* 二维码弹窗样式2 */
        /* 二维码弹窗默认隐藏 */
    .qrcode-popup2 {
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
        /* 关键：垂直方向不设置 top/bottom，等待 hover 时设置 bottom */
    }

    /* 鼠标指向父容器时显示弹窗，并使其出现在按钮上方 */
    .qrcode-trigger:hover .qrcode-popup2 {
        opacity: 1;
        visibility: visible;
    }
        /* 骨架屏效果 */
        .skeleton {
            background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
            background-size: 200% 100%;
            animation: skeleton-loading 1.5s infinite;
        }
        
        @keyframes skeleton-loading {
            0% {
                background-position: 200% 0;
            }
            100% {
                background-position: -200% 0;
            }
        }
        
        /* 滚动动画 */
        .scroll-reveal {
            opacity: 0;
            transform: translateY(20px);
            transition: opacity 0.6s ease, transform 0.6s ease;
        }
        
        .scroll-reveal.active {
            opacity: 1;
            transform: translateY(0);
        }