﻿/* 主题栏目子页：同步首页顶部双层导航、下拉菜单、吸顶与页脚；同时缩小内容模块 */

/* ---------- 顶部第一栏：Logo + 快捷入口 + 搜索 ---------- */
.site-header{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  width:100% !important;
  z-index:999 !important;
  overflow:visible !important;
  background:transparent !important;
}
.site-header .topbar{
  position:relative !important;
  z-index:1002 !important;
  height:112px !important;
  padding:0 20px !important;
  background:linear-gradient(135deg,rgba(6,34,76,.98) 0%,rgba(11,99,206,.94) 100%) !important;
  border:0 !important;
  color:#fff !important;
}
.site-header .topbar-inner{
  width:min(1580px,calc(100% - 24px)) !important;
  max-width:none !important;
  height:100% !important;
  margin:0 auto !important;
  padding:0 16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}
.site-header .topbar-left{display:flex !important;align-items:center !important;gap:42px !important;min-width:0 !important;}
.site-header .topbar-logo{flex:0 0 auto !important;}
.site-header .topbar-logo img{
  height:112px !important;
  width:auto !important;
  max-width:none !important;
  margin-right:36px !important;
  object-fit:contain !important;
  filter:brightness(0) invert(1) !important;
}
.site-header .topbar-links{display:flex !important;align-items:center !important;white-space:nowrap !important;}
.site-header .topbar-links a{padding:0 18px !important;color:#fff !important;font-size:15px !important;font-weight:500 !important;}
.site-header .topbar-links a:hover{color:#d8efff !important;}
.site-header .separator{color:rgba(255,255,255,.48) !important;margin:0 12px !important;}
.site-header .topbar .header-tools{display:flex !important;align-items:center !important;flex:0 0 auto !important;}
.site-header .header-search{
  width:180px !important;height:44px !important;display:flex !important;align-items:center !important;
  overflow:hidden !important;border:1px solid rgba(255,255,255,.20) !important;border-radius:22px !important;
  background:rgba(7,28,57,.34) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 5px 16px rgba(0,0,0,.12) !important;
  backdrop-filter:blur(10px) !important;-webkit-backdrop-filter:blur(10px) !important;
}
.site-header .header-search::before{content:none !important;display:none !important;}
.site-header .header-search input{
  min-width:0 !important;height:100% !important;flex:1 1 auto !important;padding:0 9px 0 15px !important;
  border:0 !important;outline:0 !important;background:transparent !important;color:#fff !important;font-size:12px !important;
}
.site-header .header-search input::placeholder{color:rgba(255,255,255,.58) !important;}
.site-header .header-search button{
  width:42px !important;height:42px !important;flex:0 0 42px !important;padding:0 !important;border:0 !important;border-radius:50% !important;
  background:rgba(255,255,255,.10) !important;color:#fff !important;font-size:22px !important;line-height:42px !important;box-shadow:none !important;cursor:pointer !important;
}

/* ---------- 第二栏：与首页相同，覆盖在子页 banner 顶部 ---------- */
.site-header .brand.container{
  position:absolute !important;top:112px !important;left:0 !important;right:0 !important;
  width:100% !important;max-width:none !important;min-height:74px !important;height:74px !important;
  margin:0 !important;padding:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;
  background:linear-gradient(180deg,rgba(3,25,58,.82) 0%,rgba(3,31,70,.54) 26%,rgba(3,36,79,.28) 50%,rgba(3,36,79,.08) 68%,rgba(3,36,79,0) 80%,rgba(3,36,79,0) 100%) !important;
  border:0 !important;outline:0 !important;box-shadow:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
  z-index:1001 !important;
}
.site-header .brand.container::before,.site-header .brand.container::after,
.site-header .brand.container .main-nav::before,.site-header .brand.container .main-nav::after{content:none !important;display:none !important;}
.site-header .brand.container > .brand-main{display:none !important;visibility:hidden !important;margin:0 !important;padding:0 !important;width:0 !important;}
.site-header .brand.container > .header-tools{display:none !important;}
.site-header .brand.container .main-nav{
  width:100% !important;max-width:none !important;height:74px !important;margin:0 !important;padding:0 !important;
  display:flex !important;align-items:center !important;justify-content:center !important;background:transparent !important;box-shadow:none !important;overflow:visible !important;
}
.site-header .brand.container .nav-inner{
  width:100% !important;max-width:none !important;height:74px !important;margin:0 !important;padding:0 !important;
  display:grid !important;grid-template-columns:repeat(8,minmax(0,1fr)) !important;gap:0 !important;align-items:stretch !important;white-space:nowrap !important;
}
.site-header .brand.container .nav-inner > a,
.site-header .brand.container .nav-inner > .nav-item{
  width:auto !important;max-width:none !important;min-width:0 !important;margin:0 !important;padding:0 !important;flex:none !important;position:relative !important;
}
.site-header .brand.container .nav-inner > a,
.site-header .brand.container .nav-inner > .nav-item > a{
  width:100% !important;height:74px !important;margin:0 !important;padding:0 !important;
  display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;
  color:rgba(255,255,255,.96) !important;font-size:14px !important;font-weight:600 !important;line-height:74px !important;
  border:0 !important;box-shadow:none !important;
}
.site-header .brand.container .nav-inner > a::after,
.site-header .brand.container .nav-item > a::after{content:none !important;display:none !important;}
.site-header .brand.container .nav-inner > a:hover,
.site-header .brand.container .nav-inner > a.active,
.site-header .brand.container .nav-item:hover > a,
.site-header .brand.container .nav-item > a.active{
  background:linear-gradient(180deg,rgba(255,255,255,.11) 0%,rgba(255,255,255,.045) 48%,rgba(255,255,255,0) 76%,rgba(255,255,255,0) 100%) !important;
  color:#fff !important;
}

/* 下拉菜单：与首页一致，居中且紧凑 */
@media (min-width:1061px){
  .site-header .brand.container .main-nav .nav-item > .dropdown{
    position:absolute !important;top:74px !important;left:50% !important;right:auto !important;
    width:210px !important;min-width:210px !important;max-width:210px !important;margin:0 !important;padding:5px 0 !important;
    overflow:hidden !important;background:linear-gradient(180deg,rgba(16,60,101,.94) 0%,rgba(32,91,145,.92) 100%) !important;
    border:1px solid rgba(255,255,255,.10) !important;border-top:0 !important;border-radius:0 0 9px 9px !important;
    box-shadow:0 12px 28px rgba(2,22,50,.20) !important;backdrop-filter:blur(12px) !important;-webkit-backdrop-filter:blur(12px) !important;
    opacity:0 !important;visibility:hidden !important;transform:translate(-50%,7px) !important;transition:.22s ease !important;z-index:3200 !important;
  }
  .site-header .brand.container .main-nav .nav-item:hover > .dropdown{opacity:1 !important;visibility:visible !important;transform:translate(-50%,0) !important;}
  .site-header .brand.container .main-nav .nav-item > .dropdown > a{
    box-sizing:border-box !important;width:100% !important;height:auto !important;min-height:42px !important;margin:0 !important;padding:9px 12px !important;
    display:flex !important;align-items:center !important;justify-content:center !important;text-align:center !important;
    line-height:1.35 !important;white-space:normal !important;font-size:13px !important;font-weight:500 !important;color:rgba(255,255,255,.94) !important;
    background:transparent !important;border:0 !important;border-bottom:1px solid rgba(255,255,255,.08) !important;box-shadow:none !important;
  }
  .site-header .brand.container .main-nav .nav-item > .dropdown > a:last-child{border-bottom:0 !important;}
  .site-header .brand.container .main-nav .nav-item > .dropdown > a:hover{background:rgba(255,255,255,.12) !important;color:#fff !important;}
  .site-header .brand.container .main-nav .nav-item:last-child > .dropdown{left:auto !important;right:8px !important;transform:translateY(7px) !important;}
  .site-header .brand.container .main-nav .nav-item:last-child:hover > .dropdown{transform:translateY(0) !important;}

  /* 滚动后第二栏吸顶 */
  .site-header .brand.container.is-sticky-nav{
    position:fixed !important;top:0 !important;left:0 !important;right:0 !important;width:100% !important;z-index:3000 !important;
    background:linear-gradient(180deg,rgba(4,34,78,.98) 0%,rgba(7,66,130,.96) 58%,rgba(9,82,157,.94) 100%) !important;
    box-shadow:0 7px 24px rgba(1,25,61,.22) !important;backdrop-filter:blur(14px) !important;-webkit-backdrop-filter:blur(14px) !important;
  }
  .site-header .brand.container.is-sticky-nav .nav-inner > a:hover,
  .site-header .brand.container.is-sticky-nav .nav-inner > a.active,
  .site-header .brand.container.is-sticky-nav .nav-item:hover > a,
  .site-header .brand.container.is-sticky-nav .nav-item > a.active{background:rgba(255,255,255,.10) !important;}
}

/* ---------- 子页 banner 与第二栏自然叠加 ---------- */
.page-banner{position:relative !important;margin-top:0 !important;overflow:hidden !important;}
.page-banner .banner-content{z-index:3 !important;}

/* ---------- 主题栏目内容模块：与本科生教育统一尺寸 ---------- */
.subpage-body{padding-top:40px !important;padding-bottom:46px !important;}
.subpage-body .sub-content-area{
  width:min(980px,calc(100% - 120px)) !important;max-width:980px !important;margin-left:auto !important;margin-right:auto !important;
}
.subpage-body .content-main{
  box-sizing:border-box !important;width:100% !important;min-width:0 !important;
}
.subpage-body .party-news-column{padding:28px 32px !important;}
.subpage-body .party-news-header{margin-bottom:12px !important;padding-bottom:13px !important;}
.subpage-body .content-title{font-size:26px !important;line-height:1.35 !important;margin:0 !important;}
.subpage-body .party-news-breadcrumb{font-size:12px !important;}
.subpage-body .news-list{margin:0 !important;padding:0 !important;}
.subpage-body .news-list li{min-height:46px !important;padding:12px 0 !important;gap:18px !important;}
.subpage-body .news-list li a{font-size:14px !important;line-height:1.55 !important;}
.subpage-body .news-date{font-size:11.5px !important;white-space:nowrap !important;}
.subpage-body .pagination{margin-top:18px !important;}

.subpage-body .article-page{padding:32px 40px !important;}
.subpage-body .article-title{font-size:27px !important;line-height:1.5 !important;margin-top:0 !important;margin-bottom:12px !important;}
.subpage-body .article-meta{margin-bottom:12px !important;font-size:12px !important;}
.subpage-body .article-divider{margin-top:12px !important;margin-bottom:20px !important;}
.subpage-body .article-content{max-width:820px !important;margin:0 auto !important;font-size:15px !important;line-height:1.95 !important;}
.subpage-body .article-content p{margin-top:0 !important;margin-bottom:17px !important;}
.subpage-body .article-content img{display:block !important;max-width:88% !important;height:auto !important;margin:20px auto !important;}
.subpage-body .article-nav{margin-top:28px !important;padding-top:20px !important;}
.subpage-body .article-nav-row{gap:18px !important;}
.subpage-body .article-nav-item a{font-size:13px !important;line-height:1.55 !important;}

/* ---------- 页脚：完全同步首页 ---------- */
.site-footer{background:transparent !important;color:#fff !important;position:relative !important;overflow:hidden !important;isolation:isolate !important;}
.site-footer .footer-curve-bg{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;z-index:-1 !important;pointer-events:none !important;}
.site-footer .footer-curve-fill{fill:url(#footerGradient) !important;}
.site-footer .footer-curve-line{fill:none !important;stroke:url(#footerCurveLine) !important;stroke-width:2.5 !important;vector-effect:non-scaling-stroke !important;filter:drop-shadow(0 0 8px rgba(74,210,255,.48)) !important;}
.site-footer .footer-main{
  position:relative !important;z-index:1 !important;padding-top:105px !important;padding-bottom:30px !important;
  display:grid !important;grid-template-columns:1.4fr 1.05fr .7fr .5fr !important;gap:48px !important;
}
.site-footer .footer-brand{display:flex !important;align-items:center !important;justify-content:flex-start !important;min-width:0 !important;}
.site-footer .footer-brand .footer-brand-full-logo{
  width:470px !important;height:116px !important;max-width:none !important;object-fit:contain !important;object-position:left center !important;filter:none !important;background:transparent !important;
}
.site-footer .footer-main h3{font-size:15px !important;margin:0 0 16px !important;color:#7ce8ff !important;}
.site-footer .footer-main p,.site-footer .footer-main a{display:block !important;font-size:12px !important;color:rgba(255,255,255,.72) !important;line-height:2 !important;}
.site-footer .footer-main a:hover{color:#fff !important;}
.site-footer .footer-code{text-align:center !important;position:relative !important;z-index:5 !important;}
.site-footer .footer-qr{display:block !important;width:100px !important;height:100px !important;margin:0 auto !important;padding:5px !important;object-fit:contain !important;background:#fff !important;}
.site-footer .footer-code span{display:block !important;margin-top:10px !important;font-size:12px !important;color:rgba(255,255,255,.65) !important;}
.site-footer .footer-bottom{position:relative !important;z-index:1 !important;padding:8px 0 !important;border-top:1px solid rgba(255,255,255,.10) !important;background:rgba(2,15,38,.22) !important;}
.site-footer .footer-bottom .container{text-align:center !important;font-size:11px !important;color:rgba(255,255,255,.52) !important;}

@media (max-width:1366px) and (min-width:1061px){
  .site-header .topbar-inner{width:calc(100% - 16px) !important;padding:0 8px !important;}
  .site-header .topbar-logo img{height:106px !important;margin-right:18px !important;}
  .site-header .topbar-left{gap:18px !important;}
  .site-header .topbar-links a{padding:0 10px !important;font-size:13px !important;}
  .site-header .separator{margin:0 6px !important;}
  .site-header .header-search{width:165px !important;}
  .site-header .brand.container .nav-inner > a,
  .site-header .brand.container .nav-inner > .nav-item > a{font-size:13px !important;}
}

@media (max-width:1060px){
  .site-header .topbar-inner{justify-content:flex-start !important;}
  .site-header .topbar-links,.site-header .separator,.site-header .topbar .header-tools{display:none !important;}
  .site-header .brand.container{min-height:64px !important;height:64px !important;padding:0 24px !important;justify-content:flex-end !important;}
  .site-header .brand.container .menu-toggle{display:block !important;border:0 !important;background:rgba(255,255,255,.12) !important;color:#fff !important;font-size:24px !important;padding:8px 13px !important;}
  .site-header .brand.container .main-nav{display:none !important;height:auto !important;}
  .site-header .brand.container .main-nav.open{position:absolute !important;top:64px !important;left:0 !important;width:100% !important;display:block !important;background:rgba(5,45,94,.97) !important;backdrop-filter:blur(12px) !important;}
  .site-header .brand.container .nav-inner{height:auto !important;display:grid !important;grid-template-columns:repeat(2,1fr) !important;padding:12px 0 !important;}
  .site-header .brand.container .nav-inner > a,.site-header .brand.container .nav-inner > .nav-item > a{height:56px !important;line-height:56px !important;}
  .site-header .brand.container .dropdown{display:none !important;}
  .subpage-body .sub-content-area{width:calc(100% - 64px) !important;max-width:none !important;}
  .site-footer .footer-main{grid-template-columns:1fr 1fr !important;padding-top:95px !important;}
  .site-footer .footer-brand .footer-brand-full-logo{width:400px !important;height:104px !important;max-width:100% !important;}
}

@media (max-width:680px){
  .site-header .topbar{height:82px !important;display:block !important;}
  .site-header .topbar-inner{width:100% !important;padding:0 14px !important;}
  .site-header .topbar-logo img{height:82px !important;margin-right:0 !important;}
  .site-header .brand.container{top:82px !important;min-height:58px !important;height:58px !important;padding:0 14px !important;}
  .site-header .brand.container .main-nav.open{top:58px !important;}
  .site-header .brand.container .nav-inner{grid-template-columns:1fr !important;}
  .subpage-body{padding-top:28px !important;padding-bottom:34px !important;}
  .subpage-body .sub-content-area{width:calc(100% - 28px) !important;}
  .subpage-body .party-news-column,.subpage-body .article-page{padding:22px 18px !important;}
  .subpage-body .content-title{font-size:23px !important;}
  .subpage-body .article-title{font-size:23px !important;}
  .subpage-body .article-content{font-size:14px !important;}
  .subpage-body .article-content img{max-width:100% !important;}
  .site-footer .footer-main{grid-template-columns:1fr !important;gap:28px !important;padding-top:80px !important;padding-bottom:24px !important;}
  .site-footer .footer-brand .footer-brand-full-logo{width:320px !important;height:88px !important;max-width:100% !important;}
}


/* ============================================================
   主题栏目专属覆盖：外层 980px，文章正文 820px，与本科生教育一致
   ============================================================ */
.subpage-body{
  padding-top:40px !important;
  padding-bottom:46px !important;
}
.subpage-body .sub-content-area{
  width:min(980px,calc(100% - 120px)) !important;
  max-width:980px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:block !important;
}
.subpage-body .content-main{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

/* 四个专题入口与正文边界统一，桌面一整排等宽 */
.sub-nav{
  margin-top:-50px !important;
}
.sub-nav .sub-nav-inner{
  width:min(980px,calc(100% - 120px)) !important;
  max-width:980px !important;
  min-height:56px !important;
  height:auto !important;
  margin:0 auto !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  align-items:stretch !important;
  justify-content:stretch !important;
}
.sub-nav .sub-nav-item{
  width:100% !important;
  min-width:0 !important;
  min-height:56px !important;
  height:auto !important;
  padding:8px 10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  white-space:normal !important;
  font-size:13.5px !important;
  line-height:1.35 !important;
}

/* 列表页：直接沿用本科生教育列表尺寸，并略收紧顶部空白 */
.theme-list-page .party-news-column{
  width:100% !important;
  max-width:100% !important;
  padding:28px 32px !important;
}
.theme-list-page .party-news-header{
  margin-bottom:12px !important;
  padding-bottom:13px !important;
}
.theme-list-page .news-list li{
  min-height:46px !important;
  padding:12px 0 !important;
}
.theme-list-page .news-list li a{
  font-size:14px !important;
  line-height:1.55 !important;
}
.theme-list-page .news-date{
  font-size:11.5px !important;
}

/* 详情页：与本科生教育详情页统一，正文阅读宽度约 820px */
.theme-article-page .article-page{
  width:100% !important;
  max-width:980px !important;
  margin:0 auto !important;
  padding:32px 40px !important;
}
.theme-article-page .content-title.article-title{
  display:block !important;
  width:auto !important;
  max-width:820px !important;
  margin:0 auto 12px !important;
  padding:0 !important;
  font-size:27px !important;
  font-weight:700 !important;
  line-height:1.5 !important;
  letter-spacing:0 !important;
  color:#1a2a3a !important;
  text-align:center !important;
}
.theme-article-page .content-title.article-title::after,
.theme-article-page .content-title-line{
  display:none !important;
  content:none !important;
}
.theme-article-page .article-meta{
  max-width:820px !important;
  margin:0 auto 20px !important;
  text-align:center !important;
  font-size:12px !important;
  color:#8899aa !important;
}
.theme-article-page .article-content{
  max-width:820px !important;
  margin:0 auto !important;
  font-size:15px !important;
  line-height:1.95 !important;
  color:#334155 !important;
}
.theme-article-page .article-content p{
  margin:0 0 17px !important;
  font-size:15px !important;
  line-height:1.95 !important;
  text-align:justify !important;
}
.theme-article-page .article-content img{
  display:block !important;
  max-width:88% !important;
  height:auto !important;
  margin:20px auto !important;
}
.theme-article-page .article-nav{
  max-width:820px !important;
  margin:28px auto 0 !important;
  padding-top:20px !important;
}
.theme-article-page .article-nav a{
  font-size:13px !important;
  line-height:1.55 !important;
}
.theme-article-page .article-page > div[style*="margin-top"]{
  max-width:820px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* 两个外链占位页保持简洁，并与统一内容宽度一致 */
.theme-placeholder-page .content-main{
  padding:28px 32px !important;
}
.theme-placeholder-page .content-title{
  font-size:26px !important;
  line-height:1.35 !important;
  margin-bottom:18px !important;
}

@media (max-width:1060px){
  .sub-nav .sub-nav-inner{
    width:calc(100% - 64px) !important;
    max-width:none !important;
  }
  .sub-nav .sub-nav-item{
    font-size:13px !important;
    padding:8px 7px !important;
  }
}

@media (max-width:680px){
  .sub-nav{
    margin-top:-30px !important;
  }
  .sub-nav .sub-nav-inner{
    width:calc(100% - 28px) !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    padding:8px 0 !important;
  }
  .sub-nav .sub-nav-item{
    min-height:44px !important;
    padding:7px 8px !important;
    font-size:12px !important;
  }
  .theme-article-page .article-page,
  .theme-list-page .party-news-column,
  .theme-placeholder-page .content-main{
    padding:22px 18px !important;
  }
  .theme-article-page .content-title.article-title{
    font-size:23px !important;
  }
  .theme-article-page .article-content,
  .theme-article-page .article-content p{
    font-size:14px !important;
  }
  .theme-article-page .article-content img{
    max-width:100% !important;
  }
}