/* 全局样式 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* 毛玻璃效果 */
.glass-effect {
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
}

/* 导航按钮默认样式：白色 */
.nav-btn {
    color: #ffffff !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    border-radius: 10px !important;
}

/* 悬浮：红色背景，无边框，圆角10 */
.nav-btn:hover {
    background-color: #D92121 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 10px !important;
}

/* 点击高亮样式：删除军绿椭圆（全部统一悬浮红底） */
/* 标题渐变文字 */
.text-red-green {
    color: #D92121;
}

/* 轮播遮罩 */
/* 轮播层叠：仅当前展示项可点，隐藏项穿透点击，避免透明层拦截按钮 */
.carousel-item { pointer-events: none; }
.carousel-item.opacity-100 { pointer-events: auto; }

.carousel-mask {
    background: linear-gradient(to bottom, rgba(42,70,58,0) 0%, rgba(42,70,58,0.8) 100%);
}

/* 卡片悬浮效果 */
.card-hover {
    /* 只过渡 transform 和阴影，边框不参与过渡 => 悬停直接切到 2px 粗红框，不经过 1px 细红框中间态 */
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* 白底悬浮（列表页/详情页）：红框+阴影，不移动；边框瞬间切换避免叠影 */
.card-hover:hover {
    border-color: #D92121 !important;
    border-width: 2px !important;
    box-shadow: 0 12px 24px -8px rgba(217, 33, 33, 0.12) !important;
}

/* 套系轮播内的卡片：悬停红框+阴影，不移动 */
.pkg-carousel-active > .card-hover:hover {
    transform: none;
}

/* 图片保持容器中心裁剪 */
.object-cover {
    object-position: center;
}

/* 滚动平滑 */
html {
    scroll-behavior: smooth;
}
/* 文章正文 - 支持 wangEditor 输出的样式 */
.article-body { line-height: 1.8; font-size: 15px; }
.article-body p { margin-bottom: 1em; }
.article-body img { max-width: 100%; height: auto; display: inline-block; border-radius: 8px; margin: 0 auto; }
.article-body p img { display: inline-block; }
.article-body ul, .article-body ol { padding-left: 2em; margin-bottom: 1em; }
.article-body blockquote { border-left: 4px solid #D92121; padding-left: 1em; margin: 1em 0; color: #666; }
.article-body table { width: 100%; border-collapse: collapse; margin-bottom: 1em; }
.article-body th, .article-body td { border: 1px solid #ddd; padding: 8px; }
.article-body th { background: #f5f5f5; font-weight: 600; }

/* ===== 活动详情页专属样式(自activity-detail.php抽取, 2026-08-09) ===== */
        /* 文章详情页白色内容框 */
        .detail-card {
            background: #fff;
            border-radius: 12px;
            box-shadow: 0 2px 12px rgba(0,0,0,0.05);
            overflow: hidden;
        }

        .detail-card .cover-hero {
            position: relative;
            overflow: hidden;
            height: 240px;
        }
        .detail-card .cover-hero img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        .detail-card .cover-hero .overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 60%);
        }
        .detail-card .cover-hero .hero-content {
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            padding: 24px 32px;
            color: #fff;
        }
        .detail-card .cover-hero .hero-content h1 {
            font-size: 28px;
            font-weight: 700;
            margin-bottom: 6px;
            text-shadow: 0 2px 8px rgba(0,0,0,0.3);
            text-align: left;
        }
        .detail-card .cover-hero .hero-content .hero-meta {
            font-size: 14px;
            opacity: 0.9;
            text-shadow: 0 1px 4px rgba(0,0,0,0.3);
        }

        .detail-body {
            padding: 32px;
        }
        .detail-body .info-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
            gap: 16px;
            margin-bottom: 28px;
            padding: 20px;
            background: #faf8f5;
            border-radius: 12px;
        }
        .detail-body .info-grid .info-item {
            text-align: center;
        }
        .detail-body .info-grid .info-item i {
            font-size: 20px;
            color: #D92121;
            margin-bottom: 6px;
        }
        .detail-body .info-grid .info-item .info-label {
            font-size: 12px;
            color: #aaa;
        }
        .detail-body .info-grid .info-item .info-value {
            font-size: 15px;
            font-weight: 600;
            color: #333;
            margin-top: 2px;
        }

        .detail-body .content-body {
            line-height: 1.8;
            color: #555;
        }
        .detail-body .content-body img {
            max-width: 100%;
            border-radius: 8px;
            margin: 16px 0;
        }



        /* 手机版 */
        .mobile-detail .mobile-cover {
            position: relative;
            height: 220px;
            overflow: hidden;
        }
        .mobile-detail .mobile-cover img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
        .mobile-detail .mobile-cover .overlay {
            position: absolute;
            inset: 0;
            background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, transparent 50%);
        }
        .mobile-detail .mobile-cover .hero-text {
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            padding: 16px 16px 14px;
            color: #fff;
        }
        .mobile-detail .mobile-cover .hero-text h1 {
            font-size: 20px;
            font-weight: 700;
            text-shadow: 0 2px 6px rgba(0,0,0,0.4);
        }
        .mobile-detail .mobile-cover .hero-text .hero-meta {
            font-size: 12px;
            opacity: 0.85;
            margin-top: 2px;
            text-shadow: 0 1px 3px rgba(0,0,0,0.3);
        }

        .mobile-detail .mobile-body {
            padding: 16px;
        }
        .mobile-detail .mobile-body .info-strip {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            padding: 14px 12px;
            background: #faf8f5;
            border-radius: 12px;
            margin-bottom: 20px;
        }
        .mobile-detail .mobile-body .info-strip .strip-item {
            flex: 1;
            min-width: 80px;
            text-align: center;
        }
        .mobile-detail .mobile-body .info-strip .strip-item i {
            font-size: 16px;
            color: #D92121;
        }
        .mobile-detail .mobile-body .info-strip .strip-item .strip-label {
            font-size: 11px;
            color: #aaa;
        }
        .mobile-detail .mobile-body .info-strip .strip-item .strip-value {
            font-size: 14px;
            font-weight: 600;
            color: #333;
        }

        .mobile-detail .mobile-body .content-body {
            line-height: 1.7;
            color: #555;
            font-size: 14px;
        }
        .mobile-detail .mobile-body .content-body img {
            max-width: 100%;
            border-radius: 8px;
            margin: 12px 0;
        }

        .mobile-detail .mobile-nav {
            display: flex;
            justify-content: space-between;
            gap: 8px;
            margin-top: 24px;
            padding-top: 16px;
            border-top: 1px solid #eee;
        }
        .mobile-detail .mobile-nav a {
            flex: 1;
            text-align: center;
            padding: 10px 0;
            border-radius: 8px;
            background: #D92121;
            color: #fff;
            font-size: 13px;
            text-decoration: none;
            transition: background 0.2s;
        }
        .mobile-detail .mobile-nav a:active { background: #b91c1c; }
        .mobile-detail .mobile-nav a.disabled {
            background: #eee;
            color: #ccc;
            pointer-events: none;
        }

        @media (max-width: 767px) {
            .detail-card .cover-hero { height: 220px; }
            .detail-card .cover-hero .hero-content { padding: 16px; }
            .detail-card .cover-hero .hero-content h1 { font-size: 20px; }
            .detail-body { padding: 16px; }
        }

/* ============================================================
   移动端增强层 mobile-enhance v1
   生成日期: 2026-09-15
   作用域: 仅 @media (max-width:767px)，PC 端不受任何影响
   注入点: style.css 末尾（全站 15 个前台页面的统一引用点）
   内容: 1)统一断点与防溢出 2)点击热区≥44px 3)过小字号修正
        4)iOS 输入缩放修正 5)标题收敛
   ============================================================ */
@media (max-width: 767px) {

    /* --- 0. 关闭安卓浏览器字体自动膨胀（font boosting）---
       强制 width=440 后，国产浏览器(QQ/vivo/UC)会自作主张放大文字，
       导致页脚 logo 换行、底部导航撑破容器。锁定为 100% 即可。 */
    html, body {
        -webkit-text-size-adjust: 100% !important;
        -moz-text-size-adjust: 100% !important;
        text-size-adjust: 100% !important;
    }

    /* --- 1. 统一断点 + 防横向溢出 --- */
    html, body { overflow-x: hidden; max-width: 100%; }
    img, video, iframe { max-width: 100%; }

    /* --- 2. 点击热区 ≥44px（WCAG 触控建议值）--- */
    /* 汉堡菜单按钮 */
    #menuBtn {
        min-width: 44px !important;
        min-height: 44px !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        margin-right: -8px;
    }
    /* 轮播左右箭头 */
    .carousel-prev, .carousel-next {
        min-width: 44px !important;
        min-height: 44px !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
    }
    /* 轮播圆点：视觉保持小圆点，用伪元素扩大热区 */
    .carousel-dot {
        position: relative;
        width: 10px !important;
        height: 10px !important;
        margin: 0 6px;
    }
    .carousel-dot::after {
        content: '';
        position: absolute;
        left: 50%; top: 50%;
        width: 44px; height: 44px;
        transform: translate(-50%, -50%);
    }
    /* 页脚快速导航按钮 */
    .footer-nav-first ul > li a {
        min-height: 44px !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }
    /* 页面内通用小按钮/链接行高兜底 */
    .nav-btn { min-height: 40px; display: inline-flex; align-items: center; }

    /* --- 3. 过小字号修正（原 10-11px → 12px）--- */
    [style*="font-size:10px"], [style*="font-size: 10px"],
    [style*="font-size:11px"], [style*="font-size: 11px"] {
        font-size: 12px !important;
    }

    /* --- 4. iOS 聚焦自动放大修正（输入框 ≥16px 不再触发缩放）--- */
    input[type="text"], input[type="tel"], input[type="email"],
    input[type="number"], input[type="password"], input[type="search"],
    input:not([type]), select, textarea {
        font-size: 16px !important;
    }

    /* --- 5. 标题收敛（首页轮播大标题保持原设计，不在此列）--- */
    h1.text-3xl { font-size: clamp(1.5rem, 6.5vw, 1.875rem) !important; line-height: 1.3 !important; }
    h2.text-\[clamp\(1\.8rem\,5vw\,3rem\)\] { font-size: clamp(1.4rem, 5.5vw, 1.8rem) !important; }

    /* --- 6. 移动端底部留白，避免内容贴底 --- */
    footer#contact { padding-bottom: 20px !important; }
}
