/* 文章页（博客）统一对比度与响应式兜底（2026-08-01）
   原因：259 篇文章页各自内联样式、class 名不统一、质量参差。
   本文件以"通用元素级 + !important"兜底：确保浅色背景上的正文文字足够深（对比度≥7:1），
   移动端防止横向溢出、保证基础可读性。不改动深色 hero/引述卡内的标题与强调文字。 */

/* 1) 正文文字对比度兜底（浅底深字） */
article p,
article li,
article td,
article th,
article dd,
article dt,
article blockquote,
article figcaption,
article .author-bio,
article .side-box li,
article .label,
article .desc,
article .excerpt {
  color: #1f2933 !important;
}

/* 次级说明文字（原本 #999/#aaa 过浅）加深，仍与正文区分 */
article .author-bio,
article .meta,
article .sub,
article .tag,
article .date,
article .paper-date,
article .byline {
  color: #52606d !important;
}

/* 2) 链接在浅底上保证可见 */
article a:not(.fc-btn):not(.af-links a) {
  color: #1f4e9c !important;
}

/* 3) 移动端响应式兜底 */
@media (max-width: 768px) {
  article { font-size: 16px !important; line-height: 1.85 !important; }
  article img,
  article video,
  article iframe {
    max-width: 100% !important;
    height: auto !important;
  }
  article table {
    font-size: 13px !important;
    display: block !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }
  article :is(h1, h2, h3, h4) {
    line-height: 1.35 !important;
    word-break: break-word;
  }
  article .hero,
  article .article-header,
  article .masthead,
  article .hero-section,
  article .hero-banner {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* 4) 防止任何区块横向溢出 */
article * {
  max-width: 100%;
}
article pre,
article code {
  white-space: pre-wrap !important;
  word-break: break-word;
}
