/* ============================================================
   防骗网 · 全站样式
   设计令牌 -> 基础 -> 组件 -> 页面 -> 响应式
   数值规范：字号 11 级 / 字距 8 级 / 间距 4px 栅格 / 圆角 5 级
   ============================================================ */

:root{
  /* 底色与文字 */
  --white:#fff; --bg:#fff; --bg-alt:#f6f8fb; --bg-soft:#fafbfd; --bg-grey:#f1f3f6;
  --bg-hero:#eef3f8; --bg-deep:#0f2338;
  --ink:#0f1b2d; --ink-2:#334155; --ink-3:#64748b; --ink-4:#94a3b8; --ink-5:#9fb0c4;
  --on-deep:#e2e8f0; --on-deep-2:#94a3b8;
  /* 描边 */
  --line:#e5eaf1; --line-2:#cfd8e3; --line-3:#c4d0dd;
  /* 主色 */
  --navy:#14304f; --navy-2:#1c4468; --navy-soft:#e7eef6;
  /* 语义色 */
  --red:#b42318; --red-bg:#fef3f2; --red-line:#fecdca; --red-deep:#8f1d14; --red-lt:#f87171;
  --amber:#b54708; --amber-bg:#fffaeb; --amber-line:#fedf89; --amber-lt:#e0a44a; --ochre:#d98c2b;
  --green:#027a48; --green-bg:#ecfdf3; --green-line:#bbf0d2; --green-lt:#5fd28a;
  /* 圆角 */
  --r-xs:3px; --r-s:6px; --r-m:10px; --r-ml:12px; --r-l:14px; --r-xl:20px; --r-2:2px;
  /* 阴影 */
  --sh-s:0 1px 2px rgba(15,27,45,.05);
  --sh-m:0 2px 6px rgba(15,27,45,.06),0 1px 2px rgba(15,27,45,.04);
  /* 字号（11 级） */
  --fs-3xs:10.5px; --fs-2xs:11.5px; --fs-xs:12.5px; --fs-sm:13.5px; --fs-md:14.5px;
  --fs-base:15.5px; --fs-lg:17px; --fs-xl:20px; --fs-2xl:23px; --fs-3xl:26px;
  --fs-4xl:40px; --fs-hero:88px;
  /* 字重 */
  --fw-r:400; --fw-m:500; --fw-sb:600; --fw-b:700; --fw-x:800;
  /* 字距 */
  --ls-tighter:-.02em; --ls-tight:-.01em; --ls-wide:.02em; --ls-wide2:.04em;
  --ls-wide3:.06em; --ls-caps:.08em; --ls-caps2:.12em; --ls-caps3:.16em;
  /* 字体
     --mono 的名字容易被误解成「数字专用」：它只在前四个西文等宽字体里命中数字/英文，
     中文字符会一路 fallback 到最后的 generic monospace —— 那在 Windows 上是宋体/点阵，
     小字号发虚、和正文的雅黑完全不是一套。所以把中文字体插在 monospace 之前：
     数字仍等宽对齐，中文回落到与正文同一个无衬线字体。 */
  --serif:"Noto Serif SC","Source Han Serif SC",Georgia,"Songti SC",serif;
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;
  --mono:"SF Mono","JetBrains Mono",Menlo,Consolas,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",monospace;
  /* 用字规则：--mono 只给「纯数字 / 英文代码列」，即等宽确实带来对齐收益的地方——
     .rank .risk-val .tl-date .exp-date .fi-time .hf-time .tag-count .cp-n .cf-num .ds-num
     .sig-idx .cc-num .bc-num .ms-num .rp-num .error-code .en .cic-en .route-num .cm-email 等。
     凡是含中文的句子或短语（「来源 用户线索 · 编辑部核验」「收录 87 条」「24 小时 · 更新 10-28」
     「刑法第 287 条之二」），一律走 --sans，靠 font-variant-numeric:tabular-nums 保住数字对齐。
     原因：等宽字体和汉字挤在同一行时，数字偏窄、字重偏轻，小字号下最刺眼 —— 那正是
     「小字号字体和整体不协调」的来源，而不是字号本身有问题。 */
  /* 排版层级：H1-H4 顺序递减，正文/辅助不得越级 */
  --h1:clamp(26px,3vw,32px); --h2:22px; --h3:18px; --h4:16px;
  --body:15px; --small:13.5px; --meta:12.5px; --micro:11.5px;
}

*{margin:0;padding:0;box-sizing:border-box}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);font-size:var(--fs-base);line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}

/* ─── 1. 头部：topbar / masthead / 导航 ─── */
.topbar{background:var(--bg-deep);color:var(--on-deep-2);font-size:var(--fs-2xs)}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:8px;padding-bottom:8px}
.topbar strong{color:var(--white);font-weight:var(--fw-sb)}
.topbar .sep{opacity:.28;margin:0 8px}
.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green-lt);margin-right:6px;vertical-align:1px;box-shadow:0 0 0 3px rgba(95,210,138,.18)}
.tb-left,.tb-right{white-space:nowrap}
.tb-right a{color:inherit;font-weight:var(--fw-sb);text-decoration:none;border-bottom:1px solid transparent}
.tb-right a:hover{border-bottom-color:currentColor}
.tb-right a strong{color:var(--white)}
.masthead{background:var(--bg);border-bottom:1px solid var(--line)}
.masthead .wrap{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:20px;padding-bottom:20px}
.brand{display:inline-flex;align-items:center;gap:14px;flex-shrink:0;line-height:1;text-decoration:none}
.brand-logo{display:block;height:60px;width:auto}
.brand-text{display:flex;flex-direction:column;gap:6px;padding-left:14px;border-left:1px solid var(--line-2)}
.brand-text .bt-en{font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-sb);letter-spacing:var(--ls-caps);color:var(--ink-4);line-height:1}
.brand-text .bt-cn{font-size:var(--fs-2xs);font-weight:var(--fw-m);letter-spacing:var(--ls-wide);color:var(--ink-3);line-height:1}
.masthead-stats{display:flex;align-items:center;flex-shrink:0}
.ms-item{display:flex;flex-direction:column;align-items:flex-end;padding:0 22px}
.ms-item:first-child{padding-left:0}
.ms-item:last-child{padding-right:0}
.ms-num{font-family:var(--mono);font-size:var(--fs-2xl);font-weight:var(--fw-b);line-height:1.1;color:var(--navy);letter-spacing:var(--ls-tighter)}
.ms-item.is-risk .ms-num{color:var(--red)}
.ms-item.is-gone .ms-num{color:var(--red-deep)}
.ms-lbl{font-size:var(--fs-2xs);color:var(--ink-3);margin-top:4px;letter-spacing:var(--ls-wide)}
.ms-divider{width:1px;height:32px;background:var(--line-2);align-self:center}
.nav{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:2px}
.nav .wrap::-webkit-scrollbar{display:none}
.nav a{font-size:var(--fs-sm);color:var(--ink-2);padding:14px 16px;white-space:nowrap;border-radius:var(--r-s) var(--r-s) 0 0;transition:color .15s,background .15s;position:relative}
.nav a:hover{color:var(--navy);background:var(--navy-soft)}
.nav a.on{color:var(--navy);font-weight:var(--fw-b)}
.nav a.on::after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:2px;background:var(--navy);border-radius:2px 2px 0 0}
.nav::after{content:"";position:absolute;right:0;top:0;bottom:0;width:22px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.95));pointer-events:none;opacity:0;transition:opacity .2s}

/* ─── 2. 页脚 ─── */
.footer{background:var(--bg-deep);color:var(--on-deep-2);padding:44px 0 28px}
.footer-top{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:44px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-logo{display:inline-block;margin-bottom:14px}
.footer-logo img{display:block;height:40px;width:auto}
.footer-brand p{font-size:var(--small);line-height:1.85;color:var(--on-deep-2)}
.footer-brand p + p{margin-top:10px}
.foot-sub{margin-top:20px;max-width:400px}
.foot-sub-row{display:flex;gap:8px}
.foot-sub-row input{flex:1;min-width:0;height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-s);background:rgba(255,255,255,.06);color:var(--white);font-family:inherit;font-size:var(--small);transition:border-color .15s,background .15s}
.foot-sub-row input::placeholder{color:var(--on-deep-2);opacity:.8}
.foot-sub-row input:focus{outline:none;border-color:var(--red);background:rgba(255,255,255,.1)}
.foot-sub-btn{flex-shrink:0;height:40px;padding:0 20px;border-radius:var(--r-s);background:var(--red);color:var(--white);font-family:inherit;font-size:var(--small);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);transition:background .15s}
.foot-sub-btn:hover{background:var(--red-deep)}
.foot-sub .foot-sub-tip{margin-top:9px;font-size:var(--fs-3xs);line-height:1.6;color:var(--on-deep-2);opacity:.85}
.foot-sub .foot-sub-tip.is-ok{color:#86e0a6;opacity:1;font-weight:var(--fw-b)}
.foot-sub .foot-sub-tip.is-err{color:#ff9d8a;opacity:1;font-weight:var(--fw-b)}
.foot-sub-row input.is-invalid{border-color:#ff9d8a;background:rgba(255,157,138,.08)}
.footer-col .foot-h{font-size:var(--fs-md);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);color:var(--white);margin-bottom:14px}
.footer-col a{display:block;font-size:var(--fs-xs);color:var(--on-deep);margin-bottom:10px;transition:color .15s}
.footer-col a:hover{color:var(--white)}
.footer-bottom{margin-top:20px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:var(--fs-2xs);line-height:1.8;color:var(--on-deep-2)}
.fb-left{max-width:660px}
.fb-left b{color:var(--on-deep);font-weight:var(--fw-sb)}
.fb-right{white-space:nowrap}

/* ─── 3. 通用层：hero / 面包屑 / 区块 / 标题 / 标签 / 卡片 ─── */
.page-hero,.cat-hero,.search-hero,.article-hero,.detail-hero,.legal-hero{background:linear-gradient(180deg,var(--bg-hero) 0%,var(--bg) 100%);border-bottom:1px solid var(--line)}
.page-hero{padding:26px 0 24px}
.cat-hero,.search-hero,.article-hero,.detail-hero,.legal-hero{padding:24px 0 22px}
.breadcrumb,.dh-breadcrumb,.ah-breadcrumb,.db-breadcrumb{font-size:var(--fs-xs);color:var(--ink-3);margin-bottom:14px}
.breadcrumb a,.dh-breadcrumb a,.ah-breadcrumb a,.db-breadcrumb a{color:var(--ink-3)}
.breadcrumb a:hover,.dh-breadcrumb a:hover,.ah-breadcrumb a:hover,.db-breadcrumb a:hover{color:var(--navy)}
.breadcrumb span,.dh-breadcrumb span,.ah-breadcrumb span,.db-breadcrumb span{margin:0 6px;color:var(--ink-4)}
.sec{padding:48px 0}
.sec-alt{background:var(--bg-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
/* 首页首屏后第一个 sec 需要上边距缓冲，避免紧贴 hero 渐变 */
.hero + .sec{padding-top:56px}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:20px;flex-wrap:wrap}
.sec-head .title-wrap{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.sec-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);letter-spacing:var(--ls-wide);color:var(--navy)}
.sec-head h2::before{content:"";display:inline-block;width:3px;height:15px;background:var(--navy);border-radius:1px;margin-right:10px;vertical-align:-2px}
.sec-head .en{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--ink-4);letter-spacing:var(--ls-caps);font-weight:var(--fw-m)}
.sec-head .more{font-size:var(--fs-xs);color:var(--navy-2);font-weight:var(--fw-sb);border-bottom:1px solid var(--line-2);padding-bottom:2px;white-space:nowrap;transition:border-color .15s}
.sec-head .more:hover{border-color:var(--navy-2)}
.cat-meta,.rc-meta,.ri-meta,.dh-meta,.fi-meta,.fg-meta,.guide-meta,.cc-meta,.cic-stats,.fgs-meta,.dh-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:var(--meta);color:var(--ink-4)}
.cat-meta span,.rc-meta span,.ri-meta span,.dh-meta span,.fi-meta span,.fg-meta span,.guide-meta span,.cc-meta span,.cic-stats span,.fgs-meta span{display:inline-flex;align-items:center;gap:4px}
.cat-meta span::before,.rc-meta span::before,.ri-meta span::before,.dh-meta span::before,.fi-meta span::before,.fg-meta span::before,.guide-meta span::before,.cc-meta span::before,.cic-stats span::before,.fgs-meta span::before{content:"";width:3px;height:3px;border-radius:50%;background:var(--ink-4)}
.cat-meta span:first-child::before,.rc-meta span:first-child::before,.ri-meta span:first-child::before,.dh-meta span:first-child::before,.fi-meta span:first-child::before,.fg-meta span:first-child::before,.guide-meta span:first-child::before,.cc-meta span:first-child::before,.cic-stats span:first-child::before,.fgs-meta span:first-child::before{display:none}
.cat-meta b,.rc-meta b,.ri-meta b,.dh-meta b,.fi-meta b,.fg-meta b,.guide-meta b,.cc-meta b,.cic-stats b,.fgs-meta b{color:var(--ink-2);font-weight:var(--fw-sb)}
.pill,.u-level,.ag-tag,.rg-tag,.guide-cat,.situation-tag,.ev-type,.fgs-cat,.sig-level{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);padding:2px 8px;border-radius:20px;white-space:nowrap;border:1px solid transparent}
.pill::before{content:"";width:5px;height:5px;border-radius:50%}
.pill.high{background:var(--red-bg);color:var(--red);border-color:var(--red-line)}
.pill.high::before{background:var(--red)}
.pill.watch{background:var(--amber-bg);color:var(--amber);border-color:var(--amber-line)}
.pill.watch::before{background:var(--amber)}
.pill.filed{background:var(--green-bg);color:var(--green);border-color:var(--green-line)}
.pill.filed::before{background:var(--green)}
.pill.gone{background:var(--red-deep);color:var(--white);border-color:var(--red-deep)}
.pill.gone::before{background:var(--white)}
.cat-card,.cat-index-card,.group-card,.exit-card,.erg-card,.rc-card,.route-card,.fs-card,.side-card,.toc-card,.d-card,.situation-card,.trap-card,.myth-card,.channel-card,.bank-card,.about-fact,.contact-nope{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--sh-s)}
.rp-actions a,.cc-actions a,.steps-cta a,.help-actions a,.sc-actions a,.side-help-actions a,.list-cta a,.fs-actions a,.error-help-actions a,.about-cta-actions a{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:var(--fs-xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);padding:10px 18px;border-radius:var(--r-s);border:1px solid var(--navy);color:var(--navy);transition:background .15s,color .15s,border-color .15s;white-space:nowrap}
.rp-actions a:hover,.cc-actions a:hover,.steps-cta a:hover,.help-actions a:hover,.sc-actions a:hover,.side-help-actions a:hover,.list-cta a:hover,.fs-actions a:hover,.error-help-actions a:hover,.about-cta-actions a:hover{background:var(--navy);color:var(--white)}
.rp-actions a.primary,.cc-actions a.primary,.help-actions a.solid,.sc-actions a.primary,.side-help-actions a.solid,.list-cta a.solid,.fs-actions a.primary,.error-help-actions a.solid,.about-cta-actions a.solid,.steps-cta a.solid{background:var(--navy);color:var(--white);border-color:var(--navy)}
.rp-actions a.primary:hover,.cc-actions a.primary:hover,.help-actions a.solid:hover,.sc-actions a.primary:hover,.side-help-actions a.solid:hover,.list-cta a.solid:hover,.fs-actions a.primary:hover,.error-help-actions a.solid:hover,.about-cta-actions a.solid:hover,.steps-cta a.solid:hover{background:var(--bg-deep);border-color:var(--bg-deep)}
.cc-actions a.danger{background:var(--red);border-color:var(--red);color:var(--white)}
.cc-actions a.danger:hover{background:var(--red-deep);border-color:var(--red-deep)}
.list-note,.feed-note,.cat-note,.legal-footer-note,.guide-principles,.bank-note,.help-disclaimer{border:1px solid var(--line);border-radius:var(--r-m);background:var(--bg-alt);padding:18px 22px;font-size:var(--small);color:var(--ink-3);line-height:1.85}
.list-note strong,.feed-note strong,.cat-note strong,.legal-footer-note strong,.guide-principles strong,.bank-note strong,.help-disclaimer strong{display:block;font-size:var(--meta);font-weight:var(--fw-b);color:var(--ink-2);margin-bottom:6px}
.list-note b,.feed-note b,.cat-note b,.legal-footer-note b,.guide-principles b,.bank-note b,.help-disclaimer b{color:var(--ink-2);font-weight:var(--fw-sb)}
.list-note .ln-item,.feed-note .fn-item,.cat-note .cn-item,.legal-footer-note .lfn-item,.guide-principles .gp-item,.bank-note .bn-item{display:block}
.list-note .ln-item + .ln-item,.feed-note .fn-item + .fn-item,.cat-note .cn-item + .cn-item,.legal-footer-note .lfn-item + .lfn-item,.guide-principles .gp-item + .gp-item,.bank-note .bn-item + .bn-item{margin-top:4px}
.help{border:1px solid var(--line-2);border-radius:var(--r-m);background:var(--white);padding:26px 28px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;box-shadow:var(--sh-m)}
.help .help-title{font-family:var(--serif);font-size:var(--h4);font-weight:var(--fw-x);color:var(--navy);margin-bottom:6px;letter-spacing:var(--ls-wide)}
.help p{font-size:var(--body);color:var(--ink-2);line-height:1.75}
.help .help-desc{font-size:var(--small);line-height:1.7;color:var(--ink-3);max-width:600px}
.help .help-note{margin-top:9px;padding-left:10px;border-left:2px solid var(--line-2);font-size:var(--meta);line-height:1.6;color:var(--ink-4);max-width:600px}
.help p b{color:var(--red);font-weight:var(--fw-b)}
.help-actions{display:flex;gap:10px;flex-wrap:wrap}
.pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:28px;flex-wrap:wrap}
.page-btn{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);font-size:var(--fs-xs);color:var(--ink-2);font-family:inherit;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}
.page-btn:hover{border-color:var(--line-2);color:var(--navy)}
.page-btn.on{background:var(--navy);border-color:var(--navy);color:var(--white);font-weight:var(--fw-b)}
/* 原生 {dede:pagelist}（SearchView）输出裸 <a>/<span>，这里接管样式（不带 .page-btn class） */
.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);color:var(--ink-2);font-size:var(--fs-sm);transition:border-color .15s,color .15s,background .15s;white-space:nowrap}
.pagination a:hover{border-color:var(--navy);color:var(--navy)}
.pagination span{background:var(--navy);border-color:var(--navy);color:var(--white);font-weight:var(--fw-b)}
/* 结果列表顶部的「共找到 N 条」小结（由首个结果项的 runphp 注入） */
.search-summary-line{font-size:var(--small);color:var(--ink-3);padding:4px 2px 12px;letter-spacing:var(--ls-wide)}
.search-summary-line b{color:var(--ink);font-weight:var(--fw-b)}
.page-btn.disabled{opacity:.4;pointer-events:none}
.page-ellipsis{color:var(--ink-4);padding:0 4px;font-size:var(--fs-xs)}
.empty-state{border:1px dashed var(--line-2);border-radius:var(--r-m);padding:48px 24px;text-align:center;background:var(--bg-alt)}
.empty-state h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);margin-bottom:6px}
.empty-state p{font-size:var(--small);color:var(--ink-3);line-height:1.7;max-width:440px;margin:0 auto}
.empty-state p a{color:var(--navy-2);border-bottom:1px solid var(--line-2)}

/* ─── 4. 首页 ─── */
.hero{background:linear-gradient(180deg,var(--bg-hero) 0%,var(--bg) 100%);padding:26px 0 24px;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1fr 300px;gap:48px;align-items:start}
.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-2xs);font-weight:var(--fw-sb);letter-spacing:var(--ls-wide3);color:var(--navy-2);margin-bottom:14px;background:var(--white);border:1px solid var(--line-2);padding:4px 10px;border-radius:20px}
.hero-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--red)}
.hero h1{font-family:var(--serif);font-size:var(--h1);font-weight:var(--fw-x);line-height:1.38;color:var(--navy);margin-bottom:14px;text-wrap:balance}
.hero .standfirst{font-size:var(--body);color:var(--ink-2);line-height:1.78;margin-bottom:18px;max-width:660px}
.hero .standfirst a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.hero .standfirst a:hover{border-color:var(--navy-2)}
.search{display:flex;background:var(--white);border:1.5px solid var(--navy);border-radius:var(--r-m);overflow:hidden;max-width:600px;box-shadow:0 4px 14px rgba(20,48,79,.08);transition:box-shadow .2s}
.search:focus-within{box-shadow:0 4px 20px rgba(20,48,79,.14)}
.search input{flex:1;border:none;outline:none;padding:14px 16px;font-size:var(--fs-md);font-family:inherit;color:var(--ink);background:transparent;min-width:0}
.search input::placeholder{color:var(--ink-4)}
.search button{padding:0 26px;background:var(--navy);color:var(--white);font-size:var(--fs-sm);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);transition:background .15s;white-space:nowrap}
.search button:hover{background:var(--bg-deep)}
.search-hint{font-size:var(--small);color:var(--ink-3);margin-top:10px;line-height:1.7}
.search-hint b{color:var(--ink-2);font-weight:var(--fw-sb)}
.hero-side{border-left:1px solid var(--line-2);padding-left:32px}
.hero-side h2{font-family:var(--serif);font-size:var(--h3);font-weight:var(--fw-x);letter-spacing:var(--ls-wide);color:var(--navy);margin-bottom:14px}
.process{list-style:none}
.process li{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px dashed var(--line-2)}
.process li:last-child{border-bottom:none}
.p-num{font-family:var(--mono);font-size:var(--fs-2xs);font-weight:var(--fw-b);color:var(--navy-2);flex-shrink:0;padding-top:2px;letter-spacing:var(--ls-wide)}
.p-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.p-title{font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink);line-height:1.4}
.p-desc{font-size:var(--small);color:var(--ink-3);line-height:1.55}
.hero-side .note{font-size:var(--meta);color:var(--ink-3);line-height:1.6;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
/* 首屏右栏：今日新增预警速递 */
.hs-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}
.hs-head h2{margin-bottom:0}
.hs-head a{font-size:var(--fs-2xs);font-weight:var(--fw-b);color:var(--navy-2);text-decoration:none;white-space:nowrap}
.hs-head a:hover{color:var(--red)}
.hero-feed{list-style:none}
.hero-feed li{border-bottom:1px dashed var(--line-2)}
.hero-feed li:last-child{border-bottom:none}
.hero-feed a{display:flex;gap:10px;padding:10px 0;text-decoration:none}
.hf-time{flex-shrink:0;font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-b);color:var(--ink-4);letter-spacing:var(--ls-wide);padding-top:2px}
.hf-title{font-size:var(--small);color:var(--ink-2);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hero-feed a:hover .hf-title{color:var(--navy)}
.board{border:1px solid var(--line);border-radius:var(--r-m);background:var(--white);overflow:hidden;box-shadow:var(--sh-s)}
.board-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.board table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);min-width:700px}
.board thead th{text-align:left;font-size:var(--micro);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);color:var(--ink-3);padding:12px 18px;background:var(--bg-alt);border-bottom:1px solid var(--line);white-space:nowrap}
.board th:nth-child(1){width:50px}
.board th:nth-child(3){width:100px}
.board th:nth-child(4){width:160px}
.board th:nth-child(5){width:100px}
.board tbody td{padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:middle;line-height:1.55}
.board tbody tr:last-child td{border-bottom:none}
.board tbody tr{position:relative;transition:background .15s}
.board tbody tr:hover{background:var(--bg-soft)}
.rank{font-family:var(--mono);font-size:var(--fs-xs);color:var(--ink-4);font-weight:var(--fw-sb)}
.p-cell{display:flex;flex-direction:column;gap:2px}
.p-name{font-weight:var(--fw-b);color:var(--ink);font-size:var(--fs-md);text-decoration:none}
.board tbody .p-name::after{content:"";position:absolute;inset:0}
.board tbody tr:hover .p-name{color:var(--navy-2)}
.p-type{font-size:var(--fs-2xs);color:var(--ink-3)}
.board-note{font-size:var(--meta);color:var(--ink-3);padding:12px 18px;border-top:1px solid var(--line);background:var(--bg-alt);line-height:1.7}
.board-note b{color:var(--ink-2);font-weight:var(--fw-sb)}
.risk{display:flex;align-items:center;gap:10px;min-width:110px}
.risk-bar{flex:1;height:4px;background:var(--line);border-radius:2px;overflow:hidden}
.risk-fill{height:100%;background:var(--red);border-radius:2px}
.risk-fill.mid{background:var(--amber)}
.risk-val{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--ink-2);font-weight:var(--fw-b);white-space:nowrap;min-width:18px;text-align:right}
.date-cell{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-2xs);color:var(--ink-3);white-space:nowrap}
.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cat-card{padding:20px 20px 16px;display:flex;flex-direction:column;gap:8px;transition:box-shadow .2s,border-color .2s}
.cat-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cat-num{font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-sb);color:var(--ink-4);letter-spacing:var(--ls-wide2)}
.cat-card h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;letter-spacing:var(--ls-tight)}
.cat-card p{font-size:var(--small);color:var(--ink-3);line-height:1.65}
.cat-meta{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:var(--fs-2xs);color:var(--ink-4)}
.cat-card .cat-meta{margin-top:auto}
.cat-meta span::before{display:none}
.cat-meta .dot{width:3px;height:3px;border-radius:50%;background:var(--ink-4)}
.exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--r-m);background:var(--white);overflow:hidden;box-shadow:var(--sh-s)}
.exp-item{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px;transition:background .15s}
.exp-item:nth-child(odd){border-right:1px solid var(--line)}
.exp-item:nth-last-child(-n+2){border-bottom:none}
.exp-item:hover{background:var(--bg-soft)}
.exp-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.exp-date{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--ink-4)}
.exp-item h3{font-size:var(--h3);font-weight:var(--fw-b);line-height:1.55;color:var(--ink);letter-spacing:var(--ls-tight)}
.exp-item h3:hover{color:var(--navy-2)}
.exp-item p{font-size:var(--small);color:var(--ink-3);line-height:1.65;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 44px;padding-top:20px}
.signal{display:flex;gap:14px;align-items:flex-start;padding:18px 0 0;border-top:1px dashed var(--line-2)}
.signal:nth-child(-n+2){border-top:none;padding-top:2px}
.signal-icon{flex-shrink:0;font-family:var(--serif);font-size:var(--fs-xl);font-weight:var(--fw-x);color:var(--red);line-height:1;padding-top:1px;letter-spacing:var(--ls-tight)}
.signal-body h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);margin-bottom:4px;line-height:1.45}
.signal-body p{font-size:var(--small);color:var(--ink-3);line-height:1.6}
.signal-more{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:var(--fs-sm);color:var(--ink-3)}
.signal-more a{color:var(--navy-2);font-weight:var(--fw-b);text-decoration:none;border-bottom:1px solid var(--line-2)}
.signal-more a:hover{border-bottom-color:var(--navy-2);color:var(--red)}
.steps{background:var(--bg-alt);padding:56px 0 64px;margin-bottom:0}
.steps-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:26px;flex-wrap:wrap}
.steps-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);letter-spacing:var(--ls-wide);color:var(--navy)}
.steps-head h2::before{content:"";display:inline-block;width:3px;height:15px;background:var(--green);border-radius:1px;margin-right:10px;vertical-align:-2px}
.steps-head p{font-size:var(--small);color:var(--ink-3);line-height:1.65;max-width:560px}
.steps-head p b{color:var(--red);font-weight:var(--fw-b)}
.step-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-2)}
.step-item{position:relative;padding:22px 24px 4px 0}
.step-item + .step-item{padding-left:24px}
.step-item + .step-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--line-2)}
.step-num{font-family:var(--serif);font-size:28px;font-weight:var(--fw-x);color:var(--navy);letter-spacing:0;line-height:1;margin-bottom:10px}
.step-item h3{font-size:var(--h3);font-weight:var(--fw-b);margin-bottom:6px;color:var(--ink)}
.step-item p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.steps-cta{margin-top:26px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.steps-cta a{border-color:var(--navy);color:var(--navy)}
.steps-cta a:hover{background:var(--navy-soft);color:var(--navy);border-color:var(--navy)}
.steps-cta a.solid{background:var(--navy);color:var(--white);border-color:var(--navy)}
.steps-cta a.solid:hover{background:var(--bg-deep);border-color:var(--bg-deep)}

/* ─── 5. 列表页 + 详情页 ─── */
.page-hero h1{font-family:var(--serif);font-size:var(--h1);font-weight:var(--fw-x);color:var(--navy);margin-bottom:8px;letter-spacing:var(--ls-wide)}
.page-desc{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.75;max-width:680px;margin-bottom:18px}
.page-desc a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.page-desc a:hover{border-color:var(--navy-2)}
.page-stats{display:flex;align-items:stretch;flex-wrap:wrap}
.ps-item{display:flex;flex-direction:column;padding:0 22px;border-right:1px solid var(--line-2)}
.ps-item:first-child{padding-left:0}
.ps-item:last-child{border-right:none;padding-right:0}
.ps-num{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-xl);font-weight:var(--fw-b);color:var(--navy);line-height:1.2;letter-spacing:var(--ls-tighter)}
.ps-num.high{color:var(--red)}
.ps-num.watch{color:var(--amber)}
.ps-num.gone{color:var(--red-deep)}
.ps-lbl{font-size:var(--fs-2xs);color:var(--ink-3);margin-top:2px}
/* 科普指南列表页 · 编辑推荐横条（源自设计稿 _proto/fpnet/list_kepu.html 的内联样式） */
.editor-pick{display:flex;align-items:baseline;gap:14px 20px;flex-wrap:wrap;padding:14px 20px;background:var(--navy-soft);border:1px solid var(--line-2);border-radius:var(--r-m);font-size:var(--fs-sm);line-height:1.7}
.editor-pick .ep-label{font-weight:var(--fw-b);color:var(--navy);letter-spacing:var(--ls-wide);white-space:nowrap}
.editor-pick a{color:var(--navy-2);border-bottom:1px solid var(--line-2);padding-bottom:1px;transition:border-color .15s,color .15s}
.editor-pick a:hover{border-color:var(--navy-2);color:var(--navy)}
.filter-bar{background:var(--white);border-bottom:1px solid var(--line);padding:16px 0 14px}
.filter-search{display:flex;border:1px solid var(--line-2);border-radius:var(--r-s);overflow:hidden;max-width:520px;margin-bottom:14px;background:var(--white);transition:border-color .15s}
.filter-search:focus-within{border-color:var(--navy-2)}
.filter-search input{flex:1;border:none;outline:none;padding:8px 12px;font-size:var(--fs-sm);font-family:inherit;color:var(--ink);background:transparent;min-width:0}
.filter-search input::placeholder{color:var(--ink-4)}
.filter-search button{padding:0 18px;background:var(--navy);color:var(--white);font-size:var(--fs-xs);font-weight:var(--fw-sb);letter-spacing:var(--ls-wide2);transition:background .15s;white-space:nowrap}
.filter-search button:hover{background:var(--bg-deep)}
.filter-row{display:flex;gap:24px;flex-wrap:wrap;align-items:center}
.filter-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.fg-label{font-size:var(--fs-2xs);color:var(--ink-3);font-weight:var(--fw-sb);margin-right:2px;letter-spacing:var(--ls-wide)}
.filter-pill{font-size:var(--fs-xs);padding:4px 10px;border-radius:14px;border:1px solid var(--line);color:var(--ink-2);background:var(--white);transition:border-color .15s,color .15s,background .15s;white-space:nowrap}
.filter-pill:hover{border-color:var(--line-2);color:var(--navy)}
.filter-pill.on{background:var(--navy);border-color:var(--navy);color:var(--white);font-weight:var(--fw-sb)}
.filter-sort{margin-left:auto}
.sort-select{padding:6px 28px 6px 10px;border:1px solid var(--line);border-radius:var(--r-s);font-size:var(--fs-xs);color:var(--ink-2);font-family:inherit;background:var(--white);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;transition:border-color .15s}
.sort-select:hover{border-color:var(--line-2)}
.list-section{padding:28px 0 42px}
.list-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.list-count{font-size:var(--fs-xs);color:var(--ink-3)}
.list-count b{color:var(--ink);font-weight:var(--fw-b)}
.list-count .sep{opacity:.4;margin:0 6px}
.risk-list{display:flex;flex-direction:column;gap:10px}
.risk-card{display:grid;grid-template-columns:56px 1fr 200px;gap:20px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:18px 20px;box-shadow:var(--sh-s);transition:border-color .18s,box-shadow .18s}
.rc-rank{font-family:var(--mono);font-size:var(--fs-xl);font-weight:var(--fw-b);color:var(--ink-4);line-height:1.2;letter-spacing:var(--ls-tighter);padding-top:2px}
.rc-main{min-width:0}
.rc-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:2px}
.rc-name{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);letter-spacing:var(--ls-tight);line-height:1.35}
.rc-type{font-size:var(--fs-xs);color:var(--ink-3);margin-bottom:8px}
.rc-desc{font-size:var(--small);color:var(--ink-2);line-height:1.65;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rc-meta{gap:16px;font-family:var(--sans);font-variant-numeric:tabular-nums;}
.rc-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:2px}
.rc-risk{display:flex;align-items:center;gap:10px;width:100%}
.rc-arrow{font-size:var(--fs-base);color:var(--ink-4);transition:transform .18s,color .18s;line-height:1}
.list-cta{margin-top:24px;border:1px solid var(--line-2);border-radius:var(--r-m);background:var(--white);padding:22px 24px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;box-shadow:var(--sh-s)}
.list-cta h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);margin-bottom:4px;letter-spacing:var(--ls-wide)}
.list-cta p{font-size:var(--small);color:var(--ink-2);line-height:1.7}
.list-cta p b{color:var(--red);font-weight:var(--fw-b)}
.detail-hero-grid{display:grid;grid-template-columns:1fr 280px;gap:40px;align-items:start}
.dh-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.dh-title{font-family:var(--serif);font-size:var(--h1);font-weight:var(--fw-x);line-height:1.3;color:var(--navy);letter-spacing:var(--ls-wide)}
.dh-type{font-size:var(--fs-xs);color:var(--ink-3);margin-bottom:14px;letter-spacing:var(--ls-wide)}
.dh-type a{color:var(--navy-2);font-weight:var(--fw-sb);border-bottom:1px solid var(--line-3);padding-bottom:2px;transition:color .15s,border-color .15s}
.dh-type a:hover{color:var(--navy);border-color:var(--navy)}
.dh-lead{font-size:var(--fs-md);color:var(--ink-2);line-height:1.8;max-width:640px;margin-bottom:18px}
.dh-lead b{color:var(--ink);font-weight:var(--fw-b)}
.risk-panel{background:var(--white);border:1px solid var(--line-2);border-radius:var(--r-m);padding:20px 22px;box-shadow:var(--sh-m)}
.rp-label{font-size:var(--meta);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);color:var(--ink-3);margin-bottom:8px}
.rp-score{display:flex;align-items:baseline;gap:6px;margin-bottom:4px}
.rp-num{font-family:var(--mono);font-size:42px;font-weight:var(--fw-x);line-height:1;letter-spacing:var(--ls-tighter);color:var(--red)}
.rp-max{font-family:var(--mono);font-size:var(--fs-xs);color:var(--ink-4);font-weight:var(--fw-sb)}
.rp-bar{height:6px;background:var(--line);border-radius:3px;overflow:hidden;margin:10px 0 8px}
.rp-fill{height:100%;background:var(--red);border-radius:3px}
.rp-status{font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--red);margin-bottom:14px;display:flex;align-items:center;gap:6px}
.rp-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.rp-actions{display:flex;flex-direction:column;gap:8px;padding-top:14px;border-top:1px solid var(--line)}
.risk-panel.watch .rp-num,.risk-panel.watch .rp-status{color:var(--amber)}
.risk-panel.watch .rp-fill{background:var(--amber)}
.risk-panel.filed .rp-num,.risk-panel.filed .rp-status{color:var(--green)}
.risk-panel.filed .rp-fill{background:var(--green)}
.risk-panel.gone .rp-num,.risk-panel.gone .rp-status{color:var(--red-deep)}
.risk-panel.gone .rp-fill{background:var(--red-deep)}
/* 待定级项目：灰色 meter（不输出假的风险指数数字） */
.risk-panel.meter .rp-num,.risk-panel.meter .rp-status{color:var(--ink-4)}
.risk-panel.meter .rp-fill{background:var(--line-2)}
.detail-layout{display:grid;grid-template-columns:1fr 300px;gap:40px;padding:36px 0 48px;align-items:start}
.detail-main{min-width:0}
.detail-side{position:sticky;top:80px;display:flex;flex-direction:column;gap:14px}
.d-card{padding:24px 26px;margin-bottom:16px}
.d-card:last-child{margin-bottom:0}
/* 分页锚点：点击「全部曝光明细」分页后定位到该板块，避开 sticky 头部遮挡 */
#archive{scroll-margin-top:84px}
/* 聚合页「全部项目」分页锚点 */
#all{scroll-margin-top:84px}
#resultBlock{scroll-margin-top:84px}
.d-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.d-card-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);line-height:1.4}
.d-card-head h2::before{content:"";display:inline-block;width:3px;height:14px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-2px}
.d-card-head .en{font-family:var(--mono);font-size:var(--fs-3xs);color:var(--ink-4);letter-spacing:var(--ls-caps);font-weight:var(--fw-m)}
.conclusion{background:var(--red-bg);border:1px solid var(--red-line);border-left:3px solid var(--red);border-radius:var(--r-s);padding:16px 18px;margin-bottom:16px}
.conclusion-label{font-size:var(--meta);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);color:var(--red);margin-bottom:6px}
.conclusion p{font-size:var(--fs-sm);color:var(--ink);line-height:1.75;font-weight:var(--fw-m)}
.conclusion p b{font-weight:var(--fw-b)}
.conclusion.watch{background:var(--amber-bg);border-color:var(--amber-line);border-left-color:var(--amber)}
.conclusion.watch .conclusion-label{color:var(--amber)}
.conclusion.filed{background:var(--green-bg);border-color:var(--green-line);border-left-color:var(--green)}
.conclusion.filed .conclusion-label{color:var(--green)}
.conclusion.gone{background:var(--red-bg);border-color:var(--red-line);border-left-color:var(--red-deep)}
.conclusion.gone .conclusion-label{color:var(--red-deep)}
.d-para{font-size:var(--body);color:var(--ink-2);line-height:1.85;margin-bottom:12px}
.d-para:last-child{margin-bottom:0}
/* 说明块（带边框）紧跟正文段时，补上间距（d-card 内 list-note → d-para 不会贴在一起） */
.d-card .list-note + .d-para{margin-top:14px}
.d-para b{color:var(--ink);font-weight:var(--fw-b)}
.fact-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}
.fact-table tr{border-bottom:1px solid var(--line)}
.fact-table tr:last-child{border-bottom:none}
.fact-table th{text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--ink-3);padding:10px 0;width:110px;vertical-align:top;letter-spacing:var(--ls-wide)}
.fact-table td{padding:10px 0 10px 16px;color:var(--ink);line-height:1.65;vertical-align:top}
.fact-table td b{font-weight:var(--fw-b)}
.fact-table td .pill{margin-right:6px}
.timeline{position:relative;padding-left:22px}
.timeline::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:1px;background:var(--line-2)}
.tl-item{position:relative;padding-bottom:20px}
.tl-item:last-child{padding-bottom:0}
.tl-item::before{content:"";position:absolute;left:-22px;top:6px;width:11px;height:11px;border-radius:50%;background:var(--white);border:2px solid var(--line-2)}
.tl-item.high::before{border-color:var(--red);background:var(--red-bg)}
.tl-item.watch::before{border-color:var(--amber);background:var(--amber-bg)}
.tl-date{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--ink-4);letter-spacing:var(--ls-wide);margin-bottom:2px}
.tl-title{font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin-bottom:2px}
.tl-desc{font-size:var(--body);color:var(--ink-3);line-height:1.7}
.tl-source{font-size:var(--fs-2xs);color:var(--ink-4);margin-top:4px}
.tl-source::before{content:"来源："}
.evidence-list{list-style:none}
.evidence-item{display:grid;grid-template-columns:60px 1fr;gap:14px;padding:12px 0;border-bottom:1px dashed var(--line);align-items:start}
.evidence-item:last-child{border-bottom:none}
.ev-type{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide2);padding:2px 6px;border-radius:var(--r-s);text-align:center;white-space:nowrap;background:var(--navy-soft);color:var(--navy-2);line-height:1.4}
.ev-type.official{background:var(--red-bg);color:var(--red)}
.ev-type.judicial{background:var(--amber-bg);color:var(--amber)}
.ev-type.media{background:var(--green-bg);color:var(--green)}
.ev-type.user{background:var(--bg-alt);color:var(--ink-3)}
.ev-body{min-width:0}
.ev-body h4{font-size:var(--h4);font-weight:var(--fw-b);color:var(--ink);line-height:1.55;margin-bottom:2px}
.ev-body p{font-size:var(--body);color:var(--ink-3);line-height:1.65;margin-bottom:2px}
.ev-body .ev-link{font-size:var(--fs-2xs);color:var(--navy-2);border-bottom:1px solid var(--line-2);padding-bottom:2px}
.ev-body .ev-link:hover{border-color:var(--navy-2)}
.d-signal-list{list-style:none}
.d-signal-item{display:flex;gap:14px;padding:12px 0;border-bottom:1px dashed var(--line);align-items:flex-start}
.d-signal-item:last-child{border-bottom:none}
.ds-num{font-family:var(--mono);font-size:var(--fs-xs);font-weight:var(--fw-x);color:var(--red);flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--red-bg);display:flex;align-items:center;justify-content:center;line-height:1;margin-top:2px}
.ds-body h4{font-size:var(--h4);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin-bottom:2px}
.ds-body p{font-size:var(--body);color:var(--ink-3);line-height:1.7}
.action-group{margin-bottom:20px}
.action-group:last-child{margin-bottom:0}
.ag-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.ag-tag{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);padding:2px 8px;border-radius:20px;white-space:nowrap}
.ag-tag.safe{background:var(--green-bg);color:var(--green);border:1px solid var(--green-line)}
.ag-tag.involved{background:var(--amber-bg);color:var(--amber);border:1px solid var(--amber-line)}
.ag-tag.damaged{background:var(--red-bg);color:var(--red);border:1px solid var(--red-line)}
.ag-head h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink)}
.action-steps{list-style:none;padding-left:0}
.action-steps li{position:relative;padding:8px 0 8px 22px;font-size:var(--fs-sm);color:var(--ink-2);line-height:1.7;border-bottom:1px dashed var(--line)}
.action-steps li:last-child{border-bottom:none}
.action-steps li::before{content:"";position:absolute;left:4px;top:17px;width:5px;height:5px;border-radius:50%;background:var(--line-2)}
.action-steps li b{color:var(--ink);font-weight:var(--fw-b)}
.related-list{list-style:none}
.related-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px dashed var(--line);transition:color .15s}
.related-item:last-child{border-bottom:none}
.related-item:hover .ri-name{color:var(--navy-2)}
.ri-left{display:flex;flex-direction:column;gap:2px;min-width:0}
.side-card{padding:18px 20px}
.side-card h3{font-family:var(--serif);font-size:var(--h3);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);margin-bottom:12px;line-height:1.4}
.side-card h3::before{content:"";display:inline-block;width:3px;height:12px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
.side-help p{font-size:var(--small);color:var(--ink-2);line-height:1.7;margin-bottom:12px}
.side-help p b{color:var(--red);font-weight:var(--fw-b)}
.side-help-actions{display:flex;flex-direction:column;gap:6px}
.side-help-actions a{justify-content:center;padding:8px 14px}
.side-meta{list-style:none}
.side-meta li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed var(--line);font-size:var(--fs-xs)}
.side-meta li:last-child{border-bottom:none}
.side-meta .sk{color:var(--ink-3);flex-shrink:0}
.side-meta .sv{color:var(--ink);font-weight:var(--fw-b);text-align:right;font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--meta);line-height:1.5}
.side-meta .sv.wrap{font-size:var(--meta);line-height:1.55}
.side-meta .sv.lv-high{color:var(--red)}
.side-meta .sv.lv-watch{color:var(--amber)}
.side-meta .sv.lv-filed{color:var(--green)}
.side-meta .sv.lv-gone{color:var(--red-deep)}
.side-links{list-style:none}
.side-links li{padding:6px 0;border-bottom:1px dashed var(--line)}
.side-links li:last-child{border-bottom:none}
.side-links a{font-size:var(--fs-xs);color:var(--ink-2);display:flex;align-items:center;justify-content:space-between;gap:8px;transition:color .15s}
.side-links a:hover{color:var(--navy-2)}
.side-links a::after{content:"→";color:var(--ink-4);font-size:var(--fs-2xs)}
.side-note{font-size:var(--meta);color:var(--ink-3);line-height:1.7}
.side-note b{color:var(--ink-2);font-weight:var(--fw-sb)}

/* ─── 6. 求助渠道页 ─── */
.urgency-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.urgency-card{padding:18px 18px 16px;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden}
.urgency-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}
.urgency-card.urgent::before{background:var(--red)}
.urgency-card.damaged::before{background:var(--amber)}
.urgency-card.suspect::before{background:var(--navy-2)}
.urgency-card.consult::before{background:var(--ink-4)}
.urgency-card .u-level{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-caps);padding:2px 8px;border-radius:20px;align-self:flex-start;white-space:nowrap}
.urgency-card.urgent .u-level{background:var(--red-bg);color:var(--red)}
.urgency-card.damaged .u-level{background:var(--amber-bg);color:var(--amber)}
.urgency-card.suspect .u-level{background:var(--navy-soft);color:var(--navy-2)}
.urgency-card.consult .u-level{background:var(--bg-grey);color:var(--ink-3)}
.urgency-card h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.45}
.urgency-card p{font-size:var(--small);color:var(--ink-3);line-height:1.65}
.urgency-card p b{color:var(--ink);font-weight:var(--fw-b)}
.u-action{margin-top:auto;padding-top:8px;font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--navy-2);display:inline-flex;align-items:center;gap:4px}
.channel-group{margin-bottom:28px}
.channel-group:last-child{margin-bottom:0}
.cg-head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.cg-head h3{font-family:var(--serif);font-size:var(--h3);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide)}
.cg-head h3::before{content:"";display:inline-block;width:3px;height:13px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
.cg-head .cg-desc{font-size:var(--small);color:var(--ink-3);line-height:1.6}
.channel-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.channel-card{padding:18px 20px;display:flex;flex-direction:column;gap:10px}
.cc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.cc-name{font-size:var(--fs-base);font-weight:var(--fw-b);color:var(--ink);line-height:1.4}
.cc-name small{display:block;font-size:var(--meta);font-weight:var(--fw-r);color:var(--ink-3);margin-top:2px;letter-spacing:var(--ls-wide)}
.cc-num{font-family:var(--mono);font-size:var(--fs-2xl);font-weight:var(--fw-x);color:var(--navy);line-height:1;letter-spacing:var(--ls-tighter);white-space:nowrap}
.cc-num.red{color:var(--red)}
.cc-desc{font-size:var(--small);color:var(--ink-2);line-height:1.7}
.cc-desc b{color:var(--ink);font-weight:var(--fw-b)}
.cc-meta{padding-top:8px;border-top:1px dashed var(--line);gap:6px 14px}
.cc-actions{display:flex;gap:8px;flex-wrap:wrap}
.cc-actions a{padding:8px 14px;font-size:var(--fs-xs)}
.myth-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.myth-card{padding:16px 18px;display:flex;gap:12px;align-items:flex-start;background:var(--bg-alt)}
.myth-icon{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--red-bg);color:var(--red);display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);font-weight:var(--fw-x);line-height:1;margin-top:2px}
.myth-body h4{font-size:var(--h4);font-weight:var(--fw-b);color:var(--ink);margin-bottom:4px;line-height:1.5}
.myth-body p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.myth-body p b{color:var(--red);font-weight:var(--fw-b)}

/* ─── 7. 分类索引页 ─── */
.cat-index-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cat-index-card{position:relative;padding:22px 22px 18px;display:flex;flex-direction:column;gap:8px;transition:border-color .18s,box-shadow .18s}
.cic-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.cic-title{font-size:var(--fs-lg);font-weight:var(--fw-b);color:var(--ink);line-height:1.45;letter-spacing:var(--ls-tight)}
.cic-title .cic-en{display:block;font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-m);color:var(--ink-4);letter-spacing:var(--ls-wide3);margin-top:2px}
.cic-desc{font-size:var(--small);color:var(--ink-2);line-height:1.7}
.cic-desc b{color:var(--ink);font-weight:var(--fw-b)}
.cic-stats{margin-top:2px;gap:6px 16px}
.cic-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;margin-top:auto;border-top:1px dashed var(--line)}
.cic-link{font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--navy-2);display:inline-flex;align-items:center;gap:4px;transition:color .15s}
.tag-cloud{display:flex;flex-wrap:wrap;gap:8px}
.tag-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);padding:6px 14px;border:1px solid var(--line);border-radius:20px;background:var(--white);color:var(--ink-2);transition:border-color .15s,color .15s,background .15s;white-space:nowrap}
.tag-item:hover{border-color:var(--line-2);color:var(--navy);background:var(--navy-soft)}
.tag-item .tag-count{font-family:var(--mono);font-size:var(--fs-3xs);color:var(--ink-4);font-weight:var(--fw-sb);padding-left:6px;border-left:1px solid var(--line)}
.tag-item:hover .tag-count{color:var(--navy-2);border-color:var(--line-2)}
.group-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.group-card{padding:16px 18px;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,box-shadow .15s;text-decoration:none;color:inherit}
.group-card h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.45}
.group-card p{font-size:var(--small);color:var(--ink-3);line-height:1.65}
.group-card .gc-count{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-3xs);color:var(--ink-4);margin-top:2px}

/* ─── 8. 最新曝光页 ─── */
.feed-section{padding:26px 0 42px}
.feed-group{margin-bottom:30px}
.feed-group:last-child{margin-bottom:0}
.feed-date{display:flex;align-items:baseline;gap:12px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line-2);font-size:var(--fs-xs);font-weight:var(--fw-r)}
.fd-day{font-family:var(--serif);font-size:var(--fs-lg);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);line-height:1.2}
.fd-week{font-size:var(--fs-xs);color:var(--ink-3)}
.fd-today{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);padding:2px 8px;border-radius:20px;background:var(--red-bg);color:var(--red);border:1px solid var(--red-line);white-space:nowrap}
.fd-count{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-2xs);color:var(--ink-4);margin-left:auto;font-weight:var(--fw-sb);white-space:nowrap}
.feed-list{display:flex;flex-direction:column}
.feed-item{display:grid;grid-template-columns:68px 1fr;gap:20px;padding:14px 14px;border-bottom:1px solid var(--line);border-radius:var(--r-s);transition:background .15s}
.feed-item:last-child{border-bottom:none}
.feed-item:hover{background:var(--bg-soft)}
.fi-time{font-family:var(--mono);font-size:var(--fs-xs);font-weight:var(--fw-sb);color:var(--ink-4);padding-top:2px;letter-spacing:var(--ls-wide);white-space:nowrap;line-height:1.5}
.fi-main{min-width:0}
.fi-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.fi-type{font-size:var(--fs-2xs);color:var(--ink-4);letter-spacing:var(--ls-wide)}
.fi-title{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.55;margin-bottom:4px;letter-spacing:var(--ls-tight);transition:color .15s}
.feed-item:hover .fi-title{color:var(--navy-2)}
.fi-desc{font-size:var(--small);color:var(--ink-3);line-height:1.7;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fi-meta{gap:6px 16px;font-family:var(--sans);font-variant-numeric:tabular-nums;}

/* ─── 9. 识别信号页 ─── */
.selfcheck{background:var(--white);border:1px solid var(--line-2);border-radius:var(--r-m);box-shadow:var(--sh-m);overflow:hidden}
.sc-head{padding:18px 22px 14px;border-bottom:1px solid var(--line);background:var(--bg-alt)}
.sc-head h3{font-family:var(--serif);font-size:var(--h3);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);margin-bottom:4px}
.sc-head p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.sc-head p b{color:var(--ink-2);font-weight:var(--fw-b)}
.sc-list{list-style:none}
.sc-item{display:grid;grid-template-columns:32px 1fr auto;gap:14px;align-items:center;padding:14px 22px;border-bottom:1px solid var(--line)}
.sc-item:last-child{border-bottom:none}
.sc-num{font-family:var(--mono);font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--ink-4);line-height:1.4}
.sc-q{font-size:var(--fs-sm);color:var(--ink);line-height:1.6;font-weight:var(--fw-m)}
.sc-q small{display:block;font-size:var(--meta);color:var(--ink-3);font-weight:var(--fw-r);margin-top:2px;line-height:1.5}
.sc-answer{display:flex;gap:6px;flex-shrink:0}
.sc-btn{font-size:var(--fs-2xs);font-weight:var(--fw-sb);padding:4px 12px;border:1px solid var(--line-2);border-radius:var(--r-s);background:var(--white);color:var(--ink-2);cursor:pointer;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}
.sc-btn:hover{border-color:var(--navy-2);color:var(--navy)}
.sc-btn.yes.active{background:var(--red);border-color:var(--red);color:var(--white)}
.sc-btn.no.active{background:var(--green);border-color:var(--green);color:var(--white)}
.sc-foot{padding:14px 22px;border-top:1px solid var(--line);background:var(--bg-alt);display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.sc-result{font-size:var(--small);color:var(--ink-2);line-height:1.6}
.sc-result b{color:var(--red);font-weight:var(--fw-b);font-size:var(--fs-md)}
.sc-result .safe{color:var(--green)}
.sc-actions{display:flex;gap:8px;flex-wrap:wrap}
.sc-actions a{padding:8px 14px;font-size:var(--fs-xs)}
.signal-section{margin-bottom:32px}
.signal-section:last-child{margin-bottom:0}
.ss-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.ss-title{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.ss-title h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide)}
.ss-title h2::before{content:"";display:inline-block;width:3px;height:14px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
.ss-title .en{font-family:var(--mono);font-size:var(--fs-3xs);color:var(--ink-4);letter-spacing:var(--ls-caps);font-weight:var(--fw-m)}
.ss-desc{font-size:var(--small);color:var(--ink-3);line-height:1.6}
.signal-list{display:flex;flex-direction:column;gap:0}
.sig-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);margin-bottom:10px;overflow:hidden;box-shadow:var(--sh-s)}
.sig-card:last-child{margin-bottom:0}
.sig-head{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:start;padding:16px 20px}
.sig-idx{font-family:var(--mono);font-size:var(--fs-md);font-weight:var(--fw-x);color:var(--red);line-height:1.4;padding-top:2px}
.sig-main{min-width:0}
.sig-title{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin-bottom:2px;letter-spacing:var(--ls-tight)}
.sig-oneline{font-size:var(--small);color:var(--ink-3);line-height:1.65}
.sig-level{flex-shrink:0;font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide2);padding:2px 8px;border-radius:20px;white-space:nowrap;margin-top:2px}
.sig-level.must{background:var(--red-bg);color:var(--red);border:1px solid var(--red-line)}
.sig-level.most{background:var(--amber-bg);color:var(--amber);border:1px solid var(--amber-line)}
.sig-body{padding:12px 20px 16px 78px;border-top:1px dashed var(--line)}
.sig-sub{font-size:var(--small);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);color:var(--ink-3);margin-bottom:4px}
.sig-body p{font-size:var(--small);color:var(--ink-2);line-height:1.75;margin-bottom:10px}
.sig-body p:last-child{margin-bottom:0}
.sig-body p b{color:var(--ink);font-weight:var(--fw-b)}
.sig-do{background:var(--green-bg);border-left:2px solid var(--green);border-radius:0 var(--r-s) var(--r-s) 0;padding:8px 12px;font-size:var(--fs-xs);color:var(--ink-2);line-height:1.7}
.sig-do b{color:var(--green);font-weight:var(--fw-b)}

/* ─── 10. 科普指南页 ─── */
.featured-guides{display:grid;grid-template-columns:1.4fr 1fr;gap:12px}
.fg-main{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:26px 26px 22px;box-shadow:var(--sh-m);display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden}
.fg-main::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--navy)}
.fg-badge{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);padding:2px 10px;border-radius:20px;background:var(--navy-soft);color:var(--navy-2);white-space:nowrap}
.fg-main h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);line-height:1.45;letter-spacing:var(--ls-wide)}
.fg-main p{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.8;max-width:560px}
.fg-main p b{color:var(--ink);font-weight:var(--fw-b)}
.fg-meta{margin-top:auto;padding-top:8px;border-top:1px dashed var(--line)}
.fg-side{display:flex;flex-direction:column;gap:10px}
.fg-side-item{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:16px 18px;box-shadow:var(--sh-s);display:flex;flex-direction:column;gap:6px;flex:1;transition:border-color .15s,box-shadow .15s}
.fgs-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:2px}
.fgs-cat{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide2);padding:2px 8px;border-radius:20px;background:var(--bg-alt);color:var(--ink-3);border:1px solid var(--line);white-space:nowrap}
.fg-side-item h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;letter-spacing:var(--ls-tight);transition:color .15s}
/* 编辑精选：描述完整输出，不做行数截断（模板侧也不再用 cn_substr 截字符） */
.fg-side-item p{font-size:var(--small);color:var(--ink-3);line-height:1.65}
.fgs-meta{margin-top:auto;padding-top:6px}
.fgs-meta b{color:var(--ink-3);font-weight:var(--fw-sb)}
.guide-cat-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.gc-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:16px 18px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--sh-s);transition:border-color .15s,box-shadow .15s}
.gc-card.on{border-color:var(--navy);background:var(--navy-soft)}
.gc-label{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-caps);color:var(--ink-4);font-family:var(--mono)}
.gc-card.on .gc-label{color:var(--navy-2)}
.gc-title{font-size:var(--fs-md);font-weight:var(--fw-b);color:var(--ink);line-height:1.45}
.gc-card.on .gc-title{color:var(--navy)}
.gc-count{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-3xs);color:var(--ink-4);font-weight:var(--fw-sb)}
.guide-section{padding:26px 0 42px}
.guide-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.guide-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:20px 22px;box-shadow:var(--sh-s);display:flex;flex-direction:column;gap:8px;transition:border-color .18s,box-shadow .18s}
.guide-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:2px}
.guide-cat{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide2);padding:2px 8px;border-radius:20px;white-space:nowrap}
.guide-cat.basic{background:var(--navy-soft);color:var(--navy-2)}
.guide-cat.scene{background:var(--amber-bg);color:var(--amber);border:1px solid var(--amber-line)}
.guide-cat.family{background:var(--green-bg);color:var(--green);border:1px solid var(--green-line)}
.guide-cat.damaged{background:var(--red-bg);color:var(--red);border:1px solid var(--red-line)}
.guide-audience{font-size:var(--fs-3xs);color:var(--ink-4);letter-spacing:var(--ls-wide)}
.guide-title{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;letter-spacing:var(--ls-tight);transition:color .15s}
.guide-desc{font-size:var(--small);color:var(--ink-3);line-height:1.75;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.guide-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:8px;margin-top:auto;border-top:1px dashed var(--line)}
.guide-meta{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-3xs)}
.guide-link{font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--navy-2);display:inline-flex;align-items:center;gap:4px}

/* ─── 11. 文章详情页 ─── */
.ah-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.ah-cat{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide2);padding:2px 8px;border-radius:20px;background:var(--navy-soft);color:var(--navy-2);white-space:nowrap}
.ah-audience{font-size:var(--fs-2xs);color:var(--ink-4);letter-spacing:var(--ls-wide)}
.ah-title{font-family:var(--serif);font-size:var(--h1);font-weight:var(--fw-x);line-height:1.35;color:var(--navy);letter-spacing:var(--ls-wide);margin-bottom:12px;max-width:760px}
.ah-lead{font-size:var(--h4);color:var(--ink-2);line-height:1.8;max-width:700px;margin-bottom:16px}
.ah-lead b{color:var(--ink);font-weight:var(--fw-b)}
/* 元信息只是补充，不是重点：小字号 + 最浅字色，避免抢标题和正文的视线 */
.ah-meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:var(--meta);color:var(--ink-4);letter-spacing:var(--ls-wide)}
.ah-meta b{color:var(--ink-3);font-weight:var(--fw-sb)}
.article-layout{display:grid;grid-template-columns:1fr 280px;gap:40px;padding:30px 0 48px;align-items:start}
.article-main{min-width:0}
.article-side{position:sticky;top:80px;display:flex;flex-direction:column;gap:12px}
.article-body{padding:4px 0 0}
.article-body h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);line-height:1.45;margin:34px 0 12px;scroll-margin-top:90px}
.article-body h2:first-child{margin-top:0}
.article-body h2 .h2-num{font-family:var(--mono);font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink-4);margin-right:8px;letter-spacing:var(--ls-wide);vertical-align:1px}
.article-body h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin:22px 0 8px}
.article-body p{font-size:var(--body);color:var(--ink-2);line-height:1.9;margin-bottom:14px}
.article-body p:last-child{margin-bottom:0}
.article-body p b{color:var(--ink);font-weight:var(--fw-b)}
.article-body a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.article-body a:hover{border-color:var(--navy-2)}
/* 编辑器直出的图片/视频没有限宽，会把版心撑破；表格由 AfBody() 包一层 .table-wrap */
.article-body img,.article-body video,.article-body iframe{max-width:100%;height:auto}
.article-body img{display:block;margin:16px auto;border-radius:var(--r-s)}
.table-wrap{overflow-x:auto}
/* 正文常见标签：编辑器直出的稿件里 table / 列表 / 引用 / 代码块都没有类名，
   不给默认样式就会退化成浏览器默认外观（表格无边框、列表缩进异常、代码块溢出） */
.article-body table{width:100%;border-collapse:collapse;margin:18px 0;font-size:var(--small);background:var(--white)}
.article-body th{background:var(--bg-alt);color:var(--ink);font-weight:var(--fw-b);text-align:left;border:1px solid var(--line-2);padding:8px 12px;white-space:nowrap}
.article-body td{border:1px solid var(--line-2);padding:8px 12px;color:var(--ink-2);line-height:1.7;vertical-align:top}
.article-body tbody tr:nth-child(even) td{background:var(--bg-grey)}
.article-body ul,.article-body ol{margin:14px 0;padding-left:22px}
.article-body li{font-size:var(--body);color:var(--ink-2);line-height:1.9;margin-bottom:6px;list-style:disc}
.article-body ol li{list-style:decimal}
.article-body li strong,.article-body td strong{color:var(--ink);font-weight:var(--fw-b)}
.article-body blockquote{border-left:3px solid var(--navy);background:var(--bg-alt);border-radius:0 var(--r-s) var(--r-s) 0;padding:14px 18px;margin:18px 0}
.article-body blockquote p{font-size:var(--body);color:var(--ink-2);line-height:1.8;margin-bottom:0}
.article-body pre,.article-body code{font-family:var(--mono);font-size:var(--fs-2xs);background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r-s);color:var(--ink-2);line-height:1.7}
.article-body pre{margin:18px 0;padding:12px 14px;overflow-x:auto}
.article-body code{padding:2px 5px}
.article-body strong{color:var(--ink);font-weight:var(--fw-b)}
/* mermaid：article-mermaid.js 会找 .mermaid（稿件里是 pre.mermaid），渲染后内部变成 svg；
   源码不合法时脚本加 .is-error 并退回原始源码，这里给它代码块外观 */
.article-body pre.mermaid{padding:16px;text-align:center;background:var(--bg-alt);border:1px dashed var(--line-2);color:var(--ink-3);overflow-x:auto}
.article-body .mermaid svg{max-width:100%;height:auto}
.article-body .mermaid.is-error{text-align:left;white-space:pre-wrap;word-break:break-all;color:var(--ink-2)}
/* 侧栏热门浏览：排名编号 1–5。
   前三名 = 实心徽标（品牌色底 + 白色粗体数字），第 4、5 名 = 普通灰字，一眼能分出层级；
   统一 20x20 定宽定高 + flex 居中：徽标与普通数字列完全等宽等位，标题左边缘成一条直线。
   文字首行的视觉重心比行盒中心略低（中文字面本身有半行距下沉，13.5px×1.5 行高≈20px 里约有 3px 半行距），
   给编号 3px 上边距做视觉补偿，徽标才不会"吊"在标题上方，与首行文字垂直居中 */
.toc-card .hero-feed a{gap:8px;align-items:flex-start}
.toc-card .hero-feed .hf-num{flex-shrink:0;box-sizing:border-box;margin-top:3px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--ink-4)}
.toc-card .hero-feed .hf-num.top{border-radius:5px;background:var(--navy);color:var(--white);font-size:var(--fs-3xs);font-weight:var(--fw-x)}
.article-quote{border-left:3px solid var(--navy);background:var(--bg-alt);border-radius:0 var(--r-s) var(--r-s) 0;padding:14px 18px;margin:18px 0}
.article-quote p{font-size:var(--body);color:var(--ink-2);line-height:1.8;margin-bottom:0}
.article-quote p b{color:var(--ink);font-weight:var(--fw-b)}
.article-callout{display:flex;gap:12px;align-items:flex-start;border-radius:var(--r-s);padding:14px 16px;margin:18px 0}
.ac-icon{flex-shrink:0;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);font-weight:var(--fw-x);line-height:1;margin-top:2px}
.ac-body{min-width:0}
.ac-body h4{font-size:var(--h4);font-weight:var(--fw-b);line-height:1.5;margin-bottom:2px}
.ac-body p{font-size:var(--body);color:var(--ink-2);line-height:1.75;margin-bottom:0}
.ac-body p b{color:var(--ink);font-weight:var(--fw-b)}
.article-callout.info{background:var(--navy-soft);border:1px solid var(--line-2)}
.article-callout.info .ac-icon{background:var(--navy-2);color:var(--white)}
.article-callout.info .ac-body h4{color:var(--navy)}
.article-callout.warn{background:var(--amber-bg);border:1px solid var(--amber-line)}
.article-callout.warn .ac-icon{background:var(--amber);color:var(--white)}
.article-callout.warn .ac-body h4{color:var(--amber)}
.article-callout.success{background:var(--green-bg);border:1px solid var(--green-line)}
.article-callout.success .ac-icon{background:var(--green);color:var(--white)}
.article-callout.success .ac-body h4{color:var(--green)}
/* 清单：方框图标由 li::before 绘制，原生圆点必须关掉。
   注意 .article-body li{list-style:disc} 与 .article-checklist li 特异性相同(0,1,1)、且写在前面，
   只靠 .article-checklist{list-style:none}(0,1,0) 压不住 li，必须在 li 上显式 list-style:none；
   ul 的 padding-left 也要清零，否则会继承 .article-body ul 的 22px，方框被推到 38px 处，
   既与原生圆点并排成"双标记"，又让框内左侧留白过大。 */
ul.article-checklist{list-style:none;padding:0;border:1px solid var(--line);border-radius:var(--r-s);overflow:hidden;margin:16px 0}
.article-checklist li{position:relative;list-style:none;padding:12px 16px 12px 44px;font-size:var(--body);color:var(--ink-2);line-height:1.75;border-bottom:1px solid var(--line)}
.article-checklist li:last-child{border-bottom:none}
.article-checklist li::before{content:"";position:absolute;left:16px;top:17px;width:14px;height:14px;border:1.5px solid var(--navy-2);border-radius:3px;background:var(--white)}
.article-checklist li b{color:var(--ink);font-weight:var(--fw-b)}
.article-faq{margin-top:24px;border-top:1px solid var(--line)}
.faq-item{padding:14px 0;border-bottom:1px solid var(--line)}
.faq-item:last-child{border-bottom:none;padding-bottom:0}
.faq-q{display:flex;gap:8px;align-items:flex-start;font-size:var(--fs-md);font-weight:var(--fw-b);color:var(--ink);line-height:1.55;margin-bottom:6px}
.faq-mark{flex-shrink:0;font-family:var(--mono);font-size:var(--fs-2xs);font-weight:var(--fw-x);color:var(--navy-2);padding-top:2px;line-height:1.4}
.faq-a{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.8;padding-left:24px}
.faq-a b{color:var(--ink);font-weight:var(--fw-b)}
.article-source{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
/* 「来源与更新说明」也是板块标题（不是条目），统一衬线 + navy + 竖条，与 相关阅读/读者线索 同一套 */
.article-source h3{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);letter-spacing:var(--ls-wide);color:var(--navy);line-height:1.4;margin-bottom:14px}
.article-source h3::before{content:"";display:inline-block;width:3px;height:15px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-2px}
.article-source p{font-size:var(--small);color:var(--ink-3);line-height:1.8;margin-bottom:6px}
.article-source p:last-child{margin-bottom:0}
.article-source b{color:var(--ink-2);font-weight:var(--fw-sb)}
/* 涉及项目（文章标签）：正文后的轻量行，不占分隔线节奏；tag=风险项目，直链 /tags/<tid> 档案页 */
.article-tags{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.at-label{font-size:var(--fs-xs);font-weight:var(--fw-sb);color:var(--ink-3)}
.kb-tag{display:inline-block;font-family:var(--sans);font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--navy-2);background:var(--navy-soft);padding:4px 10px;border-radius:var(--r-s);transition:background .15s,color .15s}
.kb-tag:hover{background:var(--navy);color:var(--white)}
.article-related{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.article-related h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);margin-bottom:14px}
.article-related h2::before{content:"";display:inline-block;width:3px;height:13px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
/* 相关阅读：无限流（结构参考 news #stream，按本站令牌重写）——单列、行间细分隔线、
   标题整行可点、栏目+日期作 meta；底部 tip + 哨兵由 fpnet.js 驱动 */
.related-stream .rs-head{display:flex;align-items:baseline;gap:6px 14px;flex-wrap:wrap;margin-bottom:14px}
.related-stream .rs-head h2{margin-bottom:0}
.rs-count{font-size:var(--fs-xs);color:var(--ink-4);font-variant-numeric:tabular-nums;margin-left:auto}
.rs-note{font-size:var(--fs-xs);color:var(--amber)}
.rs-list{display:flex;flex-direction:column}
.rs-item{display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;align-items:start;padding:16px 12px;border-bottom:1px solid var(--line)}
.rs-item:last-child{border-bottom:0}
.rs-time{font-size:13px;color:var(--ink-4);font-weight:var(--fw-m);font-variant-numeric:tabular-nums;line-height:1.6;padding-top:2px;white-space:nowrap}
.rs-body{min-width:0;display:grid;gap:8px}
.rs-title{display:block;font-size:15px;font-weight:var(--fw-b);color:var(--ink);line-height:1.6;overflow-wrap:anywhere}
.rs-item:hover .rs-title{color:var(--navy-2)}
.rs-meta{display:flex;align-items:baseline;gap:6px;font-size:var(--meta);font-weight:400;color:var(--ink-4);font-variant-numeric:tabular-nums}
.rs-meta .rs-cat{color:var(--ink-3);font-weight:400}
.rs-dot{color:var(--ink-5)}
.rs-foot{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:14px}
.rs-tip{font-size:var(--fs-xs);color:var(--ink-4)}
.rs-tip.is-end{color:var(--ink-3)}
.rs-tip.is-loading{color:var(--navy-2)}
.rs-tip.is-loading::before{content:"";display:inline-block;width:10px;height:10px;border:2px solid var(--line-2);border-top-color:var(--navy);border-radius:50%;animation:fpSpinner .7s linear infinite;vertical-align:-2px;margin-right:6px}
.rs-sentinel{width:100%;height:1px}
@keyframes fpSpinner{to{transform:rotate(360deg)}}
.rs-sk{display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;padding:16px 12px;border-bottom:1px solid var(--line)}
.rs-sk>i{display:block;height:11px;border-radius:3px;background:var(--bg-grey)}
.rs-sk .sk-b{display:flex;flex-direction:column;gap:9px}
.rs-sk .sk-b i{width:100%;height:12px}
.rs-sk .sk-b i:last-child{width:42%;height:9px}
.article-actions{margin-top:24px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:24px;border-top:1px solid var(--line)}
.aa-left{font-size:var(--fs-xs);color:var(--ink-3);line-height:1.6}
.aa-left b{color:var(--ink-2);font-weight:var(--fw-sb)}
.aa-right{display:flex;gap:8px;flex-wrap:wrap}
.aa-right a{font-size:var(--fs-xs);font-weight:var(--fw-b);padding:8px 14px;border-radius:var(--r-s);border:1px solid var(--line-2);color:var(--ink-2);transition:border-color .15s,color .15s;white-space:nowrap}
.aa-right a:hover{border-color:var(--navy-2);color:var(--navy)}
.toc-card{padding:16px 18px}
/* 侧栏卡片标题 = 板块标题：与 .side-card/.cg-head/.sc-head 同一套（衬线 + 品牌深蓝 + 细体），
   原来是 sans + ink-3 + 粗体，在「本页目录/热门浏览/紧急求助」三张卡上明显脱轨 */
.toc-card h3{font-family:var(--serif);font-size:var(--h3);font-weight:var(--fw-x);letter-spacing:var(--ls-wide);color:var(--navy);line-height:1.4;margin-bottom:10px}
.toc-list{list-style:none}
.toc-list li{padding:8px 0}
.toc-list a{display:block;font-size:var(--fs-xs);color:var(--ink-2);line-height:1.6;padding:6px 0 6px 12px;border-left:2px solid var(--line);transition:border-color .15s,color .15s}
.toc-list a:hover{border-color:var(--line-2);color:var(--navy)}
.toc-list a.active{border-color:var(--navy);color:var(--navy);font-weight:var(--fw-b)}
.ai-list{list-style:none}
.ai-list li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:var(--body)}
.ai-list li:last-child{border-bottom:none}
.ai-list .ai-k{color:var(--ink-3);flex-shrink:0}
.ai-list .ai-v{color:var(--ink);font-weight:var(--fw-b);text-align:right;line-height:1.5}
.ai-list .ai-v.mono{font-family:var(--mono);font-size:var(--fs-2xs)}

/* ─── 12. 法治警示页 ─── */
.legal-hero .legal-desc{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.8;max-width:700px;margin-bottom:14px}
.legal-hero .legal-desc b{color:var(--ink);font-weight:var(--fw-b)}
.legal-hero .legal-desc a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.legal-hero h1{font-family:var(--serif);font-size:var(--h1);font-weight:var(--fw-x);color:var(--navy);margin-bottom:8px;letter-spacing:var(--ls-wide)}
.legal-notice{display:flex;gap:12px;align-items:flex-start;background:var(--amber-bg);border:1px solid var(--amber-line);border-radius:var(--r-m);padding:14px 18px;max-width:760px}
.legal-notice-icon{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--amber);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:var(--fw-x);line-height:1;margin-top:2px}
.legal-notice p{font-size:var(--small);color:var(--ink-2);line-height:1.7}
.legal-notice p b{color:var(--amber);font-weight:var(--fw-b)}
.situation-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.situation-card{padding:18px 20px;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden}
.situation-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px}
.situation-card.s1::before{background:var(--ink-4)}
.situation-card.s2::before{background:var(--amber)}
.situation-card.s3::before{background:var(--red)}
.situation-card.s4::before{background:var(--navy-2)}
.situation-tag{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);padding:2px 8px;border-radius:20px;align-self:flex-start;white-space:nowrap}
.situation-card.s1 .situation-tag{background:var(--bg-grey);color:var(--ink-3)}
.situation-card.s2 .situation-tag{background:var(--amber-bg);color:var(--amber)}
.situation-card.s3 .situation-tag{background:var(--red-bg);color:var(--red)}
.situation-card.s4 .situation-tag{background:var(--navy-soft);color:var(--navy-2)}
.situation-card h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.45}
.situation-card p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.situation-card p b{color:var(--ink);font-weight:var(--fw-b)}
.legal-consequence{background:#1b2a3d;color:var(--on-deep);padding:40px 0}
.lc-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap}
.lc-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);letter-spacing:var(--ls-wide);color:var(--white)}
.lc-head h2::before{content:"";display:inline-block;width:3px;height:15px;background:var(--amber-lt);border-radius:1px;margin-right:10px;vertical-align:-2px}
.lc-head p{font-size:var(--small);color:var(--ink-5);line-height:1.65;max-width:560px}
.lc-head p b{color:var(--amber-lt);font-weight:var(--fw-b)}
.lc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lc-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-m);padding:20px 22px;display:flex;flex-direction:column;gap:8px}
.lc-card-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lc-crime{font-family:var(--serif);font-size:var(--fs-lg);font-weight:var(--fw-x);color:var(--white);line-height:1.4}
.lc-law{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-3xs);font-weight:var(--fw-sb);color:var(--ink-5);letter-spacing:var(--ls-wide2);padding:2px 6px;border-radius:3px;background:rgba(255,255,255,.06);white-space:nowrap}
.lc-desc{font-size:var(--fs-xs);color:var(--line-3);line-height:1.75}
.lc-desc b{color:var(--white);font-weight:var(--fw-b)}
.lc-punish{font-size:var(--fs-xs);color:var(--amber-lt);font-weight:var(--fw-b);padding-top:8px;margin-top:auto;border-top:1px solid rgba(255,255,255,.08);line-height:1.65}
.lc-punish b{color:#f0c98a;font-weight:var(--fw-b)}
.lc-note{margin-top:20px;font-size:var(--meta);color:#8a9db3;line-height:1.8;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}
.lc-note b{color:var(--line-3);font-weight:var(--fw-sb)}
.trap-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.trap-card{padding:18px 20px;display:flex;gap:14px;align-items:flex-start}
.trap-icon{flex-shrink:0;width:30px;height:30px;border-radius:var(--r-s);background:var(--amber-bg);color:var(--amber);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:var(--fs-2xs);font-weight:var(--fw-x);margin-top:2px}
.trap-body{min-width:0}
.trap-body h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin-bottom:4px}
.trap-body p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.trap-body p b{color:var(--ink);font-weight:var(--fw-b)}
.exit-path{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--sh-s);overflow:hidden}
.ep-head{padding:18px 22px 14px;border-bottom:1px solid var(--line);background:var(--bg-alt)}
.ep-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);margin-bottom:4px}
.ep-head p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.ep-head p b{color:var(--ink-2);font-weight:var(--fw-b)}
.ep-list{list-style:none}
.ep-item{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:16px 22px;border-bottom:1px solid var(--line);align-items:start}
.ep-item:last-child{border-bottom:none}
.ep-num{font-family:var(--mono);font-size:var(--fs-sm);font-weight:var(--fw-x);color:var(--navy-2);line-height:1.4;padding-top:2px}
.ep-body h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin-bottom:2px}
.ep-body p{font-size:var(--small);color:var(--ink-3);line-height:1.75}
.ep-body p b{color:var(--ink);font-weight:var(--fw-b)}
.ep-body .ep-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px}
.ep-body .ep-links a{font-size:var(--fs-xs);font-weight:var(--fw-b);color:var(--navy-2);border-bottom:1px solid var(--line-2);padding-bottom:2px}
.ep-body .ep-links a:hover{border-color:var(--navy-2)}

/* ─── 13. 关于与来源页 ─── */
.about-nav{background:var(--white);border-bottom:1px solid var(--line)}
.about-nav .wrap{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0}
.about-nav .wrap::-webkit-scrollbar{display:none}
.about-nav a{font-size:var(--fs-sm);color:var(--ink-2);padding:12px 16px;white-space:nowrap;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}
.about-nav a:hover{color:var(--navy)}
.about-nav a.active{color:var(--navy);font-weight:var(--fw-b);border-bottom-color:var(--navy)}
.about-fact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.about-fact{padding:20px 22px}
.about-fact.is{border-left:3px solid var(--green)}
.about-fact.not{border-left:3px solid var(--red)}
.about-fact h3{font-size:var(--h3);font-weight:var(--fw-b);margin-bottom:10px;line-height:1.4}
.about-fact.is h3{color:var(--green)}
.about-fact.not h3{color:var(--red)}
.about-fact ul{list-style:none}
.about-fact li{font-size:var(--small);color:var(--ink-2);line-height:1.7;padding:6px 0 6px 16px;position:relative}
.about-fact li b{color:var(--ink);font-weight:var(--fw-b)}
.about-fact li::before{content:"";position:absolute;left:4px;top:14px;width:4px;height:4px;border-radius:50%}
.about-fact.is li::before{background:var(--green)}
.about-fact.not li::before{background:var(--red)}
.process-flow{display:grid;grid-template-columns:repeat(4,1fr);background:var(--white);border-radius:var(--r-m);border:1px solid var(--line);overflow:hidden;box-shadow:var(--sh-s)}
.pf-item{padding:20px 20px 18px;border-right:1px solid var(--line)}
.pf-item:last-child{border-right:none}
.pf-num{font-family:var(--mono);font-size:var(--fs-2xs);font-weight:var(--fw-b);color:var(--navy-2);letter-spacing:var(--ls-caps);margin-bottom:8px}
.pf-item h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);margin-bottom:6px;line-height:1.45}
.pf-item p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.pf-item p b{color:var(--ink-2);font-weight:var(--fw-b)}
.source-list{list-style:none}
.source-item{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);align-items:start}
.source-item:last-child{border-bottom:none}
.source-type{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-3xs);font-weight:var(--fw-b);color:var(--navy-2);letter-spacing:var(--ls-wide2);padding-top:2px;line-height:1.5}
.source-body h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.45;margin-bottom:4px}
.source-body p{font-size:var(--small);color:var(--ink-3);line-height:1.75}
.source-body p b{color:var(--ink);font-weight:var(--fw-b)}
.rating-list{list-style:none}
.rating-item{display:grid;grid-template-columns:76px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);align-items:start}
.rating-item:last-child{border-bottom:none}
.rating-item .pill{justify-self:start}
.rating-body h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.45;margin-bottom:2px}
.rating-body p{font-size:var(--small);color:var(--ink-3);line-height:1.75}
.rating-body p b{color:var(--ink);font-weight:var(--fw-b)}
.disclaimer-list{list-style:none}
.disclaimer-item{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line);align-items:start}
.disclaimer-item:last-child{border-bottom:none}
.di-num{font-family:var(--mono);font-size:var(--fs-2xs);font-weight:var(--fw-b);color:var(--ink-4);padding-top:2px}
.di-body h4{font-size:var(--h4);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin-bottom:2px}
.di-body p{font-size:var(--small);color:var(--ink-3);line-height:1.75}
.di-body p b{color:var(--ink);font-weight:var(--fw-b)}
.about-cta{border:1px solid var(--line-2);border-radius:var(--r-m);background:var(--white);padding:24px 26px;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;box-shadow:var(--sh-m)}
.about-cta h3{font-family:var(--serif);font-size:var(--h3);font-weight:var(--fw-x);color:var(--navy);margin-bottom:6px;letter-spacing:var(--ls-wide)}
.about-cta p{font-size:var(--small);color:var(--ink-2);line-height:1.75}
.about-cta p b{color:var(--red);font-weight:var(--fw-b)}
.about-cta-actions{display:flex;gap:10px;flex-wrap:wrap}

/* ─── 14. 纠错 / 线索提交页 ─── */
.urgent-banner{display:flex;align-items:flex-start;gap:12px;background:var(--red-bg);border:1px solid var(--red-line);border-left:3px solid var(--red);border-radius:var(--r-s);padding:14px 18px;margin-bottom:20px}
.ub-icon{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--red);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:var(--fw-x);line-height:1;margin-top:2px}
.ub-body{min-width:0}
.ub-body .ub-title{font-size:var(--h3);font-weight:var(--fw-x);color:var(--red);margin-bottom:4px;line-height:1.4}
.ub-body p{font-size:var(--small);color:var(--ink-2);line-height:1.7}
.ub-body p b{color:var(--red);font-weight:var(--fw-b)}
.ub-body p a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.form-layout{display:grid;grid-template-columns:1fr 300px;gap:32px;padding:32px 0 44px;align-items:start}
.form-main{min-width:0}
.form-side{position:sticky;top:80px;display:flex;flex-direction:column;gap:12px}
.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:26px 28px;box-shadow:var(--sh-s)}
.form-card-head{padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.form-card-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);margin-bottom:6px}
.form-card-head p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.form-card-head p b{color:var(--ink-2);font-weight:var(--fw-b)}
.field{margin-bottom:22px}
.field:last-of-type{margin-bottom:0}
.field-label{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink);margin-bottom:6px;line-height:1.5}
.field-label .req{color:var(--red);font-weight:var(--fw-b);font-size:var(--fs-xs);line-height:1}
.field-label .opt{font-size:var(--fs-2xs);font-weight:var(--fw-r);color:var(--ink-4);padding:2px 6px;background:var(--bg-alt);border-radius:3px}
.field-hint{font-size:var(--meta);color:var(--ink-3);line-height:1.65;margin-bottom:8px}
.field-hint b{color:var(--ink-2);font-weight:var(--fw-b)}
.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.type-card{position:relative;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--line-2);border-radius:var(--r-s);background:var(--white);cursor:pointer;transition:border-color .15s,background .15s}
.type-card:hover{border-color:var(--ink-4)}
.type-card input{position:absolute;opacity:0;pointer-events:none}
.type-card-title{font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink);line-height:1.4}
.type-card-desc{font-size:var(--fs-2xs);color:var(--ink-3);line-height:1.55}
.type-card input:checked + .type-card-title{color:var(--navy)}
.type-card:has(input:checked){border-color:var(--navy);background:var(--navy-soft)}
.type-card:has(input:focus-visible){outline:2px solid var(--navy-2);outline-offset:2px}
.input,.textarea{width:100%;font-family:inherit;font-size:var(--fs-sm);color:var(--ink);background:var(--white);border:1px solid var(--line-2);border-radius:var(--r-s);padding:10px 12px;line-height:1.6;transition:border-color .15s,box-shadow .15s}
.input::placeholder,.textarea::placeholder{color:var(--ink-4)}
.input:focus,.textarea:focus{outline:none;border-color:var(--navy-2);box-shadow:0 0 0 3px rgba(28,68,104,.1)}
.textarea{min-height:140px;resize:vertical;line-height:1.75}
.textarea.small{min-height:80px}
.field-count{display:flex;justify-content:space-between;gap:12px;margin-top:6px;font-size:var(--fs-2xs);color:var(--ink-4)}
.field-count .count-num{font-family:var(--mono);font-weight:var(--fw-sb);white-space:nowrap}
.field-count .count-num.warn{color:var(--amber)}
.field-count .count-num.over{color:var(--red)}
.field.error .input,.field.error .textarea{border-color:var(--red);box-shadow:0 0 0 3px rgba(180,35,24,.08)}
.field-error{display:none;font-size:var(--meta);color:var(--red);line-height:1.6;margin-top:6px}
.field.error .field-error{display:block}
.checkbox-row{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--line-2);border-radius:var(--r-s);background:var(--bg-alt);cursor:pointer;transition:border-color .15s,background .15s}
.checkbox-row:hover{border-color:var(--ink-4)}
.checkbox-row:has(input:checked){border-color:var(--navy);background:var(--navy-soft)}
.checkbox-row input{flex-shrink:0;width:16px;height:16px;margin-top:2px;accent-color:var(--navy);cursor:pointer}
.checkbox-body{font-size:var(--fs-xs);color:var(--ink-2);line-height:1.7}
.checkbox-body b{color:var(--ink);font-weight:var(--fw-b)}
.verify-row{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
.verify-row .input{flex:1;min-width:120px}
.verify-placeholder{display:flex;align-items:center;justify-content:center;padding:0 18px;border:1px dashed var(--line-2);border-radius:var(--r-s);background:var(--bg-alt);font-size:var(--fs-2xs);color:var(--ink-4);white-space:nowrap;min-height:42px}
.form-submit{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.btn-submit{font-size:var(--fs-sm);font-weight:var(--fw-b);letter-spacing:var(--ls-wide2);padding:12px 28px;border-radius:var(--r-s);background:var(--navy);color:var(--white);border:1px solid var(--navy);transition:background .15s,border-color .15s,opacity .15s;white-space:nowrap}
.btn-submit:hover:not(:disabled){background:var(--bg-deep);border-color:var(--bg-deep)}
.btn-submit:disabled{opacity:.45;cursor:not-allowed}
.form-submit-note{font-size:var(--fs-2xs);color:var(--ink-3);line-height:1.65;flex:1;min-width:200px}
/* 补充证据字段：涉及金额（始终显示）+ 参与时间段（仅经历简述显示），均为选填 */
.story-row{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
.story-row .input{flex:1 1 140px;min-width:0}
.story-row .story-amt-unit{flex:0 0 110px;width:110px}
.story-range{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.story-range .input{flex:0 0 auto;width:auto;min-width:92px}
.story-range-sep{color:var(--ink-3);font-size:var(--fs-sm)}
.story-now{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:var(--fs-xs);color:var(--ink-2);cursor:pointer}
.story-now input{width:16px;height:16px;accent-color:var(--navy)}
.form-submit-note b{color:var(--ink-2);font-weight:var(--fw-b)}
.form-success{display:none;background:var(--white);border:1px solid var(--green-line);border-radius:var(--r-m);padding:36px 32px;box-shadow:var(--sh-m);text-align:center}
.form-success.show{display:block}
.fs-icon{width:52px;height:52px;border-radius:50%;background:var(--green-bg);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);font-weight:var(--fw-x);margin:0 auto 16px}
.form-success h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);margin-bottom:8px;letter-spacing:var(--ls-wide)}
.form-success .fs-lead{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.8;max-width:480px;margin:0 auto 20px}
.form-success .fs-lead b{color:var(--ink);font-weight:var(--fw-b)}
.fs-info{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-alt);border:1px solid var(--line);border-radius:20px;font-family:var(--mono);font-size:var(--fs-2xs);color:var(--ink-3);margin-bottom:22px}
.fs-info b{color:var(--navy-2);font-weight:var(--fw-b);letter-spacing:var(--ls-wide)}
.fs-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.fs-card{padding:18px 20px}
.fs-card h3{font-family:var(--serif);font-size:var(--h3);font-weight:var(--fw-x);color:var(--navy);margin-bottom:10px;letter-spacing:var(--ls-wide);line-height:1.4}
.fs-card h3::before{content:"";display:inline-block;width:3px;height:12px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
.fs-card p{font-size:var(--small);color:var(--ink-2);line-height:1.75}
.fs-card p + p{margin-top:8px}
.fs-card p b{color:var(--ink);font-weight:var(--fw-b)}
.fs-card p .warn{color:var(--red);font-weight:var(--fw-b)}
.fs-card.urgent{border-color:var(--red-line);background:var(--red-bg)}
.fs-card.urgent h3{color:var(--red)}
.fs-card.urgent h3::before{background:var(--red)}
.fs-card.urgent .fs-actions{margin-top:10px;display:flex;flex-direction:column;gap:6px}
.fs-card.urgent .fs-actions a{display:block;text-align:center;font-size:var(--fs-xs);font-weight:var(--fw-b);padding:8px 14px;border-radius:var(--r-s);background:var(--white);color:var(--red);border:1px solid var(--red-line);transition:background .15s}
.fs-list{list-style:none}
.fs-list li{position:relative;padding:6px 0 6px 16px;font-size:var(--small);color:var(--ink-2);line-height:1.7}
.fs-list li:last-child{padding-bottom:0}
.fs-list li::before{content:"";position:absolute;left:3px;top:13px;width:4px;height:4px;border-radius:50%;background:var(--line-2)}
.fs-list li b{color:var(--ink);font-weight:var(--fw-b)}
.fs-list li.no::before{background:var(--red)}

/* ─── 15. 搜索结果页 ─── */
.search-main{display:flex;background:var(--white);border:1.5px solid var(--navy);border-radius:var(--r-m);overflow:hidden;max-width:680px;box-shadow:0 4px 14px rgba(20,48,79,.08);transition:box-shadow .2s;margin-bottom:12px}
.search-main:focus-within{box-shadow:0 4px 20px rgba(20,48,79,.14)}
.search-main input{flex:1;border:none;outline:none;padding:12px 16px;font-size:var(--fs-base);font-family:inherit;color:var(--ink);background:transparent;min-width:0}
.search-main input::placeholder{color:var(--ink-4)}
.search-main button{padding:0 26px;background:var(--navy);color:var(--white);font-size:var(--fs-sm);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);transition:background .15s;white-space:nowrap}
.search-main button:hover{background:var(--bg-deep)}
.search-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;font-size:var(--fs-xs);color:var(--ink-3);line-height:1.7}
.search-summary .kw{font-weight:var(--fw-b);color:var(--ink);padding:2px 6px;background:var(--bg-alt);border-radius:3px;border:1px solid var(--line)}
.search-summary b{color:var(--ink-2);font-weight:var(--fw-b)}
.search-summary .sep{opacity:.4}
.result-section{padding:24px 0 42px}
.result-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.result-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide)}
.result-head h2::before{content:"";display:inline-block;width:3px;height:13px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
.rg-sub{font-size:var(--fs-2xs);color:var(--ink-4);line-height:1.6;white-space:nowrap}
.rg-sub b{color:var(--ink-2);font-weight:var(--fw-sb)}
.rg-sub a{color:var(--navy-2);border-bottom:1px solid var(--line-2);padding-bottom:1px;transition:border-color .15s,color .15s}
.rg-sub a:hover{border-color:var(--navy-2);color:var(--navy)}
.result-sort{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.result-sort span{font-size:var(--fs-2xs);color:var(--ink-3);margin-right:2px}
.sort-pill{font-size:var(--fs-2xs);padding:4px 10px;border-radius:14px;border:1px solid var(--line);background:var(--white);color:var(--ink-2);transition:border-color .15s,color .15s,background .15s;white-space:nowrap}
.sort-pill:hover{border-color:var(--line-2);color:var(--navy)}
.sort-pill.on{background:var(--navy);border-color:var(--navy);color:var(--white);font-weight:var(--fw-sb)}
.result-group{margin-bottom:26px}
.result-group:last-child{margin-bottom:0}
.rg-head{display:flex;align-items:center;justify-content:flex-end;margin-bottom:8px;flex-wrap:wrap}
.rg-head a{font-size:var(--fs-2xs);color:var(--navy-2);border-bottom:1px solid var(--line-2);padding-bottom:2px;white-space:nowrap}
.rg-head a:hover{border-color:var(--navy-2)}
.result-list{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--sh-s);overflow:hidden}
.result-item{padding:14px 18px;border-bottom:1px solid var(--line);transition:background .15s;display:block}
.result-item:last-child{border-bottom:none}
.result-item:hover{background:var(--bg-soft)}
.ri-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.ri-name{font-size:var(--fs-base);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;transition:color .15s;letter-spacing:var(--ls-tight)}
.result-item:hover .ri-name{color:var(--navy-2)}
.ri-name em{font-style:normal;background:#fff3c4;padding:0 2px;border-radius:2px}
.ri-type{font-size:var(--fs-2xs);color:var(--ink-4);letter-spacing:var(--ls-wide)}
.ri-desc{font-size:var(--small);color:var(--ink-3);line-height:1.7;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ri-desc em{font-style:normal;color:var(--ink);font-weight:var(--fw-b);background:#fff8d6;padding:0 2px;border-radius:2px}
.ri-meta{gap:4px 14px;font-family:var(--sans);font-variant-numeric:tabular-nums;}
.ri-meta b{color:var(--ink-3);font-weight:var(--fw-sb)}
/* 分页器用 .page-btn；提高特异性盖过 .pagination span 的海军蓝（避免禁用态/省略号变成当前页样式） */
.pagination .page-btn{min-width:34px;height:34px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--r-s);background:var(--white);color:var(--ink-2);font-size:var(--fs-sm);font-family:inherit;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}
.pagination .page-btn:hover{border-color:var(--navy);color:var(--navy)}
.pagination .page-btn.on{background:var(--navy);border-color:var(--navy);color:var(--white);font-weight:var(--fw-b)}
.pagination .page-btn.disabled{background:var(--white);border-color:var(--line);color:var(--ink-4);opacity:.5;pointer-events:none}
/* 结果区 / 搜索建议之间的间距：search-tips 为其 .wrap 首子元素时 margin-top 会被归零，这里补 */
.result-section > .wrap + .wrap{margin-top:28px}
.empty-result{background:var(--white);border:1px dashed var(--line-2);border-radius:var(--r-m);padding:44px 32px;text-align:center;margin-bottom:20px}
.er-icon{width:56px;height:56px;border-radius:50%;background:var(--bg-alt);color:var(--ink-4);display:flex;align-items:center;justify-content:center;font-size:var(--fs-3xl);font-weight:var(--fw-r);margin:0 auto 16px}
.empty-result h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);margin-bottom:8px;letter-spacing:var(--ls-wide)}
.empty-result .er-lead{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.8;max-width:520px;margin:0 auto 18px}
.empty-result .er-lead b{color:var(--ink);font-weight:var(--fw-b)}
.er-guides{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;text-align:left;margin-top:6px;max-width:720px;margin-left:auto;margin-right:auto}
.erg-card{padding:14px 16px;transition:border-color .15s,background .15s;display:flex;flex-direction:column;gap:4px;background:var(--bg-alt)}
.erg-num{font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-b);color:var(--ink-4);letter-spacing:var(--ls-wide3)}
.erg-title{font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink);line-height:1.45}
.erg-desc{font-size:var(--fs-2xs);color:var(--ink-3);line-height:1.6}
.search-tips{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:18px 20px;box-shadow:var(--sh-s)}
.search-tips h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink-2);letter-spacing:var(--ls-wide);margin-bottom:10px}
.tips-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tips-item h4{font-size:var(--h4);font-weight:var(--fw-b);color:var(--navy-2);margin-bottom:4px;letter-spacing:var(--ls-wide)}
.tips-item ul{list-style:none}
.tips-item li{font-size:var(--small);color:var(--ink-3);line-height:1.7;padding:6px 0}
.tips-item li b{color:var(--ink-2);font-weight:var(--fw-sb)}
.tips-item a{color:var(--navy-2);border-bottom:1px solid transparent;transition:border-color .15s}
.tips-item a:hover{border-color:var(--navy-2)}
.hot-block{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line)}
.hot-label{display:block;font-size:var(--fs-2xs);color:var(--ink-4);letter-spacing:var(--ls-wide);margin-bottom:8px}
.hot-search{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.hot-item{font-size:var(--fs-2xs);padding:4px 12px;border:1px solid var(--line);border-radius:14px;background:var(--white);color:var(--ink-2);transition:border-color .15s,color .15s,background .15s;white-space:nowrap}
.hot-item:hover{border-color:var(--line-2);color:var(--navy);background:var(--navy-soft)}
.hot-item .hot-arrow{color:var(--ink-4);margin-left:4px;font-size:var(--fs-3xs)}

/* ─── 16. 404 页 ─── */
.error-page{background:linear-gradient(180deg,var(--bg-hero) 0%,var(--bg) 100%);min-height:calc(100vh - 420px);display:flex;align-items:center;padding:48px 0 56px;border-bottom:1px solid var(--line)}
.error-wrap{width:100%;max-width:720px;margin:0 auto;padding:0 24px;text-align:center}
.error-code{font-family:var(--mono);font-size:clamp(72px,14vw,120px);font-weight:var(--fw-x);line-height:1;letter-spacing:var(--ls-tighter);color:var(--navy);margin-bottom:6px;position:relative;display:inline-block}
.error-code::after{content:"";display:block;width:48px;height:3px;background:var(--red);border-radius:2px;margin:14px auto 0}
.error-tag{font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-caps3);color:var(--ink-4);margin-bottom:18px;text-transform:uppercase}
.error-title{font-family:var(--serif);font-size:var(--h1);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);line-height:1.4;margin-bottom:10px}
.error-lead{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.85;max-width:520px;margin:0 auto 22px}
.error-lead b{color:var(--ink);font-weight:var(--fw-b)}
.error-lead a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.error-lead a:hover{border-color:var(--navy-2)}
.error-search{display:flex;background:var(--white);border:1.5px solid var(--navy);border-radius:var(--r-m);overflow:hidden;max-width:480px;margin:0 auto 8px;box-shadow:0 4px 14px rgba(20,48,79,.08);transition:box-shadow .2s}
.error-search:focus-within{box-shadow:0 4px 20px rgba(20,48,79,.14)}
.error-search input{flex:1;border:none;outline:none;padding:12px 14px;font-size:var(--fs-md);font-family:inherit;color:var(--ink);background:transparent;min-width:0}
.error-search input::placeholder{color:var(--ink-4)}
.error-search button{padding:0 22px;background:var(--navy);color:var(--white);font-size:var(--fs-sm);font-weight:var(--fw-b);letter-spacing:var(--ls-wide2);transition:background .15s;white-space:nowrap}
.error-search button:hover{background:var(--bg-deep)}
.error-search-hint{font-size:var(--meta);color:var(--ink-3);margin-bottom:28px;line-height:1.65}
.error-search-hint b{color:var(--ink-2);font-weight:var(--fw-sb)}
.error-exits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:26px;text-align:left}
.exit-card{padding:16px 16px 14px;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,box-shadow .15s}
.exit-num{font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-b);color:var(--ink-4);letter-spacing:var(--ls-wide3)}
.exit-title{font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink);line-height:1.45;transition:color .15s}
.exit-desc{font-size:var(--fs-2xs);color:var(--ink-3);line-height:1.6}
.error-hot{border-top:1px solid var(--line);padding-top:20px}
.error-hot h2{font-size:var(--h3);font-weight:var(--fw-x);letter-spacing:var(--ls-wide);color:var(--ink-3);margin-bottom:10px}
.hot-links{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.hot-link{font-size:var(--fs-2xs);padding:4px 12px;border:1px solid var(--line);border-radius:14px;background:var(--white);color:var(--ink-2);transition:border-color .15s,color .15s,background .15s;white-space:nowrap}
.hot-link:hover{border-color:var(--line-2);color:var(--navy);background:var(--navy-soft)}
.error-help{margin-top:32px;border:1px solid var(--line-2);border-radius:var(--r-m);background:var(--white);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;box-shadow:var(--sh-s);text-align:left}
.error-help-text{font-size:var(--fs-xs);color:var(--ink-2);line-height:1.75;flex:1;min-width:220px}
.error-help-text b{color:var(--red);font-weight:var(--fw-b)}
.error-help-actions{display:flex;gap:8px;flex-wrap:wrap}

/* ─── 17. 分类落地页（list-filtered） ─── */
.cat-hero-grid{display:grid;grid-template-columns:1fr 260px;gap:36px;align-items:start}
.cat-label{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-caps);color:var(--navy-2);padding:2px 10px;border-radius:20px;background:var(--navy-soft);margin-bottom:12px}
.cat-label::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--red)}
.cat-hero h1{font-family:var(--serif);font-size:var(--h1);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);line-height:1.35;margin-bottom:8px}
.cat-hero h1 small{font-family:var(--sans);font-size:var(--fs-xs);font-weight:var(--fw-r);color:var(--ink-3);letter-spacing:var(--ls-wide);margin-left:10px}
.cat-desc{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.8;max-width:620px;margin-bottom:12px}
.cat-desc b{color:var(--ink);font-weight:var(--fw-b)}
.cat-desc a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.cat-desc a:hover{border-color:var(--navy-2)}
.cat-tags{display:flex;flex-wrap:wrap;gap:6px}
.cat-tag{font-size:var(--fs-2xs);padding:4px 10px;border-radius:14px;background:var(--white);border:1px solid var(--line);color:var(--ink-2);white-space:nowrap}
.cat-tag::before{content:"#";color:var(--ink-4);margin-right:2px}
.cat-stat-card{background:var(--white);border:1px solid var(--line-2);border-radius:var(--r-m);padding:16px 18px;box-shadow:var(--sh-m)}
.cs-label{font-size:var(--meta);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);color:var(--ink-3);margin-bottom:10px}
.cs-list{list-style:none}
.cs-list li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:var(--small)}
.cs-list li:last-child{border-bottom:none}
.cs-k{color:var(--ink-3);flex-shrink:0}
.cs-v{font-family:var(--mono);font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink);white-space:nowrap}
.cs-v.high{color:var(--red)}
.cs-v.watch{color:var(--amber)}
.cs-v.filed{color:var(--green)}
.cs-v.gone{color:var(--red-deep)}
.cs-note{font-size:var(--meta);color:var(--ink-3);line-height:1.6;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.cat-about{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:20px 24px;box-shadow:var(--sh-s);margin-bottom:18px}
.cat-about-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:10px;flex-wrap:wrap}
.cat-about-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide)}
.cat-about-head h2::before{content:"";display:inline-block;width:3px;height:13px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
.cat-about-head .ca-more{font-size:var(--fs-2xs);color:var(--navy-2);border-bottom:1px solid var(--line-2);padding-bottom:2px;white-space:nowrap}
.cat-about-head .ca-more:hover{border-color:var(--navy-2)}
.cat-about > p{font-size:var(--small);color:var(--ink-2);line-height:1.8;margin-bottom:14px}
.cat-about > p b{color:var(--ink);font-weight:var(--fw-b)}
.ca-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-top:12px;border-top:1px dashed var(--line)}
.ca-block h4{font-size:var(--h4);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);color:var(--ink-3);margin-bottom:6px}
.ca-block ul{list-style:none}
.ca-block li{position:relative;padding:4px 0 4px 14px;font-size:var(--small);color:var(--ink-2);line-height:1.65}
.ca-block li::before{content:"";position:absolute;left:2px;top:12px;width:4px;height:4px;border-radius:50%;background:var(--line-2)}
.ca-block li b{color:var(--ink);font-weight:var(--fw-b)}
.filter-bar .selected-cat{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--ink-2);padding:4px 6px 4px 12px;border:1px solid var(--navy);border-radius:14px;background:var(--navy-soft);white-space:nowrap}
.selected-cat b{font-weight:var(--fw-b);color:var(--navy)}
.selected-cat .sc-remove{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;color:var(--navy-2);font-size:var(--fs-xs);line-height:1;transition:background .15s}
.selected-cat .sc-remove:hover{background:rgba(20,48,79,.12)}
.related-cats{margin-top:24px;border-top:1px solid var(--line);padding-top:22px}
.related-cats h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide);margin-bottom:12px}
.related-cats h2::before{content:"";display:inline-block;width:3px;height:13px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
.rc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.rc-card{padding:14px 16px;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,box-shadow .15s}
.rc-num{font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);color:var(--ink-4)}
.rc-title{font-size:var(--fs-sm);font-weight:var(--fw-b);color:var(--ink);line-height:1.45;transition:color .15s}
.rc-count{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-3xs);color:var(--ink-4);margin-top:2px}

/* ─── 18. 银行与支付客服页 ─── */
.bank-urgent{display:flex;gap:14px;align-items:flex-start;background:var(--red-bg);border:1px solid var(--red-line);border-left:3px solid var(--red);border-radius:var(--r-m);padding:18px 22px;margin-bottom:24px}
.bu-icon{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--red);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);font-weight:var(--fw-x);line-height:1;margin-top:2px}
.bu-body{min-width:0}
.bu-body h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--red);margin-bottom:4px;line-height:1.4}
.bu-body p{font-size:var(--small);color:var(--ink-2);line-height:1.75}
.bu-body p b{color:var(--red);font-weight:var(--fw-b)}
.bu-body p a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.bu-steps{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.bu-step{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-2xs);color:var(--ink-2);padding:4px 10px;background:var(--white);border:1px solid var(--red-line);border-radius:20px;white-space:nowrap}
.bu-step b{font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-b);color:var(--red)}
.bank-group{margin-bottom:30px}
.bank-group:last-child{margin-bottom:0}
.bg-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:12px;flex-wrap:wrap}
.bg-head h2{font-family:var(--serif);font-size:var(--h2);font-weight:var(--fw-x);color:var(--navy);letter-spacing:var(--ls-wide)}
.bg-head h2::before{content:"";display:inline-block;width:3px;height:14px;background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px}
.bg-head .bg-count{font-size:var(--fs-2xs);color:var(--ink-3);white-space:nowrap}
.bank-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.bank-grid.pay{grid-template-columns:repeat(2,1fr)}
.bank-card{padding:16px 18px 14px;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,box-shadow .15s}
.bc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.bc-name{font-size:var(--fs-md);font-weight:var(--fw-b);color:var(--ink);line-height:1.4}
.bc-name small{display:block;font-size:var(--fs-3xs);font-weight:var(--fw-r);color:var(--ink-4);margin-top:2px;letter-spacing:var(--ls-wide)}
.bc-num{font-family:var(--mono);font-size:var(--fs-xl);font-weight:var(--fw-x);color:var(--navy);line-height:1.1;letter-spacing:var(--ls-tight);white-space:nowrap}
.bc-desc{font-size:var(--small);color:var(--ink-3);line-height:1.65;flex:1}
.bc-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px dashed var(--line);margin-top:auto}
.bc-meta{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-3xs);color:var(--ink-4);line-height:1.5}
.bc-call{font-size:var(--fs-2xs);font-weight:var(--fw-b);padding:6px 14px;border-radius:var(--r-s);background:var(--navy);color:var(--white);border:1px solid var(--navy);transition:background .15s,border-color .15s;white-space:nowrap}
.bc-call:hover{background:var(--bg-deep);border-color:var(--bg-deep)}
.call-prep{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--sh-s);overflow:hidden}
.cp-grid{display:grid;grid-template-columns:1fr 1fr}
.cp-item{padding:20px 22px;border-bottom:1px solid var(--line)}
.cp-item:nth-child(odd){border-right:1px solid var(--line)}
.cp-item:nth-last-child(-n+2){border-bottom:none}
.cp-item h3{font-size:var(--h3);font-weight:var(--fw-b);color:var(--ink);line-height:1.45;margin-bottom:8px}
.cp-item h3 .cp-n{font-family:var(--mono);font-size:var(--fs-2xs);font-weight:var(--fw-b);color:var(--ink-4);margin-right:6px}
.cp-list{list-style:none}
.cp-list li{position:relative;padding:6px 0 6px 14px;font-size:var(--small);color:var(--ink-2);line-height:1.7}
.cp-list li::before{content:"";position:absolute;left:2px;top:13px;width:4px;height:4px;border-radius:50%;background:var(--line-2)}
.cp-list li b{color:var(--ink);font-weight:var(--fw-b)}
.call-script{margin-top:16px;background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r-m);padding:18px 22px}
.call-script h3{font-size:var(--h3);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);color:var(--ink-3);margin-bottom:10px}
.call-script blockquote{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.85;padding-left:14px;border-left:2px solid var(--navy-2)}
.call-script blockquote b{color:var(--ink);font-weight:var(--fw-b)}
.bank-myths{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bank-myth{display:flex;gap:12px;align-items:flex-start;background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);padding:16px 18px;box-shadow:var(--sh-s)}
.bm-icon{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--red-bg);color:var(--red);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:var(--fw-x);line-height:1;margin-top:2px}
.bm-body h4{font-size:var(--h4);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin-bottom:4px}
.bm-body p{font-size:var(--small);color:var(--ink-3);line-height:1.7}
.bm-body p b{color:var(--red);font-weight:var(--fw-b)}

/* ─── 19. 联系编辑部页 ─── */
.contact-main{background:var(--white);border:1px solid var(--line-2);border-radius:var(--r-m);padding:26px 30px;box-shadow:var(--sh-m);margin-bottom:18px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
.cm-label{font-size:var(--meta);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);color:var(--ink-3);margin-bottom:8px}
.cm-email{font-family:var(--mono);font-size:clamp(19px,2.6vw,24px);font-weight:var(--fw-b);color:var(--navy);letter-spacing:var(--ls-tight);line-height:1.3;word-break:break-all}
.cm-email a{border-bottom:2px solid var(--line-2);padding-bottom:2px;transition:border-color .15s}
.cm-email a:hover{border-color:var(--navy)}
.cm-desc{font-size:var(--fs-xs);color:var(--ink-3);line-height:1.75;margin-top:8px;max-width:440px}
.cm-desc b{color:var(--ink-2);font-weight:var(--fw-b)}
.cm-badge{display:flex;flex-direction:column;gap:4px;align-items:flex-end;text-align:right;flex-shrink:0}
.cmb-label{font-size:var(--meta);font-weight:var(--fw-b);letter-spacing:var(--ls-wide);color:var(--ink-4)}
.cmb-value{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-md);font-weight:var(--fw-b);color:var(--green);white-space:nowrap}
.cmb-note{font-size:var(--meta);color:var(--ink-4);line-height:1.5;margin-top:2px}
.contact-routes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
.route-card{padding:16px 20px 14px;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,box-shadow .15s}
.route-num{font-family:var(--mono);font-size:var(--fs-3xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wide3);color:var(--ink-4)}
.route-title{font-size:var(--fs-md);font-weight:var(--fw-b);color:var(--ink);line-height:1.45}
.route-desc{font-size:var(--fs-xs);color:var(--ink-3);line-height:1.7;flex:1}
.route-desc b{color:var(--ink);font-weight:var(--fw-b)}
.route-desc a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.route-desc a:hover{border-color:var(--navy-2)}
.route-to{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;margin-top:auto;border-top:1px dashed var(--line)}
.route-prefix{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:var(--fs-2xs);font-weight:var(--fw-sb);color:var(--navy-2);white-space:nowrap}
.route-arrow{font-size:var(--fs-xs);color:var(--ink-4);flex-shrink:0}
.contact-nope{padding:18px 22px;margin-bottom:18px}
.contact-nope h2{font-size:var(--h2);font-weight:var(--fw-b);color:var(--ink);margin-bottom:8px;display:flex;align-items:center;gap:8px;line-height:1.4}
.contact-nope h3::before{content:"×";flex-shrink:0;width:20px;height:20px;border-radius:50%;background:var(--red-bg);color:var(--red);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);font-weight:var(--fw-x);line-height:1}
.nope-list{list-style:none}
.nope-list li{position:relative;padding:6px 0 6px 16px;font-size:var(--small);color:var(--ink-2);line-height:1.75}
.nope-list li::before{content:"";position:absolute;left:2px;top:13px;width:4px;height:4px;border-radius:50%;background:var(--red)}
.nope-list li b{color:var(--ink);font-weight:var(--fw-b)}
.nope-list li a{color:var(--navy-2);border-bottom:1px solid var(--line-2);font-weight:var(--fw-sb)}
.nope-list li a:hover{border-color:var(--navy-2)}
.contact-flow{background:var(--white);border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden;box-shadow:var(--sh-s);margin-bottom:18px}
.cf-item{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:14px 22px;border-bottom:1px solid var(--line);align-items:start}
.cf-item:last-child{border-bottom:none}
.cf-num{font-family:var(--mono);font-size:var(--fs-xs);font-weight:var(--fw-x);color:var(--navy-2);line-height:1.4;padding-top:2px}
.cf-body h4{font-size:var(--h4);font-weight:var(--fw-b);color:var(--ink);line-height:1.5;margin-bottom:2px}
.cf-body p{font-size:var(--small);color:var(--ink-3);line-height:1.75}
.cf-body p b{color:var(--ink);font-weight:var(--fw-b)}
.demo-switcher .wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.demo-switcher a.on{background:var(--white);color:var(--bg-deep);border-color:var(--white);font-weight:var(--fw-b)}
.status-notice.show{display:flex}
.status-notice.watch{background:var(--amber-bg);border-color:var(--amber-line)}
.status-notice.filed{background:var(--green-bg);border-color:var(--green-line)}
.status-notice.gone{background:var(--red-bg);border-color:var(--red-line)}
.status-notice.watch .sn-icon{background:var(--amber)}
.status-notice.filed .sn-icon{background:var(--green)}
.status-notice.gone .sn-icon{background:var(--red-deep)}
.status-notice.watch .sn-body h4{color:var(--amber)}
.status-notice.filed .sn-body h4{color:var(--green)}
.status-notice.gone .sn-body h4{color:var(--red-deep)}
.demo-filter .filter-pill{font-size:var(--fs-2xs);padding:2px 10px}
.demo-filter .fg-label{font-size:var(--fs-2xs)}

/* ─── 响应式：悬停能力（桌面指针设备） ─── */
@media (hover:hover) and (pointer:fine){
  .cat-card:hover{box-shadow:var(--sh-m);border-color:var(--line-2);transform:translateY(-1px)}
  .risk-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .risk-card:hover .rc-arrow{transform:translateX(3px)}
  .cat-index-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .cat-index-card:hover .cic-link{color:var(--navy)}
  .group-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .fg-side-item:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .fg-side-item:hover h3{color:var(--navy-2)}
  .gc-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .guide-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .guide-card:hover .guide-title{color:var(--navy-2)}
  .related-guide:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .related-guide:hover .rg-title{color:var(--navy-2)}
  .erg-card:hover{border-color:var(--line-2);background:var(--white)}
  .exit-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .exit-card:hover .exit-title{color:var(--navy-2)}
  .rc-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .rc-card:hover .rc-title{color:var(--navy-2)}
  .bank-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
  .route-card:hover{border-color:var(--line-2);box-shadow:var(--sh-m)}
}

/* ─── 响应式：悬停能力（桌面指针设备） ─── */
@media (max-width:1000px){
  .detail-layout{grid-template-columns:1fr;gap:28px}
  .detail-side{position:static;display:grid;grid-template-columns:1fr 1fr;align-items:start}
}

/* ─── 响应式：悬停能力（桌面指针设备） ─── */
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .hero-side{border-left:none;border-top:1px solid var(--line-2);padding-left:0;padding-top:22px}
  .process{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}
  .process li:nth-last-child(-n+2){border-bottom:none}
  .footer-top{grid-template-columns:1fr 1fr;gap:28px}
  .footer-brand{grid-column:1 / -1}
  .nav::after{opacity:1}
  .cat-grid{grid-template-columns:1fr 1fr}
  .signal-grid{grid-template-columns:1fr 1fr}
  .step-grid{grid-template-columns:1fr 1fr}
  .step-item{padding:20px 20px 20px 0}
  .step-item + .step-item{padding-left:20px}
  .step-item + .step-item::before{top:20px;bottom:20px}
  .step-item:nth-child(2){padding-right:0}
  .step-item:nth-child(3){padding-left:0;padding-top:22px;border-top:1px solid var(--line-2)}
  .step-item:nth-child(3)::before{display:none}
  .step-item:nth-child(4){padding-top:22px;border-top:1px solid var(--line-2)}
  .step-item:nth-child(4)::before{top:22px;bottom:20px}
  .risk-card{grid-template-columns:48px 1fr 170px;gap:16px;padding:16px 18px}
  .rc-name{font-size:var(--h3)}
  .rc-side{gap:10px}
  .detail-hero-grid{grid-template-columns:1fr;gap:20px}
  .risk-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;align-items:start}
  .rp-label{grid-column:1 / -1}
  .rp-score{grid-column:1;grid-row:2 / span 2;align-self:center}
  .rp-bar{grid-column:2;grid-row:2;margin:0 0 8px}
  .rp-status{grid-column:2;grid-row:3;margin-bottom:0}
  .rp-actions{grid-column:1 / -1;flex-direction:row}
  .rp-actions a{flex:1}
  .urgency-grid{grid-template-columns:1fr 1fr}
  .channel-list{grid-template-columns:1fr}
  .myth-list{grid-template-columns:1fr}
  .cat-index-grid{grid-template-columns:1fr}
  .group-grid{grid-template-columns:1fr 1fr}
  .featured-guides{grid-template-columns:1fr}
  .guide-cat-nav{grid-template-columns:1fr 1fr}
  .guide-list{grid-template-columns:1fr}
  .situation-grid{grid-template-columns:1fr}
  .lc-grid{grid-template-columns:1fr}
  .trap-grid{grid-template-columns:1fr}
  .about-fact-grid{grid-template-columns:1fr}
  .process-flow{grid-template-columns:1fr 1fr}
  .pf-item:nth-child(2){border-right:none}
  .pf-item:nth-child(1),.pf-item:nth-child(2){border-bottom:1px solid var(--line)}
  .article-layout{grid-template-columns:1fr;gap:24px}
  .article-side{position:static;display:grid;grid-template-columns:1fr 1fr;align-items:start}
  .toc-card{grid-column:1 / -1}
  .toc-list{display:flex;flex-wrap:wrap;gap:6px}
  .toc-list li{padding:0}
  .toc-list a{padding:4px 10px;border:1px solid var(--line);border-radius:14px;border-left:1px solid var(--line)}
  .toc-list a.active{background:var(--navy);color:var(--white)}
  .er-guides{grid-template-columns:1fr 1fr}
  .tips-grid{grid-template-columns:1fr 1fr}
  .error-exits{grid-template-columns:1fr}
  .cat-hero-grid{grid-template-columns:1fr;gap:18px}
  .cat-stat-card{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
  .cs-label{grid-column:1 / -1}
  .cs-list{display:contents}
  .cs-list li{flex-direction:column;align-items:flex-start;gap:2px;padding:8px 0}
  .cs-note{grid-column:1 / -1;margin-top:12px}
  .rc-grid{grid-template-columns:1fr 1fr}
  .bank-grid{grid-template-columns:1fr 1fr}
  .bank-grid.pay{grid-template-columns:1fr}
  .bank-myths{grid-template-columns:1fr}
  .contact-main{grid-template-columns:1fr;gap:16px}
  .cm-badge{align-items:flex-start;text-align:left}
  .contact-routes{grid-template-columns:1fr}

/* 窄屏补丁（导航横滑提示 / 筛选栏收紧） */
  .nav a{padding:12px 13px}
  .filter-row{display:block;width:100%;max-width:100%}
  .filter-group{display:flex;flex-wrap:nowrap;overflow-x:auto;width:100%;max-width:100%;padding-bottom:2px;scrollbar-width:none}
  .filter-group::-webkit-scrollbar{display:none}
  .filter-group+.filter-group{margin-top:8px}
  .filter-sort{display:block;margin:10px 0 0;width:100%;max-width:100%}
  .filter-sort .sort-select{width:100%;max-width:100%}
  .filter-search{max-width:100%}
}

/* ═══ 响应式：窄屏 ≤640px（全站 640px 规则合并，2026-10-31） ═══ */
@media (max-width:640px){

  /* —— 段1：核心基础（原区块1，约 L1431） —— */
.editor-pick{padding:12px 15px;font-size:var(--fs-xs);gap:6px 14px}
.editor-pick .ep-label{font-size:var(--fs-2xs);width:100%}
.editor-pick a{font-size:var(--fs-xs)}
  :root{--h1:26px;--h2:19px;--h3:16.5px;--h4:15px;--fs-3xs:11.5px;--fs-2xs:12.5px}
  .wrap{padding:0 16px}
  .topbar .wrap{padding-top:6px;padding-bottom:6px;font-size:var(--fs-3xs);gap:8px;flex-wrap:nowrap}
  .tb-left{flex:1;overflow:hidden;text-overflow:ellipsis}
  .tb-right{display:none}
  .masthead .wrap{flex-direction:column;align-items:stretch;gap:14px;padding-top:16px;padding-bottom:14px}
  .brand{gap:12px}
  .brand-logo{height:60px}
  .brand-text{padding-left:12px;gap:5px}
  .brand-text .bt-cn{font-size:var(--fs-3xs)}
  .masthead-stats{align-items:stretch;padding-top:12px;border-top:1px solid var(--line)}
  .ms-item{flex:1;padding:0;align-items:flex-start}
  .ms-divider{display:none}
  .ms-num{font-size:var(--fs-lg)}
  .ms-lbl{font-size:var(--fs-3xs);margin-top:2px}
  .nav a{padding:12px 12px;font-size:var(--fs-xs)}
  .nav a.on::after{left:13px;right:13px}
  .hero{padding:24px 0 20px}
  .hero-eyebrow{font-size:var(--fs-3xs);margin-bottom:12px}
  .hero h1{margin-bottom:12px}
  .hero .standfirst{font-size:var(--body);margin-bottom:20px}
  .search{border-radius:var(--r-s)}
  .search input{font-size:var(--fs-base);padding:12px 12px}
  .search button{padding:0 16px;font-size:var(--fs-xs)}
  .search-hint{font-size:var(--fs-xs)}
  .hero-side{display:none}
  .process{grid-template-columns:1fr;gap:0}
  .sec{padding:28px 0}
  .sec-head{margin-bottom:16px;gap:10px}
  .sec-head h2{font-size:var(--h2)}
  .sec-head h2::before{height:14px;margin-right:8px}
  .sec-head .en{display:none}
  .board table{min-width:640px;font-size:var(--fs-xs)}
  .board .risk-bar{display:none}
  /* 横滑提示放到表格顶部，用户滑动前就能看到 */
  .board::before{content:"← 左右滑动查看完整列";display:block;padding:7px 12px;font-size:var(--fs-3xs);
    letter-spacing:var(--ls-wide);color:var(--ink-3);background:var(--bg-alt);border-bottom:1px solid var(--line)}
  .board th:nth-child(1){width:26px}
  .board th:nth-child(3){width:62px}
  .board th:nth-child(4){width:64px}
  .board th:nth-child(5){width:78px}
  .board thead th{padding:8px 8px;letter-spacing:var(--ls-wide)}
  .board tbody td{padding:12px 8px}
  .board th:nth-child(1),.board td:nth-child(1){padding-left:12px}
  .board th:nth-child(4),.board td:nth-child(4){padding-right:12px}
  .p-name{font-size:var(--fs-sm)}
  .p-type{font-size:var(--fs-3xs);line-height:1.45}
  .pill{padding:2px 6px}
  .pill::before{width:4px;height:4px}
  .risk{gap:6px;min-width:0}
  .risk-bar{height:3px}
  .risk-val{font-size:var(--fs-3xs);min-width:16px}
  .board-note{font-size:var(--fs-3xs);padding:10px 12px;line-height:1.65}
  .cat-grid{grid-template-columns:1fr;gap:10px}
  .cat-card{padding:16px 16px 14px}
  .cat-card h3{font-size:var(--h3)}
  .exp-grid{grid-template-columns:1fr}
  .exp-item:nth-child(odd){border-right:none}
  .exp-item{padding:16px}
  .exp-item:nth-last-child(-n+2){border-bottom:1px solid var(--line)}
  .exp-item:last-child{border-bottom:none}
  .exp-item h3{font-size:var(--h3)}
  .exp-item p{font-size:var(--fs-2xs)}
  .signal-grid{grid-template-columns:1fr;gap:0}
  .signal{padding:14px 0;gap:12px;border-top:1px dashed var(--line-2)}
  .signal:first-child{border-top:none;padding-top:0}
  .signal-icon{font-size:var(--fs-lg)}
  .signal-body h3{font-size:var(--h3)}
  .signal-body p{font-size:var(--small)}
  .steps{padding:26px 0 24px}
  .steps-head{margin-bottom:20px}
  .step-grid{grid-template-columns:1fr}
  .step-item{padding:16px 0 !important;border-bottom:1px solid var(--line-2)}
  .step-item + .step-item{padding-left:0 !important}
  .step-item + .step-item::before{display:none !important}
  .step-item:first-child{padding-top:20px !important}
  .step-item:last-child{border-bottom:none;padding-bottom:0 !important}
  .step-item:nth-child(3),.step-item:nth-child(4){border-top:none}
  .step-num{font-size:22px;margin-bottom:6px}
  .help{grid-template-columns:1fr;padding:20px;gap:16px}
  .help .help-title{font-size:var(--h4)}
  .help p{font-size:var(--small)}
  .help-actions a{padding:10px 16px}
  .footer{padding:32px 0 24px}
  .footer-top{grid-template-columns:1fr 1fr;gap:22px;padding-bottom:22px}
  .footer-brand{grid-column:1 / -1}
  .footer-logo{margin-bottom:10px}
  .footer-logo img{height:34px}
  .foot-sub{max-width:none;margin-top:16px}
  .foot-sub-row input{height:38px}
  .foot-sub-btn{height:38px;padding:0 16px}
  .footer-col .foot-h{font-size:var(--fs-sm);margin-bottom:10px}
  .footer-col a{margin-bottom:8px}
  .footer-bottom{flex-direction:column;gap:10px;margin-top:16px;font-size:var(--fs-3xs)}
  .fb-right{white-space:normal}
  .page-hero{padding:20px 0 18px}
  .breadcrumb{font-size:var(--fs-2xs);margin-bottom:10px}
  .page-hero h1{font-size:var(--h1);margin-bottom:6px}
  .page-desc{font-size:var(--fs-xs);margin-bottom:14px}
  .page-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px 0}
  .ps-item{padding:0 16px}
  .ps-item:nth-child(2n+1){padding-left:0}
  .ps-item:nth-child(2n){border-right:none;padding-right:0}
  .ps-num{font-size:var(--fs-lg)}
  .ps-lbl{font-size:var(--fs-3xs)}
  .filter-bar{padding:12px 0 12px}
  .filter-search{max-width:100%;margin-bottom:12px}
  .filter-search input{font-size:var(--fs-base);padding:8px 10px}
  .filter-search button{padding:0 14px}
  .filter-row{gap:12px;flex-direction:column;align-items:stretch}
  .filter-group{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}
  .filter-group::-webkit-scrollbar{display:none}
  .fg-label{flex-shrink:0;position:sticky;left:0;background:var(--white);padding-right:6px;z-index:1}
  .filter-pill{flex-shrink:0;font-size:var(--fs-2xs)}
  .filter-sort{margin-left:0}
  .sort-select{width:100%;padding:8px 30px 8px 12px}
  .list-section{padding:20px 0 30px}
  .list-count{font-size:var(--fs-2xs)}
  .risk-card{grid-template-columns:34px 1fr;gap:12px;padding:14px 14px}
  .rc-rank{font-size:var(--fs-base)}
  .rc-name{font-size:var(--h3)}
  .rc-type{font-size:var(--fs-2xs);margin-bottom:6px}
  .rc-desc{margin-bottom:8px;-webkit-line-clamp:3}
  .rc-meta{font-size:var(--fs-3xs);gap:10px}
  .rc-side{grid-column:1 / -1;flex-direction:row;align-items:center;width:100%;padding-top:10px;margin-top:2px;border-top:1px solid var(--line)}
  .rc-risk{width:auto;flex:1;max-width:180px}
  .rc-arrow{font-size:var(--fs-md)}
  .pagination{margin-top:22px;gap:4px}
  .page-btn{min-width:32px;height:32px;padding:0 8px}
  .page-ellipsis{padding:0 2px;font-size:var(--fs-2xs)}
  .list-note{padding:14px 14px;font-size:var(--fs-2xs);margin-top:20px}
  .list-note strong{font-size:var(--fs-2xs)}
  .list-cta{grid-template-columns:1fr;padding:18px;gap:14px}
  .list-cta h2{font-size:var(--h2)}
  .list-cta a{padding:10px 16px;justify-self:start}
  .empty-state{padding:36px 20px}
  .empty-state h3{font-size:var(--h3)}
  .detail-hero{padding:18px 0 20px}
  .dh-breadcrumb{font-size:var(--fs-2xs);margin-bottom:10px}
  .dh-title{font-size:var(--h1)}
  .dh-title-row{gap:8px;margin-bottom:4px}
  .dh-type{font-size:var(--fs-2xs);margin-bottom:10px}
  .dh-lead{font-size:var(--fs-sm);margin-bottom:14px}
  .dh-meta{font-size:var(--fs-3xs);gap:6px 14px}
  .risk-panel{padding:16px 18px;grid-template-columns:1fr;gap:0}
  .rp-label{margin-bottom:6px}
  .rp-score{grid-column:auto;grid-row:auto;align-self:auto;margin-bottom:2px}
  .rp-num{font-size:36px}
  .rp-bar{grid-column:auto;grid-row:auto;margin:8px 0 8px}
  .rp-status{grid-column:auto;grid-row:auto;margin-bottom:12px;font-size:var(--fs-2xs)}
  .rp-actions{grid-column:auto;padding-top:12px}
  .rp-actions a{flex:auto}
  .detail-layout{padding:20px 0 32px;gap:16px}
  .detail-side{grid-template-columns:1fr;gap:12px}
  .d-card{padding:18px 18px;margin-bottom:12px;border-radius:var(--r-s)}
  .d-card-head{margin-bottom:12px}
  .d-card-head h2{font-size:var(--h2)}
  .d-card-head h2::before{height:13px}
  .d-card-head .en{display:none}
  .conclusion{padding:12px 14px;margin-bottom:12px}
  .conclusion p{font-size:var(--small)}
  .d-para{font-size:var(--body);line-height:1.8;margin-bottom:10px}
  .fact-table{font-size:var(--fs-xs)}
  .fact-table th{width:80px;padding:8px 0;font-size:var(--fs-2xs)}
  .fact-table td{padding:8px 0 8px 12px}
  .timeline{padding-left:20px}
  .timeline::before{left:4px}
  .tl-item{padding-bottom:16px}
  .tl-item::before{left:-20px;width:10px;height:10px;top:5px}
  .tl-date{font-size:var(--fs-3xs)}
  .tl-desc{font-size:var(--fs-2xs)}
  .tl-source{font-size:var(--fs-3xs)}
  .evidence-item{grid-template-columns:1fr;gap:6px;padding:10px 0}
  .ev-type{justify-self:start}
  .ev-body h4{font-size:var(--h4)}
  .ev-body p{font-size:var(--fs-2xs)}
  .d-signal-item{gap:10px;padding:10px 0}
  .ds-num{width:20px;height:20px;font-size:var(--fs-2xs)}
  .action-group{margin-bottom:16px}
  .ag-head{gap:8px;margin-bottom:8px}
  .ag-head h3{font-size:var(--h3)}
  .action-steps li{font-size:var(--small);padding:6px 0 6px 20px}
  .action-steps li::before{left:3px;top:15px}
  .related-item{gap:10px}
  .side-card{padding:16px 16px}
  .side-card h3{font-size:var(--h3);margin-bottom:10px}
  .side-card h3::before{height:11px;margin-right:6px}
  .side-help p{font-size:var(--small)}
  .side-help-actions a{padding:8px 12px}
  .side-meta li{font-size:var(--meta);padding:6px 0}
  .side-links a{padding:2px 0}
  .side-note{font-size:var(--meta)}
  .urgency-grid{grid-template-columns:1fr;gap:10px}
  .urgency-card{padding:14px 16px}
  .urgency-card p{font-size:var(--fs-2xs)}
  .cg-head h3{font-size:var(--h3)}
  .channel-card{padding:16px 16px}
  .cc-name{font-size:var(--fs-md)}
  .cc-num{font-size:var(--fs-xl)}
  .cc-actions a{font-size:var(--fs-2xs);padding:6px 12px}
  .myth-card{padding:14px 14px}
  .myth-body p{font-size:var(--fs-2xs)}
  .help-disclaimer{padding:14px 16px;font-size:var(--fs-2xs)}
  .cat-index-card{padding:16px 16px 14px}
  .cic-title{font-size:var(--fs-base)}
  .cic-stats{font-size:var(--fs-3xs);gap:4px 12px}
  .cic-foot{padding-top:8px}
  .cic-link{font-size:var(--fs-2xs)}
  .tag-item{padding:6px 12px}
  .tag-item .tag-count{padding-left:4px}
  .group-grid{grid-template-columns:1fr;gap:8px}
  .group-card{padding:14px 14px}
  .group-card h3{font-size:var(--h3)}
  .group-card p{font-size:var(--fs-2xs)}
  .cat-note{padding:14px 16px;font-size:var(--fs-2xs)}
  .feed-section{padding:18px 0 30px}
  .feed-group{margin-bottom:22px}
  .feed-date{gap:8px;margin-bottom:6px;padding-bottom:6px}
  .fd-day{font-size:var(--fs-base)}
  .fd-week{font-size:var(--fs-2xs)}
  .fd-today{padding:2px 6px}
  .fd-count{font-size:var(--fs-3xs)}
  .feed-item{grid-template-columns:1fr;gap:4px;padding:12px 4px}
  .fi-time{padding-top:0;font-size:var(--fs-3xs);display:inline-flex;align-items:center;gap:6px}
  .fi-time::after{content:"";height:1px;flex:1;background:var(--line)}
  .fi-top{gap:6px;margin-bottom:2px}
  .fi-type{font-size:var(--fs-3xs)}
  .fi-title{margin-bottom:2px}
  .fi-desc{margin-bottom:4px;-webkit-line-clamp:3}
  .fi-meta{font-size:var(--fs-3xs);gap:4px 12px}
  .feed-note{padding:14px 16px;font-size:var(--fs-2xs);margin-top:20px}
  .sc-head{padding:14px 16px 12px}
  .sc-head h3{font-size:var(--h3)}
  .sc-head p{font-size:var(--fs-2xs)}
  .sc-item{grid-template-columns:24px 1fr;gap:10px;padding:12px 16px}
  .sc-answer{grid-column:1 / -1;justify-content:flex-end;margin-top:-2px}
  .sc-num{font-size:var(--fs-2xs);padding-top:2px}
  .sc-q small{font-size:var(--fs-3xs)}
  .sc-foot{padding:12px 16px;gap:10px}
  .sc-result b{font-size:var(--fs-sm)}
  .sc-actions{width:100%}
  .sc-actions a{flex:1;text-align:center;font-size:var(--fs-2xs);padding:8px 12px}
  .signal-section{margin-bottom:24px}
  .ss-title h2{font-size:var(--h2)}
  .ss-title h2::before{height:13px}
  .ss-title .en{display:none}
  .ss-desc{font-size:var(--small)}
  .sig-head{grid-template-columns:30px 1fr;gap:10px;padding:14px 16px}
  .sig-idx{font-size:var(--fs-sm)}
  .sig-title{font-size:var(--fs-md)}
  .sig-level{grid-column:1 / -1;justify-self:start;margin-top:6px}
  .sig-body{padding:12px 16px 14px 56px}
  .sig-sub{font-size:var(--meta)}
  .sig-body p{line-height:1.7}
  .sig-do{font-size:var(--fs-2xs);padding:8px 10px}
  .featured-guides{gap:10px}
  .fg-main{padding:20px 18px 16px}
  .fg-main h2{font-size:var(--h2)}
  .fg-main p{font-size:var(--small);line-height:1.75}
  .fg-meta{font-size:var(--fs-3xs);gap:4px 12px}
  .fg-side-item{padding:14px 14px}
  .fg-side-item p{font-size:var(--fs-2xs)}
  .fgs-meta{font-size:var(--fs-3xs)}
  .guide-cat-nav{grid-template-columns:1fr 1fr;gap:8px}
  .gc-card{padding:12px 14px}
  .gc-title{font-size:var(--fs-sm)}
  .guide-section{padding:20px 0 30px}
  .guide-list{gap:10px}
  .guide-card{padding:16px 16px 14px;gap:6px}
  .guide-title{font-size:var(--fs-md)}
  .guide-desc{line-height:1.7}
  .guide-meta{gap:4px 10px}
  .guide-link{font-size:var(--fs-2xs)}
  .guide-cat{padding:2px 6px}
  .guide-principles{padding:14px 16px;font-size:var(--fs-2xs)}
  .legal-hero{padding:20px 0 18px}
  .legal-hero h1{font-size:var(--h1)}
  .legal-hero .legal-desc{font-size:var(--fs-xs)}
  .legal-notice{padding:12px 14px;gap:10px}
  .legal-notice p{font-size:var(--fs-2xs)}
  .legal-notice-icon{width:20px;height:20px;font-size:var(--fs-2xs)}
  .situation-grid{gap:8px}
  .situation-card{padding:14px 16px}
  .situation-card h3{font-size:var(--h3)}
  .legal-consequence{padding:28px 0}
  .lc-head{margin-bottom:18px}
  .lc-head h2{font-size:var(--h2)}
  .lc-head h2::before{height:13px;margin-right:8px}
  .lc-head p{font-size:var(--fs-2xs)}
  .lc-grid{gap:10px}
  .lc-card{padding:16px 16px;gap:6px}
  .lc-crime{font-size:var(--fs-base)}
  .lc-punish{font-size:var(--fs-2xs)}
  .lc-note{font-size:var(--fs-3xs);margin-top:16px;padding-top:14px}
  .trap-grid{gap:8px}
  .trap-card{padding:14px 14px;gap:10px}
  .trap-icon{width:26px;height:26px;font-size:var(--fs-3xs)}
  .trap-body h3{font-size:var(--h3)}
  .trap-body p{font-size:var(--fs-2xs)}
  .ep-head{padding:14px 16px 12px}
  .ep-head h2{font-size:var(--h2)}
  .ep-head p{font-size:var(--fs-2xs)}
  .ep-item{grid-template-columns:32px 1fr;gap:12px;padding:14px 16px}
  .ep-num{font-size:var(--fs-xs)}
  .ep-body h3{font-size:var(--h3)}
  .ep-body .ep-links{gap:12px}
  .ep-body .ep-links a{font-size:var(--fs-2xs)}
  .legal-footer-note{padding:14px 16px;font-size:var(--fs-2xs)}
  .about-nav a{font-size:var(--fs-xs);padding:10px 12px}
  .about-fact{padding:16px 16px}
  .about-fact h3{font-size:var(--h3);margin-bottom:8px}
  .about-fact li{padding:4px 0 4px 14px}
  .about-fact li::before{left:3px;top:12px}
  .process-flow{grid-template-columns:1fr}
  .pf-item{border-right:none;border-bottom:1px solid var(--line);padding:16px 16px}
  .pf-item:last-child{border-bottom:none}
  .pf-item h3{font-size:var(--h3)}
  .pf-item p{font-size:var(--fs-2xs)}
  .source-item{grid-template-columns:1fr;gap:4px;padding:12px 0}
  .source-type{padding-top:0;display:inline-block;padding:2px 8px;border-radius:20px;background:var(--bg-alt);justify-self:start}
  .source-body h3{font-size:var(--h3)}
  .source-body p{font-size:var(--fs-2xs);line-height:1.7}
  .rating-item{grid-template-columns:1fr;gap:6px;padding:12px 0}
  .rating-body p{font-size:var(--fs-2xs)}
  .disclaimer-item{grid-template-columns:24px 1fr;gap:8px;padding:10px 0}
  .di-num{font-size:var(--fs-3xs)}
  .di-body h4{font-size:var(--h4)}
  .di-body p{font-size:var(--fs-2xs)}
  .about-cta{grid-template-columns:1fr;padding:20px;gap:16px}
  .about-cta h3{font-size:var(--h3)}
  .about-cta-actions a{padding:8px 14px}
  .form-layout{grid-template-columns:1fr;gap:24px}
  .urgent-banner{padding:12px 14px;gap:10px;margin-bottom:16px}
  .ub-icon{width:20px;height:20px;font-size:var(--fs-2xs)}
  .ub-body .ub-title{font-size:var(--h4)}
  .ub-body p{font-size:var(--small)}
  .form-card{padding:18px 16px;border-radius:var(--r-s)}
  .form-card-head{padding-bottom:12px;margin-bottom:16px}
  .form-card-head h2{font-size:var(--h2)}
  .field{margin-bottom:18px}
  .field-label{margin-bottom:4px}
  .field-label .opt{font-size:var(--fs-3xs)}
  .field-hint{margin-bottom:6px}
  .type-grid{grid-template-columns:1fr;gap:6px}
  .type-card{padding:10px 12px}
  .type-card-title{font-size:var(--fs-xs)}
  .type-card-desc{font-size:var(--fs-3xs)}
  .input,.textarea{font-size:var(--fs-base);padding:8px 12px}
  .textarea{min-height:120px}
  .textarea.small{min-height:70px}
  .field-count{font-size:var(--fs-3xs);margin-top:4px}
  .checkbox-row{padding:10px 12px;gap:8px}
  .checkbox-row input{width:15px;height:15px}
  .checkbox-body{font-size:var(--fs-2xs)}
  .verify-row{gap:8px}
  .verify-row .input{flex:1 1 100%}
  .verify-placeholder{flex:1;padding:8px 14px;font-size:var(--fs-3xs);min-height:0}
  .form-submit{margin-top:20px;padding-top:16px;gap:10px}
  .btn-submit{width:100%;padding:12px 20px}
  .form-success{padding:26px 20px}
  .fs-icon{width:46px;height:46px;margin-bottom:12px}
  .form-success h2{font-size:var(--h2)}
  .form-success .fs-lead{font-size:var(--fs-xs);margin-bottom:16px}
  .fs-info{font-size:var(--fs-3xs);padding:6px 12px;margin-bottom:18px}
  .fs-actions a{padding:8px 16px}
  .form-side{position:static;display:grid;grid-template-columns:1fr;gap:10px}
  .fs-card{padding:14px 16px}
  .fs-card h3{font-size:var(--h3);margin-bottom:8px}
  .fs-card p{font-size:var(--fs-2xs)}
  .fs-list li{font-size:var(--fs-2xs);padding:4px 0 4px 14px}
  .article-hero{padding:18px 0 16px}
  .ah-breadcrumb{font-size:var(--fs-2xs);margin-bottom:10px}
  .ah-title{font-size:var(--h1);margin-bottom:10px}
  .ah-lead{font-size:var(--h4);margin-bottom:12px}
  .ah-meta{font-size:var(--fs-3xs);gap:4px 14px}
  .ah-audience{font-size:var(--fs-3xs)}
  .article-layout{padding:18px 0 32px;gap:16px}
  .article-body{padding:4px 0 0}
  .article-body h2{font-size:var(--h2);margin:26px 0 10px}
  .article-body h2 .h2-num{font-size:var(--fs-2xs);margin-right:6px}
  .article-body h3{font-size:var(--h3);margin:18px 0 6px}
  .article-body p{font-size:var(--body);line-height:1.85;margin-bottom:12px}
  .article-quote{padding:12px 14px;margin:14px 0}
  .article-quote p{font-size:var(--body)}
  .article-callout{padding:12px 12px;gap:10px;margin:14px 0}
  .ac-icon{width:18px;height:18px;font-size:var(--fs-3xs)}
  .ac-body h4{font-size:var(--h4)}
  .article-checklist li{padding:10px 12px 10px 38px;font-size:var(--body)}
  .article-checklist li::before{left:13px;top:16px;width:13px;height:13px}
  .article-faq{margin-top:20px}
  .faq-item{padding:12px 0}
  .faq-q{font-size:var(--fs-sm)}
  .faq-a{font-size:var(--fs-xs);padding-left:22px}
  .article-source{padding-top:20px}
  .article-source p{font-size:var(--small)}
  .article-related h2{font-size:var(--h2)}
  .related-guides{grid-template-columns:1fr;gap:8px}
  .related-guide{padding:12px 14px}
  .article-actions{flex-direction:column;align-items:stretch;gap:12px}
  .aa-left{font-size:var(--fs-2xs)}
  .aa-right a{flex:1;text-align:center;padding:8px 12px;font-size:var(--fs-2xs)}
  .article-side{grid-template-columns:1fr;gap:10px}
  .toc-card{grid-column:auto;padding:14px 14px}
  .toc-card h3{font-size:var(--h3);margin-bottom:8px}
  .toc-list{gap:4px}
  .toc-list a{font-size:var(--fs-2xs);padding:4px 10px}
  .ai-list li{font-size:var(--fs-2xs)}
  .search-hero{padding:18px 0 16px}
  .search-hero .breadcrumb{font-size:var(--fs-2xs);margin-bottom:10px}
  .search-main{border-radius:var(--r-s);margin-bottom:10px}
  .search-main input{padding:10px 12px}
  .search-main button{padding:0 16px;font-size:var(--fs-xs)}
  .search-summary{font-size:var(--fs-2xs);gap:4px 12px}
  .result-section{padding:18px 0 30px}
  .result-head{margin-bottom:10px}
  .result-head h2{font-size:var(--h2)}
  .rg-sub{white-space:normal}
  .result-sort{gap:4px}
  .result-sort span{width:100%;margin-bottom:2px}
  .result-group{margin-bottom:20px}
  .rg-head{margin-bottom:6px}
  .result-item{padding:12px 14px}
  .ri-name{font-size:var(--fs-md)}
  .ri-type{font-size:var(--fs-3xs)}
  .ri-desc{font-size:var(--small);margin-bottom:4px;-webkit-line-clamp:3}
  .ri-meta{font-size:var(--fs-3xs);gap:4px 10px}
  .empty-result{padding:32px 20px;margin-bottom:16px}
  .er-icon{width:48px;height:48px;font-size:var(--fs-2xl);margin-bottom:12px}
  .empty-result h2{font-size:var(--h2)}
  .empty-result .er-lead{font-size:var(--fs-xs);margin-bottom:14px}
  .er-guides{grid-template-columns:1fr;gap:8px}
  .erg-card{padding:12px 14px}
  .erg-title{font-size:var(--fs-xs)}
  .erg-desc{font-size:var(--fs-3xs)}
  .search-tips{padding:14px 16px}
  .search-tips h3{margin-bottom:8px}
  .tips-grid{grid-template-columns:1fr;gap:10px}
  .hot-item{padding:4px 10px}
  .error-page{padding:32px 0 40px;min-height:auto}
  .error-wrap{padding:0 18px}
  .error-code{font-size:var(--fs-hero);margin-bottom:2px}
  .error-code::after{width:38px;height:2px;margin-top:12px}
  .error-tag{margin-bottom:14px}
  .error-title{font-size:var(--fs-xl);margin-bottom:8px}
  .error-lead{font-size:var(--fs-xs);line-height:1.8;margin-bottom:18px}
  .error-search{border-radius:var(--r-s)}
  .error-search input{font-size:var(--fs-base);padding:10px 12px}
  .error-search button{padding:0 14px;font-size:var(--fs-xs)}
  .error-search-hint{margin-bottom:22px}
  .error-exits{gap:8px;margin-bottom:20px}
  .exit-card{padding:14px 14px 12px}
  .exit-desc{font-size:var(--fs-3xs)}
  .error-hot{padding-top:16px}
  .error-hot h2{font-size:var(--h4);margin-bottom:8px}
  .hot-link{padding:4px 10px}
  .error-help{padding:14px 16px;gap:12px;margin-top:24px}
  .error-help-text{font-size:var(--fs-2xs)}
  .error-help-actions a{padding:8px 12px;font-size:var(--fs-2xs)}
  .cat-hero{padding:18px 0 16px}
  .cat-hero .breadcrumb{font-size:var(--fs-2xs);margin-bottom:10px}
  .cat-label{padding:2px 8px;margin-bottom:8px}
  .cat-hero h1{font-size:var(--h1);margin-bottom:6px}
  .cat-hero h1 small{font-size:var(--fs-2xs);margin-left:6px;display:block;margin-top:2px}
  .cat-desc{font-size:var(--fs-xs);margin-bottom:10px}
  .cat-tags{gap:4px}
  .cat-tag{font-size:var(--fs-3xs);padding:2px 8px}
  .cat-stat-card{padding:14px 14px}
  .cat-stat-card h3{margin-bottom:8px}
  .cs-list li{font-size:var(--fs-2xs);padding:6px 0}
  .cs-v{font-size:var(--fs-xs)}
  .cs-note{margin-top:8px;padding-top:8px}
  .cat-about{padding:14px 16px;border-radius:var(--r-s);margin-bottom:14px}
  .cat-about-head{margin-bottom:8px}
  .cat-about-head h2{font-size:var(--h2)}
  .cat-about > p{margin-bottom:10px}
  .ca-grid{grid-template-columns:1fr;gap:12px;padding-top:10px}
  .ca-block h4{font-size:var(--h4);margin-bottom:4px}
  .ca-block li{font-size:var(--fs-2xs);padding:2px 0 2px 12px}
  .ca-block li::before{top:11px}
  .filter-bar .selected-cat{font-size:var(--fs-2xs);padding:4px 4px 4px 10px}
  .selected-cat .sc-remove{width:16px;height:16px;font-size:var(--fs-2xs)}
  .related-cats{margin-top:20px;padding-top:18px}
  .related-cats h2{font-size:var(--h2);margin-bottom:10px}
  .rc-grid{grid-template-columns:1fr 1fr;gap:8px}
  .rc-card{padding:12px 12px}
  .rc-title{font-size:var(--fs-xs)}
  .bank-urgent{padding:14px 16px;gap:10px;margin-bottom:18px}
  .bu-icon{width:22px;height:22px;font-size:var(--fs-2xs)}
  .bu-body h3{font-size:var(--h3)}
  .bu-steps{gap:6px;margin-top:8px}
  .bu-step{font-size:var(--fs-3xs);padding:4px 8px;gap:4px}
  .bank-group{margin-bottom:22px}
  .bg-head h2{font-size:var(--h2)}
  .bg-head h2::before{height:13px}
  .bg-head .bg-count{font-size:var(--fs-3xs)}
  .bank-grid{grid-template-columns:1fr;gap:8px}
  .bank-grid.pay{grid-template-columns:1fr}
  .bank-card{padding:12px 14px 12px}
  .bc-name{font-size:var(--fs-sm)}
  .bc-num{font-size:var(--fs-lg)}
  .bc-call{padding:4px 12px}
  .cp-grid{grid-template-columns:1fr}
  .cp-item{padding:14px 16px;border-right:none !important;border-bottom:1px solid var(--line) !important}
  .cp-item:last-child{border-bottom:none !important}
  .cp-item h3{margin-bottom:6px}
  .cp-item h3 .cp-n{font-size:var(--fs-3xs);margin-right:4px}
  .cp-list li{font-size:var(--fs-2xs)}
  .cp-list li::before{top:12px}
  .call-script{padding:14px 16px;margin-top:12px}
  .call-script h3{font-size:var(--h3);margin-bottom:8px}
  .call-script blockquote{font-size:var(--fs-xs);line-height:1.8;padding-left:12px}
  .bank-myths{gap:8px}
  .bank-myth{padding:12px 14px;gap:10px}
  .bm-icon{width:22px;height:22px;font-size:var(--fs-2xs)}
  .bm-body h4{font-size:var(--h4)}
  .bm-body p{font-size:var(--fs-2xs)}
  .bank-note{padding:14px 16px;font-size:var(--fs-2xs)}
  .contact-main{padding:18px 18px;border-radius:var(--r-s);margin-bottom:14px}
  .cm-label{margin-bottom:6px}
  .cm-email{font-size:var(--fs-lg)}
  .cm-desc{font-size:var(--fs-2xs)}
  .cmb-value{font-size:var(--fs-sm)}
  .contact-routes{gap:8px;margin-bottom:14px}
  .route-card{padding:14px 14px 12px;border-radius:var(--r-s)}
  .route-title{font-size:var(--fs-sm)}
  .route-desc{font-size:var(--fs-2xs)}
  .route-prefix{font-size:var(--fs-3xs)}
  .contact-nope{padding:14px 16px;border-radius:var(--r-s);margin-bottom:14px}
  .contact-nope h3{font-size:var(--h3)}
  .contact-nope h3::before{width:18px;height:18px;font-size:var(--fs-3xs)}
  .nope-list li{font-size:var(--fs-2xs);padding:4px 0 4px 14px}
  .nope-list li::before{top:12px}
  .contact-flow{border-radius:var(--r-s);margin-bottom:14px}
  .cf-item{grid-template-columns:32px 1fr;gap:12px;padding:12px 16px}
  .cf-num{font-size:var(--fs-2xs)}
  .cf-body p{font-size:var(--fs-2xs)}
  .demo-filter .filter-pill{font-size:var(--fs-3xs);padding:2px 8px}

/* 手机端补丁（令牌覆盖 / 报头换行 / 表格横滑提示） */
  /* 只改变量，不重写组件 */
  :root{--fs-3xs:11px;--fs-2xs:12px;--fs-4xl:36px;--fs-hero:56px}
  /* 报头：统计独占一行，消除整页横向溢出 */
  .masthead .wrap{flex-wrap:wrap;row-gap:12px;gap:12px}
  .masthead-stats{width:100%;justify-content:space-between}
  .ms-item{padding:0 12px;align-items:flex-start}
  .ms-item:first-child{padding-left:0}
  .ms-num{font-size:var(--fs-xl)}
  /* 榜单表格：明确告知可横滑 */
  .board-note::before{display:none}

  /* —— 段2：页面收尾 .main-end（原约 L2018） —— */
  .main-end > .sec:last-child,
  .main-end > .list-section:last-child{padding-bottom:44px}
  .main-end .article-layout,
  .main-end .detail-layout,
  .main-end .form-layout{padding-bottom:44px}

  /* —— 段3：说明块间距 .list-note 等（原约 L2039） —— */
  .list-note:not(:first-child),
  .feed-note:not(:first-child),
  .cat-note:not(:first-child),
  .legal-footer-note:not(:first-child),
  .guide-principles:not(:first-child),
  .bank-note:not(:first-child),
  .help-disclaimer:not(:first-child),
  .search-tips:not(:first-child){margin-top:22px}

  /* —— 段4：评论区 .cm-item（原约 L2177） —— */
  .cm-item,.cm-item.is-sub{grid-template-columns:30px minmax(0,1fr);gap:0 10px}
  .cm-ava{width:30px;height:30px}

  /* —— 段5：联系/分类/信号页组件（原约 L2271 合并尾块） —— */
  .contact-channels{padding:15px 16px 14px;}
  .ch-title{margin-bottom:10px;}
  .ch-title h2{font-size:var(--h4);}
  .ch-hint{font-size:var(--fs-3xs);width:100%;}
  .ch-grid{grid-template-columns:1fr 1fr;gap:8px;}
  .ch-chip{padding:11px 38px 11px 13px;gap:5px;}
  .ch-val{font-size:var(--fs-xs);}
  .ch-copy{top:8px;right:8px;min-width:24px;height:24px;font-size:10px;padding:0 5px;}
  .ch-note{font-size:var(--fs-3xs);margin-top:10px;padding-top:10px;}
  .back-top{right:16px;bottom:16px;width:38px;height:38px;font-size:16px}
  .cat-guide-item{padding:12px 14px}
  .urgent-redirect .urgent-steps{grid-template-columns:1fr}
  .sig-why{padding:10px 13px}
  .sc-verdict{padding:14px 16px}
}


/* ─── 响应式：超窄屏（≤360px） ─── */
@media (max-width:360px){
  .search button{padding:0 14px;font-size:var(--fs-xs)}
  .rc-risk{max-width:140px}
  .rp-actions a{padding:8px 12px}
  .fact-table th{width:70px}
}

/* ═══ 21. 无障碍与移动端修复层 ═══ */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* 跳到主内容：默认移出视口，键盘聚焦时滑入（此前无样式，导致每页顶部露出这行字） */
.skip-link{position:fixed;left:12px;top:-60px;z-index:300;background:var(--navy);color:#fff;padding:9px 16px;border-radius:var(--r-s);font-size:var(--fs-sm);font-weight:var(--fw-b);box-shadow:var(--sh-m);transition:top .18s ease}
.skip-link:focus{top:12px;color:#fff}
.ps-num.filed{color:var(--green)}
a:focus-visible,button:focus-visible,.filter-pill:focus-visible,.page-btn:focus-visible{outline:2px solid var(--navy-2);outline-offset:2px}
/* 导航滚到末尾时收起右侧渐变提示 */
.nav.scrolled-end::after{opacity:0}
/* flex 子项横滑容器必须解除 min-width:auto，否则仍被内容撑宽 */
.filter-group,.nav .wrap,.board-scroll,.table-scroll{min-width:0}

/* ═══ 22. 页面收尾（已移除底部求助条的页面） ═══
   求助条原为「末块 42px + 白卡 + 42px」的收尾节奏；移除后末块直接贴深色页脚，
   可见留白只剩板块间距 42px，页面收尾显得急。这里只对带 .main-end 的页面把
   末块底部留白提到 64px（移动 44px），其余页面不受影响。 */
.main-end > .sec:last-child,
.main-end > .list-section:last-child{padding-bottom:64px}
.main-end .article-layout,
.main-end .detail-layout,
.main-end .form-layout{padding-bottom:64px}

/* ═══ 23. 分页与说明块的间距 ═══
   .pagination 只有 margin-top，分页后紧跟的说明块（评级口径/曝光标准/阅读原则/
   搜索建议）此前是 0 间距，文字块直接顶在页码按钮下沿。这里给说明块补上
   与上方同级的 28px；作为容器唯一子元素时（category/legal/banks/help 的 .wrap
   里就一个说明块）保持原样，避免与 .sec 的 42px 叠加成 112。 */
.list-note:not(:first-child),
.feed-note:not(:first-child),
.cat-note:not(:first-child),
.legal-footer-note:not(:first-child),
.guide-principles:not(:first-child),
.bank-note:not(:first-child),
.help-disclaimer:not(:first-child),
.search-tips:not(:first-child){margin-top:28px}

/* ═══ 24. 读者线索（评论区）：先审后发 ═══
   复用 system/extend.func.php 的 AfComments / AfCommentForm / AfCommentCount，
   后端走 apps/ajax_comment_post.php（审核后公开，ischeck=1 才显示）。
   令牌全部映射到本站 :root，避免引入 antifraud 主题的色彩语义。 */
.cm { margin-top: 24px; border-top: 1px solid var(--line); padding-top: 24px; }
.cm-head { display: flex; align-items: baseline; gap: 6px 14px; flex-wrap: wrap; }
.cm-head h2 { font-family: var(--serif); font-size: var(--h2); font-weight: var(--fw-x); letter-spacing: var(--ls-wide); color: var(--navy); }
.cm-head h2::before { content: ""; display: inline-block; width: 3px; height: 15px; background: var(--navy); border-radius: 1px; margin-right: 8px; vertical-align: -2px; }
.cm-head h2 .num { font-family: var(--mono); font-variant-numeric: tabular-nums; font-size: var(--fs-md); color: var(--ink-3); }
.cm-rule { font-size: var(--fs-xs); color: var(--ink-4); }
.cm-warn {
  margin-top: 14px; padding: 16px 18px; background: var(--red-bg); border: 1px solid var(--red-line); border-left: 3px solid var(--red); border-radius: var(--r-s);
  font-size: var(--fs-sm); color: var(--ink-2); line-height: 1.8; max-width: 44em;
}
.cm-warn b { color: var(--red); }
.cm-form { margin-top: 18px; }
.cm-form textarea {
  display: block; width: 100%; min-height: 96px; padding: 12px 14px;
  border: 1px solid var(--line-2); background: var(--bg-grey); color: var(--ink);
  font-size: var(--fs-sm); line-height: 1.7; border-radius: var(--r-s); resize: vertical;
  font-family: inherit;
}
.cm-form textarea::placeholder, .cm-form-row input::placeholder { color: var(--ink-4); }
.cm-form textarea:focus, .cm-form-row input:focus { outline: 2px solid var(--navy); outline-offset: -1px; }
.cm-form-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 10px; }
.cm-form-row input {
  flex: 0 1 160px; min-width: 0; min-height: 32px; padding: 0 12px;
  border: 1px solid var(--line-2); background: var(--bg-grey);
  color: var(--ink); font-size: var(--fs-xs); border-radius: var(--r-s);
}
#cmValidate { flex: 0 1 120px; min-width: 100px; }
.cm-form-row input:disabled { opacity: .45; cursor: not-allowed; background: var(--bg); }
.cm-cap-img { border: 1px solid var(--line-2); background: var(--bg-grey); cursor: pointer; flex: none; width: 90px; height: 30px; object-fit: contain; box-sizing: border-box; border-radius: var(--r-s); }
/* 线索提交页验证码：与相邻 .input 文本框同高（约 44px）对齐，宽度同步放大 */
#submitCapImg { width: 110px; height: 44px; }
.cm-anon {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 0; min-height: 32px; font-size: var(--fs-xs); color: var(--ink-3);
  cursor: pointer; flex: none; user-select: none;
}
.cm-anon:hover { color: var(--ink); }
.cm-anon input {
  appearance: none; -webkit-appearance: none;
  width: 18px; height: 18px; margin: 0; padding: 0;
  border: 2px solid var(--line-2); background: var(--bg);
  cursor: pointer; flex: none; min-height: 0;
}
.cm-anon input:checked { background: var(--red); border-color: var(--red); }
.cm-anon input:checked::after {
  content: ''; display: block; width: 8px; height: 4px; margin: 3px auto 0;
  border-left: 2px solid var(--bg); border-bottom: 2px solid var(--bg);
  transform: rotate(-45deg);
}
.cm-form-row .btn { flex: none; min-height: 32px; font-size: var(--fs-xs); }
.cm-tip { margin-top: 10px; font-size: var(--fs-xs); color: var(--navy-2); }
.cm-tip[hidden] { display: none; }
.cm-tip.is-err { color: var(--red); }
.cm-tip.is-ok { color: var(--green); }
.cm-who { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; border: 1px solid var(--line); background: var(--bg-grey); font-size: var(--fs-xs); font-weight: 700; color: var(--ink); border-radius: var(--r-s); }
.cm-list { list-style: none; margin: 26px 0 0; padding: 0; }
.cm-empty { padding: 14px 0; font-size: var(--fs-sm); color: var(--ink-4); line-height: 1.9; border-bottom: 0; display: block; }
.cm-item {
  display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 0 14px;
  padding: 16px 0; border-bottom: 1px solid var(--line);
}
.cm-item:last-child { border-bottom: 0; }
.cm-ava {
  width: 36px; height: 36px; display: flex; align-items: center; justify-content: center;
  background: var(--bg-grey); color: var(--ink-3); font-size: var(--fs-sm); font-weight: 700;
}
.cm-item.is-ed .cm-ava { background: var(--navy); color: #fff; }
.cm-b { min-width: 0; }
.cm-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; }
.cm-meta b { font-size: var(--fs-sm); font-weight: 700; color: var(--ink); }
.cm-chip {
  font-size: var(--fs-xs); font-weight: 700; color: var(--navy-2);
  border: 1px solid currentColor; padding: 0 6px; line-height: 18px;
}
.cm-meta span { font-size: var(--fs-xs); color: var(--ink-4); }
.cm-b p { margin-top: 6px; font-size: var(--fs-base); color: var(--ink-2); line-height: 1.8; max-width: 44em; }
.cm-act { margin-top: 8px; display: flex; gap: 16px; align-items: center; }
.cm-replies { margin-top: 12px; border-left: 2px solid var(--line); padding-left: 16px; }
.cm-item.is-sub {
  grid-template-columns: 28px minmax(0, 1fr); gap: 0 12px;
  padding: 12px 0; border-bottom: 0;
}
.cm-item.is-sub + .cm-item.is-sub { border-top: 1px solid var(--line); }
.cm-item.is-sub .cm-ava { width: 28px; height: 28px; font-size: var(--fs-xs); }
.cm-item.is-sub .cm-b p { font-size: var(--fs-sm); }
.children-more[hidden] { display: none; }
.cm-expand {
  margin-top: 10px; background: none; border: 0; padding: 4px 0; min-height: 24px; cursor: pointer;
  font-size: var(--fs-xs); font-weight: 600; color: var(--navy-2); transition: color .14s;
}
.cm-expand:hover { color: var(--red); }
.cm-reply {
  background: none; border: 0; padding: 4px 0; min-height: 24px; cursor: pointer;
  font-size: var(--fs-xs); font-weight: 600; color: var(--ink-4); transition: color .14s;
}
.cm-reply:hover { color: var(--red); }
.cm-replying {
  margin: 0 0 10px; padding: 7px 12px; background: var(--bg-grey); border-left: 3px solid var(--navy-2);
  font-size: var(--fs-xs); color: var(--ink-3);
}
.cm-replying[hidden], .cm-cancel[hidden] { display: none; }
.cm-like {
  background: none; border: 0; padding: 4px 0; min-height: 24px; cursor: pointer;
  font-size: var(--fs-xs); font-weight: 600; color: var(--ink-4);
  transition: color .14s;
}
.cm-like:hover { color: var(--ink-3); }
.cm-like.is-on { color: var(--red); }
.cm-like b { font-weight: 700; }

/* 评论表单按钮（AfCommentForm 输出 .btn .btn-red .btn-line .btn-sm） */
.btn{display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-weight:var(--fw-b);font-size:var(--fs-sm);letter-spacing:var(--ls-wide2);line-height:1;border-radius:var(--r-s);cursor:pointer;transition:background .15s,border-color .15s,opacity .15s;white-space:nowrap}
.btn-sm{padding:0 16px;min-height:38px}
.btn-red{background:var(--red);color:var(--white);border:1px solid var(--red)}
.btn-red:hover:not(:disabled){background:var(--red-deep);border-color:var(--red-deep)}
.btn-line{background:transparent;color:var(--navy);border:1px solid var(--line-2)}
.btn-line:hover:not(:disabled){border-color:var(--navy);background:var(--navy-soft)}
.btn:disabled{opacity:.5;cursor:not-allowed}

/* 评论提交提示 toast（自包含，不依赖 fpnet.js 既有 toast） */
.fp-toast{position:fixed;left:50%;bottom:32px;transform:translateX(-50%) translateY(12px);background:var(--navy);color:var(--white);padding:12px 20px;border-radius:var(--r-s);font-size:var(--fs-sm);font-weight:var(--fw-m);box-shadow:var(--sh-m);opacity:0;transition:opacity .22s,transform .22s;z-index:90;max-width:90vw}
.fp-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}




/* 回到顶部 */
.back-top{position:fixed;right:24px;bottom:24px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:var(--navy);color:var(--white);border-radius:50%;font-size:18px;font-weight:var(--fw-b);box-shadow:0 2px 8px rgba(15,27,45,.25),0 0 0 1px rgba(255,255,255,.08);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .28s ease,transform .28s ease,background .2s,box-shadow .2s;z-index:80;cursor:pointer}
.back-top.show{opacity:1;pointer-events:auto;transform:translateY(0)}
.back-top:hover{background:var(--navy-2);box-shadow:0 4px 12px rgba(15,27,45,.35),0 0 0 1px rgba(255,255,255,.12);transform:translateY(-2px)}
.back-top:active{transform:translateY(0);box-shadow:0 2px 6px rgba(15,27,45,.2)}


/* ─── 联系编辑部 · 其他联系方式条 ─── */
.contact-channels{
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--r-m);
  box-shadow:var(--sh-s);
  padding:18px 22px 16px;
  margin-bottom:18px;
}
.ch-title{
  display:flex;align-items:baseline;justify-content:space-between;gap:14px;
  margin-bottom:12px;flex-wrap:wrap;
}
.ch-title h2{
  font-family:var(--serif);font-size:var(--h4);font-weight:var(--fw-x);
  color:var(--navy);letter-spacing:var(--ls-wide);line-height:1.4;
}
.ch-title h2::before{
  content:"";display:inline-block;width:3px;height:12px;
  background:var(--navy);border-radius:1px;margin-right:8px;vertical-align:-1px;
}
.ch-hint{font-size:var(--fs-xs);color:var(--ink-4);line-height:1.6;}

.ch-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;}

.ch-chip{
  position:relative;
  display:flex;flex-direction:column;gap:6px;
  padding:12px 44px 12px 14px;
  background:var(--bg-alt);
  border:1px solid var(--line);
  border-radius:var(--r-s);
  transition:border-color .15s,background .15s;
}
.ch-chip:hover{border-color:var(--line-2);background:var(--white);}

.ch-label{
  display:inline-flex;align-items:center;gap:6px;
  font-size:var(--fs-3xs);font-weight:var(--fw-b);
  letter-spacing:var(--ls-caps);color:var(--ink-3);line-height:1.4;
}
.ch-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}
.ch-wechat .ch-dot{background:var(--green);}
.ch-qq .ch-dot{background:var(--navy-2);}
.ch-mail .ch-dot{background:var(--red);}
.ch-tg .ch-dot{background:var(--ink-4);}

.ch-val{
  font-family:var(--mono);
  font-size:var(--fs-sm);font-weight:var(--fw-sb);
  color:var(--ink);line-height:1.4;
  word-break:break-all;
}
.ch-meta{font-size:var(--fs-3xs);color:var(--ink-4);line-height:1.5;}

.ch-copy{
  position:absolute;top:10px;right:10px;
  display:inline-flex;align-items:center;justify-content:center;
  min-width:26px;height:26px;padding:0 6px;
  border-radius:var(--r-xs);
  background:var(--white);border:1px solid var(--line);
  color:var(--ink-3);font-size:var(--fs-3xs);font-weight:var(--fw-b);
  font-family:inherit;cursor:pointer;line-height:1;
  transition:border-color .15s,color .15s,background .15s;
}
.ch-copy:hover{border-color:var(--navy);color:var(--navy);background:var(--navy-soft);}
.ch-copy.is-ok{background:var(--green-bg);border-color:var(--green);color:var(--green);}
.ch-copy.is-err{background:var(--red-bg);border-color:var(--red);color:var(--red);}

.ch-note{
  margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);
  font-size:var(--fs-xs);color:var(--ink-4);line-height:1.7;
}
.ch-note b{color:var(--ink-3);font-weight:var(--fw-sb);}

@media (max-width:900px){
  .ch-grid{grid-template-columns:1fr 1fr;}
}


/* ─── 归一化：分类页 / 信号页 组件（原模板内联 <style>，2026-10-31 移入共享样式表）─── */
/* 分类页新增组件 */
.cat-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}
.cat-guide-item{background:var(--white);border:1px solid var(--line-2);border-radius:var(--r-m);padding:14px 16px;font-size:var(--fs-sm);line-height:1.65;color:var(--ink-2)}
.cat-guide-item b{display:block;font-size:var(--fs-xs);font-weight:700;color:var(--navy);letter-spacing:.04em;margin-bottom:4px}
.tag-item.is-hot{border-color:var(--navy-2);background:var(--navy-soft);color:var(--navy);font-weight:600}
.tag-item.is-hot .tag-count{border-color:var(--navy-2);color:var(--navy-2)}
.group-card .gc-link{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:600;color:var(--navy-2);margin-top:4px}
.cic-link-cover::after{content:"";position:absolute;inset:0;z-index:1}
@media (max-width:900px){.cat-guide{grid-template-columns:1fr}}

/* 信号页新增组件 */
.sig-why{margin-top:12px;padding:12px 15px;background:var(--navy-soft);border-left:3px solid var(--navy-2);border-radius:0 var(--r-s) var(--r-s) 0;font-size:var(--fs-sm);color:var(--ink-2);line-height:1.75}
.sig-why .sig-why-label{display:inline-block;font-size:var(--fs-2xs);font-weight:700;letter-spacing:.08em;color:var(--navy-2);margin-bottom:5px}
.sig-why p{margin:0;font-size:var(--fs-sm);color:var(--ink-2);line-height:1.75}
.sc-linked{margin-top:6px;font-size:var(--fs-xs);color:var(--ink-3);line-height:1.8}
.sc-linked a{color:var(--navy-2);border-bottom:1px solid var(--line-2);margin-right:8px;font-weight:600}
.sc-linked a:hover{border-color:var(--navy-2)}
.sc-verdict{margin-top:16px;padding:16px 20px;background:#fff;border:1px solid var(--line-2);border-radius:var(--r-m)}
.sc-verdict h4{font-size:var(--fs-md);font-weight:700;color:var(--ink);margin-bottom:10px}
.sc-verdict ul{list-style:none;display:grid;gap:8px;font-size:var(--fs-sm);color:var(--ink-2);line-height:1.7}
.sc-verdict li{padding-left:20px;position:relative}
.sc-verdict li::before{content:"";position:absolute;left:4px;top:11px;width:7px;height:7px;border-radius:50%;background:var(--line-2)}
.sc-verdict li.v1::before{background:var(--amber)}
.sc-verdict li.v2::before{background:var(--ochre)}
.sc-verdict li.v3::before{background:var(--red)}
.sc-verdict li b{color:var(--ink);font-weight:700}
.urgent-redirect{padding:20px 24px;background:var(--red-bg);border:1px solid var(--red-line);border-left:4px solid var(--red);border-radius:var(--r-m);margin-top:20px}
.urgent-redirect h3{font-size:var(--fs-lg);font-weight:700;color:var(--red);margin-bottom:8px}
.urgent-redirect>p{font-size:var(--fs-sm);color:var(--ink-2);line-height:1.8;margin-bottom:14px}
.urgent-redirect .urgent-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.urgent-redirect .urgent-step{padding:11px 14px;background:#fff;border:1px solid var(--red-line);border-radius:var(--r-s);font-size:var(--fs-xs);color:var(--ink-2);line-height:1.6}
.urgent-redirect .urgent-step b{display:block;font-size:var(--fs-2xs);font-weight:700;color:var(--red);letter-spacing:.06em;margin-bottom:4px}
.urgent-redirect .urgent-actions{display:flex;gap:8px;flex-wrap:wrap}
.urgent-redirect .urgent-actions a{padding:9px 18px;font-size:var(--fs-xs);font-weight:700;border-radius:var(--r-s);border:1px solid var(--red);color:var(--red);background:#fff;transition:background .15s,color .15s}
.urgent-redirect .urgent-actions a.solid{background:var(--red);color:#fff}
.urgent-redirect .urgent-actions a:hover{background:var(--red);color:#fff}
.after-scam-section{background:var(--bg-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.after-scam-section .sig-card{border-left:3px solid var(--red)}
