/* ================= 全局重置 ================= */
* { margin: 0; padding: 0; box-sizing: border-box; outline: none; }
html, body {
    margin: 0 !important;
    padding: 0 !important;
}
/* 强制所有页面顶部无空白 */
.top-wrap {
    margin-top: 0 !important;
    padding-top: 0 !important;
    top: 0 !important;
}
body {
    font-family: "Microsoft YaHei", "PingFang SC", "Heiti SC", sans-serif;
    color: #333;
    background: #f5f7fa;
    line-height: 1.6;
    font-size: 14px;
    -webkit-font-smoothing: antialiased;
}
a { text-decoration: none; color: #333; transition: all 0.3s ease; }
a:hover { color: #0056b3; }
ul, ol, li { list-style: none; }
img { max-width: 100%; height: auto; display: block; }

/* ================= 布局容器 ================= */
.top-container, .nav-container, .news-container, .grid-container, .foot-content {
    width: 1400px; margin: 0 auto; position: relative;
}
@media (max-width: 1400px) { .top-container, .nav-container { width: 96%; } }
@media (max-width: 1200px) { .news-container, .grid-container, .foot-content { width: 96%; } }

/* ================= 首页顶部区域：全新设计 ================= */
/* 结构：滚动荣誉栏(top) + Logo左导航右(bottom) + Banner紧贴 */

/* 顶部区域容器 - 首页：完全透明，叠在banner上 */
.top-wrap { 
    position: absolute !important;      /* 绝对定位，叠在banner上方 */
    top: 0; left: 0;
    width: 100% !important;
    background: transparent !important; /* 完全透明 */
    z-index: 100 !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
}

/* ================= 荣誉栏固定包装器（独立一层，钉在第一屏最顶上） ================= */
.honor-bar-fixed {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 10000 !important;
    background: linear-gradient(
        135deg,
        rgba(10, 61, 124, 0.92) 0%,
        rgba(16, 80, 158, 0.92) 25%,
        rgba(21, 101, 192, 0.92) 50%,
        rgba(13, 71, 161, 0.92) 75%,
        rgba(8, 48, 107, 0.92) 100%
    ) !important;
    backdrop-filter: blur(16px) saturate(1.6) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.6) !important;
}
/* 荣誉栏自身：在fixed包装器内正常显示 */
.honor-bar {
    display: flex !important;
    align-items: center !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #fff !important;
    text-shadow: 0 1px 3px rgba(0,0,0,0.5) !important;
    padding: 6px 40px !important;
    white-space: nowrap !important;
    background: transparent !important;
    overflow: hidden !important;
}
.honor-bar-content {
    display: inline-block !important;
    animation: scrollHonor 20s linear infinite !important;
}
@keyframes scrollHonor {
    0% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}
/* 下滚后荣誉栏消失 */
.honor-bar-fixed.removed {
    display: none !important;
}

/* ===== 首页顶部区（导航栏主体）：透明叠在banner上方 ===== */
.top-wrap {
    position: absolute !important;
    top: 36px !important;  /* 紧挨荣誉栏下方 */
    left: 0 !important;
    right: 0 !important;
    z-index: 9999 !important;
    margin-top: 0 !important;  /* 清除文档流的margin */
    background: transparent !important;  /* 首页透明 */
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}
/* 去掉伪元素遮罩 */
.top-wrap::before { display: none !important; }

/* Logo + 导航栏 区域 */
.top-header {
    display: flex !important;
    align-items: flex-end !important;   /* 底边对齐 */
    justify-content: space-between !important;
    padding: 15px 40px 12px 0 !important;  /* 左边距归零，logo贴左 */
    gap: 30px !important;
    position: relative !important;
}

/* Logo区域 - 左边 */
.logo-area {
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: flex-end !important;   /* 贴底部 */
    padding: 0 !important;
    margin: 0 !important;
}
.logo-area img,
.logo img {
    width: 640px !important;              /* 首页Logo固定宽度：640px */
    height: 141px !important;             /* 首页Logo固定高度：141px */
    max-height: none !important;          /* 彻底取消max-height限制 */
    object-fit: contain !important;       /* 图片在框内等比缩放，不被拉伸 */
    filter: drop-shadow(0 1px 4px rgba(0,0,0,0.3)) !important;
}

/* 导航栏 - 右边 */
.nav-bar {
    flex: 1 !important;
    display: flex !important;
    align-items: flex-end !important;   /* 贴底部 */
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 0 0 2px 0 !important;      /* 下边距2px */
    background: none !important;
    min-width: 0 !important;            /* 防止flex子项溢出 */
    overflow: hidden !important;        /* 导航项超出时裁剪，不覆盖Logo */
}
.nav-container {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 搜索栏：首页隐藏 */
.search-area {
    display: none !important;
}

/* ===== 二级页面：顶部蓝色区域是页面一部分，不固定 ===== */
body:not(:has(.section-hero)) .top-wrap {
    background: linear-gradient(135deg, #0a3d7c 0%, #1565c0 50%, #0a3d7c 100%) !important;
    position: relative !important;
    z-index: 100 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.15) !important;
    margin-top: -40px !important;   /* 负边距上移，覆盖 body 顶部空白 */
    padding-top: 10px !important;    /* logo 区域下移 10px */
}

/* 关键修复：二级页面 body 顶部无空白 */
body:not(:has(.section-hero)) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
/* 确保页面顶部无空白：隐藏body第一个子元素之前的所有空白 */
body:not(:has(.section-hero)) > :first-child {
    margin-top: 0 !important;
}
body:not(:has(.section-hero)) .top-wrap::before { display: none !important; }

/* 二级页面：top-container 取消宽度限制 */
body:not(:has(.section-hero)) .top-container {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 二级页面：荣誉栏（静态，不滚动） */
body:not(:has(.section-hero)) .honor-bar {
    display: flex !important;
    position: relative !important;
    font-size: 15px !important;        /* 字体增大，更醒目 */
    font-weight: 500 !important;
    color: #fff !important;
    background: rgba(0,0,0,0.2) !important;
    padding: 6px 40px !important;
    animation: none !important;
}
body:not(:has(.section-hero)) .honor-bar-content {
    animation: none !important;
}

/* 二级页面：Logo + 导航 */
body:not(:has(.section-hero)) .top-header {
    display: flex !important;
    align-items: center !important;        /* 垂直居中 */
    justify-content: space-between !important;
    padding: 11px 40px !important;        /* 减少8px高度（上下各减4px） */
    gap: 30px !important;
}

/* 二级页面：Logo */
body:not(:has(.section-hero)) .logo-area {
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;       /* 垂直居中 */
    margin: 0 !important;
    position: relative !important;
}
body:not(:has(.section-hero)) .logo-area img,
body:not(:has(.section-hero)) .logo img {
    width: auto !important;               /* 原始宽度 */
    height: auto !important;               /* 原始高度 */
    max-width: none !important;            /* 取消最大宽度限制 */
    max-height: 100px !important;          /* logo高度100px */
    filter: drop-shadow(0 1px 4px rgba(0,0,0,0.3)) !important;
}

/* 二级页面：导航 */
body:not(:has(.section-hero)) .nav-bar {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;      /* 垂直居中 */
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 0 !important;               /* 清除padding */
    background: none !important;
}
body:not(:has(.section-hero)) .nav-container {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}
body:not(:has(.section-hero)) .nav_menustyle_1_1 > ul > li > a {
    height: 48px !important;
    line-height: 48px !important;
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    padding: 0 22px !important;
    text-shadow: 0 1px 4px rgba(0,0,0,0.7) !important;
}
body:not(:has(.section-hero)) .nav_menustyle_1_1 > ul > li > a:hover,
body:not(:has(.section-hero)) .nav_menustyle_1_1 > ul > li.current > a {
    color: #ffd700 !important;
    background: rgba(255,255,255,0.15) !important;
    border-radius: 6px !important;
}
body:not(:has(.section-hero)) .main-nav > li > a,
body:not(:has(.section-hero)) .main-nav > ul.fu > li > a {
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 600 !important;
}
body:not(:has(.section-hero)) .main-nav > li > a:hover,
body:not(:has(.section-hero)) .main-nav > ul.fu > li > a:hover {
    color: #ffd700 !important;
}

/* ================= 滚动后顶部栏收缩（参考武汉商学院） ================= */
/* --- 过渡动画 --- */
.top-wrap {
    transition: background-color 0.4s ease, box-shadow 0.4s ease;
}
.top-header {
    transition: padding 0.35s ease;
}
.logo-area img,
.logo img {
    transition: width 0.35s ease, height 0.35s ease, max-height 0.35s ease, filter 0.35s ease;
}
.search-area {
    transition: opacity 0.3s ease, max-height 0.3s ease, margin 0.3s ease;
    max-height: 60px;
    opacity: 1;
}
.honor-bar {
    transition: opacity 0.3s ease, max-height 0.3s ease;
    max-height: 40px;
    opacity: 1;
}
.nav-divider {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* --- 滚动后：毛玻璃固定导航（荣誉栏已消失，固定在顶部） --- */
.top-wrap.scrolled {
    position: fixed !important;
    top: 0 !important;  /* 荣誉栏消失后固定在顶部 */
    left: 0 !important;
    margin-top: 0 !important;  /* 清除首页的 margin-top */
    background: rgba(10, 61, 124, 0.72) !important;
    backdrop-filter: blur(14px) saturate(1.5) !important;
    -webkit-backdrop-filter: blur(14px) saturate(1.5) !important;
    box-shadow: 0 2px 18px rgba(0,0,0,0.15) !important;
    padding: 8px 30px !important;       /* 紧凑内边距 */
    width: 100% !important;
    max-width: 100% !important;
}
.top-wrap.scrolled .top-header {
    padding: 0 !important;
}
.top-wrap.scrolled::before {
    display: none !important;
}
/* logo 缩小，去掉阴影 */
.top-wrap.scrolled .logo-area img,
.top-wrap.scrolled .logo img {
    width: auto !important;                /* 滚动后宽度自适应 */
    height: 52px !important;               /* 滚动后Logo高度：52px */
    max-height: 52px !important;
    filter: none !important;
}
/* 滚动后搜索区：已废弃，隐藏即可 */
.top-wrap.scrolled .search-area {
    display: none !important;
}
/* 荣誉栏隐藏 */
.top-wrap.scrolled .honor-bar {
    opacity: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
}
/* 导航分隔线隐藏 */
.top-wrap.scrolled .nav-divider {
    opacity: 0 !important;
    height: 0 !important;
}
/* ================= Logo颜色切换：第一屏白字 / 滚动后恢复原色 ================= */
.logo-area img,
.logo img {
    transition: width 0.35s ease, height 0.35s ease, max-height 0.35s ease, filter 0.35s ease;
}
/* 第一屏（未滚动）：logo保持原色，加深阴影保证可读 */
.top-wrap:not(.scrolled) .logo-area img,
.top-wrap:not(.scrolled) .logo img {
    filter: drop-shadow(0 1px 4px rgba(0,0,0,0.5));
}
/* 滚动后：恢复正常颜色 */
.top-wrap.scrolled .logo-area img,
.top-wrap.scrolled .logo img {
    filter: none;
}

/* ================= 滚动后紧凑头部：Logo和导航调整 ================= */
.top-wrap.scrolled .logo-area {
    align-items: center !important;     /* Logo垂直居中 */
    padding-left: 30px !important;       /* 右移30px */
}
.top-wrap.scrolled .logo-area img,
.top-wrap.scrolled .logo img {
    margin-top: 0 !important;            /* 清除偏移，垂直居中 */
}
.top-wrap.scrolled .logo-area img,
.top-wrap.scrolled .logo img {
    height: 52px !important;               /* Logo再大一点：44px → 52px（覆盖上面所有） */
    max-height: 52px !important;
}
.top-wrap.scrolled .nav-bar {
    align-items: center !important;     /* 导航垂直居中 */
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.top-wrap.scrolled .nav-container {
    padding-bottom: 0 !important;
}
.top-wrap.scrolled .main-nav > li > a { 
    height: 14px !important;
    line-height: 14px !important;
    font-size: 12px !important;
}

/* --- 滚动后导航文字：白色（蓝底） --- */
.top-wrap.scrolled .main-nav > li > a,
.top-wrap.scrolled .main-nav > ul.fu > li > a,
.top-wrap.scrolled div[id*="nav"] > ul > li > a {
    color: #fff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.2) !important;
}
.top-wrap.scrolled .main-nav > li > a:hover,
.top-wrap.scrolled .main-nav > ul.fu > li > a:hover,
.top-wrap.scrolled div[id*="nav"] > ul > li > a:hover {
    color: #ffd700 !important;
    background: rgba(255,255,255,0.12) !important;
}
/* 下拉箭头也变深色 */
.top-wrap.scrolled .main-nav > li.has-sub > a::after,
.top-wrap.scrolled .main-nav > ul.fu > li.has-sub > a::after,
.top-wrap.scrolled ul.fu > li.has-sub > a::after {
    color: rgba(255,255,255,0.7) !important;
}

/* --- 滚动后下拉菜单：白底深色文字 --- */
.top-wrap.scrolled .main-nav li ul,
.top-wrap.scrolled .main-nav > ul.fu > li > ul,
.top-wrap.scrolled div[id*="nav"] > ul > li > ul,
.top-wrap.scrolled .main-nav ul.fu li ul.fu,
.top-wrap.scrolled .main-nav > li > ul.fu,
.top-wrap.scrolled ul.fu > li > ul.fu {
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(12px) !important;
    box-shadow: 0 8px 28px rgba(0,0,0,0.15) !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    border-radius: 0 0 10px 10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    min-width: 160px !important;
}
.top-wrap.scrolled .main-nav li ul li a,
.top-wrap.scrolled .main-nav > ul.fu > li > ul > li > a,
.top-wrap.scrolled div[id*="nav"] > ul > li > ul > li > a {
    color: #333 !important;
    text-shadow: none !important;
    font-size: 13px !important;
    padding: 8px 18px !important;
}
.top-wrap.scrolled .main-nav li ul li a:hover,
.top-wrap.scrolled .main-nav > ul.fu > li > ul > li > a:hover,
.top-wrap.scrolled div[id*="nav"] > ul > li > ul > li > a:hover {
    color: #0056b3 !important;
    background: rgba(0, 86, 179, 0.06) !important;
    padding-left: 26px !important;
}
.top-wrap.scrolled .main-nav li ul li,
.top-wrap.scrolled .main-nav > ul.fu > li > ul > li,
.top-wrap.scrolled div[id*="nav"] > ul > li > ul > li {
    border-bottom-color: rgba(0,0,0,0.06) !important;
}
/* 导航栏（透明，靠右对齐，字下沿和logo对齐） */
.nav-bar {
    flex: 1 !important;
    display: flex !important;
    align-items: flex-end !important;   /* 导航字下沿和logo对齐 */
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    box-shadow: none !important;
    position: relative;
    z-index: 1000;
    min-width: 0 !important;
    overflow: visible !important;
}
.nav-container {
    width: auto !important;
    max-width: none !important;
    margin-left: auto !important;       /* 导航靠右 */
    position: relative;
    z-index: 1001;
    padding: 0 !important;
    padding-bottom: 0 !important;       /* 字下沿和logo对齐 */
    box-sizing: border-box;
    background: transparent !important;
    border-radius: 0 !important;
    backdrop-filter: none !important;
}
.main-nav { 
    display: flex !important; 
    width: auto !important; 
    justify-content: flex-end;  /* 靠右对齐 */
    gap: 2px !important;         /* 栏目间距：缩小到2px */
}
/* 确保 VSB9 导航组件也靠右 */
div[id*="nav"] {
    display: flex !important;
    justify-content: flex-end !important;
}
div[id*="nav"] > ul {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 2px !important;  /* 栏目间距：缩小到2px */
    width: auto !important;
}
div[id*="nav"] > ul > li {
    flex: none;
    text-align: center;
}
/* 导航链接：高度减半（34→17），字体小一号（14→13px），精致 */
.main-nav > li, .main-nav > ul.fu > li, div[id*="nav"] > ul > li { 
    flex: none;  
    text-align: center; 
    position: relative;
    white-space: nowrap !important;
}
.main-nav > ul.fu > li > a, .main-nav > li > a, div[id*="nav"] > ul > li > a { 
    display: block !important; 
    height: auto !important;
    line-height: 1.4 !important; 
    color: #fff !important; 
    font-family: "Microsoft YaHei", "SimHei", sans-serif; 
    font-size: 14px !important;
    font-weight: 600;
    letter-spacing: 0.5px !important;
    padding: 6px 8px !important;
    text-shadow: 0 1px 4px rgba(0,0,0,0.7) !important;
    background: transparent !important;
    transition: all 0.25s ease !important;
    white-space: nowrap !important;
}
.main-nav > ul.fu > li > a:hover, .main-nav > li > a:hover, .main-nav > li.active > a,
div[id*="nav"] > ul > li > a:hover { 
    color: #ffd700 !important;
    background: rgba(255,255,255,0.12) !important;
    transform: none !important;
    box-shadow: none !important;
}

/* ===== 下拉菜单：深色半透明，居中对齐父菜单项 ===== */
.main-nav li ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);      /* 水平居中对齐父菜单项 */
    min-width: 160px;
    background: rgba(0, 30, 70, 0.92) !important;
    backdrop-filter: blur(12px);
    box-shadow: 0 8px 28px rgba(0,0,0,0.25) !important;
    border-radius: 0 0 10px 10px !important;
    overflow: visible;
    z-index: 999999 !important;
    padding: 6px 0;
    transform-origin: top center;
    animation: dropDown 0.25s ease-out;
    border: 1px solid rgba(255,255,255,0.1) !important;
}
@keyframes dropDown {
    from { opacity: 0; transform: translateX(-50%) translateY(-10px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}
@keyframes dropdownFadeIn {
    from { opacity: 0; transform: translateX(-50%) translateY(-8px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}
.main-nav li:hover > ul { display: block; }
.main-nav li ul li {
    flex: none;
    text-align: left;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}
.main-nav li ul li:last-child { border-bottom: none; }
.main-nav li ul li a {
    display: block;
    height: auto;
    line-height: 1.5;
    font-size: 13px !important;
    letter-spacing: 0.5px;
    color: #fff !important;
    text-shadow: none;
    padding: 8px 18px !important;
    background: transparent !important;
    transition: all 0.2s ease !important;
    border-radius: 0 !important;
}
.main-nav li ul li a:hover {
    background: rgba(255,255,255,0.15) !important;
    padding-left: 26px !important;
    color: #fff !important;
}
/* 有子栏目的菜单加向下箭头 */
.main-nav li.has-sub > a::after {
    content: '▼';
    font-size: 9px;
    margin-left: 6px;
    vertical-align: middle;
    opacity: 0.7;
}
/* 二级及更深菜单（如果有的话） */
.main-nav li ul li ul {
    top: 0;
    left: 100%;
    border-radius: 0 8px 8px 0;
}

/* 导航分隔线 */
.nav-divider {
    height: 3px;
    background: linear-gradient(90deg, #ffd700 0%, #ff6b6b 50%, #ffd700 100%);
    width: 100%;
}

/* ================= 第一屏 Banner（全屏，滚动后正常切换到第二屏） ================= */
/* Banner - 正常文档流，填满第一屏 */
/* aspect-ratio 方案：容器宽高比匹配 Banner 图片 1920×900，高度随宽度自适应。
   配合 object-fit: cover → 容器=图片比例 → 零裁切、零留白，类似壁纸填充。
   来源: MDN https://developer.mozilla.org/en-US/docs/Web/CSS/aspect-ratio
   兼容性: Chrome 88+ / Firefox 89+ / Safari 15+（caniuse.com，覆盖96%+用户） */
.section-hero { 
    width: 100% !important;
    aspect-ratio: 1920 / 900 !important;
    height: auto !important;            /* aspect-ratio 自动计算高度，不再硬编码视口高度 */
    position: relative;                /* 正常文档流 */
    z-index: 1 !important;
    overflow: hidden; 
    background: #0a3d7c;               /* Banner加载前/留白时的深蓝背景 */
    margin: 0 !important;
    margin-top: 36px !important;        /* 在荣誉栏下方开始 */
    padding: 0 !important;
}
/* 首页内容区域紧跟banner */
section.section-news {
    position: relative;
    z-index: 2;
    margin-top: 0;
}
/* 二级页面的页面内容紧跟顶部区域 */
section.section-page,
section.section-content {
    position: relative;
    z-index: 2;
    margin-top: 0;
}
/* ===== Banner 容器自适应：覆盖线上内联 1920px 硬编码 ===== */
/* 核心思路：不触碰 img 的 display 属性（JS靠 display:none/block 轮播），
   让 table/td 传递 .section-hero 的固定高度给 #flashBox 容器 */
.section-hero > table {
    width: 100% !important;
    height: 100% !important;
    border: none !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
}
.section-hero > table > tr {
    height: 100% !important;
}
.section-hero > table > tr > td {
    width: 100% !important;
    height: 100% !important;
    vertical-align: middle !important;
    text-align: center !important;
    padding: 0 !important;
    border: none !important;
}
/* Banner 主容器：铺满父 td，保持 position:relative 让内部绝对定位的 ul 正常工作 */
#flashBoxu_u3_ {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    margin: 0 auto !important;
    overflow: hidden !important;
}
/* Banner 图片：铺满容器，用 object-fit:cover 裁剪，
   不设 display 和 position，让 JS 正常控制轮播 */
#flashBoxu_u3_ img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* ===== 装饰横条：覆盖线上内联 1920px 硬编码 ===== */
/* 装饰条的 table/td 也需要铺满父 .decor-section */
.decor-section > table {
    width: 100% !important;
    height: 100% !important;
    border: none !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
}
.decor-section > table > tr {
    height: 100% !important;
}
.decor-section > table > tr > td {
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    border: none !important;
}
#flashBoxu_u4_,
#flashBoxu_u8_ {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    margin: 0 auto !important;
    overflow: hidden !important;
}
#flashBoxu_u4_ img,
#flashBoxu_u8_ img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* ================= 内页 Banner 隐藏 ================= */
/* 隐藏所有内页的页面 banner */
.page-banner {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
}
/* 【改2】左右透明翻页按钮 */
.banner-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 54px;
    height: 54px;
    background-color: rgba(255, 255, 255, 0.25);   /* 半透明白底 */
    backdrop-filter: blur(6px);                   /* 毛玻璃效果 */
    border: 1px solid rgba(255, 255, 255, 0.4);    /* 微光边框 */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    cursor: pointer;
    z-index: 10;
    opacity: 0;
    transition: all 0.35s ease;
    box-shadow: 0 2px 12px rgba(0,0,0,0.15);
    text-decoration: none;
}
.banner-arrow:hover {
    background-color: rgba(255, 255, 255, 0.55);
    transform: translateY(-50%) scale(1.1);
    box-shadow: 0 4px 20px rgba(0,86,179,0.25);
}
.banner-arrow-left {
    left: 28px;
}
.banner-arrow-right {
    right: 28px;
}
.section-hero:hover .banner-arrow {
    opacity: 1;
}
/* 【改2】Banner 指示器圆点 */
.banner-dots {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    background: transparent !important;  /* 透明背景 */
    padding: 0 !important;               /* 去掉padding */
    gap: 8px;
    z-index: 10;
}
.banner-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: rgba(255,255,255,0.45);
    border: 1px solid rgba(255,255,255,0.6);
    cursor: pointer;
    transition: all 0.3s ease;
}
.banner-dot.active {
    background-color: #fff;
    width: 24px;           /* 当前页圆条形 */
    border-radius: 4px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

/* ================= 第二屏：新闻枢纽 ================= */
.section-news { padding: 60px 0; background: linear-gradient(180deg, #fff 0%, #f8f9fa 100%); max-width: 100%; overflow: hidden; }

.decor-section { 
    width: 100%; 
    height: 120px !important;
    overflow: hidden; 
    margin-bottom: 35px; 
    border-radius: 8px; 
    line-height: 0;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
}
.decor-section img { 
    width: 100%; 
    height: 120px !important;
    object-fit: cover; 
    object-position: center;
}

.news-layout { display: flex; gap: 35px; height: 480px; }

.news-left { 
    flex: 2; 
    background: #f5f5f5;
    border-radius: 8px; 
    overflow: hidden; 
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
    border: 1px solid #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.news-left img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.news-right {
    flex: 1;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
    height: 480px;
    overflow: hidden;
}

.tab-header { 
    display: flex; 
    border-bottom: 2px solid #f0f0f0; 
    background: linear-gradient(180deg, #fafbfc 0%, #fff 100%); 
    flex-shrink: 0; 
}
.tab-header .tab-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 0;
    font-size: 17px;
    font-weight: bold;
    color: #666;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    white-space: nowrap;
    letter-spacing: 1px;
}
.tab-header .tab-btn:hover { 
    color: #0056b3; 
    background-color: #f5f8ff; 
}
.tab-header .tab-btn.active { 
    color: #0056b3; 
    border-bottom-color: #0056b3; 
    background-color: #fff;
    font-size: 18px;
}

.tab-content-wrapper { flex: 1; position: relative; overflow: hidden; background: #fff; }

.tab-content {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    padding: 20px 25px;
    overflow-y: auto;
    display: none;
    box-sizing: border-box;
}
.tab-content.active { display: block; z-index: 1; animation: fadeIn 0.3s ease; }

@keyframes fadeIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }

.tab-content ul, .tab-content li { margin: 0; padding: 0; list-style: none; }
.tab-content li {
    border-bottom: 1px dashed #e8e8e8;
    padding: 12px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 15px;
    transition: all 0.3s ease;
}
.tab-content li:hover {
    background: #f5f8ff;               /* 【改B/E】hover 时浅蓝背景 */
    padding-left: 8px;
}
.tab-content li:hover a {              /* 【改B】hover 时标题变蓝色 */
    color: #0056b3;
}
.tab-content li:last-child { border-bottom: none; }
.tab-content li a {
    color: #333; text-decoration: none;
    flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-right: 12px;
    transition: color 0.3s ease;
}
.tab-content li a:hover { text-decoration: underline; }
.tab-content li span.date, .tab-content li span {
    color: #999; font-size: 13px; min-width: 75px; text-align: right; flex-shrink: 0;
}

/* 【改3】通知/要闻列表小圆点装饰 */
.tab-content li::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    background-color: #0056b3;
    border-radius: 50%;
    margin-right: 10px;
    flex-shrink: 0;
    vertical-align: middle;
}

/* ================= 第三屏：四大板块 ================= */
.section-grid { padding: 60px 0; background: linear-gradient(180deg, #f8f9fa 0%, #fff 100%); max-width: 100%; overflow: hidden; }
.grid-layout { display: grid; grid-template-columns: repeat(2, 1fr); gap: 35px; margin-top: 25px; }

.grid-card {
    background: #fff; padding: 35px; border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.06);
    transition: all 0.4s ease;
    min-height: 280px;
    position: relative;
    overflow: hidden;
}
.grid-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #0056b3 0%, #00a8ff 100%);
    transform: scaleX(0);
    transition: transform 0.4s ease;
}
.grid-card:hover { 
    transform: translateY(-8px); 
    box-shadow: 0 15px 35px rgba(0,86,179,0.12);
}
.grid-card:hover::before {
    transform: scaleX(1);
}

.grid-card h3, 
.grid-card a.grid-title-link { 
    color: #0056b3 !important;
    font-size: 22px !important;
    font-weight: bold !important;
    margin-bottom: 28px !important;
    padding-bottom: 18px !important;
    border-bottom: 2px solid #f0f0f0 !important;
    display: block !important;
    text-decoration: none !important;
    cursor: pointer;
    letter-spacing: 2px;
    transition: all 0.3s ease;
}
.grid-card h3:hover, 
.grid-card a.grid-title-link:hover {
    color: #003d80 !important;
    text-decoration: none !important;
    padding-left: 10px !important;
}

.grid-list li { 
    margin-bottom: 16px; 
    font-size: 15px; 
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis;
    padding-left: 5px;
    transition: all 0.3s ease;
}
.grid-list li:hover {
    padding-left: 12px;
}
.grid-list li::before { 
    content: "▸"; 
    color: #0056b3; 
    margin-right: 10px; 
    font-size: 14px;
    vertical-align: middle;
}

/* ================= 底部区域 ================= */

/* --- 友情链接区（已移入页脚内部，旧样式保留备用） --- */

/* --- 页脚主区：校园蓝渐变 --- */
.foot-wrap {
    position: relative;
    color: #e8f0f8;
    padding: 0;
    text-align: center;
    font-size: 14px;
    overflow: hidden;
    background: linear-gradient(
        135deg,
        #0a3d7c 0%,
        #10509e 25%,
        #1565c0 50%,
        #0d47a1 75%,
        #08306b 100%
    );
}

/* ===== 友情链接（顶端，VSB9组件输出 dl/dt/dd 结构） ===== */
.foot-friendlink {
    position: relative;
    z-index: 3;
    max-width: 1400px;
    margin: 0 auto;
    padding: 14px 20px;
}
/* VSB9 友链容器 */
.foot-friendlink .link_one,
.foot-friendlink .clearfix {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.foot-friendlink dl {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    gap: 0;
}
.foot-friendlink dt {
    font-size: 14px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    white-space: nowrap;
    margin-right: 4px;
}
.foot-friendlink dd {
    margin: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 16px;
}
.foot-friendlink a {
    color: rgba(255, 255, 255, 0.7);
    font-size: 13px;
    text-decoration: none;
    transition: all 0.3s ease;
}
.foot-friendlink a:hover {
    color: #fff;
    text-shadow: 0 0 8px rgba(100, 180, 255, 0.4);
}

/* ===== 校训栏 ===== */
.foot-motto {
    position: relative;
    z-index: 3;
    padding: 30px 0 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
}
.motto-item {
    font-family: "STXingkai", "华文行楷", "XingKai SC", "STKaiti", "KaiTi", "楷体", serif;
    font-size: 52px;
    letter-spacing: 12px;
    color: #ffffff;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3),
                 0 0 50px rgba(100, 180, 255, 0.15);
    position: relative;
}
.motto-divider {
    font-size: 40px;
    color: rgba(255, 255, 255, 0.35);
    margin: 0 28px;
    font-weight: 300;
    text-shadow: 0 0 12px rgba(100, 180, 255, 0.25);
}

/* ===== 分割线 ===== */
.foot-divider {
    position: relative;
    z-index: 3;
    width: 240px;
    height: 1px;
    margin: 0 auto;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.3) 50%,
        transparent 100%
    );
}

/* ===== 版权+联系方式（左） + 事业单位logo（右） ===== */
.foot-info-row {
    position: relative;
    z-index: 3;
    max-width: 1400px;
    margin: 0 auto;
    padding: 16px 30px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}
.foot-info-left {
    text-align: left;
    flex: 1;
}
/* VSB9版权组件样式 */
.foot-info-left .elementname {
    display: block;
}
.foot-info-left p {
    margin: 0 0 3px;
    line-height: 1.9;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
}
.foot-info-left a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: color 0.3s ease;
}
.foot-info-left a:hover {
    color: #fff;
    text-shadow: 0 0 8px rgba(100, 180, 255, 0.4);
}
/* 隐藏VSB9版权组件自带的小图标 */
.foot-info-left img {
    display: none !important;
}

/* 事业单位图标（右侧） */
.footer-logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
.footer-logo a {
    display: inline-block;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
.footer-logo a:hover {
    transform: scale(1.08);
    opacity: 0.9;
}
.footer-logo img {
    width: 50px;
    height: auto;
    filter: drop-shadow(0 1px 3px rgba(0,0,0,0.25));
}

/* ================= 回到顶部 ================= */
.back-to-top {
    position: fixed;
    right: 40px;
    bottom: 40px;
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #0056b3 0%, #003d80 100%);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    text-decoration: none;
    box-shadow: 0 4px 15px rgba(0,86,179,0.3);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 9999;
}
.back-to-top.visible {
    opacity: 1;
    visibility: visible;
}
.back-to-top:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,86,179,0.4);
}

/* ================= 分页（改C：当前页码加粗） ================= */
.pagination a, .pagination span { 
    display: inline-block; 
    padding: 10px 18px; 
    border: 1px solid #ddd; 
    border-radius: 6px; 
    color: #666;
    transition: all 0.3s ease;
}
.pagination a:hover, .pagination .current { 
    background: linear-gradient(135deg, #0056b3 0%, #003d80 100%); 
    color: #fff; 
    border-color: #0056b3;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0,86,179,0.3);
}
/* 【改C】当前页码数字更醒目 */
.pagination .current {
    font-weight: bold;
    font-size: 15px;
}

/* ================= 左侧边栏（改E：选中项右背景） ================= */
.sidebar-nav li a:hover, .sidebar-nav li.active a { 
    background: linear-gradient(90deg, #f0f7ff 0%, #fff 100%); 
    color: #0056b3; 
    border-left-color: #0056b3;
    padding-left: 30px;
}
/* 【改E】选中项右侧加浅蓝背景衬托 */
.sidebar-nav li.active a {
    background: linear-gradient(90deg, #e8f2ff 0%, #f5f9ff 100%) !important;
}

/* ================= 文章详情页样式（从模板内联样式提取） ================= */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.content-container {
    display: flex;
    gap: 40px;
    padding: 50px 0;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}
.content-sidebar { width: 280px; flex-shrink: 0; }
.content-main { flex: 1; min-width: 0; }

.article-box {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    padding: 50px;
    animation: fadeInUp 0.5s ease;
}
.article-title {
    font-size: 26px;
    color: #333;
    text-align: center;
    margin-bottom: 30px;
    line-height: 1.5;
    font-weight: bold;
}
.article-meta {
    text-align: center;
    padding-bottom: 30px;
    border-bottom: 2px solid #f0f0f0;
    margin-bottom: 35px;
    color: #999;
    font-size: 14px;
}
.article-meta span { margin: 0 20px; }
.article-meta .tag {
    display: inline-block;
    padding: 2px 10px;
    font-size: 14px;
    border-radius: 3px;
    background: #e8f4fc;
    color: #0056b3;
    font-weight: 600;
    margin-right: 8px;
}

/* 文章正文样式 */
.article-content { font-size: 16px; line-height: 2; color: #333; }
.article-content p { margin-bottom: 20px; text-indent: 2em; }
.article-content img { max-width: 100%; height: auto; margin: 25px auto; border-radius: 8px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); display: block; }
.article-content h2 { font-size: 22px; color: #0056b3; margin: 35px 0 20px; padding-left: 15px; border-left: 4px solid #0056b3; }
.article-content h3 { font-size: 20px; color: #333; margin: 30px 0 15px; font-weight: bold; }
.article-content ul, .article-content ol { margin: 20px 0; padding-left: 30px; }
.article-content li { margin-bottom: 12px; line-height: 1.8; }
.article-content table { width: 100%; border-collapse: collapse; margin: 25px 0; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.article-content th, .article-content td { border: 1px solid #e8e8e8; padding: 12px 15px; text-align: left; }
.article-content th { background: linear-gradient(135deg, #f8f9fa 0%, #fff 100%); font-weight: bold; color: #333; }
.article-content tr:hover { background: #f9fafc; }

.article-attach { background: linear-gradient(135deg, #f8f9fa 0%, #fff 100%); padding: 25px; border-radius: 8px; margin-top: 45px; border: 1px solid #e8e8e8; }
.article-attach h4 { font-size: 16px; color: #333; margin-bottom: 15px; }
.article-attach a { color: #0056b3; display: inline-flex; align-items: center; }
.article-attach a:hover { text-decoration: underline; }

.article-nav { display: flex; justify-content: space-between; margin-top: 45px; padding: 20px; border-top: 2px solid #f0f0f0; background: #f9fafc; border-radius: 8px; }
.article-nav a { color: #666; font-size: 14px; max-width: 48%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: all 0.3s ease; }
.article-nav a:hover { color: #0056b3; }

.article-share { margin-top: 45px; padding-top: 30px; border-top: 2px solid #f0f0f0; text-align: center; }
.article-share span { color: #666; margin-right: 15px; }

/* 文章页移动端适配 */
@media (max-width: 768px) {
    .content-container { flex-direction: column !important; padding: 20px 15px !important; gap: 20px !important; }
    .content-sidebar { width: 100% !important; min-width: 100% !important; }
    .content-main { max-width: 100% !important; }
    .article-box { padding: 20px !important; }
    .sidebar-nav { position: static !important; }
    .content-breadcrumb { padding: 10px 15px !important; }
    .page-banner { height: 120px !important; display: none !important; }
}

/* ================= 响应式 ================= */
/* 1920px 以下：导航栏自动缩小适配 */
@media (max-width: 1920px) {
    .top-header {
        gap: 25px !important;               /* Logo和导航间距加大 */
        padding: 12px 20px 10px 20px !important;
    }
    .logo-area img {
        max-height: 80px !important;
    }
    .main-nav > li > a, .main-nav > ul.fu > li > a, div[id*="nav"] > ul > li > a,
    .nav_menustyle_1_1 > ul > li > a {
        font-size: 14px !important;
        padding: 0 12px !important;
        letter-spacing: 0.8px !important;
    }
    .main-nav, div[id*="nav"] > ul, .nav_menustyle_1_1 > ul {
        gap: 0 !important;
    }
    .nav_menustyle_1_1 > ul > li > a {
        height: 40px !important;
        line-height: 40px !important;
    }
}
@media (max-width: 1600px) {
    .top-header {
        gap: 20px !important;
    }
    .logo-area img {
        max-height: 70px !important;
    }
    .main-nav > li > a, .main-nav > ul.fu > li > a, div[id*="nav"] > ul > li > a,
    .nav_menustyle_1_1 > ul > li > a {
        font-size: 13px !important;
        padding: 0 10px !important;
        letter-spacing: 0.5px !important;
    }
    .main-nav, div[id*="nav"] > ul, .nav_menustyle_1_1 > ul {
        gap: 0 !important;
    }
    .nav_menustyle_1_1 > ul > li > a {
        height: 38px !important;
        line-height: 38px !important;
    }
}
@media (max-width: 1400px) {
    .top-container, .nav-container { width: 96%; }
    .top-header {
        gap: 15px !important;
        padding: 10px 15px 8px 15px !important;
    }
    .logo-area img {
        max-height: 60px !important;
    }
    .main-nav > li > a, .main-nav > ul.fu > li > a, div[id*="nav"] > ul > li > a,
    .nav_menustyle_1_1 > ul > li > a {
        font-size: 12px !important;
        padding: 0 8px !important;
        letter-spacing: 0px !important;
    }
    .main-nav, div[id*="nav"] > ul, .nav_menustyle_1_1 > ul {
        gap: 0px !important;
    }
    .nav_menustyle_1_1 > ul > li > a {
        height: 36px !important;
        line-height: 36px !important;
    }
}
@media (max-width: 1200px) {
    .news-container, .grid-container, .foot-content { width: 96%; }
    .news-layout { flex-direction: column; height: auto; }
    .news-left, .news-right { width: 100%; height: auto; min-height: 400px; }
    .honor-bar { display: none; }
    .top-header { flex-direction: column; height: auto; padding: 25px 0; gap: 25px; }
    .logo-area { width: 100%; height: auto; justify-content: center; }
    .logo-area img, .logo-area div { width: 350px !important; height: auto !important; }
    .search-area { width: 100%; justify-content: center; transform: none; margin: 0; }
    .grid-layout { grid-template-columns: repeat(2, 1fr); gap: 25px; }
    .banner-arrow { display: none; }  /* 移动端隐藏翻页按钮 */
    .back-to-top-wrap { right: 20px; bottom: 20px; }
}
@media (max-width: 768px) {
    .grid-layout { grid-template-columns: 1fr; }
    .nav-container { flex-direction: column; }
    .main-nav li a { height: 55px; line-height: 55px; font-size: 18px; border-bottom: 1px solid rgba(255,255,255,0.1); }
    .section-hero { height: 80vh !important; min-height: 400px !important; }
    .grid-card { padding: 25px; }
    .banner-dots { display: none; }
}

/* ================= 滚动动画 ================= */
@keyframes slideUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ================= 滚动条美化 ================= */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 4px;
    transition: background 0.3s ease;
}
::-webkit-scrollbar-thumb:hover {
    background: #0056b3;
}

/* ================= 文字选中样式 ================= */
::selection {
    background: #0056b3;
    color: #fff;
}
::-moz-selection {
    background: #0056b3;
    color: #fff;
}

/* === 导航下拉菜单修复（兼容 VSB9 组件） === */
/* 核心：确保下拉菜单能正确显示 */
.nav-bar { 
    z-index: 10000 !important; 
    position: relative; 
    overflow: visible !important;
}
.nav-container { 
    z-index: 10001 !important; 
    position: relative; 
    overflow: visible !important;
}

/* VSB9 导航组件通用样式 - div 包裹的情况 */
div[id*="nav"] { 
    z-index: 10000 !important; 
    position: relative; 
    overflow: visible !important;
}
div[id*="nav"] > ul { 
    display: flex; 
    justify-content: space-between; 
    gap: 20px; 
    overflow: visible !important;
}
div[id*="nav"] > ul > li { 
    flex: 1; 
    text-align: center; 
    position: relative; 
    padding: 0 10px; 
}
div[id*="nav"] > ul > li > a { 
    height: 70px; 
    line-height: 70px; 
    color: #fff; 
    font-size: 20px; 
    font-weight: 600; 
    letter-spacing: 2px; 
    border-radius: 6px; 
}
div[id*="nav"] > ul > li > a:hover { 
    background: rgba(255,255,255,0.15); 
}
div[id*="nav"] > ul > li > ul { 
    display: none; 
    position: absolute; 
    top: 100%; 
    left: 0; 
    min-width: 160px; 
    background: rgba(0, 86, 179, 0.98); 
    box-shadow: 0 10px 30px rgba(0,0,0,0.3); 
    border-radius: 0 0 10px 10px; 
    z-index: 999999 !important; 
    padding: 6px 0;
    overflow: visible !important;
}
div[id*="nav"] > ul > li:hover > ul { 
    display: block; 
}
div[id*="nav"] > ul > li > ul > li { 
    border-bottom: 1px solid rgba(255,255,255,0.1); 
}
div[id*="nav"] > ul > li > ul > li:last-child { 
    border-bottom: none; 
}
div[id*="nav"] > ul > li > ul > li > a { 
    display: block; 
    padding: 8px 18px; 
    color: #fff !important; 
    font-size: 13px; 
    text-decoration: none; 
}
div[id*="nav"] > ul > li > ul > li > a:hover { 
    background: rgba(255,255,255,0.2); 
    padding-left: 26px; 
}

/* VSB9 特殊结构：ul.fu 嵌套在 .main-nav 内 */
.main-nav > ul.fu {
    display: contents !important;
    overflow: visible !important;
}
.main-nav > ul.fu > li {
    flex: 1;
    text-align: center;
    position: relative;
    padding: 0 10px;
}
.main-nav > ul.fu > li > a {
    display: block; 
    height: 70px; 
    line-height: 70px; 
    color: #fff; 
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 2px;
    border-radius: 6px;
    transition: all 0.3s ease;
}
.main-nav > ul.fu > li > a:hover {
    background: rgba(255,255,255,0.15);
    transform: translateY(-2px);
}
.main-nav > ul.fu > li > ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);      /* 居中对齐父菜单项 */
    min-width: 160px;
    background: rgba(0, 30, 70, 0.92) !important;
    backdrop-filter: blur(12px);
    box-shadow: 0 8px 28px rgba(0,0,0,0.25);
    border-radius: 0 0 10px 10px;
    z-index: 999999 !important;
    padding: 6px 0;
    overflow: visible !important;
    animation: dropdownFadeIn 0.25s ease-out;
    border: 1px solid rgba(255,255,255,0.1) !important;
}
.main-nav > ul.fu > li:hover > ul {
    display: block;
}
.main-nav > ul.fu > li > ul > li {
    border-bottom: 1px solid rgba(255,255,255,0.08);
    text-align: left;
}
.main-nav > ul.fu > li > ul > li:last-child {
    border-bottom: none;
}
.main-nav > ul.fu > li > ul > li > a {
    display: block;
    padding: 8px 18px;
    color: #fff !important;
    font-size: 13px !important;
    letter-spacing: 0.5px;
    text-shadow: none;
    transition: all 0.2s ease;
}
.main-nav > ul.fu > li > ul > li > a:hover {
    background: rgba(255,255,255,0.15);
    padding-left: 26px;
}

/* 兼容：VSB9 的二级子菜单 ul.fu 结构 */
.main-nav ul.fu li ul.fu,
.main-nav > li > ul.fu,
ul.fu > li > ul.fu {
    display: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);      /* 居中对齐父菜单项 */
    min-width: 160px;
    background: rgba(0, 30, 70, 0.92) !important;
    backdrop-filter: blur(12px);
    box-shadow: 0 8px 28px rgba(0,0,0,0.25);
    border-radius: 0 0 10px 10px;
    z-index: 999999 !important;
    padding: 6px 0;
    overflow: visible !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
}
.main-nav ul.fu li:hover > ul.fu,
.main-nav > li:hover > ul.fu,
ul.fu > li:hover > ul.fu {
    display: block;
}

/* 有子菜单的项添加下拉箭头 */
.main-nav > ul.fu > li.has-sub > a::after,
.main-nav > li.has-sub > a::after,
ul.fu > li.has-sub > a::after {
    content: '▼';
    font-size: 9px;
    margin-left: 6px;
    vertical-align: middle;
    opacity: 0.7;
}

/* 确保所有父容器都不裁剪下拉菜单 */
.top-wrap,
.top-container,
.top-header,
.nav-bar,
.nav-container,
.main-nav {
    overflow: visible !important;
}

/* ================= VSB9 nav_menustyle 导航样式覆盖 ================= */
/* 基于组件原生结构重写，只调尺寸，不改布局方式 */

/* === 一级导航 === */
.nav_menustyle_1_1 > ul {
    display: flex !important;
    width: 100% !important;
    justify-content: flex-end !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 0 !important;
}
.nav_menustyle_1_1 > ul > li {
    flex: 0 0 auto !important;           /* 取消固定120px，改为auto自适应 */
    text-align: center !important;
    position: relative !important;
    white-space: nowrap !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.nav_menustyle_1_1 > ul > li > a {
    display: block !important;
    height: 48px !important;
    line-height: 48px !important;
    color: #fff !important;
    font-family: "Microsoft YaHei", "SimHei", sans-serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    padding: 0 22px !important;
    text-shadow: 0 1px 4px rgba(0,0,0,0.7) !important;
    background: transparent !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    transition: none !important;
}
.nav_menustyle_1_1 > ul > li > a:hover,
.nav_menustyle_1_1 > ul > li.current > a {
    color: #ffd700 !important;
    background: rgba(255,255,255,0.15) !important;
    border-radius: 6px !important;
}

/* === 二级菜单（下拉） === */
.nav_menustyle_1_1 > ul > li > ul {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    transform: translateX(-50%) !important;   /* 居中对齐父菜单项 */
    width: 100% !important;                   /* 宽度与一级菜单项完全一致 */
    background: rgba(0, 30, 70, 0.92) !important;
    backdrop-filter: blur(12px) !important;
    box-shadow: 0 8px 28px rgba(0,0,0,0.25) !important;
    border-radius: 0 0 10px 10px !important;
    z-index: 999999 !important;
    padding: 6px 0 !important;
    list-style: none !important;
    margin: 0 !important;
    border: 1px solid rgba(255,255,255,0.1) !important;
    transition: none !important;
    animation: none !important;
}
.nav_menustyle_1_1 > ul > li:hover > ul {
    display: block !important;
}
.nav_menustyle_1_1 > ul > li > ul > li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    text-align: center !important;
    width: 100% !important;
}
.nav_menustyle_1_1 > ul > li > ul > li:last-child {
    border-bottom: none !important;
}
.nav_menustyle_1_1 > ul > li > ul > li > a {
    display: block !important;
    width: 100% !important;
    padding: 8px 0 !important;               /* 从12px降到8px */
    color: #fff !important;
    font-size: 14px !important;              /* 从15px降到14px */
    font-weight: normal !important;
    letter-spacing: 0.5px !important;
    line-height: 1.4 !important;
    text-shadow: none !important;
    text-decoration: none !important;
    background: transparent !important;
    white-space: nowrap !important;
    text-align: center !important;
    box-sizing: border-box !important;
    transition: none !important;
}
.nav_menustyle_1_1 > ul > li > ul > li > a:hover {
    background: rgba(255,255,255,0.2) !important;
    color: #fff !important;
    transition: none !important;
}

/* === 滚动后二级菜单变白底 === */
.top-wrap.scrolled .nav_menustyle_1_1 > ul > li > ul {
    background: rgba(255, 255, 255, 0.95) !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 8px 28px rgba(0,0,0,0.15) !important;
}
.top-wrap.scrolled .nav_menustyle_1_1 > ul > li > ul > li > a {
    color: #333 !important;
    text-shadow: none !important;
}
.top-wrap.scrolled .nav_menustyle_1_1 > ul > li > ul > li > a:hover {
    color: #0056b3 !important;
    background: rgba(0, 86, 179, 0.06) !important;
}
.top-wrap.scrolled .nav_menustyle_1_1 > ul > li > ul > li {
    border-bottom-color: rgba(0,0,0,0.06) !important;
}

/* ================= VSB9 文章内容内联样式全局覆盖 ================= */
/* 针对 VSB9 输出的 vsb_content_N 动态ID容器，强制清除内联样式干扰 */
.article-box div[id^="vsb_content"] h1 {
    font-size: 26px !important; line-height: 1.5 !important; font-weight: bold !important;
    color: #333 !important; text-align: center !important; margin-bottom: 30px !important;
    text-indent: 0 !important; padding: 0 !important;
}
.article-box div[id^="vsb_content"] h1 p,
.article-box div[id^="vsb_content"] h1 span,
.article-box div[id^="vsb_content"] h1 strong {
    font-size: 26px !important; line-height: 1.5 !important; font-weight: bold !important;
    color: #333 !important; text-indent: 0 !important; text-align: center !important;
}
.article-box div[id^="vsb_content"] p {
    font-size: 16px !important; line-height: 2 !important; color: #333 !important;
    margin-bottom: 20px !important; text-indent: 2em !important;
}
.article-box div[id^="vsb_content"] span {
    font-size: inherit !important; line-height: inherit !important;
    color: inherit !important; text-indent: inherit !important; font-weight: inherit !important;
}
.article-box div[id^="vsb_content"] strong,
.article-box div[id^="vsb_content"] b {
    font-weight: bold !important; font-size: inherit !important;
    line-height: inherit !important; color: inherit !important;
}
.article-box div[id^="vsb_content"] font {
    font-size: inherit !important; color: inherit !important; font-family: inherit !important;
}
.article-box div[id^="vsb_content"] img {
    max-width: 100% !important; height: auto !important; display: block !important;
    margin: 25px auto !important; border-radius: 8px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1) !important;
}
.article-box div[id^="vsb_content"] h2 { font-size: 22px !important; line-height: 1.5 !important; color: #0056b3 !important; margin: 35px 0 20px !important; padding-left: 15px !important; border-left: 4px solid #0056b3 !important; font-weight: bold !important; text-indent: 0 !important; }
.article-box div[id^="vsb_content"] h3 { font-size: 20px !important; line-height: 1.6 !important; color: #333 !important; margin: 30px 0 15px !important; font-weight: bold !important; text-indent: 0 !important; }
.article-box div[id^="vsb_content"] table { width: 100% !important; border-collapse: collapse !important; margin: 25px 0 !important; }
.article-box div[id^="vsb_content"] th,
.article-box div[id^="vsb_content"] td { border: 1px solid #e8e8e8 !important; padding: 12px 15px !important; text-align: left !important; font-size: 14px !important; line-height: 1.6 !important; }
.article-box div[id^="vsb_content"] th { background: #f8f9fa !important; font-weight: bold !important; color: #333 !important; }
.article-box div[id^="dynclicks"] { display: none !important; }

/* ================= 2级页面统一样式修改 ================= */

/* 1. 左侧导航装饰条样式 */
.sidebar-title {
    background: linear-gradient(135deg, #0056b3 0%, #003d80 100%);
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
    padding: 15px 20px;
    letter-spacing: 3px;
    border-radius: 8px 8px 0 0;
    box-shadow: 0 2px 8px rgba(0,86,179,0.2);
}
.sidebar-nav {
    background: #fff;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    overflow: hidden;
}
.sidebar-nav h3 {
    display: none !important;
}

/* 2. 左侧网站导航 - 当前栏目高亮显示（默认激活样式） */
.sidebar-nav li.current a,
.sidebar-nav li.active a {
    background: linear-gradient(90deg, #e8f2ff 0%, #f5f9ff 100%) !important;
    color: #0056b3 !important;
    border-left-color: #0056b3 !important;
    padding-left: 30px !important;
    font-weight: 600 !important;
}

/* 3. 标题列表统一样式 - 不显示栏目名称，统一字号行间距 */
.news-list-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px dashed #e8e8e8;
    transition: all 0.3s ease;
}
.news-list-item:last-child {
    border-bottom: none;
}
.news-list-item:hover {
    background: #f5f8ff;
    padding-left: 10px;
}
/* 标题样式 - 统一字号16px，行高1.8 */
.news-list-item a {
    color: #333;
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 16px;
    line-height: 1.8;
    transition: color 0.3s ease;
}
.news-list-item a:hover {
    color: #0056b3;
}
/* 隐藏标题前的栏目名称标签 */
.news-list-item .tag,
.news-list-item .column-name,
.news-list-item span[class*="column"],
.news-list-item em {
    display: none !important;
}
/* 日期样式 - 统一 */
.news-list-item .date {
    color: #999;
    font-size: 14px;
    min-width: 90px;
    text-align: right;
    margin-left: 15px;
    flex-shrink: 0;
}

/* 图片卡片标题样式统一 */
.pic-card .title-box .tag {
    display: none !important;
}
.pic-card .title-box .title {
    font-size: 16px;
    color: #333;
    line-height: 1.6;
}

/* ================= VSB9 图片列表组件样式覆盖 ================= */
/* 强制图片列表table填满容器 */
.pic-grid table,
.list-main table {
    width: 100% !important;
    border-collapse: collapse;
    table-layout: fixed;
}
.pic-grid table td,
.list-main table td {
    width: auto !important;
    padding: 15px 10px;
    vertical-align: top;
}
/* 图片列表项样式 */
.pic-grid table td > div:first-child {
    width: 160px !important;
    height: 120px !important;
    float: left !important;
    margin: 0 15px 10px 0 !important;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.pic-grid table td > div:first-child img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}
.pic-grid table td a {
    color: #333;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.6;
    text-decoration: none;
}
.pic-grid table td a:hover {
    color: #0056b3;
}
.pic-grid table td br {
    display: block;
    margin-bottom: 8px;
    content: "";
}
/* 摘要文字 */
.pic-grid table td {
    font-size: 14px;
    color: #666;
    line-height: 1.8;
}
/* 日期 */
.pic-grid table td a + * {
    color: #999;
    font-size: 13px;
    margin-left: 8px;
}
/* [详细]链接 */
.pic-grid table td a[href*="detail"] {
    color: #0056b3;
    font-size: 14px;
    font-weight: normal;
}

/* ================= 2级页面布局统一 ================= */
/* 确保所有2级页面左侧边栏和右侧内容区宽度一致 */
.list-container,
.content-container {
    display: flex;
    gap: 40px;
    padding: 50px 0;
    max-width: 1400px;
    margin: 0 auto;
}
.list-sidebar,
.content-sidebar {
    width: 280px;
    flex-shrink: 0;
    min-width: 280px;
}
.list-main,
.content-main {
    flex: 1;
    min-width: 0;
    max-width: 1080px;
}
/* 图片列表页特殊调整 - 增加内容丰富度 */
.pic-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    width: 100%;
}
.pic-card {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}
.pic-card .img-box {
    width: 100%;
    height: 200px;
    overflow: hidden;
}
.pic-card .img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}
.pic-card:hover .img-box img {
    transform: scale(1.1);
}
.pic-card .title-box {
    padding: 18px;
}
.pic-card .title-box .title {
    font-size: 16px;
    color: #333;
    line-height: 1.6;
}
.pic-card .date {
    padding: 0 18px 18px;
    font-size: 13px;
    color: #999;
}
@media (max-width: 1200px) {
    .pic-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 768px) {
    .pic-grid {
        grid-template-columns: 1fr;
    }
    .list-container,
    .content-container {
        flex-direction: column;
    }
    .list-sidebar,
    .content-sidebar {
        width: 100%;
    }
    /* 校训响应式 */
    .motto-item {
        font-size: 26px;
        letter-spacing: 4px;
    }
    .motto-divider {
        font-size: 22px;
        margin: 0 14px;
    }
    .foot-motto {
        padding: 28px 0 22px;
    }
    .foot-info-row {
        flex-direction: column;
        text-align: center;
        padding: 16px 20px 20px;
    }
    .foot-info-left {
        text-align: center;
    }
    .foot-friendlink {
        padding: 14px 16px;
    }
}

/* ============================================================
   移动端全面响应式适配（平板 + 手机）
   ============================================================ */

/* ---------- 平板断点 1024px ---------- */
@media (max-width: 1024px) {
    /* 容器自适应 */
    .top-container, .nav-container, .news-container, .grid-container, .foot-content {
        width: 96% !important;
        max-width: 96% !important;
    }
    .list-container, .content-container {
        max-width: 96% !important;
        padding: 30px 0 !important;
        gap: 25px !important;
    }

    /* 首页导航栏 - 字号缩小、允许换行 */
    .nav-bar {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 0 !important;
    }
    div[id*="nav"] > ul,
    .main-nav > ul.fu,
    .main-nav > ul {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 0 !important;
    }
    div[id*="nav"] > ul > li,
    .main-nav > ul.fu > li,
    .main-nav > li {
        flex: none !important;
    }
    div[id*="nav"] > ul > li > a,
    .main-nav > ul.fu > li > a,
    .main-nav > li > a {
        font-size: 14px !important;
        height: auto !important;
        line-height: 1.4 !important;
        letter-spacing: 0.5px !important;
        padding: 8px 8px !important;
    }

    /* 首页Logo缩小 */
    body:has(.section-hero) .logo-area img {
        max-height: 65px !important;
    }

    /* 二级页面顶部 - 允许导航换行 */
    body:not(:has(.section-hero)) .top-header {
        padding: 8px 15px !important;
        flex-wrap: wrap;
    }
    body:not(:has(.section-hero)) .logo-area img {
        max-height: 60px !important;
    }
    body:not(:has(.section-hero)) .nav-bar {
        flex-wrap: wrap !important;
        justify-content: center !important;
    }
    body:not(:has(.section-hero)) .nav-container {
        width: 100% !important;
    }

    /* 二级页面侧栏变窄 */
    .list-sidebar, .content-sidebar {
        width: 220px !important;
        min-width: 220px !important;
    }
}

/* ---------- 手机横屏/小平板 768px ---------- */
@media (max-width: 768px) {
    /* 全局基础字号 */
    body { font-size: 15px; }

    /* 容器全宽 */
    .top-container, .nav-container, .news-container, .grid-container,
    .foot-content, .list-container, .content-container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* ====== 首页移动端 ====== */

    /* 荣誉栏隐藏（手机空间有限）*/
    .honor-bar-fixed {
        display: none !important;
    }

    /* 导航栏从 absolute 切换为 relative，不再叠在banner上 */
    .top-wrap {
        position: relative !important;
        background: linear-gradient(135deg, #0a3d7c 0%, #1565c0 50%, #0a3d7c 100%) !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.15) !important;
    }

    /* Banner高度减小 */
    .section-hero {
        height: 60vh !important;
        min-height: 300px !important;
        margin-top: 0 !important;
    }

    /* Logo居中 */
    .top-header {
        flex-direction: column !important;
        align-items: center !important;
        padding: 12px 15px !important;
        gap: 10px !important;
    }
    .logo-area {
        justify-content: center !important;
    }
    .logo-area img {
        max-height: 50px !important;
        width: auto !important;
    }

    /* 导航菜单变为竖向堆叠 */
    .nav-bar, .nav-container, .main-nav {
        width: 100% !important;
    }
    div[id*="nav"] > ul,
    .main-nav > ul.fu,
    .main-nav > ul {
        flex-direction: column !important;
        gap: 0 !important;
        width: 100% !important;
    }
    div[id*="nav"] > ul > li,
    .main-nav > ul.fu > li,
    .main-nav > li {
        width: 100% !important;
        text-align: left !important;
        padding: 0 !important;
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    div[id*="nav"] > ul > li > a,
    .main-nav > ul.fu > li > a,
    .main-nav > li > a {
        display: block !important;
        height: auto !important;
        line-height: inherit !important;
        padding: 14px 20px !important;
        font-size: 16px !important;
        border-radius: 0 !important;
        letter-spacing: 1px !important;
    }

    /* 下拉菜单在移动端 hover 不展开，仅通过点击 sub-open 类展开 */
    div[id*="nav"] > ul > li:hover > ul,
    .main-nav > ul.fu > li:hover > ul,
    .main-nav > li:hover > ul,
    .nav_menustyle_1_1 > ul > li:hover > ul {
        display: none !important;
    }
    /* 移动端点击展开/收起（JS 添加 sub-open 类） */
    div[id*="nav"] > ul > li.sub-open > ul,
    .main-nav > ul.fu > li.sub-open > ul,
    .main-nav > li.sub-open > ul,
    .nav_menustyle_1_1 > ul > li.sub-open > ul {
        display: block !important;
        position: static !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        background: rgba(0,40,90,0.95) !important;
        left: 0 !important;
        transform: none !important;
        width: 100% !important;
        min-width: 0 !important;
    }
    div[id*="nav"] > ul > li > ul > li > a,
    .main-nav > ul.fu > li > ul > li > a,
    .main-nav > li > ul > li > a {
        padding: 10px 24px !important;
        font-size: 13px !important;
    }

    /* 翻页箭头隐藏 */
    .banner-arrow { display: none !important; }

    /* 圆点指示器缩小 */
    .banner-dots {
        bottom: 8px !important;
        transform: scale(0.8);
    }

    /* 新闻区域 */
    .news-layout {
        flex-direction: column !important;
        height: auto !important;
    }
    .news-left, .news-right {
        width: 100% !important;
        min-height: auto !important;
    }

    /* Grid卡片 */
    .grid-layout {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
    }
    .grid-card {
        padding: 18px !important;
    }

    /* ====== 二级页面移动端 ====== */

    /* 顶部蓝色区域 */
    body:not(:has(.section-hero)) .top-wrap {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
    body:not(:has(.section-hero)) .top-header {
        padding: 10px 15px !important;
        flex-direction: column !important;
        gap: 8px !important;
    }
    body:not(:has(.section-hero)) .logo-area img {
        max-height: 50px !important;
    }

    /* 导航竖向 */
    body:not(:has(.section-hero)) .nav-bar {
        width: 100% !important;
    }

    /* 侧边栏+内容区 变为上下堆叠 */
    .list-container, .content-container {
        flex-direction: column !important;
        padding: 20px 15px !important;
        gap: 20px !important;
    }
    .list-sidebar, .content-sidebar {
        width: 100% !important;
        min-width: 100% !important;
    }
    .list-main, .content-main {
        max-width: 100% !important;
    }

    /* 侧边栏标题 */
    .sidebar-title {
        font-size: 16px;
        padding: 12px 15px;
        letter-spacing: 2px;
    }

    /* 新闻列表项 */
    .news-list-item {
        padding: 12px 0 !important;
        font-size: 14px !important;
    }
    .news-list-item a {
        font-size: 14px !important;
        white-space: normal !important;
    }
    .news-list-item .date {
        font-size: 12px !important;
        min-width: 70px !important;
    }

    /* 图片列表 */
    .pic-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }
    .pic-card .img-box {
        height: 140px !important;
    }
    .pic-card .title-box {
        padding: 12px !important;
    }
    .pic-card .title-box .title {
        font-size: 14px !important;
    }

    /* 图片列表table布局移动端 */
    .pic-grid table td > div:first-child {
        width: 100% !important;
        height: 180px !important;
        float: none !important;
        margin: 0 0 10px 0 !important;
    }

    /* 文章内容 */
    .article-box div[id^="vsb_content"] h1 {
        font-size: 22px !important;
        margin-bottom: 20px !important;
    }
    .article-box div[id^="vsb_content"] p {
        font-size: 15px !important;
        line-height: 1.8 !important;
    }
    .article-box div[id^="vsb_content"] h2 {
        font-size: 18px !important;
        margin: 25px 0 15px !important;
    }
    .article-box div[id^="vsb_content"] img {
        margin: 15px auto !important;
        border-radius: 6px !important;
    }
    .article-box div[id^="vsb_content"] table {
        font-size: 13px !important;
        display: block;
        overflow-x: auto;
    }

    /* 面包屑 */
    .content-breadcrumb {
        font-size: 13px !important;
        padding: 10px 15px !important;
        overflow-x: auto;
        white-space: nowrap;
    }

    /* 页脚 */
    .foot-motto {
        padding: 20px 0 15px !important;
    }
    .motto-item {
        font-size: 20px !important;
        letter-spacing: 2px !important;
    }
    .motto-divider {
        font-size: 18px !important;
        margin: 0 8px !important;
    }
    .foot-info-row {
        padding: 12px 15px 15px !important;
        font-size: 13px !important;
    }
    .foot-friendlink {
        font-size: 12px !important;
        padding: 10px 15px !important;
    }

    /* 回到顶部按钮 */
    .back-to-top-wrap {
        right: 15px !important;
        bottom: 15px !important;
        transform: scale(0.85);
    }
}

/* ---------- 手机竖屏 480px（小屏手机）---------- */
@media (max-width: 480px) {
    body { font-size: 14px; }

    /* Logo更小 */
    .logo-area img {
        max-height: 40px !important;
    }

    /* 导航更紧凑 */
    div[id*="nav"] > ul > li > a,
    .main-nav > ul.fu > li > a,
    .main-nav > li > a {
        padding: 11px 15px !important;
        font-size: 15px !important;
    }

    /* Banner更矮 */
    .section-hero {
        height: 50vh !important;
        min-height: 240px !important;
    }

    /* 单列卡片 */
    .grid-layout {
        grid-template-columns: 1fr !important;
    }
    .pic-grid {
        grid-template-columns: 1fr !important;
    }

    /* 图片列表 */
    .pic-card .img-box {
        height: 120px !important;
    }

    /* 文章标题 */
    .article-box div[id^="vsb_content"] h1 {
        font-size: 20px !important;
    }
    .article-box div[id^="vsb_content"] h2 {
        font-size: 17px !important;
    }

    /* 校训 */
    .motto-item {
        font-size: 17px !important;
        letter-spacing: 1px !important;
    }
    .motto-divider {
        font-size: 15px !important;
    }
}

/* ---------- 超宽屏 1920px+ ---------- */
@media (min-width: 1921px) {
    /* 所有容器最大宽度限制，防止内容铺满超宽屏 */
    .news-container, .grid-container, .foot-content {
        max-width: 1400px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .section-news, .section-grid {
        max-width: 100%;
    }
    /* Banner 在超宽屏确保铺满（全局已覆盖，此处作为双重保险） */
    .section-hero {
        width: 100% !important;
        overflow: hidden !important;
    }
    /* 装饰条区域也确保铺满 */
    .decor-section img {
        width: 100% !important;
        max-width: 100% !important;
        object-fit: cover !important;
    }
    /* 二级页面内容容器也限制最大宽度 */
    .list-container, .content-container {
        max-width: 1400px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    /* 页脚居中 */
    .foot-friendlink, .foot-info-row {
        max-width: 1400px !important;
    }
    /* 面包屑容器 */
    .content-breadcrumb .news-container {
        max-width: 1400px !important;
    }
    /* 分页居中 */
    .pagination {
        max-width: 1400px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* ---------- 首页滚动后 fixed 导航在移动端保持 relative ---------- */
@media (max-width: 768px) {
    .top-wrap.scrolled {
        position: relative !important;
        background: linear-gradient(135deg, #0a3d7c 0%, #1565c0 50%, #0a3d7c 100%) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }
    .top-wrap.scrolled .top-header {
        padding: 12px 15px !important;
    }
    .top-wrap.scrolled .logo-area img {
        max-height: 50px !important;
    }
    .top-wrap.scrolled .main-nav > li > a,
    .top-wrap.scrolled .main-nav > ul.fu > li > a,
    .top-wrap.scrolled div[id*="nav"] > ul > li > a {
        height: auto !important;
        line-height: inherit !important;
        font-size: 16px !important;
    }
    /* 二级页面 page-banner 缩小高度 */
    .page-banner {
        height: 120px !important;
        display: none !important;
    }
    /* 移动端隐藏滚动后导航缩小字号效果 */
    .top-wrap.scrolled .main-nav > li > a {
        height: auto !important;
        line-height: inherit !important;
        font-size: 16px !important;
    }
    /* 二级页面移动端 top-wrap 不需要 margin-top */
    body:not(:has(.section-hero)) .top-wrap {
        margin-top: 0 !important;
    }
    /* 移动端 article-box 内边距缩小 */
    .article-box {
        padding: 20px !important;
    }
    /* 移动端隐藏 nav-divider */
    .nav-divider {
        display: none !important;
        height: 0 !important;
    }
    /* 二级页面导航在移动端也纵向排列 */
    body:not(:has(.section-hero)) .top-wrap .nav-bar,
    body:not(:has(.section-hero)) .top-wrap .nav-container {
        width: 100% !important;
    }
    body:not(:has(.section-hero)) .top-wrap .main-nav,
    body:not(:has(.section-hero)) .top-wrap div[id*="nav"] > ul,
    body:not(:has(.section-hero)) .top-wrap .main-nav > ul.fu {
        flex-direction: column !important;
        width: 100% !important;
    }
    body:not(:has(.section-hero)) .top-wrap .main-nav > li,
    body:not(:has(.section-hero)) .top-wrap .main-nav > ul.fu > li,
    body:not(:has(.section-hero)) .top-wrap div[id*="nav"] > ul > li {
        width: 100% !important;
        text-align: left !important;
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    body:not(:has(.section-hero)) .top-wrap .main-nav > li > a,
    body:not(:has(.section-hero)) .top-wrap .main-nav > ul.fu > li > a,
    body:not(:has(.section-hero)) .top-wrap div[id*="nav"] > ul > li > a {
        padding: 14px 20px !important;
        height: auto !important;
        line-height: inherit !important;
        font-size: 16px !important;
        border-radius: 0 !important;
    }
    /* 二级页面下拉菜单移动端展开 */
    body:not(:has(.section-hero)) .top-wrap .main-nav > li:hover > ul,
    body:not(:has(.section-hero)) .top-wrap .main-nav > ul.fu > li:hover > ul,
    body:not(:has(.section-hero)) .top-wrap div[id*="nav"] > ul > li:hover > ul {
        position: static !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        background: rgba(0,40,90,0.95) !important;
    }
    body:not(:has(.section-hero)) .top-wrap .main-nav > li > ul > li > a,
    body:not(:has(.section-hero)) .top-wrap .main-nav > ul.fu > li > ul > li > a,
    body:not(:has(.section-hero)) .top-wrap div[id*="nav"] > ul > li > ul > li > a {
        padding: 12px 35px !important;
        font-size: 14px !important;
    }
}
/* ================= 视频展播页面样式 ================= */
.section-video {
    padding: 60px 0;
    background: linear-gradient(180deg, #fff 0%, #f8f9fa 100%);
    max-width: 100%;
    overflow: hidden;
}

.video-container {
    width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

.video-showcase {
    display: flex;
    gap: 30px;
    margin-top: 35px;
    min-height: 520px;
}

.video-main {
    flex: 2;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
}

.video-main:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 40px rgba(0,0,0,0.15);
}

.video-player {
    width: 100%;
    flex: 1;
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    min-height: 0;
}

.video-player video {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.video-player::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(ellipse at center, transparent 0%, rgba(0,0,0,0.3) 100%);
    pointer-events: none;
    z-index: 1;
}

.video-player video {
    z-index: 2;
    position: relative;
}

.video-list {
    flex: 1;
    background: #fff;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 8px 30px rgba(0,0,0,0.1);
    max-height: 520px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.video-thumbnails {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding-right: 8px;
}

/* 自定义滚动条 */
.video-thumbnails::-webkit-scrollbar {
    width: 6px;
}

.video-thumbnails::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

.video-thumbnails::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 3px;
}

.video-thumbnails::-webkit-scrollbar-thumb:hover {
    background: #a1a1a1;
}

.video-thumb {
    cursor: pointer;
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    position: relative;
    background: #f9f9f9;
}

.video-thumb:hover {
    border-color: #0056b3;
    transform: translateX(8px);
    box-shadow: 0 4px 12px rgba(0,86,179,0.2);
}

.video-thumb.active {
    border-color: #0056b3;
    background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
    box-shadow: 0 4px 12px rgba(0,86,179,0.3);
}

.video-thumb-img {
    width: 100%;
    height: 110px;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.video-thumb:hover .video-thumb-img {
    transform: scale(1.05);
}

.video-thumb.active {
    border-color: #0056b3;
    background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
    box-shadow: 0 4px 12px rgba(0,86,179,0.3);
}

.playing-indicator {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(0,86,179,0.9);
    color: #fff;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 11px;
    display: none;
    align-items: center;
    gap: 5px;
}

.video-thumb.active .playing-indicator {
    display: flex;
}

.playing-indicator::before {
    content: '▶';
    font-size: 10px;
}

/* 响应式适配 */
@media (max-width: 1400px) {
    .video-container {
        width: 96%;
    }
}

@media (max-width: 1200px) {
    .video-container {
        width: 96%;
    }
}

@media (max-width: 968px) {
    .video-showcase {
        flex-direction: column;
    }
    
    .video-player {
        height: 320px;
    }
    
    .video-list {
        max-height: none;
    }
    
    .video-thumbnails {
        flex-direction: row;
        flex-wrap: wrap;
        overflow-y: visible;
        overflow-x: auto;
    }
    
    .video-thumb {
        width: calc(50% - 8px);
        flex-shrink: 0;
    }
    
    .video-thumb:hover {
        transform: translateY(-3px);
    }
}

@media (max-width: 768px) {
    .section-video {
        padding: 40px 0;
    }
    
    .video-container {
        padding: 0 15px;
    }
    
    .video-player {
        height: 250px;
    }
    
    .video-info {
        padding: 18px 20px;
    }
    
    .video-title {
        font-size: 18px;
    }
    
    .video-thumb {
        width: 100%;
    }
    
    .video-thumbnails {
        flex-direction: column;
    }
    
    .video-thumb:hover {
        transform: translateX(5px);
    }
}

@media (max-width: 480px) {
    .video-player {
        height: 200px;
    }
    
    .video-title {
        font-size: 16px;
    }
    
    .video-desc {
        font-size: 13px;
    }
    
    .video-meta {
        flex-direction: column;
        gap: 8px;
    }
}

/* ================= 第三屏视频展播Banner文字样式 ================= */
.video-banner-wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0,86,179,0.15);
    height: 200px !important;
}

.video-banner-wrapper img,
.video-banner-wrapper > table,
.video-banner-wrapper > table img {
    height: 200px !important;
    width: 100%;
    object-fit: cover;
}

.video-banner-link {
    display: block;
    position: relative;
    cursor: pointer;
    transition: all 0.3s ease;
}

.video-banner-link:hover {
    transform: scale(1.02);
    box-shadow: 0 12px 40px rgba(0,86,179,0.25);
}

.video-banner-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        135deg,
        rgba(0,86,179,0.75) 0%,
        rgba(0,160,233,0.6) 50%,
        rgba(0,86,179,0.75) 100%
    );
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: all 0.3s ease;
}

.video-banner-link:hover .video-banner-overlay {
    background: linear-gradient(
        135deg,
        rgba(0,86,179,0.85) 0%,
        rgba(0,160,233,0.7) 50%,
        rgba(0,86,179,0.85) 100%
    );
}

.video-banner-title {
    font-size: 56px;
    font-weight: 800;
    color: #fff;
    text-shadow: 0 4px 12px rgba(0,0,0,0.5);
    letter-spacing: 8px;
    margin-bottom: 8px;
    animation: fadeInDown 0.8s ease;
    line-height: 1.2;
}

.video-banner-subtitle {
    font-size: 20px;
    color: rgba(255,255,255,0.95);
    font-weight: 400;
    letter-spacing: 4px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.4);
    animation: fadeInUp 0.8s ease 0.2s both;
    line-height: 1.4;
}

/* 动画效果 */
@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 响应式适配 */
@media (max-width: 1200px) {
    .video-banner-wrapper,
    .video-banner-wrapper img,
    .video-banner-wrapper > table,
    .video-banner-wrapper > table img {
        height: 180px !important;
    }
    .video-banner-title {
        font-size: 48px;
        letter-spacing: 6px;
    }
    .video-banner-subtitle {
        font-size: 18px;
        letter-spacing: 3px;
    }
}

@media (max-width: 768px) {
    .video-banner-wrapper,
    .video-banner-wrapper img,
    .video-banner-wrapper > table,
    .video-banner-wrapper > table img {
        height: 150px !important;
    }
    .video-banner-title {
        font-size: 36px;
        letter-spacing: 4px;
    }
    .video-banner-subtitle {
        font-size: 14px;
        letter-spacing: 2px;
    }
}

/* ===== :has() 兼容性回退：在不支持 :has() 的浏览器中，子页面默认走蓝色顶栏布局 ===== */
@supports not (selector(:has(*))) {
    .top-wrap {
        background: linear-gradient(135deg, #0a3d7c 0%, #1565c0 50%, #0a3d7c 100%) !important;
        position: relative !important;
        z-index: 100 !important;
        margin-top: -40px !important;
        padding-top: 10px !important;
    }
    .top-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 11px 40px !important;
        gap: 30px !important;
    }
    .honor-bar {
        display: flex !important;
        position: relative !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: #fff !important;
        background: rgba(0,0,0,0.2) !important;
        padding: 6px 40px !important;
    }
    .logo-area {
        flex-shrink: 0 !important;
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
    }
    .logo-area img { max-height: 100px !important; }
}