/**
 * 博客单篇页布局 + 新博客样式 v2
 * 仅在 is_singular('post') 时通过 functions.php 加载
 *
 * 注意：勿再写全局 .section / html rem —— 全站已由 plugins/tsingoal.css 提供。
 * 若此处再写 .section，会与 tsingoal.css 抢层叠，导致标题宽于正文。
 */

/* ========== 单篇通用布局 ========== */
/*
 * 顶栏写在 #main > .fusion-row 内，Avada 默认 max-width:1126px 会把导航掐窄。
 * 以前内联在 single.php 正文后能压过动态 CSS；抽成独立文件后需 !important。
 */
#main .fusion-row {
  max-width: 100% !important;
  width: 100% !important;
}

#main {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.post-content {
  margin: 0 auto;
}

/* 提高优先级，压过 tsingoal.css 的 .section { 87.55rem }，保证标题与正文同为 700 */
#content .post-common-width,
#content .section.post-common-width,
#content .post-content.post-common-width {
  width: 700px !important;
  max-width: 700px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media only all and (max-width: 1255px) {
  #content .post-common-width,
  #content .section.post-common-width,
  #content .post-content.post-common-width {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding-left: calc(1.25 * 16px);
    padding-right: calc(1.25 * 16px);
  }
}

.avada-page-titlebar-wrapper {
  display: none !important;
}

/* 旧文：图片自适应（不做强制排版） */
.post-content:not(.post-content--v2) img {
  max-width: 100% !important;
  height: auto !important;
}

/* 旧文页头默认（v2 由下方 .blog-style-v2 覆盖） */
#content .blog-post-header {
  padding-top: 3.75rem;
  border-bottom: 1px solid #d8d8d8;
}

#content .blog-post-title {
  font-size: 1.875rem;
  margin-bottom: 0.9375rem;
  font-family: s-demibold;
  color: #252b3a;
  line-height: 2.4375rem;
}

#content .blog-post-date {
  font-size: 0.875rem;
  color: #666;
  margin-bottom: 2.25rem;
}

/* 旧文上下篇 */
body:not(.blog-style-v2) #content .desc-pagtion {
  padding-top: 15px;
  margin-bottom: 85px;
  border-top: 1px solid #d8d8d8;
}

body:not(.blog-style-v2) #content .desc-pagtion .prev {
  font-size: 16px;
  margin-bottom: 16px;
}

body:not(.blog-style-v2) #content .desc-pagtion .next {
  font-size: 16px;
}

/* ========== 新博客样式 v2（仅 body.blog-style-v2） ========== */
.blog-style-v2 .blog-post-header {
  padding-top: 3.75rem !important; /* 60px 距顶栏 */
  border-bottom: 1px solid #d8d8d8 !important;
}

.blog-style-v2 .blog-post-header .blog-post-title {
  font-size: 1.875rem !important; /* 30px */
  line-height: 2.5rem !important; /* 40px */
  margin-bottom: 1rem !important; /* 16px */
  font-family: s-semibold !important;
  color: #252b3a !important;
}

.blog-style-v2 .blog-post-header .blog-post-date {
  font-size: 0.875rem !important; /* 14px */
  line-height: normal !important;
  color: #b1b5bb !important;
  margin-bottom: 2.25rem !important; /* 36px 到线条 */
  font-family: s-regular !important;
}

/* 分割线 → 下文（头图或正文）统一 40px */
.blog-style-v2 #content > article.post {
  margin-top: 2.5rem !important;
}

/* 正文：全后代继承重置，消化脏 HTML / inline */
.blog-style-v2 .post-content--v2,
.blog-style-v2 .post-content--v2 * {
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  color: inherit !important;
  letter-spacing: normal !important;
  background: transparent !important;
}

.blog-style-v2 .post-content--v2 {
  font-family: s-regular !important;
  font-size: 0.9375rem !important; /* 15px */
  line-height: 1.5rem !important; /* 24px */
  color: #252b3a !important;
}

.blog-style-v2 .post-content--v2 p {
  font-family: s-regular !important;
  font-size: 0.9375rem !important;
  line-height: 1.5rem !important;
  color: #252b3a !important;
  margin: 0 0 1rem !important; /* 段间距 16px */
}

.blog-style-v2 .post-content--v2 a {
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

.blog-style-v2 .post-content--v2 strong,
.blog-style-v2 .post-content--v2 b {
  font-family: s-demibold !important;
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: normal !important;
}

/* 一级标题（正文内 h1，与页头同规格） */
.blog-style-v2 .post-content--v2 h1,
.blog-style-v2 .post-content--v2 h1 * {
  font-family: s-semibold !important;
  font-size: 1.875rem !important;
  line-height: 2.5rem !important;
  color: #252b3a !important;
  font-weight: normal !important;
}

.blog-style-v2 .post-content--v2 h1 {
  margin: 2.5rem 0 1.25rem !important;
}

/* 二级标题 */
.blog-style-v2 .post-content--v2 h2,
.blog-style-v2 .post-content--v2 h2 * {
  font-family: s-semibold !important;
  font-size: 1.375rem !important; /* 22px */
  line-height: 1.875rem !important; /* 30px */
  color: #252b3a !important;
  font-weight: normal !important;
}

.blog-style-v2 .post-content--v2 h2 {
  margin: 2.5rem 0 1.25rem !important; /* 上 40 / 下 20 */
}

/* 三级标题 */
.blog-style-v2 .post-content--v2 h3,
.blog-style-v2 .post-content--v2 h3 * {
  font-family: s-demibold !important;
  font-size: 1.25rem !important; /* 20px */
  line-height: 1.6875rem !important; /* 27px */
  color: #252b3a !important;
  font-weight: normal !important;
}

.blog-style-v2 .post-content--v2 h3 {
  margin: 1.25rem 0 0.625rem !important; /* 上 20 / 下 10 */
}

/* 四级标题 */
.blog-style-v2 .post-content--v2 h4,
.blog-style-v2 .post-content--v2 h4 * {
  font-family: s-demibold !important;
  font-size: 1.0625rem !important; /* 17px */
  line-height: 1.4375rem !important; /* 23px */
  color: #252b3a !important;
  font-weight: normal !important;
}

.blog-style-v2 .post-content--v2 h4 {
  margin: 1.25rem 0 0.625rem !important; /* 上 20 / 下 10 */
}

/* 标题内加粗仍用 demibold，字号跟标题 */
.blog-style-v2 .post-content--v2 h1 strong,
.blog-style-v2 .post-content--v2 h1 b,
.blog-style-v2 .post-content--v2 h2 strong,
.blog-style-v2 .post-content--v2 h2 b {
  font-family: s-demibold !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

.blog-style-v2 .post-content--v2 ul {
  list-style-type: disc !important;
  list-style-position: outside !important;
  margin: 0 0 1rem !important;
  padding-left: 1.5rem !important;
}

.blog-style-v2 .post-content--v2 ol {
  list-style-type: decimal !important;
  list-style-position: outside !important;
  margin: 0 0 1rem !important;
  padding-left: 1.5rem !important;
}

.blog-style-v2 .post-content--v2 li {
  display: list-item !important;
  list-style: inherit !important;
  font-size: 0.9375rem !important;
  line-height: 1.5rem !important;
  margin: 0 0 1rem !important;
  color: #252b3a !important;
}

.blog-style-v2 .post-content--v2 li:last-child {
  margin-bottom: 0 !important;
}

.blog-style-v2 .post-content--v2 img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  border-radius: 0 !important;
  margin: 1.25rem 0 !important; /* 图文间距 20px */
}

/* 首个子元素去掉顶距，避免与 article padding-top 叠出双倍 */
.blog-style-v2 .post-content--v2 > *:first-child {
  margin-top: 0 !important;
}

.blog-style-v2 .post-content--v2 > h1:first-child,
.blog-style-v2 .post-content--v2 > h2:first-child,
.blog-style-v2 .post-content--v2 > h3:first-child,
.blog-style-v2 .post-content--v2 > h4:first-child {
  margin-top: 0 !important;
}

/* 正文末 → 横线只保留 40px，去掉末段自身底边距 */
.blog-style-v2 .post-content--v2 > *:has(+ .desc-pagtion) {
  margin-bottom: 0 !important;
}

/* 上下篇：在 post-content 内，需压过正文重置 */
.blog-style-v2 .post-content--v2 .desc-pagtion {
  margin-top: 2.5rem !important; /* 正文末 → 横线 40px */
  margin-bottom: 6.25rem !important; /* → footer 100px */
  padding-top: 1.25rem !important; /* 横线 → 推荐区 20px */
  border-top: 1px solid #d8d8d8 !important;
  font-family: s-regular !important;
  font-size: 0.9375rem !important; /* 15px */
  line-height: 1.25rem !important; /* 20px */
  color: #252b3a !important;
  background: transparent !important;
  letter-spacing: normal !important;
}

.blog-style-v2 .post-content--v2 .desc-pagtion,
.blog-style-v2 .post-content--v2 .desc-pagtion * {
  font-family: s-regular !important;
  font-size: 0.9375rem !important;
  line-height: 1.25rem !important;
  color: #252b3a !important;
  background: transparent !important;
  letter-spacing: normal !important;
}

.blog-style-v2 .post-content--v2 .desc-pagtion .prev {
  margin-bottom: 0.625rem !important; /* 上一条与下一条 10px */
}

.blog-style-v2 .post-content--v2 .desc-pagtion a {
  color: #252b3a !important;
  text-decoration: none !important;
}

.blog-style-v2 .post-content--v2 .desc-pagtion a:hover {
  color: #008ecf !important;
}
