*{box-sizing:border-box}
/* 品牌色系（官方给定，2026-09-21）：
   #023592 深蓝（主色／页头页脚大字）· #0033ff 亮蓝（强调／链接／交互态）
   #e66a24 橙（点缀／数据强调／星标）· #F2F2F2 浅灰（页面底色）
   其余为派生色，由这四个色相推导（浅底、边框、悬停），不引入第五个色相。 */
:root{
  /* 品牌四色 */
  --brand-navy:#023592; --brand-blue:#0033ff; --brand-orange:#e66a24; --brand-gray:#F2F2F2;
  /* 派生：亮蓝的浅底与深态 */
  --accent:#0033ff; --accent-deep:#023592; --accent-soft:#e8eeff; --accent-line:#c3d0ff;
  /* 派生：橙的浅底与深态 */
  --orange-soft:#fdf0e7; --orange-line:#f7d3ba; --orange-deep:#b8490f;
  /* 基础层 */
  --bg:#F2F2F2; --card:#ffffff; --text:#1a1a1a; --muted:#7a8290;
  --line:#e6e8eb; --radius:12px;
}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  line-height:1.7;font-size:15px}
a{color:inherit;text-decoration:none}
.hero{background:linear-gradient(135deg,#023592,#0033ff);color:#fff;padding:38px 20px 30px}
.hero-inner{max-width:1080px;margin:0 auto;display:flex;align-items:center;gap:16px}
.hero-avatar{width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.22);
  display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;flex:0 0 auto}
/* 首页 hero 用白版 logo：深蓝底上直接放官方白 logo，比文字缩写更像机构官网 */
.hero-logo{width:120px;height:auto;flex:0 0 auto;display:block;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.14))}
.hero h1{margin:0;font-size:23px;font-weight:650;letter-spacing:.3px}
.hero-sub{margin:6px 0 0;font-size:16px;font-weight:600;opacity:.97;letter-spacing:.5px}
.hero-meta{margin:5px 0 0;font-size:13px;opacity:.82}
/* 机构画像条：把品牌主张与硬核数据放在归档列表之前 */
.brandstrip{background:#fff;border-bottom:1px solid var(--line);padding:26px 20px 22px}
.brandstrip-inner{max-width:1080px;margin:0 auto}
.brandstrip-lead{font-size:15.5px;line-height:1.85;color:#37414d;margin:0 0 18px;
  padding-left:13px;border-left:3px solid var(--accent)}
.brandstrip-note{font-size:13px;color:var(--muted);margin:14px 0 0}
.brandstrip-note a{color:var(--accent-deep);font-weight:600}
/* 归档区：与知识库在视觉上明确分开，避免被误当现行信息。
   用品牌橙的浅底做「需注意」的语义色，比原先的米黄更贴合品牌且对比度更好。 */
.archivenote{background:var(--orange-soft);border-top:1px solid var(--orange-line);border-bottom:1px solid var(--orange-line);
  padding:20px}
.archivenote-inner{max-width:1080px;margin:0 auto}
.archivenote h2{margin:0 0 8px;font-size:17px;font-weight:640}
.archivenote p{margin:0;font-size:13.5px;color:#6b4a35;line-height:1.8}
.kbgroup{font-size:14px;font-weight:640;color:var(--accent-deep);margin:22px 0 0;
  padding-bottom:7px;border-bottom:1px solid var(--line);letter-spacing:.5px}
.stats{max-width:1080px;margin:22px auto 0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:10px}
.stat{background:rgba(255,255,255,.14);border-radius:10px;padding:10px 14px}
.stat b{display:block;font-size:19px;font-weight:650;line-height:1.35}
.stat span{font-size:12px;opacity:.85}
.container{max-width:1080px;margin:0 auto;padding:22px 20px 60px}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:16px;
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px}
.toolbar input[type=search]{flex:1 1 240px;min-width:180px;padding:9px 12px;border:1px solid var(--line);
  border-radius:8px;font-size:14px;outline:none;background:#F2F2F2;color:var(--text)}
.toolbar input[type=search]:focus{border-color:var(--accent);background:#fff}
.toolbar select{padding:9px 10px;border:1px solid var(--line);border-radius:8px;font-size:14px;
  background:#F2F2F2;color:var(--text);outline:none}
.count{font-size:13px;color:var(--muted);margin-left:auto}
.list{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
/* min-width:0 是窄屏防横向溢出的关键：grid 项默认 min-width:auto，
   会撑到内容的 min-content 宽度（中文长标题连排时可达 900px+），
   导致 .list 在看板上被撑开、页面出现横向滚动条。 */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  min-width:0;padding:16px 18px;transition:box-shadow .16s,border-color .16s,transform .16s}
.card:hover{box-shadow:0 4px 18px rgba(16,24,40,.07);border-color:#c9ced6;transform:translateY(-1px)}
.card h2{margin:0 0 6px;font-size:16.5px;font-weight:620;line-height:1.5;
  overflow-wrap:anywhere}
.card:hover h2{color:var(--accent)}
.card .dg{color:var(--muted);font-size:13.5px;margin:0 0 10px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--muted)}
.chip{background:#ebedf0;border-radius:6px;padding:2px 8px}
.chip.green{background:var(--accent-soft);color:var(--accent-deep)}
mark{background:#ffe9a8;color:inherit;border-radius:3px;padding:0 1px}
.empty{text-align:center;color:var(--muted);padding:60px 0;font-size:14px}

/* ---- 文章页 ---- */
.article-page{background:#fff}
.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.94);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--line);
  display:flex;align-items:center;gap:14px;padding:11px 20px}
.site-header .back{font-size:14px;color:var(--accent);font-weight:550}
.site-title{font-size:13px;color:var(--muted);margin-left:auto}
/* 内容页页头的品牌条：logo + 品牌名 + 站名，让非首页也带机构身份 */
.brandbar{display:flex;align-items:center;gap:11px;text-decoration:none;flex:0 0 auto}
.brandbar-logo{width:104px;height:auto;display:block}
.brandbar-text{display:flex;flex-direction:column;line-height:1.3}
.brandbar-text b{font-size:15px;font-weight:650;color:#023592;letter-spacing:.4px}
.brandbar-text i{font-style:normal;font-size:12px;color:var(--muted)}
.foot-line{margin:18px 0 0}
.article-wrap{max-width:760px;margin:0 auto;padding:26px 20px 80px}
.article-title{font-size:24px;line-height:1.45;margin:0 0 14px;font-weight:680}
.article-meta{display:flex;gap:9px;flex-wrap:wrap;align-items:center;
  font-size:12.5px;color:var(--muted);padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:22px}
.article-meta .tag{background:var(--accent-soft);color:var(--accent-deep);border-radius:6px;padding:2px 8px}
.article-meta .tag.partial{background:var(--orange-soft);color:var(--orange-deep)}
.chip.partial{background:var(--orange-soft);color:var(--orange-deep)}
.article-meta .origin{color:var(--accent);margin-left:auto}
.article-content{font-size:16px;line-height:1.9;word-break:break-word}
.article-content p{margin:0 0 1.1em}
/* WebP 回退容器：picture 只做格式协商，不生成盒子，否则 img 的 display:block
   （下面那条规则）会落在 inline 的 picture 里，产生匿名块、多出空行。
   display:contents 让 img 直接成为 .article-content 的子元素，布局与没有 picture 时完全一致。
   不支持 display:contents 的老浏览器会当普通 inline 处理——仍能显示，只是可能多一条空行。 */
.article-content picture{display:contents}
/* ⚠️ 这里的两个 !important 不能去掉。微信原文会把图片写死成内联像素宽度
   （style="width:578px!important;max-width:668px"，实测 1106 篇里 567 篇、
   4779 张图带这种内联宽度）。内联样式优先级高于本规则，窄屏下图片会撑破
   容器、整页出现横向滚动条 —— 而桌面端完全看不出来，极易漏检。
   max-width 是独立属性，带 !important 后依然能压住内联 width（规范：已用宽度 = min(width, max-width)）；
   height:auto 同理，防止内联 height 把图压变形。 */
.article-content img{max-width:100%!important;height:auto!important;display:block;margin:18px auto;border-radius:6px}
/* ⚠️ 不只图片：微信原文还会给 ul / section / p 等块级元素写死内联像素宽度
   （style="width:572.425px"，实测「树屋营」一篇的列表就是这种），
   同样会撑破窄屏、产生整页横向滚动条。用一条低特异性的通配兜住所有后代，
   上面 img 那条更具体的规则仍然优先，互不冲突。 */
.article-content *{max-width:100%!important}
.article-content h1,.article-content h2,.article-content h3{font-size:18px;margin:26px 0 12px;font-weight:650}
.article-content blockquote{border-left:3px solid var(--accent);margin:16px 0;padding:2px 0 2px 14px;color:#4a5260;background:#F2F2F2}
.article-content a{color:var(--accent)}
.article-content table{max-width:100%;border-collapse:collapse;font-size:14px}
.article-content td,.article-content th{border:1px solid var(--line);padding:6px 9px}
.article-content pre{background:#F2F2F2;padding:12px;border-radius:8px;overflow:auto;font-size:13px}
.media-note{background:#F2F2F2;border-radius:8px;padding:10px 14px;color:var(--muted);font-size:13.5px;margin:14px 0}
.pager{display:flex;justify-content:space-between;gap:16px;margin-top:44px;padding-top:20px;
  border-top:1px solid var(--line);font-size:14px}
.pager a{color:var(--accent);max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pager-next{text-align:right;margin-left:auto}
.article-footer{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);
  font-size:13px;color:var(--muted);line-height:1.8}
.article-footer p{margin:0 0 6px}
.article-footer a{color:var(--muted);word-break:break-all}
.site-footer{max-width:1080px;margin:0 auto;padding:0 20px 40px;font-size:13px;
  color:var(--muted);text-align:center}
.site-footer a{color:var(--accent)}
/* 深色品牌页脚：品牌 logo（白版）+ 公众号与企业微信二维码。
   放在页脚是为了让「怎么联系」在任意页面都可达，又不打断正文阅读动线。 */
.brandfoot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;
  background:var(--brand-navy);border-radius:14px;padding:24px 28px;margin:0 0 22px;text-align:left;
  border-top:3px solid var(--brand-orange)}
.brandfoot-brand{flex:1 1 260px;min-width:220px}
.brandfoot-brand img{display:block;width:132px;height:auto;margin:0 0 12px}
.brandfoot-brand p{margin:0;font-size:13px;line-height:1.85;color:rgba(255,255,255,.82)}
.brandfoot-qr{display:flex;gap:20px;flex:0 0 auto}
.brandfoot-qr figure{margin:0;text-align:center;width:120px}
.brandfoot-qr img{display:block;width:120px;height:120px;border-radius:8px;background:#fff;padding:5px}
.brandfoot-qr figcaption{margin-top:8px;font-size:12px;line-height:1.6;color:rgba(255,255,255,.82)}
.brandfoot-qr figcaption b{display:block;color:#fff;font-size:12.5px;font-weight:620}
/* 备案号行（法规要求在显著位置展示，链接回工信部）。flex 100% 才会换到卡片底部，
   与上面品牌区/二维码区之间用一条浅分隔线隔开。site.config.json 未填时整行不输出。 */
.brandfoot-icp{flex:1 1 100%;margin:0;padding-top:14px;border-top:1px solid rgba(255,255,255,.18);
  font-size:12px;line-height:1.7;color:rgba(255,255,255,.72);text-align:center}
.brandfoot-icp a{color:rgba(255,255,255,.88);text-decoration:none}
.brandfoot-icp a:hover{text-decoration:underline}
.brandfoot-icp .sep{margin:0 8px;opacity:.5}
.about-page h1{font-size:22px;margin:0 0 16px;font-weight:650}
.about-page h2{font-size:17px;margin:28px 0 10px;font-weight:620}
.about-page p{font-size:15px;line-height:1.9;color:#333}
.about-page ul{font-size:15px;line-height:1.9}
.about-table{border-collapse:collapse;font-size:14px;min-width:220px}
.about-table th,.about-table td{border:1px solid var(--line);padding:7px 14px;text-align:left}
.about-table th{background:#F2F2F2;font-weight:550}
.about-page code{background:#ebedf0;border-radius:4px;padding:1px 6px;font-size:13px}

/* ── 文章页：时效提示 / 知识库入口 ── */
.kbnote{border-radius:10px;padding:13px 18px;margin:0 0 22px;font-size:14px;line-height:1.8}
.kbnote strong{display:block;font-size:14.5px;margin-bottom:4px;font-weight:620}
.kbnote p{margin:0}
.kbnote.expired{background:var(--orange-soft);border:1px solid var(--orange-line);color:var(--orange-deep)}
.kbnote.info{background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-deep)}
.kbnote .kblinks{margin-top:8px;font-size:13.5px}
.kbnote .kblinks a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* ── 知识页 ── */
.topic-page{background:#fff}
.topic-wrap{max-width:900px;margin:0 auto;padding:26px 20px 80px}
.topic-title{font-size:26px;line-height:1.4;margin:0 0 12px;font-weight:680}
.topic-lead{font-size:16px;line-height:1.9;color:#37414d;margin:0 0 18px}
.topic-meta{display:flex;gap:9px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--muted);margin:0 0 22px}
.topic-meta .tag{background:var(--accent-soft);color:var(--accent-deep);border-radius:6px;padding:2px 8px}
.topic-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.topic-nav a{font-size:13px;background:#ebedf0;border-radius:6px;padding:5px 11px;color:#33414f}
.topic-nav a.on{background:var(--accent-soft);color:var(--accent-deep);font-weight:550}
.topic-page h2{font-size:19px;margin:34px 0 12px;font-weight:640;padding-bottom:6px;border-bottom:2px solid var(--accent-soft)}
.topic-page h3{font-size:16px;margin:22px 0 8px;font-weight:620}
.topic-page p{font-size:15.5px;line-height:1.9;color:#333}
.topic-page ul,.topic-page ol{font-size:15.5px;line-height:1.9;color:#333;padding-left:1.3em}
.keystats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:12px;margin:22px 0}
.keystat{background:var(--brand-gray);border-radius:10px;padding:12px 14px}
/* 数据带用品牌橙：浅灰底上橙色数字的可读性与辨识度都明显优于蓝色小字 */
.keystat b{display:block;font-size:21px;font-weight:660;color:var(--brand-orange);line-height:1.35}
.keystat span{font-size:12.5px;color:var(--muted)}
.timeline{list-style:none;margin:22px 0;padding:0 0 0 26px;border-left:2px solid #e6e8eb}
.timeline li{position:relative;margin:0 0 20px}
.timeline li::before{content:"";position:absolute;left:-34px;top:6px;width:11px;height:11px;border-radius:50%;background:var(--accent);border:2px solid #fff;box-shadow:0 0 0 1px var(--accent-line)}
.timeline b{display:block;font-size:15px;font-weight:620}
.timeline span{display:block;font-size:14px;color:var(--muted);line-height:1.75}
.factcard{background:#F2F2F2;border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:0 0 14px}
.factcard h3{margin:0 0 6px;font-size:15.5px;font-weight:640}
.factcard p,.factcard ul{margin:0;font-size:14.5px;line-height:1.85;color:#3a4550}
.factcard .src{display:block;margin-top:7px;font-size:12.5px;color:var(--muted)}
.rtablewrap{overflow:auto;max-height:70vh;border:1px solid var(--line);border-radius:10px}
.rtable{width:100%;border-collapse:collapse;font-size:13.5px}
.rtable th{background:#F2F2F2;position:sticky;top:0;z-index:1;white-space:nowrap;font-weight:560}
.rtable th,.rtable td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left}
.rtable tr:hover td{background:#f0f3ff}
.rtable td.n{color:var(--muted)}
.stars{color:var(--brand-orange);letter-spacing:1.5px;white-space:nowrap}
.lvl{font-size:12.5px;background:#ebedf0;border-radius:5px;padding:1px 7px;white-space:nowrap}
.filterbar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px;align-items:center}
.filterbar select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:14px;background:#fff}
.faq-item{border-bottom:1px solid var(--line);padding:16px 0}
.faq-item h3{margin:0 0 9px;font-size:16px;font-weight:620;color:#101820}
.faq-item p{margin:0 0 8px;font-size:15.5px;line-height:1.9;color:#333}
/* ── 事实速查（qa.html）：每条第一句即可被 AI 直接引用的结论 ── */
.qa{border-left:3px solid var(--accent);background:#F2F2F2;border-radius:0 8px 8px 0;
  padding:14px 18px;margin:0 0 16px}
.qa h3{margin:0 0 9px;font-size:16px;font-weight:640;color:#101820;display:flex;gap:9px;align-items:baseline}
.qa .qno{flex:0 0 auto;font-size:12px;font-weight:600;color:var(--accent-deep);background:var(--accent-soft);
  border-radius:5px;padding:2px 7px;letter-spacing:.4px}
.qa .qa-a{margin:0 0 8px;font-size:15.5px;line-height:1.85;color:#1a2733;font-weight:550}
.qa .qa-d{margin:0;font-size:14.5px;line-height:1.85;color:#3a4550}
.qa .qa-src{display:block;margin-top:9px;font-size:12.5px;color:var(--muted);line-height:1.7}
.qa .qa-src a{color:var(--accent)}
.poi{background:#F2F2F2;border-left:3px solid var(--accent);border-radius:0 8px 8px 0;padding:13px 18px;margin:0 0 14px}
.poi h4{margin:0 0 6px;font-size:15.5px;font-weight:630}
.poi p{margin:0;font-size:14.5px;line-height:1.85;color:#3a4550}
.poi .from{display:block;margin-top:7px;font-size:12.5px;color:var(--muted)}
.poi .from a{color:var(--accent)}
.srcnote{background:#F2F2F2;border-radius:8px;padding:14px 18px;font-size:13px;line-height:1.8;color:var(--muted);margin:28px 0 0}
.srcnote a{color:var(--accent)}
.note-warn{background:var(--orange-soft);border:1px solid var(--orange-line);border-radius:8px;padding:13px 18px;font-size:14px;line-height:1.8;color:var(--orange-deep);margin:20px 0}
.note-info{background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:8px;padding:13px 18px;font-size:14px;line-height:1.8;color:var(--accent-deep);margin:20px 0}
.lang-switch{font-size:13px;margin-left:auto;color:var(--muted)}
.lang-switch a{color:var(--accent);font-weight:550}
.tablewrap{overflow-x:auto}
.data-table{width:100%;border-collapse:collapse;font-size:14px;min-width:320px}
.data-table th,.data-table td{border:1px solid var(--line);padding:8px 12px;text-align:left}
.data-table th{background:#F2F2F2;font-weight:560}
.topic-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:12px;margin:20px 0}
.topic-card{display:block;border:1px solid var(--line);border-radius:12px;padding:15px 17px;background:#F2F2F2}
.topic-card:hover{border-color:var(--accent);background:#fff}
.topic-card b{display:block;font-size:15.5px;font-weight:620;margin-bottom:5px}
.topic-card span{font-size:13.5px;color:var(--muted);line-height:1.7}

/* ── 面包屑（分类页 / 栏目页 / 文章页可见，与 JSON-LD 的 BreadcrumbList 一一对应） ──
 * 可见面包屑与 JSON-LD 面包屑由同一个函数（crumbsFor / visibleCrumb）产出，
 * 不许出现「可见的取系列 A、结构化数据取系列 B」这种分叉。
 * 分类页/栏目页的容器是 .container（最大 1100px），文章页是 .article-wrap（760px），
 * 所以文章页需要把上下间距略调大，让面包屑与 24px 的标题之间有呼吸感。 */
.crumbs{font-size:13px;color:var(--muted);margin:0 0 10px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.crumbs a{color:var(--accent)}
.crumbs .cur{color:#33414f;font-weight:550;overflow-wrap:anywhere}
.crumbs span{color:var(--line)}
.article-wrap .crumbs{margin:0 0 14px;font-size:12.5px}

/* ── 课程线总览页 ── */
.line-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:14px;margin:24px 0 32px}
.line-card{display:block;border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:#fff;min-width:0}
.line-card:hover{border-color:var(--accent);background:var(--brand-gray)}
.line-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px}
.line-name{font-size:16.5px;font-weight:640;color:var(--accent-deep)}
.line-count{font-size:13px;color:var(--muted);white-space:nowrap}
.line-desc{margin:0 0 10px;font-size:13.5px;color:#41505f;line-height:1.7}
.line-foot{display:flex;flex-wrap:wrap;gap:12px;font-size:12.5px;color:var(--muted)}
.line-series{color:var(--brand-orange);font-weight:550}

/* ── 课程线分类页 ── */
.kind-bar{font-size:13px;color:var(--muted);background:var(--brand-gray);border-radius:8px;padding:8px 13px;margin:0 0 22px}
.series-group{margin:0 0 30px}
.series-group-h{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:16px;font-weight:620;margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid var(--accent-deep)}
.series-group-h .group-n{font-size:12.5px;font-weight:400;color:var(--muted)}
.series-group-h .group-link{margin-left:auto;font-size:13px;font-weight:400;color:var(--accent)}
.series-group-h .group-none{margin-left:auto;font-size:12.5px;font-weight:400;color:var(--muted)}
.series-hist,.chip-hist{font-size:11.5px;font-weight:400;color:#8a94a0;background:var(--brand-gray);border-radius:4px;padding:2px 7px;font-style:normal}
.art-list{list-style:none;padding:0;margin:0}
.art-list li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;padding:8px 0;border-bottom:1px solid #f0f1f3;min-width:0}
.art-list li:last-child{border-bottom:0}
.art-list li>a{font-size:14.5px;line-height:1.65;min-width:0;overflow-wrap:anywhere}
.art-meta{font-size:12px;color:var(--muted);white-space:nowrap;margin-left:auto}
.kind-tag{color:var(--brand-orange)}
.more-note{font-size:13px;color:var(--muted);margin:12px 0 0}

/* 系列页：编号前置 */
.ser-list li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:4px 10px;align-items:baseline}
.ser-no{font-size:12.5px;font-weight:600;color:var(--brand-orange);font-variant-numeric:tabular-nums}
.ser-no.dim{color:var(--line)}
.hist-note{background:var(--brand-gray);border-left:3px solid var(--brand-orange);border-radius:0 8px 8px 0;padding:12px 15px;margin:0 0 22px;font-size:13.5px;line-height:1.75;color:#41505f}

/* ── 项目档案块（「冒险城市」线专用，内容来自 data/facts.json） ──
   第三方认可是这一页最重的可信度信号，排版上要与文章列表明显区分。
   所有宽度用 minmax(0,1fr)，长来源 URL 才不会把页面顶出横向滚动。 */
.adc-block{margin:0 0 30px}
.adc-sum{font-size:14.5px;line-height:1.85;color:var(--text);margin:0 0 10px}
.adc-meta{font-size:13px;color:var(--muted);margin:0 0 26px;line-height:1.7}
.adc-tl{list-style:none;padding:0;margin:0 0 30px}
.adc-tl li{display:grid;grid-template-columns:62px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.75}
.adc-tl li:last-child{border-bottom:0}
.adc-tl b{color:var(--brand-navy);font-variant-numeric:tabular-nums}
.adc-recog{list-style:none;padding:0;margin:0 0 30px}
.adc-recog li{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;margin:0 0 12px;min-width:0}
.adc-recog-h{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;margin:0 0 6px}
.adc-recog-h b{font-size:14.5px;color:var(--brand-navy)}
/* 「非署名 · 人员交集」标签：把「第三方署名认可」与「素材中出现我方人员」两类区分开，
   避免后者被读成背书。用橙色（= 需注意）而非品牌蓝，视觉上主动降低其权威感。 */
.adc-tag{font-size:11.5px;color:var(--orange-deep);background:var(--orange-soft);border-radius:5px;padding:2px 7px;white-space:nowrap}
/* ⚠️ 必须写成 li.adc-recog--flagged：.adc-recog li（0,1,1）的特异性高于
   单纯的类选择器（0,1,0），只写类名时 border-style 会被它覆盖回 solid。 */
.adc-recog li.adc-recog--flagged{background:#fff;border-style:dashed}
.adc-date{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.adc-recog p{font-size:13.5px;line-height:1.8;margin:0 0 6px;color:#33414f;overflow-wrap:anywhere}
.adc-recog p.adc-note{color:var(--orange-deep);background:var(--orange-soft);border-radius:6px;padding:8px 10px;font-size:12.5px}
.adc-src{font-size:12.5px;color:var(--brand-blue);text-decoration:none;overflow-wrap:anywhere;display:inline-block;max-width:100%;margin-right:14px}
.adc-src:hover{text-decoration:underline}

/* ── 系列标签（总览页） ── */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 24px}
.chip{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;border:1px solid var(--line);border-radius:20px;padding:6px 13px;color:#33414f;background:#fff}
.chip:hover{border-color:var(--accent);color:var(--accent)}
.chip-n{font-size:11.5px;background:var(--accent-deep);color:#fff;border-radius:10px;padding:1px 7px;font-variant-numeric:tabular-nums}
.sec-h{font-size:18px;font-weight:630;margin:34px 0 6px}
.sec-note{font-size:13.5px;color:var(--muted);margin:0 0 4px;line-height:1.7}

/* ── 文章页：系列导航（顶部） ── */
.series-nav{display:flex;flex-direction:column;gap:8px;margin:0 0 18px}
.series-nav-item{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:var(--brand-gray);border-radius:10px;padding:10px 14px;font-size:13.5px;min-width:0}
.series-name{font-weight:620;color:var(--accent-deep);display:inline-flex;align-items:center;gap:7px}
.series-pos{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.series-links{display:flex;flex-wrap:wrap;gap:12px;margin-left:auto;font-size:13px}
.series-links .dim{color:var(--line)}

/* ── 文章页：相关文章（底部） ── */
.related{margin:34px 0 0;padding:20px 0 0;border-top:1px solid var(--line)}
.related-h{font-size:15.5px;font-weight:620;margin:0 0 12px;color:var(--accent-deep)}
.related-list{list-style:none;padding:0;margin:0}
.related-list li{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;padding:9px 0;border-bottom:1px solid #f0f1f3;min-width:0}
.related-list li:last-child{border-bottom:0}
.related-list li>a{font-size:14.5px;line-height:1.65;min-width:0;overflow-wrap:anywhere}
.rel-tag{font-size:11.5px;background:var(--brand-gray);color:#5a6673;border-radius:4px;padding:2px 8px;white-space:nowrap;margin-left:auto}
.rel-tag-series{background:var(--accent-deep);color:#fff}
.related-more{font-size:12.5px;color:var(--muted);margin:14px 0 0}

/* ── 首页知识库入口 ── */
.kbentry{max-width:1080px;margin:20px auto 0;padding:0 20px}
.kbentry-inner{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px}
.kbentry h2{margin:0 0 4px;font-size:16px;font-weight:640}
.kbentry p{margin:0 0 12px;font-size:13.5px;color:var(--muted)}
.kbentry .topic-cards{margin:0}
.kbnote-line{font-size:13px;color:var(--muted);line-height:1.7;margin:-6px 0 12px}

@media(max-width:600px){
  .hero{padding:24px 16px 20px}.hero h1{font-size:19px}
  .container{padding:16px 14px 50px}.article-wrap{padding:18px 15px 60px}
  .article-title{font-size:20px}.count{display:none}
  .topic-wrap{padding:18px 15px 60px}.topic-title{font-size:21px}
  .keystats{grid-template-columns:repeat(2,1fr)}
  .timeline{padding-left:20px}.timeline li::before{left:-28px}
  /* 品牌元素在窄屏降级：hero logo 缩小、页头只留 logo、页脚二维码并排换行 */
  .hero-inner{gap:12px}.hero-logo{width:76px}
  .hero-avatar{width:44px;height:44px;font-size:18px}
  .brandbar-logo{width:78px}
  .brandbar-text i{display:none}
  .brandfoot{padding:20px;gap:18px}
  .brandfoot-qr{gap:14px}
  .brandfoot-qr figure{width:100px}
  .brandfoot-qr img{width:100px;height:100px}
  /* 窄屏防横向溢出：搜索框的固定 min-width 在 375px 视口下会顶破容器 */
  .toolbar input[type=search]{min-width:0;flex:1 1 100%}
  .toolbar select{flex:1 1 auto}
  /* auto-fit 的 minmax(240px,1fr) 在 375px 视口下无法收缩到 240px 以下，改为单列 */
  .topic-cards{grid-template-columns:minmax(0,1fr)}
}