/* sxpg 子模板: 1:1 还原蝉知默认蓝( Cassiopeia child, auto-loaded as user.css ) */
:root {
  --sxpg-blue: #1e78d0;
  --sxpg-blue-dark: #155a9e;
  --sxpg-blue-head: #2b7cd4;
  --sxpg-red: #e81d34;
  --sxpg-gray: #888;
}

body { background: #fff; }

/* 全站定宽: 跟随Bootstrap断点(与内容区.container严格一致),1400+封顶1140 */
@media (width>=576px) {
  .container-nav, .container-banner > div, .container-footer .grid-child { max-width: 540px; }
}
@media (width>=768px) {
  .container-nav, .container-banner > div, .container-footer .grid-child { max-width: 720px; }
}
@media (width>=992px) {
  .container-nav, .container-banner > div, .container-footer .grid-child { max-width: 960px; }
}
@media (width>=1200px) {
  .container-nav, .container-banner > div, .container-footer .grid-child { max-width: 1140px; }
}
@media (width>=1400px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container { max-width: 1140px; }
  .container-nav, .container-banner > div, .container-footer .grid-child { max-width: 1140px; }
}

/* 横向对齐: 内容栅格整体定宽1140居中(与页头/导航/红条/页脚同一标准) */
.site-grid { max-width: 1140px; margin-left: auto; margin-right: auto; }
body, .site-grid { overflow-x: clip; }
.site-grid > .grid-child { padding-left: 0; padding-right: 0; }
/* 首页行间距: Cassiopeia 默认 grid-child 上下 2.5rem 太空,统一收至 12px 与各栏 gap 对齐 */
body.view-featured .site-grid > .grid-child { padding-top: 12px; padding-bottom: 12px; }
.container-nav,
.container-banner > div,
.container-footer .grid-child {
  max-width: 1140px; margin-left: auto; margin-right: auto;
  padding-left: 0; padding-right: 0;
}
.container-footer .grid-child { display: block; }
.container-footer .sxpg-chan { margin-bottom: 16px; }
.container-footer .sxpg-chan:last-child { margin-bottom: 0; }

/* 欢迎条(定宽居中) */
.sxpg-welcome {
  font-size: .8rem; color: #666; padding: .25rem 0;
  max-width: 1140px; margin: 0 auto;
}

/* 通栏 scenic 头图: 定宽1139居中,白底(与原站一致) */
.container-header { background: #fff; }
.container-header .grid-child:has(> .navbar-brand) {
  background: #fff url("/images/sxpg/source/default/default/561687226219_.jpg") no-repeat center top;
  background-size: 1139px auto;
  min-height: 283px;
}
@media (max-width: 1200px) {
  .container-header .grid-child:has(> .navbar-brand) { background-size: cover; min-height: 190px; }
}
.container-header .navbar-brand, .container-header .site-description { display: none; }

/* 导航条: 定宽1140居中,上方留白 + 蓝条(菜单左,搜索右),强制单行 */
.container-nav {
  background: var(--sxpg-blue); max-width: 1140px; margin: 10px auto 0;
  display: flex; align-items: center; flex-wrap: nowrap; padding: 0;
}
.container-nav > ul.mod-menu { flex: 1 1 auto; background: transparent; display: flex; flex-wrap: nowrap; min-width: 0; }
.container-nav > ul.mod-menu > li { flex: 0 0 auto; }
.container-search { padding-right: .6rem; flex: 0 0 auto; }
.container-search input { background: #fff; border: 1px solid #fff; width: 130px !important; }
ul.mod-menu > li > a {
  color: #fff !important; font-size: .92rem; padding: .6rem .55rem; white-space: nowrap;
}
ul.mod-menu > li > a:hover, ul.mod-menu > li.active > a {
  background: var(--sxpg-blue-dark); color: #fff !important;
}
ul.mod-menu .dropdown-menu a, ul.mod-menu__sub a { color: #333 !important; }
/* 协会概况下拉: 悬停展开白底子菜单 */
.container-nav > ul.mod-menu > li.deeper { position: relative; }
.container-nav > ul.mod-menu > li.deeper > a::after { content: " ▾"; font-size: .7rem; }
.container-nav ul.mod-menu__sub {
  display: none; position: absolute; top: 100%; left: 0; z-index: 1030;
  background: #fff; min-width: 220px; padding: .3rem 0; margin: 0;
  box-shadow: 0 4px 12px rgba(0,0,0,.18); border: 1px solid #e5e5e5; border-radius: 0 0 4px 4px;
}
.container-nav > ul.mod-menu > li.deeper:hover > ul.mod-menu__sub,
.container-nav > ul.mod-menu > li.deeper:focus-within > ul.mod-menu__sub { display: block; }
.container-nav ul.mod-menu__sub li { display: block; }
.container-nav ul.mod-menu__sub li a {
  display: block; padding: .45rem .9rem; white-space: nowrap; font-size: .88rem;
}
.container-nav ul.mod-menu__sub li a:hover { background: #f0f6fc; color: var(--sxpg-blue) !important; }

/* 导航下: 红横条(定宽居中,与内容同宽)
   源站实测: 导航块底 357 → 横幅 371 = 14px 间隙;
             div.block y=371 h=119, padding/margin 全为 0;
             img height:119px w=1140; 下一块 y=490 (=371+119, 无间隙) */
.container-banner { background: #fff; padding: 0; margin: 14px 0 0; }
.container-banner > div { max-width: 1140px; margin: 0 auto; padding: 0; }
.container-banner img { width: 100%; height: 119px; display: block; }

/* 顶部三栏: 幻灯4 + 财经6 + 微信2 */
.container-top-a { display: grid; grid-template-columns: minmax(0,4fr) minmax(0,6fr) minmax(0,2fr); gap: 12px; }

/* 频道区两栏等分(内容再长也不撑开轨道) */
.sxpg-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }

/* 幻灯行(轮播行)与下方频道行: 源站实测 14px(源 col h=309 含 panel h=295 + 14px 尾距),
   按甲方要求收至 7px。
   原实现叠了: top-a pb 12 + component pt 12 + 空的 .sxpg-body mt 16 + sxpg-cols mt 16 ≈ 64px,
   收至 7px(仅由 container-top-a 的 7px 下内距承担)。
   注意: 选择器须带 .site-grid > 以打平并压过第 35 行 .grid-child 的 (0,3,1), 否则不生效。 */
body.view-featured .site-grid > .container-top-a { padding-bottom: 7px; }
body.view-featured .container-top-a > div { margin-bottom: 0; }
body.view-featured .site-grid > .container-component { padding-top: 0; }
body.view-featured .container-component > .sxpg-body { margin: 0; }
body.view-featured .container-component > .sxpg-cols { margin-top: 0; }

/* 频道块: 蓝头白字 + 更多 */
.sxpg-chan { background: #fff; }
.sxpg-chan-head {
  background: var(--sxpg-blue-head); color: #fff;
  display: flex; justify-content: space-between; align-items: center;
  padding: .4rem .7rem; font-size: 1.05rem;
}
.sxpg-chan-head strong::before { content: "▣ "; }
.sxpg-chan-head .sxpg-more { color: #fff; font-size: .85rem; }
.sxpg-chan-body { padding: .4rem .2rem; }

/* 文章列表: 红菱形 + 日期右浮 + 省略 */
.mod-articlescategory { padding-left: 0; margin-bottom: 0; }
.mod-articlescategory li {
  list-style: none; border: none;
  padding: .22rem 0; display: flex; align-items: baseline;
  overflow: hidden; white-space: nowrap;
}
.mod-articlescategory li::before {
  content: "○"; color: #999; font-size: .7rem; margin-right: .35rem;
}
.mod-articlescategory .mod-articles-category-title {
  color: #333; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.mod-articlescategory .mod-articles-category-date {
  color: var(--sxpg-gray); font-size: .82rem; margin-left: auto; padding-left: .5rem;
}
.sxpg-sticky { color: var(--sxpg-red); font-size: .75rem; margin-left: .25rem; }

/* 轮播(防超宽) */
.sxpg-slides { position: relative; overflow: hidden; max-width: 100%; }
.sxpg-slides > div { display: none; max-width: 100%; }
.sxpg-slides > div.on { display: block; }
.sxpg-slides img { width: 100%; max-width: 100%; height: auto; display: block; }

/* 附件下载块 */
.com-content-article h3 { border-left: 4px solid var(--sxpg-blue); padding-left: .5rem; }

/* 页脚: 白底,友情链接与备案各独占一个蓝色条 */
.container-footer { background: #fff; }
.container-footer .grid-child { max-width: 1140px; margin: 0 auto; padding: 0; }
.container-footer .sxpg-chan {
  background: var(--sxpg-blue); border-radius: 4px; margin-bottom: 10px;
}
.container-footer .sxpg-chan-body { color: #fff; }
.container-footer a { color: #fff; text-decoration: none; }
.container-footer a:hover { color: #fff; text-decoration: underline; }
.sxpg-beian { text-align: center; font-size: .85rem; }
.sxpg-beian a { color: #fff; margin: 0 .3rem; }

/* ===== 栏目列表: 源站 .list 样式(白底边框 + 蓝表头 + 图文项) ===== */
.com-content-category-blog .list {
  background: #fff; border: 1px solid #ddd; border-radius: 3px;
  margin-bottom: 20px; color: #000;
}
.com-content-category-blog .list > header {
  padding: 8px 15px; background: var(--sxpg-blue-head); color: #fff;
  display: flex; align-items: center; gap: 14px;
}
.com-content-category-blog .list > header h2 {
  font-size: 14px; font-weight: 700; margin: 0; padding: 0; line-height: 20px; color: #fff;
  flex: 1 1 auto;
}
.com-content-category-blog .list > header .header span { font-size: 12px; color: #fff; }
.com-content-category-blog .items .item {
  padding: 10px 15px; border-bottom: 1px #ddd dotted; position: relative;
}
.com-content-category-blog .items .item:hover { background: #f5f5f5; }
.com-content-category-blog .items .item:last-child { border: none; }
.com-content-category-blog .items .item::after { content: ""; display: table; clear: both; }
.com-content-category-blog .media.pull-right { float: right; margin: 0 0 0 8px; }
.com-content-category-blog .thumbnail {
  padding: 4px; border: 1px solid #ddd; background: #fff; border-radius: 2px;
  max-width: 100px; height: auto; display: block;
}
.com-content-category-blog .item-heading h4 { margin: 5px 0 0; font-size: 15px; line-height: 1.5; }
.com-content-category-blog .item-heading h4 a { color: #333; text-decoration: none; }
.com-content-category-blog .item-heading h4 a:hover { color: var(--sxpg-blue); }
.com-content-category-blog .item-heading .text-muted { color: #757575; font-size: 12px; }
.com-content-category-blog .item-heading .text-muted.pull-right { float: right; margin-left: 8px; }
.com-content-category-blog .item-heading .text-muted i { margin-right: 2px; }
.com-content-category-blog .item-content { margin-top: 5px; }
.com-content-category-blog .item-content .text { color: #757575; font-size: 13px; line-height: 1.7; }
.com-content-category-blog__pagination { margin: 10px 0 20px; text-align: center; }
/* 兼容 list 布局的旧蓝条(当前菜单均用 blog 布局,留作兜底) */
.com-content-category-list > .page-header {
  background: var(--sxpg-blue-head); color: #fff;
  padding: .4rem .7rem; font-size: 1.05rem; margin-bottom: .6rem;
}
.com-content-category-list > .page-header h1 { color: #fff; font-size: 1.05rem; margin: 0; }

/* ===== 内页分栏: 有侧栏时 3:1(对应源站 col-main / col-side) ===== */
.sxpg-body:has(.container-article-side) {
  display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 1fr);
  gap: 20px; align-items: start;
}

/* ===== 文章详情: 白底 + 1px 灰边 + 圆角 ===== */
.item-page {
  background: #fff; border: 1px solid #ddd; border-radius: 3px;
  padding: 0; margin-bottom: 20px; color: #000;
}
.item-page > .page-header { padding: 10px 20px; }
.item-page > .page-header h1 {
  color: #333; font-size: 22px; line-height: 1.5;
  text-align: left; margin: 0; font-weight: 700;
}
/* 信息行: 时间/作者/栏目 内联, 阅读数另起一行 */
.item-page > .page-header .dl-inline {
  margin: 10px -20px 0; padding: 10px 0 0;
  font-size: 12px; color: #686868;
  background: none; border-radius: 0;
  border-top: 1px solid #e9e9e9;
}
.item-page .dl-inline dd {
  display: inline; margin: 0; padding: 0; font-weight: 400; color: #686868;
}
.item-page .dl-inline dd + dd { margin-left: 18px; }
.item-page .dl-inline dd i { color: #999; margin-right: 4px; }
.item-page .dl-inline a { color: #686868; text-decoration: none; }
.item-page .dl-inline a:hover { color: var(--sxpg-blue); }
.item-page .dl-inline .pull-right {
  float: none !important; display: inline; margin: 0;
}
/* 阅读数徽标 */
.item-page .label {
  display: inline-block; padding: 1px 8px; font-size: 11px;
  line-height: 1.7; color: #fff; border-radius: 3px;
}
.item-page .label i { color: #fff; margin-right: 3px; }
.item-page .label-warning { background: #f1a325; }

/* 正文区 */
.item-page .com-content-article__body { padding: 20px; font-size: 14px; line-height: 1.8; }
.com-content-article__body img {
  max-width: 100% !important; height: auto !important;
  border: 1px solid #e5e5e5; padding: 3px;
}
.com-content-article__body img[align="left"] { float: left; margin-right: 20px; }
.com-content-article__body img[align="right"] { float: right; margin-left: 20px; }
.com-content-article__body img[align="center"] { display: block; margin: 10px auto; }
.com-content-article__body ul, .com-content-article__body ol { margin-top: 10px; overflow: auto; }
.com-content-article__body table { width: 100%; margin-bottom: 20px; }
.com-content-article__body table td, .com-content-article__body table th {
  padding: 8px; vertical-align: top; border-bottom: 1px solid #ddd;
}
.com-content-article__body dl { padding: 0 2em; }
.com-content-article__body table thead th { background: #f1f1f1; vertical-align: bottom; }
.com-content-article__body > h1 { font-size: 20px; }
.com-content-article__body > h2 { font-size: 18px; }
.com-content-article__body > h3 { font-size: 16px; }

/* 附件下载列表 */
.com-content-article h3 { border-left: 4px solid var(--sxpg-blue); padding-left: .5rem; }
.item-page .com-content-article__body h3 + ul { padding-left: 1.2rem; }
.item-page .com-content-article__body h3 + ul li { margin-bottom: 4px; }

/* 上下篇: 单行左右分布(左上一篇 / 右下一篇), 带箭头 */
.item-page .pager { list-style: none; padding: 0 20px 10px; margin: 0; display: flex; gap: 12px; }
.item-page .pager > li { padding-top: 10px; font-size: 12px; min-width: 0; }
.item-page .pager > li.previous { margin-right: auto; }
.item-page .pager > li.next { margin-left: auto; }
.item-page .pager > li > a {
  display: inline-block; max-width: 100%; color: #333;
  text-decoration: none; overflow: hidden; text-overflow: ellipsis;
  white-space: nowrap; line-height: 1.6;
}
.item-page .pager > li > a:hover { color: var(--sxpg-blue); }
.item-page .pager > li > a i { color: #999; margin: 0 4px; }

/* ===== 侧栏: 联系我们(对应源站 panel-block-contact) ===== */
.container-article-side { padding: 0; }
.sxpg-panel {
  background: #fff; border: 1px solid #ddd; border-radius: 3px;
  margin-bottom: 20px; overflow: hidden;
}
.sxpg-panel > .sxpg-panel-head {
  background: var(--sxpg-blue-head); color: #fff;
  border-bottom: 1px solid #ddd; padding: .4rem .7rem;
  font-size: 1.05rem; font-weight: 700;
}
.sxpg-panel > .sxpg-panel-head i { margin-right: .4rem; }
.sxpg-panel .sxpg-panel-body { padding: .8rem 1rem; }
.sxpg-panel table { margin-bottom: 0; }
.sxpg-panel table th, .sxpg-panel table td { border: none; padding: .3rem 0; }
.sxpg-panel table th {
  font-weight: 700; white-space: nowrap; text-align: right;
  font-size: 12px; color: #333; width: 1%;
}
.sxpg-panel table td { word-break: break-all; color: #364245; font-size: 13px; }

/* 返回顶部 */
#sxpg-top {
  position: fixed; right: 18px; bottom: 60px; z-index: 1030;
  width: 44px; height: 44px; line-height: 44px; text-align: center;
  background: var(--sxpg-blue); color: #fff; border-radius: 4px;
  cursor: pointer; display: none; font-size: 1.2rem;
}
#sxpg-top.show { display: block; }

@media (max-width: 768px) {
  .container-top-a, .sxpg-cols { grid-template-columns: minmax(0, 1fr); }
  .sxpg-body:has(.container-article-side) { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .item-page > .page-header { padding: 8px 12px; }
  .item-page > .page-header .dl-inline { margin: 8px -12px 0; }
  .item-page .com-content-article__body { padding: 12px; }
  .site-grid > .grid-child { padding-left: 12px; padding-right: 12px; }
  .container-nav, .container-banner > div, .container-footer .grid-child { padding-left: 12px; padding-right: 12px; }
  /* 移动端: 正文宽表格横向滚动, 不撑破视口 */
  .com-content-article__body table { display: block; width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .com-content-article__body img[align="left"], .com-content-article__body img[align="right"] { float: none; display: block; margin: 10px auto; }
}
.container-header { min-height: 110px; }
ul.mod-menu > li > a { padding: .5rem .6rem; font-size: .92rem; }
