/* ============================================================
   内页（关于商会等）样式 —— 与首页共用 style.css 设计令牌
   仅补充内页专属布局：内页 Banner / 二级导航 / 内容面板
   ============================================================ */

/* ===== 内页 Banner ===== */
.inner-hero {
    position: relative;
    min-height: 420px;        /* 保证 Banner 高度 */
    padding: 130px 0 0;       /* 顶部留出页头空间 */
    color: #fff;
    overflow: hidden;
    /* 氛围背景图 + 深蓝渐变叠层，保证文字清晰且具科技严肃感 */
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/about.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}
/* 新闻资讯页 Banner 背景：与关于我们页完全一致的写法（路径相对 css 目录），
   移动端沿用下方 max-width 媒体查询的 cover 等比铺满，不变形 */
body.news-page .inner-hero {
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/news.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

/* 国际交流页 Banner 背景：与新闻资讯/关于我们页完全一致的写法（路径相对 css 目录），
   移动端沿用下方 max-width 媒体查询的 cover 等比铺满，不变形 */
body.international-page .inner-hero {
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/international.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

/* 品牌活动页 Banner 背景：与新闻资讯/国际交流页完全一致的写法（路径相对 css 目录），
   移动端沿用下方 max-width 媒体查询的 cover 等比铺满，不变形 */
body.brand-page .inner-hero {
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/brand.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

/* ===== 信用体系页 Banner 背景：蓝青科技氛围 ===== */
body.credit-page .inner-hero {
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/credit.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

/* ===== 标准发布页 Banner 背景（暂复用蓝青科技氛围图，后续可替换 standard.jpg） ===== */
body.standard-page .inner-hero {
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/standard.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

/* ===== 培训管理页 Banner 背景（暂复用蓝青科技氛围图，后续可替换 training.jpg） ===== */
body.training-page .inner-hero {
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/training.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

/* ===== 会员服务页 Banner 背景：会员社群主题，区别于关于商会页 ===== */
body.member-page .inner-hero {
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/member.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

/* ===== 电子头条页 Banner 背景：复用新闻资讯氛围图（资讯板块同源），后续可替换 headline.png ===== */
body.headline-page .inner-hero {
    background-image:
        linear-gradient(135deg, rgba(6,18,40,0.86) 0%, rgba(10,50,108,0.80) 50%, rgba(20,82,156,0.74) 100%),
        url(../images/news.jpg);
    background-size: cover, cover;
    background-position: center, center;
    background-repeat: no-repeat, no-repeat;
}

/* ===== 党建强会页：整体切换为党旗红 + 金色点缀（复用全站变量，仅本页生效） ===== */
body.dangjian-page {
    --primary-blue: #c8161d;   /* 党旗红 */
    --accent-blue: #e23b2e;    /* 亮红 */
    --light-blue: #fbecec;     /* 浅红底（悬停/激活） */
    --border-color: #f1dcdc;   /* 浅红描边 */
    --party-gold: #f7c948;     /* 党徽金 */
}
/* Banner：红色图片背景（dangjian.jpg，与 about/news 同为 1408x704）+ 红色/金色叠加，保留党建特色 */
body.dangjian-page .inner-hero {
    background-image:
        radial-gradient(circle at 86% 18%, rgba(247,201,72,0.18), transparent 45%),
        linear-gradient(135deg, rgba(150,12,18,0.55) 0%, rgba(193,24,29,0.45) 55%, rgba(220,60,45,0.40) 100%),
        url(../images/dangjian.jpg);
    background-size: cover, cover, cover;
    background-position: center, center, center;
    background-repeat: no-repeat, no-repeat, no-repeat;
}
/* 底部金线点缀（替换默认蓝线） */
body.dangjian-page .inner-hero::after {
    background: linear-gradient(90deg, var(--party-gold), #fff6d5, var(--party-gold));
}
/* 二级导航悬停底纹随主题变红 */
body.dangjian-page .subnav-link:hover {
    background: linear-gradient(90deg, rgba(200,22,29,0.10) 0%, rgba(200,22,29,0) 100%);
}
/* 吸顶导航整体改为党建红金风格 */
body.dangjian-page .subnav {
    border-color: #f1dcdc;
    box-shadow: 0 10px 30px rgba(156,15,21,0.10);
}
body.dangjian-page .subnav-title {
    background: linear-gradient(135deg, #8c0f15 0%, #c8161d 60%, #e23b2e 100%);
    border-bottom: 2px solid var(--party-gold);
}
/* 左侧发光条：党旗红 */
body.dangjian-page .subnav-link::before {
    background: linear-gradient(180deg, #c8161d, #e23b2e);
}
/* 悬停/激活加深红，金色箭头点缀 */
body.dangjian-page .subnav-link:hover {
    color: #c8161d;
}
body.dangjian-page .subnav-link:hover::after,
body.dangjian-page .subnav-link.active::after {
    color: var(--party-gold);
}
body.dangjian-page .subnav-link.active {
    background: var(--light-blue);
    color: #c8161d;
    font-weight: 600;
}
/* 移动端横向滑动条底部光条同样为红色 */
body.dangjian-page .subnav-link::before {
    background: linear-gradient(90deg, #c8161d, #e23b2e);
}
/* 缺图兜底渐变随主题变红 */
body.dangjian-page .news-card-img {
    background: linear-gradient(135deg, #8c0f15 0%, #c8161d 60%, #e23b2e 100%);
}
/* 顶部吸顶页头：党建页切换为党旗红渐变（覆盖默认深蓝） */
body.dangjian-page .header::before {
    background:
        url(../images/svg_1.svg),
        linear-gradient(135deg, rgba(120,12,16,0.96) 0%, rgba(193,24,29,0.94) 55%, rgba(220,60,45,0.92) 100%);
}
/* 移动端内页页头实色：党建页用红色渐变 */
@media (max-width: 768px) {
    body.dangjian-page .header {
        background: linear-gradient(135deg, rgba(120,12,16,0.98) 0%, rgba(193,24,29,0.96) 55%, rgba(220,60,45,0.95) 100%);
    }
}
/* 滚动吸顶时底部发光下边线：党建页由蓝色改为金色（呼应 banner 金线） */
body.dangjian-page .header::after {
    background: linear-gradient(90deg, transparent, rgba(247,201,72,0.6), rgba(247,201,72,0.9), rgba(247,201,72,0.6), transparent);
}
.inner-hero::after {
    content: '';
    position: absolute;
    left: 0; right: 0; bottom: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--accent-blue), #4fa3ff, var(--accent-blue));
}
.inner-hero .container {
    position: absolute;   /* 横向沿用 .container 的 1400px 居中边界（与 LOGO/正文左缘一致） */
    left: 0;
    right: 0;
    bottom: 44px;         /* 背景图底部稍上一点 */
    z-index: 1;
    text-align: left;     /* 文字靠左 */
}

/* 移动端内页页头：保持实色蓝条，避免透明悬浮在背景图上（PC 端维持原样：透明页头悬浮覆盖背景图，与首页一致） */
@media (max-width: 768px) {
    .inner-page .header::before {
        opacity: 1;                /* 移动端内页页头也始终实色 */
    }
}
.breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: rgba(255,255,255,0.7);
    margin-top: 18px; /* 位于标题下方 */
}
.breadcrumb a { color: rgba(255,255,255,0.7); }
.breadcrumb a:hover { color: #fff; }
.breadcrumb .sep { opacity: 0.5; }
.breadcrumb .current { color: #fff; }
.inner-hero h1 {
    font-size: 42px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1.2;
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 16px;
}
.inner-hero h1 .en {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    color: rgba(255,255,255,0.6);
}
.inner-hero .hero-desc {
    margin-top: 14px;
    max-width: 760px;
    color: rgba(255,255,255,0.82);
    font-size: 15px;
    line-height: 1.9;
}

/* ===== 内页布局：左侧二级导航 + 右侧内容 ===== */
.inner-layout {
    display: grid;
    grid-template-columns: 250px 1fr;
    gap: 48px;
    padding: 50px 0 80px;
    align-items: start;
}

/* 二级导航（桌面端吸顶，距顶栏留间距；文字锚点目录，更具设计感） */
.subnav {
    position: sticky;
    top: 120px; /* 与吸顶页头（约104px）保持约16px间距 */
    background: var(--bg-white);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}
.subnav-title {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 4px;
    text-indent: 2px;
    color: #fff;
    background: linear-gradient(135deg, var(--primary-blue) 0%, var(--accent-blue) 100%);
    padding: 20px 22px;
    position: relative;
}
.subnav-list {
    display: flex;
    flex-direction: column;
    padding: 6px 0;
}
.subnav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
    font-size: 17px;
    color: var(--text-primary);
    padding: 16px 18px 16px 22px;
    border-top: 1px solid var(--border-color); /* 子导航之间的横线 */
    border-radius: 0;
    position: relative;
    transition: var(--transition);
    overflow: hidden;
}
.subnav-list .subnav-link:first-child {
    border-top: none;
}
/* 科技感左侧光条：默认细线，悬停/激活加粗点亮 */
.subnav-link::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: var(--accent-blue);
    transform: scaleY(0);
    transform-origin: center;
    transition: transform 0.25s ease;
}
.subnav-link:hover::before,
.subnav-link.active::before {
    transform: scaleY(1);
}
/* 悬停时浅蓝科技底纹 */
.subnav-link:hover {
    background: linear-gradient(90deg, rgba(79,163,255,0.12) 0%, rgba(79,163,255,0) 100%);
    color: var(--primary-blue);
}
/* 右侧箭头：悬停/激活时滑入 */
.subnav-link::after {
    content: '\203A';
    font-size: 22px;
    line-height: 1;
    color: var(--accent-blue);
    opacity: 0;
    transform: translateX(-8px);
    transition: var(--transition);
}
.subnav-link:hover::after {
    opacity: 1;
    transform: translateX(0);
}
.subnav-link.active {
    background: var(--light-blue); /* 与标题区分：浅蓝底，不再用同款渐变 */
    color: var(--primary-blue);
    font-weight: 600;
}
.subnav-link.active::after {
    opacity: 1;
    transform: translateX(0);
    color: #fff;
}

/* 内容区 */
.subcontent {
    min-width: 0;
}
.subpanel {
    display: block;
    animation: fadeUp 0.4s ease;
    margin-bottom: 56px;
    scroll-margin-top: 100px; /* 锚点跳转时为吸顶页头留出空间 */
}
.subpanel:last-child {
    margin-bottom: 0;
}
@keyframes fadeUp {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}
/* 正文简介（右侧每个板块的简单几句话） */
.lead {
    margin: 4px 0 0;
    line-height: 1.9;
    color: #333;
    font-size: 15px;
}
/* 长图内容占位（程序自动生成后替换为真实长图） */
.longimg {
    margin-top: 20px;
    height: 440px;
    border-radius: var(--radius-md);
    border: 1px dashed var(--accent-blue);
    background:
        repeating-linear-gradient(45deg, rgba(79,163,255,0.06) 0 12px, transparent 12px 24px),
        var(--bg-light);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    font-size: 15px;
    letter-spacing: 1px;
}
.longimg span {
    padding: 10px 18px;
    background: rgba(255,255,255,0.75);
    border-radius: 6px;
}
.panel-head {
    margin-bottom: 24px;
}
.panel-head .panel-title { margin: 0; }
.panel-head .lead { margin: 14px 0 0; color: #6c7c92; }
.panel-title {
    font-size: 24px;
    font-weight: 700;
    color: var(--text-primary);
    position: relative;
    padding-left: 14px;
    line-height: 1.2;
}
.panel-title::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.25em;
    width: 4px;
    height: 0.75em;
    background: var(--primary-blue);
    border-radius: 2px;
}
.panel-sub {
    margin-top: 8px;
    color: var(--text-secondary);
    font-size: 14px;
    letter-spacing: 0.5px;
}

/* 章程文档排版 */
.charter-doc {
    margin-top: 28px;
}
.charter-chapter {
    margin-bottom: 34px;
}
.charter-chapter:last-child {
    margin-bottom: 0;
}
.charter-chapter-title {
    font-size: 19px;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 14px;
    padding: 12px 16px;
    border-left: 4px solid var(--primary-blue);
    background: linear-gradient(90deg, rgba(13, 71, 161, 0.07), transparent 72%);
    border-radius: 0 8px 8px 0;
}
.charter-article {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 12px 14px;
    border-radius: 8px;
}
.charter-article:nth-child(even) {
    background: #f5f8fc;
}
.article-no {
    flex: 0 0 auto;
    min-width: 52px;
    font-weight: 700;
    color: var(--primary-blue);
    font-size: 15px;
    line-height: 1.9;
}
.article-body {
    min-width: 0;
}
.article-text {
    margin: 0;
    line-height: 1.9;
    color: #3a4a5e;
    font-size: 15px;
}
.article-list {
    margin: 8px 0 0;
    padding-left: 4px;
    list-style: none;
}
.article-list li {
    position: relative;
    padding-left: 22px;
    line-height: 1.85;
    margin-bottom: 6px;
    color: #3a4a5e;
    font-size: 15px;
}
.article-list li::before {
    content: '';
    position: absolute;
    left: 6px;
    top: 0.82em;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--primary-blue);
    opacity: 0.55;
}

/* 正文排版 */
.prose p {
    margin-bottom: 16px;
    line-height: 1.9;
    color: #333;
    font-size: 15px;
}
.prose strong {
    color: var(--primary-blue);
}

/* 数据指标 */
.stat-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin: 28px 0;
}
.stat-card {
    background: var(--bg-light);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    padding: 22px 18px;
    text-align: center;
    transition: var(--transition);
}
.stat-card:hover {
    border-color: var(--accent-blue);
    box-shadow: var(--shadow-sm);
}
.stat-num {
    font-size: 30px;
    font-weight: 800;
    color: var(--primary-blue);
    line-height: 1.1;
}
.stat-label {
    margin-top: 6px;
    font-size: 13px;
    color: var(--text-secondary);
}

/* 通用卡片网格 */
.card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 8px;
}
.info-card {
    background: var(--bg-white);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    padding: 22px;
    transition: var(--transition);
}
.info-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-3px);
    border-color: var(--accent-blue);
}
.info-card h4 {
    font-size: 17px;
    color: var(--primary-blue);
    margin-bottom: 10px;
}
.info-card p {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.7;
}

/* 领导 / 常务理事 人物卡 */
.leader-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.leader-card {
    background: var(--bg-white);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    padding: 24px 18px;
    text-align: center;
    transition: var(--transition);
}
.leader-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-3px);
}
.leader-avatar {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    margin: 0 auto 14px;
    background: linear-gradient(135deg, var(--primary-blue), var(--accent-blue));
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    font-weight: 700;
}
.leader-name {
    font-size: 16px;
    font-weight: 700;
    color: var(--text-primary);
}
.leader-title {
    font-size: 13px;
    color: var(--text-secondary);
    margin-top: 4px;
}

/* 组织架构 两栏 */
.org-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
}
.org-col h4 {
    font-size: 16px;
    color: var(--primary-blue);
    margin-bottom: 12px;
    border-left: 3px solid var(--primary-blue);
    padding-left: 10px;
}
.org-list li {
    padding: 10px 0;
    border-bottom: 1px dashed var(--border-color);
    font-size: 14px;
    color: #333;
    display: flex;
    justify-content: space-between;
    gap: 12px;
}
.org-list li span:last-child {
    color: var(--text-muted);
    flex-shrink: 0;
}

/* 联系我们 */
.contact-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}
.contact-card {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    background: var(--bg-light);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md);
    padding: 18px;
    transition: var(--transition);
}
.contact-card:hover {
    border-color: var(--accent-blue);
}
.contact-card .ic {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--light-blue);
    color: var(--primary-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.contact-card .ct-label {
    font-size: 13px;
    color: var(--text-muted);
}
.contact-card .ct-value {
    font-size: 15px;
    color: var(--text-primary);
    font-weight: 500;
}
.map-box {
    height: 280px;
    border-radius: var(--radius-md);
    background: linear-gradient(135deg, #e8eef6, #dde7f3);
    border: 1px solid var(--border-color);
    position: relative;
    overflow: hidden;
}

/* 主按钮 */
.btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--primary-blue);
    color: #fff;
    padding: 12px 22px;
    border-radius: var(--radius-sm);
    font-size: 14px;
    font-weight: 500;
    transition: var(--transition);
}
.btn-primary:hover {
    background: var(--accent-blue);
}

/* ===== 响应式 ===== */
@media (max-width: 980px) {
    .inner-layout {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    /* 内页 Banner：移动端保持 cover 等比铺满（不变形），高度略收避免过长 */
    .inner-hero {
        min-height: 320px;
        padding-top: 96px;
    }
    .inner-hero .container {
        bottom: 32px;
    }
    .inner-hero h1 {
        font-size: 32px;
    }
    .inner-hero h1 .en {
        font-size: 13px;
    }
    .subnav {
        position: static;
        display: block;
    }
    .subnav-list {
        flex-direction: row;
        flex-wrap: nowrap;          /* 不换行，改为横向左右滑动 */
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0;
        scrollbar-width: none;      /* Firefox 隐藏滚动条 */
        /* 左右边缘渐隐遮罩：提示还有更多栏目可滑动，且避免首项/末项被裁切感 */
        -webkit-mask-image: linear-gradient(to right, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
        mask-image: linear-gradient(to right, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
    }
    .subnav-list::-webkit-scrollbar { display: none; } /* WebKit 隐藏滚动条 */
    .subnav-list .subnav-link:first-child { padding-left: 22px; }
    .subnav-list .subnav-link:last-child { padding-right: 22px; }
    .subnav-title {
        width: 100%;
    }
    .subnav-link {
        flex: 0 0 auto;             /* 不拉伸，保持内容宽度，可滑动 */
        white-space: nowrap;
        justify-content: center;
        padding: 16px 20px;
        border-top: none;
        border-left: 1px solid var(--border-color); /* 横向滑动时改用竖向分隔线 */
    }
    .subnav-list .subnav-link:first-child {
        border-left: none;
    }
    .subnav-link::before {          /* 横向时发光条改为底部 */
        top: auto;
        bottom: 0;
        left: 0; right: 0;
        width: auto;
        height: 3px;
        transform: scaleX(0);
        transform-origin: left;
    }
    .subnav-link::after {
        display: none; /* 移动端横向条不显示箭头 */
    }
    .stat-row {
        grid-template-columns: repeat(2, 1fr);
    }
    .card-grid,
    .leader-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .org-cols,
    .contact-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .inner-hero {
        min-height: 240px;
        padding: 84px 0 0;   /* 底部留 0，由容器 bottom 控制贴底间距 */
    }
    .inner-hero .container {
        bottom: 22px;        /* 小屏更贴近底部，保持与 PC 一致的底部构图 */
    }
    .inner-hero h1 {
        font-size: 26px;
    }
    .stat-row,
    .card-grid,
    .leader-grid {
        grid-template-columns: 1fr;
    }
}

/* 培训管理各页：缩小内页布局底部留白，让分页更贴近正文、远离页脚 */
.training-page .inner-layout {
    padding-bottom: 40px;
}

/* ===== 分页导航（培训管理各页通用） ===== */
.pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 28px 0 56px;
    padding: 0 16px;
}
.pagination .page-item,
.pagination .page-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 14px;
    font-size: 14px;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-sm);
    background: var(--bg-white);
    color: var(--text-secondary);
    text-decoration: none;
    transition: var(--transition);
}
.pagination .page-item:hover {
    border-color: var(--accent-blue);
    color: var(--primary-blue);
}
.pagination .page-item.active {
    background: var(--primary-blue);
    border-color: var(--primary-blue);
    color: #fff;
    font-weight: 600;
}
.pagination .page-item.disabled {
    opacity: 0.45;
    pointer-events: none;
}
.pagination .page-ellipsis {
    border: none;
    background: transparent;
    color: var(--text-muted);
    min-width: 24px;
    padding: 0;
}
@media (max-width: 560px) {
    .pagination { gap: 6px; margin: 24px 0 40px; }
    .pagination .page-item,
    .pagination .page-ellipsis { min-width: 36px; height: 36px; padding: 0 10px; font-size: 13px; }
}

/* ===== 前台列表公共紧凑分页 ===== */
.news-pager.compact-pager {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin: 40px 0 0;
    flex-wrap: wrap;
}
.news-pager.compact-pager .pager-pages {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.news-pager.compact-pager .pager-nav,
.news-pager.compact-pager .pager-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border: 1px solid var(--border-color);
    background: var(--bg-white);
    color: var(--text-primary);
    border-radius: var(--radius-sm);
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
    transition: var(--transition);
}
.news-pager.compact-pager .pager-nav:hover,
.news-pager.compact-pager .pager-num:hover {
    border-color: var(--accent-blue);
    color: var(--primary-blue);
}
.news-pager.compact-pager .pager-num.active {
    background: var(--primary-blue);
    color: #fff;
    border-color: var(--primary-blue);
    font-weight: 600;
}
.news-pager.compact-pager .pager-nav.is-disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}
.news-pager.compact-pager .pager-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 38px;
    padding: 0;
    color: var(--text-muted);
    border: 0;
    background: transparent;
}
.news-pager.compact-pager .pager-summary {
    display: inline;
    min-width: auto;
    height: auto;
    padding: 0;
    color: var(--text-muted);
    font-size: 13px;
    white-space: nowrap;
    border: 0;
    background: transparent;
}
@media (max-width: 560px) {
    .news-pager.compact-pager { gap: 8px; margin-top: 30px; }
    .news-pager.compact-pager .pager-pages {
        order: 3;
        width: 100%;
        justify-content: center;
        gap: 4px;
    }
    .news-pager.compact-pager .pager-nav,
    .news-pager.compact-pager .pager-num {
        min-width: 34px;
        height: 34px;
        padding: 0 9px;
        font-size: 13px;
    }
    .news-pager.compact-pager .pager-ellipsis { height: 34px; }
    .news-pager.compact-pager .pager-summary {
        order: 4;
        width: 100%;
        text-align: center;
    }
}

/* 培训列表分页沿用原版上下留白，避免分页紧贴页脚 */
body.training-page .news-pager.compact-pager {
    margin: 28px 0 56px;
    padding: 0 16px;
}

@media (max-width: 560px) {
    body.training-page .news-pager.compact-pager {
        margin: 24px 0 40px;
    }
}

/* ===== 列表无数据时的占位提示（栏目页通用） ===== */
.news-empty {
    padding: 60px 20px;
    text-align: center;
    color: var(--text-secondary);
    font-size: 15px;
    background: var(--bg-white);
    border: 1px dashed var(--border-color);
    border-radius: var(--radius-sm);
}
