/* Single article specific styles: improve readability, TOC, progress bar and navigation */
.blog-single .blog-content {
  max-width: 780px;
  margin: 0 auto;
  font-size: 1.06rem;
  line-height: 1.85;
  color: #101217;
}
.blog-single .blog-content img {
  border-radius: 0.6rem;
  box-shadow: 0 8px 28px rgba(15,20,20,0.06);
}
/* Slightly smaller H2 for single post to improve hierarchy and reduce visual weight */
.blog-single .blog-content h2 {
  font-size: 1.6rem; /* reduced from larger theme defaults */
  line-height: 1.18;
  margin-top: 0.8rem;
  margin-bottom: 0.6rem;
  color: #184235;
}
.blog-single .blog-content h3 {
  font-size: 1.28rem;
  line-height: 1.22;
  margin-top: 0.7rem;
  margin-bottom: 0.5rem;
}

/* Reduce page title (H1/.sec-title) on single post pages for better balance */
.blog-single .sec-title, .blog-single h1 {
  font-size: 1.8rem; /* smaller than demo to match article body */
  line-height: 1.06;
  margin-bottom: 0.6rem;
  font-weight: 700;
}
.article-toc {
  background: #fff;
  border: 1px solid #e6f3ed;
  /* remove sticky behavior: TOC should not be fixed/sticky */
  position: static;
  top: auto;
  z-index: auto;
}
.article-toc .article-toc-title { font-size: 0.98rem; }
.article-toc ul { margin: 0; }
.article-toc .article-toc-link { color: #1f4f3d; font-weight:600; }
.article-toc .article-toc-link.active { text-decoration: underline; color: #0b6b45; }
/* Small screen: collapse TOC behind a toggle */
@media (max-width: 991.98px) {
  .article-toc { position: static; top: auto; }
  /* TOC toggle removed - keep list visible on mobile */
  .article-toc .article-toc-list { display: block; }
}
/* Read progress bar */
.reading-progress { position: fixed; left: 0; top: 0; height: 4px; background: linear-gradient(90deg,#2f8f61,#2b6d4a); width: 0%; z-index: 9999; transition: width 120ms linear; }
/* Author card improvements */
.post-admin { display:flex; gap:1rem; align-items:center; padding:1rem; border-radius: .8rem; background: linear-gradient(180deg,#fff,#fbfffb); border:1px solid #e7f4ec; }
.post-admin .post-img img { width:72px; height:72px; object-fit:cover; border-radius:999px; }
/* Prev/Next layout tweaks */
.post-pagination .post-pagi-box { display:flex; gap:.75rem; align-items:center; }
.post-pagi-box .post-pagi-title a { color:#184235; font-weight:700; }
.post-pagi-img img { width:96px; height:64px; object-fit:cover; border-radius:.5rem; }
/* Hide the circular date badge inside prev/next previews to avoid overlap */
.post-pagi-box .blog-date { display: none !important; }
/* Slightly align prev/next content vertically and reduce spacing */
.post-pagi-box { align-items: center; }
.post-pagi-box .post-pagi-name { display:block; font-size:0.85rem; color:#6b7a6f; font-weight:700; }

/* Top badge for single article date (moved above content) */
.blog-single .blog-date {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1px solid #e6f3ed;
  color: #184235;
  padding: 0.5rem 0.75rem;
  border-radius: 0.6rem;
  font-weight: 700;
  box-shadow: 0 6px 18px rgba(15,20,20,0.06);
  margin: 0 0 0.9rem 0;
}
.blog-single .blog-date span { font-size:0.78rem; color:#6b7a6f; font-weight:600; }

/* Reduce gap below the title-area when badge present */
.blog-single .title-area { margin-bottom: 0.6rem; }
/* Smooth anchor scroll offset helper */
:target { scroll-margin-top: calc(var(--header-height, 72px) + 18px); }
