/* 专题详情（新外壳，2026-10-24 照设计稿第 52 版）：清单式。头部 = 专题名、导语、统计行；下面 3 站，每站一列文章行。
   只在开关打开时由 scripts/topics.py 挂到专题详情页（开关关着时老页面不引用这个文件）。
   颜色只用外壳令牌 --sv-*，深色跟着 html.dark 走。老版 topics.css 给 .topics-page 的通用规则（宋体 h1、链接悬停变橙）
   在这里用更具体的选择器压回去。岗位筛选按钮借专题列表的 .tv3-seg（topics.css）。 */
body.sv3 .topics-page .tpv3{color:var(--sv-ink);line-height:1.65;padding-bottom:40px}
body.sv3 .topics-page .tpv3 a:focus-visible,body.sv3 .topics-page .tpv3 button:focus-visible{outline:2px solid var(--sv-rose);outline-offset:3px}

/* ---------- 头部 ---------- */
body.sv3 .topics-page .tpv3-h{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:36px;align-items:center;padding:56px 0 16px}
body.sv3 .topics-page .tpv3-kick{display:inline-block;font-size:13px;font-weight:600;color:var(--sv-rose)}
body.sv3 .topics-page .tpv3-kick a{color:inherit}
body.sv3 .topics-page .tpv3-kick a:hover{color:inherit;text-decoration:underline;text-underline-offset:3px}
body.sv3 .topics-page .tpv3-h h1{font-family:inherit;font-size:clamp(32px,4vw,48px);line-height:1.1;letter-spacing:-.035em;font-weight:700;margin:14px 0 0;max-width:16em;color:var(--sv-ink)}
body.sv3 .topics-page .tpv3-lede{font-size:17px;line-height:1.7;color:var(--sv-ink-2);max-width:40em;margin:16px 0 0}
body.sv3 .topics-page .tpv3-stat{display:flex;gap:22px;margin-top:22px;font-size:13px;line-height:1.5;color:var(--sv-ink-3)}
body.sv3 .topics-page .tpv3-stat b{display:block;font-size:22px;line-height:1.35;font-weight:700;color:var(--sv-ink);font-variant-numeric:tabular-nums}
body.sv3 .topics-page .tpv3-rev{font-size:12px;color:var(--sv-ink-3);margin:14px 0 0}
body.sv3 .topics-page .tpv3-art{display:block;width:100%;height:auto;aspect-ratio:600/350;object-fit:cover;border-radius:20px;background:var(--sv-bg-2);box-shadow:0 0 0 1px var(--sv-line)}

/* ---------- 站 ---------- */
body.sv3 .topics-page .tpv3-body{padding-top:8px}
body.sv3 .topics-page .tpv3-st{position:relative;margin-top:28px;padding-left:44px;scroll-margin-top:68px}
body.sv3 .topics-page .tpv3-st::before{content:"";position:absolute;left:15px;top:36px;bottom:-30px;width:1px;background:var(--sv-line-2)}
body.sv3 .topics-page .tpv3-st:last-child::before{display:none}
/* 白字压玫红实底，和设计稿、common.css / jiedu.css 的玫红实底按钮一样（外壳没有「玫红上的字」令牌） */
body.sv3 .topics-page .tpv3-st>.n{position:absolute;left:0;top:0;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;font-family:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;font-weight:700;line-height:1;color:#fff;background:var(--sv-rose)}
body.sv3 .topics-page .tpv3-st h2{display:flex;align-items:center;flex-wrap:wrap;gap:0 8px;min-height:31px;margin:0;font-size:18px;line-height:1.4;font-weight:700;letter-spacing:-.01em;color:var(--sv-ink)}
body.sv3 .topics-page .tpv3-st h2 small{font-size:12.5px;font-weight:500;letter-spacing:0;color:var(--sv-ink-3)}
body.sv3 .topics-page .tpv3-goal{font-size:13.5px;line-height:1.6;color:var(--sv-ink-2);margin:2px 0 0}
body.sv3 .topics-page .tpv3-l{display:grid;gap:6px;margin-top:12px}
body.sv3 .topics-page .tpv3-a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:12px 16px;border-radius:12px;background:var(--sv-bg);box-shadow:inset 0 0 0 1px var(--sv-line);color:var(--sv-ink);transition:box-shadow .15s}
body.sv3 .topics-page .tpv3-a:hover{color:var(--sv-ink);box-shadow:inset 0 0 0 1px var(--sv-line-2),var(--sv-sh-1)}
body.sv3 .topics-page .tpv3-a[hidden]{display:none}
body.sv3 .topics-page .tpv3-a b{font-size:14.5px;font-weight:600;line-height:1.5}
body.sv3 .topics-page .tpv3-a small{font-size:12px;line-height:1.5;color:var(--sv-ink-3);white-space:nowrap}
body.sv3 .topics-page .tpv3-a.is-read b{color:var(--sv-ink-2)}
body.sv3 .topics-page .tpv3-tag,body.sv3 .topics-page .tpv3-mem{display:inline-block;margin-left:8px;padding:0 7px;border-radius:6px;font-size:11px;font-weight:600;line-height:1.7;vertical-align:1px;white-space:nowrap}
body.sv3 .topics-page .tpv3-tag{color:var(--sv-ink-2);background:var(--sv-bg-2);box-shadow:inset 0 0 0 1px var(--sv-line)}
body.sv3 .topics-page .tpv3-mem{color:var(--sv-gold);background:var(--sv-gold-soft)}
body.sv3 .topics-page .tpv3-seen{margin-left:8px;font-weight:600;color:var(--sv-ok)}

/* Grok Bot 第 2 站：岗位筛选（设计稿没有，压成一行） */
body.sv3 .topics-page .tpv3-roles{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:12px}
body.sv3 .topics-page .tpv3-rl{font-size:12.5px;color:var(--sv-ink-3)}
body.sv3 .topics-page .tpv3-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}

/* ---------- 页尾：说明 + 返回全部专题 ---------- */
body.sv3 .topics-page .tpv3-end{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;margin-top:56px;padding-top:24px;border-top:1px solid var(--sv-line)}
body.sv3 .topics-page .tpv3-end h2{font-size:16px;line-height:1.4;font-weight:700;margin:0;color:var(--sv-ink)}
body.sv3 .topics-page .tpv3-end p{font-size:12.5px;line-height:1.7;color:var(--sv-ink-3);margin:4px 0 0;max-width:44em}
body.sv3 .topics-page .tpv3-back{flex:none;display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:10px;font-size:13.5px;font-weight:600;line-height:1.4;color:var(--sv-bg);background:var(--sv-ink)}
body.sv3 .topics-page .tpv3-back:hover{color:var(--sv-bg);opacity:.86}

@media (max-width:900px){
  body.sv3 .topics-page .tpv3-h{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:32px}
  body.sv3 .topics-page .tpv3-art{order:-1;max-width:560px}
}
@media (max-width:640px){
  body.sv3 .topics-page .tpv3-h{padding-top:20px}
  body.sv3 .topics-page .tpv3-lede{font-size:16px}
  body.sv3 .topics-page .tpv3-st{padding-left:40px}
  body.sv3 .topics-page .tpv3-a{grid-template-columns:minmax(0,1fr);gap:4px;padding:11px 14px}
  body.sv3 .topics-page .tpv3-a small{white-space:normal}
  body.sv3 .topics-page .tpv3-end{flex-direction:column;align-items:flex-start;margin-top:40px}
}
@media (prefers-reduced-motion:reduce){body.sv3 .topics-page .tpv3-a{transition:none}}
