/* ============================================================
   v2 首页样式（v2-home.css）
   ------------------------------------------------------------
   新方案：固定版心 1920px，内部 flex/grid 布局，全部用 px。
   Ctrl± 缩放时浏览器原生等比放大，天然协调。
   尺寸基于 1920px 设计稿（1:1 还原）。
   ============================================================ */

/* ===== 通用区块 ===== */
.v2-section {
    padding: 60px 0;
}

.v2-section-header {
    margin-top: 0;          /* 上边距调小 */
    margin-bottom: 60px;    /* 下边距调大 */
    text-align: center;
}

.v2-section-title {
    font-size: 24px;
    font-weight: 700;
    color: #1a5fb4;
    letter-spacing: 3px;
    margin-bottom: 8px;
}

.v2-section-subtitle {
    font-size: 40px;
    color: #333;
    font-weight: 700;
    margin-top: 4px;
}

/* ===== Banner 轮播 ===== */
/* 全宽背景（窗口 >1920 时延伸），高度固定 653px（1920 设计稿），图片 cover 居中 */
.v2-banner {
    position: relative;
    width: 100%;
    height: 653px;   /* 1920 设计稿的 banner 高度 */
    /* 头部是 relative 在文档流顶部，banner 紧随其后，不需要 margin-top */
    overflow: hidden;
}

.v2-banner-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease;
}

/* Banner slides 容器撑满 */
.v2-banner-slides {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.v2-banner-slide a {
    display: block;
    width: 100%;
    height: 100%;
}

.v2-banner-slide.active {
    opacity: 1;
    visibility: visible;
}

.v2-banner-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.v2-banner-dots {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 10;
}

.v2-banner-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.4);
    cursor: pointer;
    transition: all 0.3s ease;
}

.v2-banner-dot.active {
    background: #fff;
    width: 28px;
    border-radius: 5px;
}

.v2-banner-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    font-size: 18px;
    transition: background 0.3s ease;
}

.v2-banner-arrow:hover {
    background: rgba(255, 255, 255, 0.4);
}

.v2-banner-arrow.prev { left: 30px; }
.v2-banner-arrow.next { right: 30px; }

/* ===== 数字投稿系统 ===== */
.v2-submission {
    background: url('../images/submission-bg.png') center/cover no-repeat, #fff;
    padding: 60px 0;
}

.v2-submission-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);   /* 4 个卡片一行 */
    gap: 32px;
    /* 卡片贴两端：最左卡片贴版心左边，最右卡片贴版心右边，中间均分 */
}

.v2-submission-card {
    background: #fff;
    border: 1px solid var(--border-color);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
    width: 100%;
    max-width: 330px;   /* 设计稿卡片宽度，窄窗口随 grid 列弹性收缩 */
    height: 495px;   /* 330:495 比例 */
    padding: 24px 16px;   /* 卡片内边距调小，封面与卡片边距更紧凑 */
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    /* 默认卡片在列内居中 */
    justify-self: center;
}

/* 最左卡片贴左 */
.v2-submission-card:first-child {
    justify-self: start;
}

/* 最右卡片贴右 */
.v2-submission-card:last-child {
    justify-self: end;
}

.v2-submission-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    transform: translateY(-6px);
}

.v2-submission-cover {
    width: 88%;   /* 封面占比调大，与卡片边距更小 */
    aspect-ratio: 160 / 220;
    overflow: hidden;
    margin-bottom: 10px;   /* 与下方按钮间距调小 */
    /* 封面图增加明显阴影 */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25), 0 4px 10px rgba(0, 0, 0, 0.15);
}

.v2-submission-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.v2-know-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 16px;
    background: #c8c8c8;   /* 期刊名称背景色 */
    color: #333;
    border: 1px solid #ddd;
    border-radius: 20px;
    font-size: 16px;   /* 期刊名称字号 */
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.v2-know-more:hover {
    background: #b8b8b8;
    color: #1a5fb4;
}

/* ===== 数字出版服务 ===== */
.v2-publishing {
    background: url('../images/publishing-bg.png') center/cover no-repeat, #fff;
    padding: 60px 0;
}

.v2-publishing-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.v2-publishing-card {
    position: relative;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-radius: 8px;   /* 与会员卡片一致的圆角 */
}

/* 悬停效果：与数字会员服务卡片一致（上浮 + 加深阴影，无边框） */
.v2-publishing-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}

.v2-publishing-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 第1张跨2列（大图） */
.v2-publishing-card:nth-child(1) {
    grid-column: span 2;
    aspect-ratio: 40 / 13;
}

.v2-publishing-card:nth-child(n+2) {
    aspect-ratio: 20 / 13;
}

/* ===== 数字会员服务 ===== */
/* 外层限宽到版心内容宽（与其他 section 同级），背景不全拉伸 */
.v2-member {
    padding: 80px 0;
}

/* 蓝色背景框：固定 800px 高，内容垂直分布，背景不拉伸 */
.v2-member-box {
    width: 100%;
    max-width: 1664px;
    margin: 0 auto;
    height: 800px;   /* 整体高度 800px */
    background: url('../images/member-bg.png') center/cover no-repeat,
                linear-gradient(135deg, #1a5fb4 0%, #2a75d4 50%, #3584e4 100%);
    box-sizing: border-box;
}

/* 蓝色框内内容容器：标题在顶部，图片区域在剩余空间内垂直居中 */
.v2-member-box .v2-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-top: 60px;      /* 标题顶部间距，与其他板块一致 */
    padding-bottom: 60px;   /* 底部间距对称 */
    box-sizing: border-box;
}

/* 图片区域：占满剩余空间并垂直居中 */
.v2-member-box .v2-member-grid {
    flex: 1;
    display: grid;
    /* 按目标宽高分配列宽：好老师520 : 青年教师520 : 工具库335，高度统一305 */
    grid-template-columns: 520fr 520fr 335fr;
    gap: 55px;           /* 图片间距 */
    width: 85%;          /* 整体缩小，两侧留白 */
    max-width: 1400px;   /* 限制最大宽度，保持留白 */
    margin: 0 auto;
    align-content: center;   /* 图片行在剩余空间内垂直居中 */
}

.v2-member-box .v2-section-title { color: #0044bc; }
.v2-member-box .v2-section-subtitle { color: #223845; }

.v2-member-card {
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    align-items: center;
    /* 默认无效果 */
}

.v2-member-card img {
    width: 100%;
    height: auto;   /* 按图片自身比例完整显示，不裁切 */
    display: block;
}

.v2-member-card:hover {
    transform: translateY(-8px);
    /* 悬停时才显示白色发光 */
    box-shadow: 0 0 30px rgba(255, 255, 255, 0.6),
                0 0 65px rgba(255, 255, 255, 0.3);
}

/* ===== 学术支持 ===== */
.v2-academic {
    background: url('../images/publishing-bg.png') center/cover no-repeat, var(--bg-color);
    padding: 60px 0;
}

.v2-academic-content {
    display: grid;
    grid-template-columns: 1fr 1fr;   /* 弹性列宽 */
    gap: 60px;
    align-items: stretch;
}

.v2-panel {
    display: flex;
    flex-direction: column;
    aspect-ratio: 3 / 3.7;   /* 原版固定比例，保证照片有足够显示高度 */
    border: 1px solid var(--border-color);
    background: rgba(239, 239, 239, 0.5);
    min-width: 0;   /* grid item 防止内容溢出 */
    overflow: hidden;
}

.v2-panel-header {
    background: url('../images/expert-bg.png') center/cover no-repeat;
    padding: 0 24px;
    flex: 0 0 100px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.v2-panel-header h3 {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    line-height: 1.2;
    margin: 0;
}

.v2-panel-header h3:nth-child(2) {
    margin-top: 8px;
    font-size: 28px;
}

/* 专家智库：头像（固定 120px，与原版一致） */
.v2-expert-avatars {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 24px;
    padding: 24px;
    flex-shrink: 0;
}

/* 专家超过5个：分页切换模式（左右箭头 + 指示点 + 自动轮播） */
.v2-expert-avatars.paged {
    display: block;
    padding: 24px 44px 10px;
    position: relative;
}

/* 简单显隐切换：当前页显示，其余页隐藏（JS 也会内联控制 display，双保险） */
.v2-expert-avatars.paged .v2-expert-track {
    display: block;
}

.v2-expert-avatars.paged .v2-expert-page {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 24px;
}

/* 切换箭头（白色圆钮，hover 蓝底） */
.v2-expert-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid var(--border-color, #dcdfe6);
    background: #fff;
    color: #1a5fb4;
    font-size: 22px;
    line-height: 1;
    font-family: serif;
    cursor: pointer;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .12);
    transition: background .2s, color .2s;
}

.v2-expert-nav:hover:not([disabled]) {
    background: #1a5fb4;
    color: #fff;
    border-color: #1a5fb4;
}

.v2-expert-nav[disabled] {
    opacity: .35;
    cursor: default;
}

.v2-expert-nav-prev { left: 8px; }
.v2-expert-nav-next { right: 8px; }

/* 页码指示点 */
.v2-expert-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    padding: 12px 0 2px;
}

.v2-expert-dot {
    width: 8px;
    height: 8px;
    border-radius: 4px;
    background: #d0d4dc;
    cursor: pointer;
    transition: background .25s, width .25s;
}

.v2-expert-dot.active {
    width: 22px;
    background: #1a5fb4;
}


.v2-expert-avatar {
    width: 120px;          /* 原版 1920 设计稿头像直径 */
    max-width: 100%;
    aspect-ratio: 1;
    border-radius: 50%;
    overflow: hidden;
    background: url('../images/expert-avatar-bg.png') center/cover no-repeat;
    padding: 8px;
    cursor: pointer;
    justify-self: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.v2-expert-avatar img {
    width: 85%;            /* 原版头像图片占 85% */
    height: 85%;
    object-fit: cover;
    border-radius: 50%;
}

/* 头像占位符（无图时显示首字） */
.v2-avatar-ph {
    width: 85%;
    height: 85%;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 24px;
    font-weight: 600;
}

/* 头像激活态（原版蓝色高亮背景） */
.v2-expert-avatar.active {
    background: url('../images/expert-avatar-active.png') center/cover no-repeat;
}

/* ===== 专家链接样式重置（保持原样式，不变色、无下划线） ===== */
/* 头像链接 */
a.v2-expert-avatar {
    text-decoration: none;
    color: inherit;
    display: flex;   /* 保持 flex 布局（覆盖 a 默认 inline） */
}

/* 姓名条链接 */
.v2-name-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    text-decoration: none;
    color: inherit;   /* 继承姓名条白色 */
}

/* 专家介绍链接 */
.v2-expert-info-link {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: inherit;   /* 继承简介文字颜色 */
    cursor: pointer;
}

/* 专家详情：照片 46% + 简介 flex，底部带姓名条（与原版一致） */
.v2-expert-detail {
    display: flex;
    gap: 4%;
    flex: 1;
    min-height: 0;
    padding: 40px 24px 24px;
    overflow: hidden;
}

.v2-expert-photo {
    width: 46%;
    flex-shrink: 0;
    min-width: 0;
    display: flex;
    flex-direction: column;   /* 照片在上，姓名条在下 */
}

.v2-expert-photo-img {
    width: 100%;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

.v2-expert-photo-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 专家姓名条（原版蓝色背景条） */
.v2-expert-name {
    background: url('../images/expert-bg.png') center/cover no-repeat;
    color: #fff;
    font-size: 22px;           /* 原版姓名字号 */
    letter-spacing: 2px;
    min-height: 50px;          /* 原版名字条高度 */
    padding: 20px 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-shrink: 0;
}

/* 姓名条子元素 */
.v2-name-cn {
    font-weight: 350;
}

.v2-name-sep {
    opacity: 0.7;
    font-size: 14px;
}

.v2-name-pinyin {
    font-weight: 400;
    font-size: 14px;
    opacity: 0.9;
}

.v2-expert-info {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    font-size: 19px;           /* 原版简介字号（1920下 1vw≈19.2px） */
    line-height: 2.1;
    color: #333;
    position: relative;
}

/* 简介滚动内层（自动上滚主体） */
.v2-expert-info-inner {
    transition: transform 0.1s linear;
    will-change: transform;
}

.v2-expert-info-inner p {
    margin-bottom: 18px;
    text-indent: 2em;
}

.v2-expert-info-inner p:last-child {
    margin-bottom: 0;
}

/* 学术平台：按钮 + 详情 */
.v2-platform-btns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 24px;
    flex-shrink: 0;
    background: rgba(239, 239, 239, 0.5);
}

.v2-platform-btn {
    aspect-ratio: 3.6 / 1;
    background: url('../images/platform-btn-bg.png') center/cover no-repeat;
    border-radius: 999px;
    font-size: 19px;             /* 原版按钮字号（1920下 1vw≈19.2px） */
    color: #000;
    cursor: pointer;
    min-width: 0;
    overflow: hidden;
    text-decoration: none;   /* 链接无下划线 */
    display: flex;
    justify-content: center;
    text-align: center;
    /* 内边距把文字块定位到按钮可视区（背景图阴影区上方），单行/双行居中一致 */
    padding: 8px 12px 14px;
    line-height: 1.3;
}

/* 文字块：填满按钮内容区，内部垂直居中（单行/双行视觉中心一致） */
.v2-platform-btn .v2-platform-btn-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 0;
    height: 100%;
}

.v2-platform-btn:hover,
.v2-platform-btn.active {
    background: url('../images/platform-btn-hover.png') center/cover no-repeat;
    color: #fff;
}

/* 按钮链接保持原颜色 */
a.v2-platform-btn {
    color: #000;
}

a.v2-platform-btn:hover,
a.v2-platform-btn.active {
    color: #fff;
}

.v2-platform-detail {
    flex: 1;
    min-height: 0;
    /* 背景块与按钮区同宽、底部对齐：margin 只保留下边距，padding 内缩文字 */
    margin: 0 0 24px;
    padding: 24px;
    background: rgba(239, 239, 239, 0.5);
    overflow: hidden;
    font-size: 19px;           /* 原版详情字号（1920下 1vw≈19.2px） */
    line-height: 2.1;
    color: #333;
    position: relative;
    /* 背景块占满 flex 剩余高度，底部与 panel 底边保持 24px 间距 */
    display: flex;
    flex-direction: column;
}

/* 平台简介滚动内层：占满详情区剩余高度，背景色一致 */
.v2-platform-detail-inner {
    transition: transform 0.1s linear;
    will-change: transform;
    flex: 1;
    min-height: 0;
}

.v2-platform-detail-inner p {
    margin-bottom: 18px;
    text-indent: 2em;
}

.v2-platform-detail-inner p:last-child {
    margin-bottom: 0;
}

/* ===== 数字信息 ===== */
.v2-info {
    background: #e6e6e6;
    padding: 60px 0;
}

.v2-info-content {
    display: grid;
    grid-template-columns: 48% 48%;
    gap: 4%;
}

.v2-news-list {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.v2-news-item {
    flex: 1;
    padding: 22px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    cursor: pointer;
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.v2-news-item:hover {
    transform: translateX(6px);
}

.v2-news-item h4 {
    font-size: 18px;
    font-weight: normal;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.v2-news-item:hover h4 { color: #1a5fb4; }

.v2-news-date {
    font-size: 15px;
    color: var(--text-light);
    margin-top: 8px;
}

.v2-image-news {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    position: relative;
    display: flex;
    flex-direction: column;
}

/* 轮播单张：图片区（flex:1）+ 底部标题条 */
.v2-image-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s ease;
}

.v2-image-slide.active {
    opacity: 1;
    visibility: visible;
}

.v2-image-slide .v2-img-box {
    flex: 1;
    min-height: 0;
    overflow: hidden;
    display: block;
}

.v2-image-slide .v2-img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 无图占位 */
.v2-image-slide .v2-image-ph {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #1a5fb4, #3584e4);
    color: #fff;
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
    text-align: center;
}

/* 底部新闻标题条（参考原版灰色标题条） */
.v2-image-title {
    flex-shrink: 0;
    height: 48px;
    line-height: 48px;
    background: #666;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    padding: 0 20px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 轮播箭头 */
.v2-image-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.3);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    font-size: 14px;
    transition: background 0.3s ease;
}

.v2-image-arrow:hover { background: rgba(0, 0, 0, 0.55); }
.v2-image-arrow.prev { left: 12px; }
.v2-image-arrow.next { right: 12px; }

/* ===== 首页页脚（白色版，参考原版首页 home.css） ===== */
/* 内页页脚是深色版（v2-base.css），首页覆盖为白色 */
.v2-footer {
    background: url('../images/footer-bg.png') center/cover no-repeat;
}

.v2-footer .v2-footer-section h3,
.v2-footer .v2-footer-section p,
.v2-footer .v2-footer-section a {
    color: #fff;
}

.v2-footer .v2-footer-section a:hover {
    color: rgba(255, 255, 255, 0.8);
}

.v2-footer .v2-footer-bottom {
    border-top-color: rgba(255, 255, 255, 0.2);
    color: #fff;
}

.v2-more-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 18px 40px;
    margin-top: 30px;
    background: url('../images/more-info-bg.png') center/cover no-repeat;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
}

/* ===== 新媒体矩阵 ===== */
.v2-media {
    background: url('../images/media-bg.png') center/cover no-repeat, var(--bg-color);
    padding: 60px 0;
}

.v2-media-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 40px;
}

.v2-media-card {
    text-align: center;
    min-width: 0;
}

/* 翻转卡片容器 */
.v2-media-flip {
    aspect-ratio: 0.58 / 1;
    margin-bottom: 12px;
    perspective: 1000px;
}

.v2-flip-inner {
    position: relative;
    width: 100%;
    height: 100%;
    transition: transform 0.6s;
    transform-style: preserve-3d;
}

.v2-media-card:hover .v2-flip-inner {
    transform: rotateY(180deg);
}

/* 正/背面共用 */
.v2-flip-face {
    position: absolute;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    background: url('../images/media-card-bg.png') center/cover no-repeat;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* 背面（默认旋转 180°） */
.v2-flip-back {
    transform: rotateY(180deg);
}

/* 正面 logo 区 */
.v2-media-logo {
    height: 65%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.v2-media-logo img {
    width: 67%;
    object-fit: contain;
}

.v2-media-name {
    height: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #333;
}

/* 背面二维码区 */
.v2-media-qr {
    height: 65%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.v2-media-qr img {
    width: 67%;
    object-fit: contain;
    display: block;
}
