/* =========================================================
   正文排版统一
   ---------------------------------------------------------
   为什么单独一个文件：
   原来 #showinfo 的字号全靠继承（body 14px），标题用 em 往上放大，
   正文再配 #666 灰和 2em 行高。长文读起来正文弱、标题重，
   从 Word 或 AI 那边粘过来的稿子还会各自带 font-size，
   谁写得大谁说话，同一站内不同文章的字号能差一倍。

   这里把正文和各级标题全部改成固定 px，并加 !important：
   内联样式压不过它，所以即使老文章里还留着 <span style="font-size:12pt">，
   前台显示的字号也是统一的。

   正文 17px / 行高 1.9，和 info 站（theme-lmt.css 的 .entry）一致，
   两个站之间读感不要有落差。

   唯一的例外是下面那段「字号白名单」：
   info 站给编辑器里显式设过的字号开了一张通行证，只有这几个值认，
   其余一律回到站点默认。这里照搬同一套值，理由不去重复发明——
   两边同一个后台编辑器、同一批 AI 稿子，认的字号不该有两套。

   信源区（.ref-block）单独一套：14px 斜体，淡一点，
   和正文拉开层级但又不至于小到看不清。
   ========================================================= */

/* ---------- 正文主体 ---------- */
#showinfo,
.pd-body {
  font-size: 17px !important;
  line-height: 1.9 !important;
  color: #2a3140;
  letter-spacing: .2px;
}

#showinfo p,
.pd-body p {
  font-size: 17px !important;
  line-height: 1.9 !important;
  margin: 0 0 1.05em;
}

/* ---------- 标题：固定字号，不再用 em 往上乘 ---------- */
#showinfo h1, .pd-body h1 {
  font-size: 26px !important;
  line-height: 1.4 !important;
  margin: 42px 0 17px;
  color: #14181f;
  font-weight: 700;
}

#showinfo h2, .pd-body h2 {
  font-size: 22px !important;
  line-height: 1.5 !important;
  margin: 38px 0 15px;
  color: #14181f;
  font-weight: 700;
  position: relative;
  padding-left: 15px;
}

/* ---------- 章节标题前的红标 ----------
   来自 info 站的做法：那边是 `.entry h2 { border-left: 4px solid var(--gold) }`，
   金竖线。这里换成 www 的主色 #ad0101（导航选中、搜索按钮都是它）。

   用伪元素而不是 border-left，差别在折行的时候：border 的高度跟着整个盒子走，
   标题一旦折成两行，那根线就长到两行高、顶天立地，看着像表格的左框线；
   伪元素的 height 取 em，永远只是"一行字那么高"，多行时也只守在第一个字旁边。

   top: .2em 是垂直微调——基线以上那段空白在视觉上不算字，直接从盒顶起画会偏高。
   ========================================================= */
#showinfo h2::before, .pd-body h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: .2em;
  width: 4px;
  height: .92em;
  background: linear-gradient(180deg, #d81f1a, #ad0101);
  border-radius: 1px;
}

#showinfo h3, .pd-body h3 {
  font-size: 20px !important;
  line-height: 1.55 !important;
  margin: 32px 0 12px;
  color: #1f2633;
  font-weight: 700;
}

#showinfo h4,
.pd-body h4 {
  font-size: 18px !important;
  line-height: 1.6 !important;
  margin: 24px 0 9px;
  color: #1f2633;
  font-weight: 700;
}

#showinfo h5, .pd-body h5,
#showinfo h6, .pd-body h6 {
  font-size: 16px !important;
  line-height: 1.6 !important;
  margin: 20px 0 8px;
  color: #1f2633;
  font-weight: 700;
}

/* ---------- 列表 / 引用 / 表格 ---------- */
#showinfo li,
.pd-body li {
  font-size: 17px !important;
  line-height: 1.85 !important;
}

#showinfo ul, .pd-body ul,
#showinfo ol, .pd-body ol {
  margin: 0 0 1.05em;
  padding-left: 1.6em;
}

#showinfo ul, .pd-body ul { list-style: disc; }
#showinfo ol, .pd-body ol { list-style: decimal; }

#showinfo blockquote,
.pd-body blockquote {
  font-size: 17px !important;
  line-height: 1.85 !important;
  margin: 1.2em 0;
  padding: .6em 1em;
  border-left: 3px solid #d8dde6;
  background: #fafbfc;
  color: #4a5261;
}

#showinfo td, .pd-body td,
#showinfo th, .pd-body th {
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* =========================================================
   字号白名单
   ---------------------------------------------------------
   编辑器里显式写过的 font-size，只有下面这些值认。
   其余（10.5pt、1.2em、large 之类）一律不生效，回到 17px 正文。

   为什么要有这一层：全放开会让从 Word 粘来的稿子各自成一套字号；
   全关掉又会让「信源 14px 斜体」这类刻意的排版没了。
   白名单是这两者中间的那条线。

   注意选择器特异性：`#showinfo [style*=...]`（1 个 id + 1 个属性）
   强过 `#showinfo h2`（1 个 id + 1 个标签），所以 h2 里嵌了 14px
   的 span 也能压到 14px，不会被标题规则吃掉。
   ========================================================= */
#showinfo [style*="font-size"],
.pd-body [style*="font-size"],
#showinfo font[size],
.pd-body font[size] {
  line-height: 1.65;
}

#showinfo [style*="font-size:12px"], .pd-body [style*="font-size:12px"],
#showinfo [style*="font-size: 12px"], .pd-body [style*="font-size: 12px"] { font-size: 12px !important; }

#showinfo [style*="font-size:13px"], .pd-body [style*="font-size:13px"],
#showinfo [style*="font-size: 13px"], .pd-body [style*="font-size: 13px"] { font-size: 13px !important; }

#showinfo [style*="font-size:14px"], .pd-body [style*="font-size:14px"],
#showinfo [style*="font-size: 14px"], .pd-body [style*="font-size: 14px"] { font-size: 14px !important; }

#showinfo [style*="font-size:15px"], .pd-body [style*="font-size:15px"],
#showinfo [style*="font-size: 15px"], .pd-body [style*="font-size: 15px"] { font-size: 15px !important; }

#showinfo [style*="font-size:16px"], .pd-body [style*="font-size:16px"],
#showinfo [style*="font-size: 16px"], .pd-body [style*="font-size: 16px"] { font-size: 16px !important; }

#showinfo [style*="font-size:18px"], .pd-body [style*="font-size:18px"],
#showinfo [style*="font-size: 18px"], .pd-body [style*="font-size: 18px"] { font-size: 18px !important; }

#showinfo [style*="font-size:20px"], .pd-body [style*="font-size:20px"],
#showinfo [style*="font-size: 20px"], .pd-body [style*="font-size: 20px"] { font-size: 20px !important; }

#showinfo [style*="font-size:24px"], .pd-body [style*="font-size:24px"],
#showinfo [style*="font-size: 24px"], .pd-body [style*="font-size: 24px"] { font-size: 24px !important; }

#showinfo [style*="font-size:28px"], .pd-body [style*="font-size:28px"],
#showinfo [style*="font-size: 28px"], .pd-body [style*="font-size: 28px"] { font-size: 28px !important; }

#showinfo [style*="font-size:32px"], .pd-body [style*="font-size:32px"],
#showinfo [style*="font-size: 32px"], .pd-body [style*="font-size: 32px"] { font-size: 32px !important; }

#showinfo [style*="font-size:36px"], .pd-body [style*="font-size:36px"],
#showinfo [style*="font-size: 36px"], .pd-body [style*="font-size: 36px"] { font-size: 36px !important; }

#showinfo [style*="font-size:48px"], .pd-body [style*="font-size:48px"],
#showinfo [style*="font-size: 48px"], .pd-body [style*="font-size: 48px"] { font-size: 48px !important; }

/* Word / 老编辑器留下的 <font size="1..7">，按同一张对照表还原 */
#showinfo font[size="1"], .pd-body font[size="1"] { font-size: 12px !important; }
#showinfo font[size="2"], .pd-body font[size="2"] { font-size: 13px !important; }
#showinfo font[size="3"], .pd-body font[size="3"] { font-size: 16px !important; }
#showinfo font[size="4"], .pd-body font[size="4"] { font-size: 18px !important; }
#showinfo font[size="5"], .pd-body font[size="5"] { font-size: 24px !important; }
#showinfo font[size="6"], .pd-body font[size="6"] { font-size: 32px !important; }
#showinfo font[size="7"], .pd-body font[size="7"] { font-size: 48px !important; }

/* ---------- 文末信源：14px 斜体 ----------
   这里刻意不加边框、不改颜色。
   原因很实际：站上有一部分文章是 n8n 发过来的，它们信源节自带内联
   font-size:14px + <em>，本来就已经是 14px 斜体，根本没有 .ref-block；
   只有从 Word / 网页手动粘的稿子才需要它兜底。
   如果这里再画一条虚线、把字染灰，两种来源的文章就会长得不一样——
   同一个站，读者看到两种信源样式，那比不统一还难受。
   所以 .ref-block 只做一件事：把字号和斜体补齐，其余一概不管——
   容器本身不设样式（div 是块级，里面 p 的 margin 照常折叠，等于不存在），
   文末那条 <hr> 也原样留着，别家文章有、它也得有。
   ========================================================= */
#showinfo .ref-block h2, .pd-body .ref-block h2,
#showinfo .ref-block h3, .pd-body .ref-block h3,
#showinfo .ref-block h4, .pd-body .ref-block h4 {
  font-size: 14px !important;
  line-height: 1.75 !important;
  font-style: italic;
  font-weight: 600;
  margin: 0 0 .7em;
}

/* 信源节里的 h2 是 14px 的小字标题，前面再挂个红标就成了噪音；
   缩进也一起取消，否则那几行会比正文往右错开一小截 */
#showinfo .ref-block h2, .pd-body .ref-block h2 {
  padding-left: 0;
}

#showinfo .ref-block h2::before, .pd-body .ref-block h2::before {
  display: none;
}

#showinfo .ref-block p, .pd-body .ref-block p,
#showinfo .ref-block li, .pd-body .ref-block li,
#showinfo .ref-block div, .pd-body .ref-block div,
#showinfo .ref-block span, .pd-body .ref-block span,
#showinfo .ref-block td, .pd-body .ref-block td {
  font-size: 14px !important;
  line-height: 1.75 !important;
  font-style: italic;
  margin: 0 0 .45em;
}

/* ---------- 小屏 ---------- */
@media screen and (max-width: 768px) {
  #showinfo, .pd-body { font-size: 16px !important; }
  #showinfo p, .pd-body p { font-size: 16px !important; }
  #showinfo h2, .pd-body h2 { font-size: 20px !important; padding-left: 12px; margin: 30px 0 12px; }
  #showinfo h3, .pd-body h3 { font-size: 18px !important; margin: 26px 0 10px; }
  #showinfo li, .pd-body li { font-size: 16px !important; }
  #showinfo .ref-block h2, .pd-body .ref-block h2 { padding-left: 0; }
}
