/* 笔记总览页（播客 / 博主 / 书）的「主站皮肤」：两份总览网页由 Obsidian 生成、原样上站，不改它们的源码；
   这份样式在上站时被注入到 </head> 前，把字体、颜色、页头对齐主站。
   注入由 scripts/笔记上站.py 完成，重新生成后跑一次即可。 */
:root, :root[data-theme="light"] {
  --bg: #f4f1ea; --fg: #2c2b28; --muted: #6b6a63; --rule: #e6e2d6;
  --accent: #9c2f26; --accent-soft: #f7e7e3; --card: #fffdf7; --chip: #eeece4;
  --sans: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Hiragino Sans GB', sans-serif;
  --serif: var(--sans);
  --mono: var(--sans);
}
/* 每份总览保留自己的强调色做区分（Bill 2026-09-23）：FIRE 藏蓝、顾小北墨绿、阳谋开源用主站红；页头一律主站红 */
body[data-pod="fire"] { --accent: #1F4E79; --accent-soft: #BFD0E2; }
body[data-pod="guxiaobei"] { --accent: #2E5E4E; --accent-soft: #CFE0D8; }
.site-nav { --accent: #9c2f26; }
body { padding: 0; }
.wrap { max-width: 44rem; padding-left: 20px; padding-right: 20px; }
h1, h2, h3, .theme h3, blockquote { font-family: var(--sans); }
h1 { font-weight: 800; letter-spacing: -0.01em; }
h2 { font-weight: 700; }
.kicker, h2 .no { font-family: var(--sans); letter-spacing: 0.12em; font-weight: 600; font-size: 12.5px; }
.facts, .ep .no, .theme .eps, .theme .tag { font-family: var(--sans); font-variant-numeric: tabular-nums; }
header.hero { border-bottom-color: var(--rule); }
a { border-bottom-color: transparent; }
a:hover { border-bottom-color: var(--accent); }

/* 主站页头（注入的 HTML） */
.site-nav { position: sticky; top: 0; z-index: 5; border-bottom: 1px solid var(--rule); background: color-mix(in srgb, var(--bg) 88%, transparent); backdrop-filter: blur(8px); }
.site-nav .in { max-width: 62rem; margin: 0 auto; padding: 12px 20px; display: flex; align-items: center; gap: 22px; font-family: var(--sans); font-size: 15px; }
.site-nav a { color: var(--muted); border: 0; }
.site-nav a:hover { color: var(--fg); }
.site-nav .brand { display: flex; align-items: center; gap: 10px; color: var(--fg); font-weight: 700; margin-right: 6px; }
.site-nav .brand img { width: 32px; height: 32px; border-radius: 50%; display: block; }
.site-nav .on { color: var(--accent); font-weight: 600; }
.site-nav .back { margin-left: auto; }
@media (max-width: 600px) { .site-nav .in { gap: 14px; padding: 10px 16px; font-size: 14px; overflow-x: auto; white-space: nowrap; scrollbar-width: none; } .site-nav .in::-webkit-scrollbar { display: none; } .site-nav .brand span { display: none; } }

/* 目录：桌面固定在正文左侧，手机折叠在顶部 */
.toc a { border: 0; color: var(--muted); }
.toc a:hover, .toc a.on { color: var(--accent); }
.toc ol { list-style: none; margin: 0; padding: 0; }
.toc li { margin: 0; line-height: 1.5; }
.toc .n { display: inline-block; width: 2.2em; font-variant-numeric: tabular-nums; font-size: 12px; opacity: 0.8; }
.toc-side { display: none; position: fixed; top: 84px; left: calc(50% - 22rem - 250px); width: 210px; max-height: calc(100vh - 110px); overflow: auto; font-size: 13.5px; font-family: var(--sans); }
.toc-side .toc-hd { font-size: 12px; letter-spacing: 0.12em; color: var(--muted); font-weight: 600; margin-bottom: 8px; }
.toc-side li { padding: 4px 0; border-left: 2px solid transparent; padding-left: 10px; margin-left: -12px; }
.toc-side li:has(a.on) { border-left-color: var(--accent); }
@media (min-width: 1180px) { .toc-side { display: block; } }
.toc-top { margin: 18px 0 4px; background: var(--card); border: 1px solid var(--rule); border-radius: 12px; padding: 10px 14px; font-family: var(--sans); font-size: 14px; }
.toc-top summary { cursor: pointer; font-weight: 600; list-style: none; }
.toc-top summary::-webkit-details-marker { display: none; }
.toc-top summary::after { content: '▾'; float: right; color: var(--muted); }
.toc-top[open] summary::after { content: '▴'; }
.toc-top ol { margin-top: 8px; }
.toc-top li { padding: 4px 0; border-top: 1px solid var(--rule); }
@media (min-width: 1180px) { .toc-top { display: none; } }

/* 页头是固定的，锚点跳转要给它让出位置，不然标题被盖住 */
html { scroll-behavior: smooth; }
h2, h3, [id] { scroll-margin-top: 74px; }  /* 页头 57px + 一点呼吸；别再叠 scroll-padding，会加倍 */
