/* /s/<id> —— 一个故事的页面。沿用 nb.css 的字号与颜色,只加一列版式。 */
.story-body { min-height: 100vh; }
.story-back { padding: 6px 12px; border-radius: 4px; color: var(--reader-body); text-decoration: none; font: 500 13px/1.2 var(--ui-font); }
.story-back:hover { background: var(--hover); }
.story { max-width: 720px; margin: 0 auto; padding: 36px 20px 64px; }
.story-kicker { display: flex; align-items: center; gap: 12px; margin: 0 0 14px; color: var(--reader-muted); font: 500 12px/1.4 var(--ui-font); font-variant-numeric: tabular-nums; }
.story-angle { display: inline-flex; align-items: center; gap: 6px; padding: 1px 6px; border: 1px solid var(--line); border-radius: 2px; background: transparent; color: var(--ink); text-decoration: none; font: 400 12px/1.4 var(--ui-mono); }
.story-angle::before { content: none; }
.story-title { margin: 0; font: 700 26px/1.3 var(--ui-font); letter-spacing: -.01em; }
.story-title a { color: var(--reader-body); text-decoration: none; }
.story-title a:hover { color: var(--reader-accent); }
.story-original-title { margin: 8px 0 0; color: var(--reader-muted); font: 400 15px/1.5 var(--ui-font); }
.story-summary { margin: 18px 0 0; font: 400 15px/1.7 var(--ui-font); color: var(--reader-body); }
.story-face { margin: 14px 0 0; color: var(--reader-muted); font: 400 13px/1.5 var(--ui-font); }
.story-reports { margin-top: 36px; padding-top: 18px; border-top: 1px solid var(--reader-line); }
.story-reports h2 { margin: 0 0 6px; color: var(--reader-muted); font: 600 11px/1.4 ui-monospace, Menlo, monospace; letter-spacing: .08em; text-transform: uppercase; }
.story-reports ol { list-style: none; margin: 0; padding: 0; }
.story-member { display: grid; gap: 2px; padding: 12px 0; border-bottom: 1px solid var(--reader-line); }
.story-member > a { color: var(--reader-body); text-decoration: none; font: 600 15px/1.45 var(--ui-font); }
.story-member > a:hover { color: var(--reader-accent); }
.story-member--first > a::after { content: '首发'; margin-left: 8px; padding: 1px 6px; border-radius: 3px; background: var(--reader-active); color: var(--reader-accent); font: 600 10px/1.4 var(--ui-font); vertical-align: middle; }
.story-original { color: var(--reader-muted); font: 400 13px/1.5 var(--ui-font); }
.story-source { color: var(--reader-muted); font: 400 12px/1.5 var(--ui-font); font-variant-numeric: tabular-nums; }
.story-foot { margin-top: 32px; color: var(--reader-muted); font: 400 13px/1.5 var(--ui-font); }
.story-foot a { color: var(--reader-accent); text-decoration: none; }
@media (max-width: 800px) { .story { padding: 24px 16px 48px; } .story-title { font-size: 22px; } }

/* /columns 与 /c/<id> —— 专栏:专题 chip、导语、正文小标题与脚注、分组材料、列表卡与筛选条。颜色只读 token。 */
.column-kicker { flex-wrap: wrap; gap: 6px 10px; }
.column-topic { display: inline-block; padding: 2px 9px; border: 1px solid var(--reader-line); border-radius: 999px; color: var(--reader-muted); text-decoration: none; font: 500 11px/1.5 var(--ui-font); }
.sd a.column-topic { color: var(--reader-muted); }
.sd a.column-topic:hover { border-color: var(--reader-accent); color: var(--reader-accent); }
.column-auto { padding: 2px 8px; border-radius: 3px; background: var(--reader-active); color: var(--reader-accent); font-weight: 600; }
.column-lede { margin: 16px 0 0; color: var(--reader-body); font: 400 18px/1.7 var(--ui-font); }
.column-body { margin-top: 28px; }
.column-body h2 { margin: 30px 0 10px; font: 700 18px/1.4 var(--ui-font); letter-spacing: -.01em; }
.column-body p { margin: 0 0 16px; font: 400 16px/1.85 var(--ui-font); }
.col-cites { margin-left: 2px; }
.col-cites a { color: var(--reader-accent); text-decoration: none; font-size: 11px; margin-left: 1px; }
.column-materials h3 { margin: 18px 0 2px; color: var(--reader-body); font: 600 13px/1.5 var(--ui-font); }
.column-sources li { display: flex; gap: 8px; padding: 7px 0; border-bottom: 1px solid var(--reader-line); font: 400 14px/1.55 var(--ui-font); }
.column-sources li:target { background: var(--reader-active); box-shadow: 0 0 0 6px var(--reader-active); }
.column-src-n { flex: 0 0 auto; color: var(--reader-muted); font-variant-numeric: tabular-nums; }
.column-src { min-width: 0; }
.sd .column-src > a { color: var(--reader-body); text-decoration: none; overflow-wrap: anywhere; }
.sd .column-src > a:hover { color: var(--reader-accent); }
.column-src .story-source { display: block; }
.column-note { margin-top: 24px; line-height: 1.7; }
.column-filter { display: flex; flex-wrap: wrap; gap: 6px; margin: 22px 0 0; }
.sd .column-filter a { padding: 4px 11px; border: 1px solid var(--reader-line); border-radius: 999px; color: var(--reader-body); text-decoration: none; font: 500 13px/1.4 var(--ui-font); }
.column-filter a small { margin-left: 4px; color: var(--reader-muted); font-size: 11px; font-variant-numeric: tabular-nums; }
.sd .column-filter a:hover { border-color: var(--reader-accent); color: var(--reader-accent); }
.sd .column-filter a[aria-current="page"] { border-color: transparent; background: var(--reader-selected-bg); color: var(--reader-selected-ink); font-weight: 600; }
.sd .column-filter a[aria-current="page"] small { color: var(--reader-selected-ink); }
.column-list { list-style: none; margin: 10px 0 0; padding: 0; }
.column-item { padding: 20px 0; border-bottom: 1px solid var(--reader-line); }
.column-item__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 0; color: var(--reader-muted); font: 500 12px/1.4 var(--ui-font); font-variant-numeric: tabular-nums; }
.column-item__title { margin: 8px 0 0; font: 600 19px/1.4 var(--ui-font); letter-spacing: -.01em; }
.sd .column-item__title a { color: var(--reader-body); text-decoration: none; }
.sd .column-item__title a:hover { color: var(--reader-accent); }
.column-item .story-summary { margin: 8px 0 6px; font-size: 14.5px; line-height: 1.7; }
.column-empty { margin: 24px 0 0; color: var(--reader-muted); font: 400 14px/1.6 var(--ui-font); }
@media (max-width: 800px) { .column-lede { font-size: 17px; } .column-body p { font-size: 15.5px; } .column-item__title { font-size: 17px; } }
.column-toc{margin:24px 0;padding:16px 20px;border-block:1px solid var(--line)}
.column-toc p{margin:0;font-weight:600}.column-toc ol{padding-left:24px;line-height:1.9}.column-toc a{color:inherit;text-decoration:none}.column-toc a:hover{text-decoration:underline}
.column-body h2{scroll-margin-top:90px}
