@font-face{font-family:"XXF Serif";font-style:normal;font-weight:400;font-display:swap;src:url("/f/xs4.woff2") format("woff2");}
@font-face{font-family:"XXF Serif";font-style:normal;font-weight:600;font-display:swap;src:url("/f/xs6.woff2") format("woff2");}
@charset "UTF-8";

/* xxfglobal.com · 变体一：报刊
   ------------------------------------------------------------------
   主张：一份能被逐条查证的出海周报。

   四件事决定了它长什么样：
   1  暖米白纸面。基准站的 #fffaf1 拿了回来，但落点不同：它铺在报头与
      页脚，这里铺在纸面本身；报头带与页脚仍是一条暖近黑，把纸夹住。
   2  一族两重。全站单一衬线族，400 走正文、600 走标题与关键句；
      层级靠字号、字距与留白，不靠第二个字族。
   3  双栏。主栏右侧挂一条常驻边栏，栏与栏之间是一条发丝线；边栏上半是
      本页目录，下半是全站每页都一样的发现区：检索、台账读数、还缺什么、
      方法、案例与能力、参考。
   4  脚注。正文里的引注号是朴素的，不着色、不编码等级；证据等级与
      来源知识卡集中在每页页末的「本页证据」区，/ledger/ 是总表。
      引注号与尾注之间来回跳时，一道琥珀光扫过目标块。

   点缀色是暖橙琥珀，主要用作填色与规矩线，不做正文链接色。
   ------------------------------------------------------------------ */

:root {
  color-scheme: light dark;

  --ground:    #fffaf1;
  --ground-2:  #f9f0dd;
  --ink:       #191510;
  --ink-2:     #46403a;
  --quiet:     #79716a;
  --hair:      #ded5c4;
  --hair-2:    #ece4d4;

  --band:      #17130d;
  --band-ink:  #f6f1e7;
  --band-q:    #a89f92;
  --band-hair: #332c22;

  --amber:     #d97e14;
  --amber-ink: #955707;
  --amber-soft: rgba(217, 126, 20, .16);
  --on-amber:  #191510;

  --serif: "XXF Serif", "Noto Serif CJK SC", "Source Han Serif SC",
           "Songti SC", SimSun, Georgia, serif;

  --wrap:    66rem;
  --side:    19rem;
  --gutter:  2.5rem;
  --measure: 37.5rem;
  --pad: clamp(1.15rem, 4vw, 3rem);
}

@media (prefers-color-scheme: dark) {
  :root {
    --ground:    #14110b;
    --ground-2:  #1e1a12;
    --ink:       #ece5d7;
    --ink-2:     #bcb4a5;
    --quiet:     #8e8779;
    --hair:      #342d22;
    --hair-2:    #251f17;

    --band:      #0a0805;
    --band-ink:  #f2ece0;
    --band-q:    #a49b8c;
    --band-hair: #2a241a;

    --amber:     #eb9a30;
    --amber-ink: #f0ad50;
    --amber-soft: rgba(235, 154, 48, .17);
    --on-amber:  #14110b;
  }
}

*, *::before, *::after { box-sizing: border-box; }

/* 筛选与检索靠 hidden 属性收行；窄屏下表格被改成块级，作者样式会盖掉
   浏览器默认的 [hidden]，所以这条得写死。 */
[hidden] { display: none !important; }

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--ground);
  color: var(--ink);
  font-family: var(--serif);
  font-size: 1rem;
  line-height: 1.88;
  font-kerning: normal;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/* 中文字体里的引号与撇号是全角字身，直接用在英文里会撑出空洞 */
html[lang="en"] body {
  font-size: 1.0625rem;
  line-height: 1.7;
  font-feature-settings: "pwid" 1, "kern" 1, "liga" 1;
}

img { max-width: 100%; height: auto; }
a { color: inherit; }

p a, li a, dd a, td a, caption a {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
  text-decoration-color: var(--hair);
  transition: color .12s, text-decoration-color .12s, background-color .12s;
}
p a:hover, li a:hover, dd a:hover, td a:hover {
  color: var(--amber-ink);
  text-decoration-color: var(--amber);
}

:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
.band :focus-visible, .foot :focus-visible, .promo :focus-visible {
  outline-color: var(--amber);
}

.meta { font-size: .8rem; letter-spacing: .1em; font-variant-numeric: tabular-nums; }
.meta--l { letter-spacing: .16em; }

.skip {
  position: absolute; left: -9999px; top: 0; z-index: 9;
  background: var(--amber); color: var(--on-amber);
  padding: .6rem 1.1rem; font-family: var(--serif); font-size: .8rem;
}
.skip:focus { left: 0; }

.wrap { max-width: var(--wrap); margin: 0 auto; padding-inline: var(--pad); }

hr.rule, .rule { border: 0; border-top: 1px solid var(--hair); margin: 2.6rem 0; }

/* ── 报头带 ───────────────────────────────────────────────────────────
   身份、导航与常驻的台账区块并置在同一条深色带里，带底一条琥珀粗线收口。 */

.band {
  background: var(--band);
  color: var(--band-ink);
  border-bottom: 3px solid var(--amber);
}

/* .wrap 的左右内边距靠 padding-inline 撑，这里只能写 padding-block，
   用 padding 简写会把它清成 0。 */
.band__in {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.5rem 2.5rem;
  padding-block: 1.5rem 1.4rem;
  align-items: start;
}

.word { text-decoration: none; display: block; }
.word__m {
  display: block;
  font-family: var(--serif);
  font-weight: 600;
  font-size: clamp(1.45rem, 1rem + 1.7vw, 2.15rem);
  line-height: 1;
  letter-spacing: .1em;
  text-indent: .1em;
}
.band--home .word__m { font-size: clamp(1.7rem, 1rem + 2.6vw, 2.85rem); }
.word__s {
  display: block;
  margin-top: .75rem;
  font-family: var(--serif);
  font-size: .72rem;
  line-height: 1.5;
  letter-spacing: .04em;
  color: var(--band-q);
}
.word:hover .word__m { color: var(--amber); }

/* 导航 */
.nav { display: flex; flex-wrap: wrap; gap: 1.1rem 2.4rem; }
.nav__g { min-width: 7.5rem; }
.nav__h {
  margin: 0 0 .45rem;
  font-family: var(--serif);
  font-size: .66rem;
  letter-spacing: .16em;
  color: var(--band-q);
}
.nav__g ul { list-style: none; margin: 0; padding: 0; }
.nav__g li { padding: .1rem 0; }
.nav__g a {
  text-decoration: none;
  font-size: .875rem;
  line-height: 1.6;
  border-bottom: 1px solid transparent;
  padding-bottom: 1px;
}
.nav__g a:hover { color: var(--amber); border-bottom-color: var(--amber); }
.nav__g a.is-cur { color: var(--amber); border-bottom-color: currentColor; }

/* 常驻区块：位置对应基准站的订阅框 */
.promo {
  background: var(--amber);
  color: var(--on-amber);
  padding: 1rem 1.1rem 1.1rem;
}
.promo__h {
  margin: 0 0 .4rem;
  font-family: var(--serif);
  font-weight: 600;
  font-size: 1.0625rem;
  line-height: 1.3;
}
.promo__b { margin: 0 0 .8rem; font-size: .8125rem; line-height: 1.6; }
.promo__a { margin: 0; }
.promo__a a {
  display: inline-block;
  background: var(--band);
  color: var(--band-ink);
  text-decoration: none;
  font-size: .8rem;
  letter-spacing: .02em;
  padding: .4rem .85rem;
}
.promo__a a:hover { background: #000; color: #fff; }
.promo__x { margin: .7rem 0 0; font-family: var(--serif); font-size: .72rem; }
.promo__x a { text-decoration: none; border-bottom: 1px solid rgba(20, 24, 28, .4); }
.promo__x a:hover { border-bottom-color: currentColor; }

/* 报头底条 */
.strip { background: var(--band); color: var(--band-q);
         border-top: 1px solid var(--band-hair); }
.strip__in {
  display: flex;
  flex-wrap: wrap;
  gap: .2rem 1.5rem;
  justify-content: space-between;
  align-items: baseline;
  padding-block: .55rem;
  font-family: var(--serif);
  font-size: .7rem;
  letter-spacing: .06em;
  color: var(--band-q);
}
.strip__in p { margin: 0; }
.strip__rules { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .2rem 1.6rem; }
.strip__rules li { position: relative; padding-left: .85rem; }
.strip__rules li::before {
  content: ""; position: absolute; left: 0; top: .62em;
  width: 4px; height: 4px; background: var(--amber);
}
.strip__n { color: var(--amber); margin-right: .8rem; }
.strip__g { margin-right: .8rem; }
.strip__t { color: var(--band-ink); }
.strip__r a { text-decoration: none; border-bottom: 1px solid var(--band-hair); padding-bottom: 1px; }
.strip__r a:hover { color: var(--amber); border-bottom-color: var(--amber); }

/* ── 首页头条 ─────────────────────────────────────────────────────── */

.lead { padding-block: 3rem 2.2rem; }
.lead__k {
  margin: 0 0 1.1rem;
  font-family: var(--serif);
  font-size: .72rem;
  letter-spacing: .14em;
  color: var(--quiet);
}
.lead__k .meta {
  background: var(--amber);
  color: var(--on-amber);
  padding: .15rem .5rem;
  margin-right: .8rem;
  letter-spacing: .06em;
}
.lead__t {
  margin: 0;
  font-family: var(--serif);
  font-weight: 600;
  font-size: clamp(2rem, 1.2rem + 2.8vw, 3.1rem);
  line-height: 1.22;
  letter-spacing: .01em;
  max-width: 21em;
}
.lead__s {
  margin: 1.4rem 0 0;
  max-width: 32em;
  font-size: clamp(1.15rem, 1.05rem + .42vw, 1.32rem);
  line-height: 1.72;
  color: var(--ink-2);
}

/* ── 主栏 + 常驻边栏 ──────────────────────────────────────────────── */

.home, .page { display: grid; grid-template-columns: minmax(0, 1fr); }
.page { padding-bottom: 1rem; }
/* 头条与下面的双栏之间是一条通栏粗规矩线，报纸的分版方式 */
.home { border-top: 3px solid var(--ink); }

.home__main, .art { min-width: 0; }
.aside, .home__side { min-width: 0; }

.blk { padding: 2.2rem 0; border-bottom: 1px solid var(--hair); }
.blk:last-child { border-bottom: 0; }
.blk__h {
  margin: 0 0 1.4rem;
  font-family: var(--serif);
  font-weight: 600;
  font-size: 1.2rem;
  line-height: 1.55;
  padding-bottom: .5rem;
  border-bottom: 2px solid var(--ink);
}
.blk__more { margin: 1.3rem 0 0; font-size: .875rem; }
.blk__more a, .side__more a { text-decoration: none; border-bottom: 1px solid var(--hair); }
.blk__more a:hover, .side__more a:hover { color: var(--amber-ink); border-color: var(--amber); }

.cards { list-style: none; margin: 0; padding: 0; }
.card {
  display: grid;
  grid-template-columns: 8.5rem minmax(0, 1fr);
  gap: 0 1.5rem;
  align-items: baseline;
  padding: 1.15rem 0;
  border-top: 1px solid var(--hair-2);
}
.card:first-child { border-top: 0; padding-top: .2rem; }
.card__k {
  margin: 0;
  font-family: var(--serif); font-size: .74rem; line-height: 1.7;
  color: var(--amber-ink);
}
.card__t {
  margin: 0; grid-column: 2;
  font-family: var(--serif); font-weight: 600; font-size: 1.1875rem; line-height: 1.45;
}
.card__t a { text-decoration: none; }
.card__b {
  grid-column: 2; margin: .35rem 0 0;
  color: var(--ink-2); font-size: .9375rem; line-height: 1.8;
}
.card__go { font-family: var(--serif); color: var(--quiet); margin-left: .5rem; font-size: .85em; }
.card__t a:hover { color: var(--amber-ink); }
.card__t a:hover .card__go { color: var(--amber); }

.index { list-style: none; margin: 0; padding: 0; }
.ix { border-top: 1px solid var(--hair-2); }
.ix:first-child { border-top: 0; }
.ix a {
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr);
  gap: 0 1rem;
  padding: .85rem .5rem .85rem 0;
  text-decoration: none;
}
.ix__n { font-family: var(--serif); font-size: .78rem; color: var(--amber-ink); padding-top: .3rem; }
.ix__t { font-family: var(--serif); font-weight: 600; font-size: 1.0625rem; line-height: 1.5; }
.ix__a { grid-column: 2; color: var(--quiet); font-size: .875rem; line-height: 1.72; margin-top: .2rem; }
.ix a:hover { background: var(--amber-soft); }
.ix a:hover .ix__t { color: var(--amber-ink); }

.feat {
  display: block; text-decoration: none;
  background: var(--ground-2);
  border-left: 4px solid var(--amber);
  padding: 1.2rem 1.3rem 1.3rem;
}
.feat__k { display: block; font-family: var(--serif); font-size: .72rem; color: var(--quiet); letter-spacing: .04em; }
.feat__t {
  display: block; margin: .55rem 0 .6rem;
  font-family: var(--serif); font-weight: 600; font-size: 1.5rem; line-height: 1.4;
}
.feat__b { display: block; color: var(--ink-2); font-size: .9375rem; line-height: 1.75; }
.feat__m { display: block; margin-top: .85rem; font-family: var(--serif); font-size: .72rem; color: var(--amber-ink); }
.feat:hover { background: var(--amber-soft); }

/* 首页边栏：第一块是「这个站不做的事」，其余与全站发现区同一套 */
.home__side { padding-top: 2.2rem; }
.side__l { margin: 0 0 .8rem; font-size: .8125rem; line-height: 1.65; color: var(--quiet); }

/* 「这个站不做的事」：当前事实，给它一个明确的框，不是排版留白 */
.side--limits {
  border: 2px solid var(--ink);
  padding: 1.1rem 1.15rem 1.2rem;
}
.side--limits .aside__h { border-bottom: 2px solid var(--amber); padding-bottom: .45rem; }
.lim { list-style: none; margin: 0; padding: 0; }
.lim li { padding: .6rem 0; border-top: 1px solid var(--hair-2); }
.lim li:first-child { border-top: 0; padding-top: 0; }
.lim__t { margin: 0; font-family: var(--serif); font-weight: 600; font-size: .9375rem; }
.lim__b { margin: .2rem 0 0; font-size: .8125rem; line-height: 1.7; color: var(--quiet); }

/* ── 内容页 ───────────────────────────────────────────────────────── */

.ph { padding-bottom: 1.5rem; margin-bottom: 2rem; border-bottom: 3px solid var(--ink); }
.ph__k {
  margin: 0 0 .9rem;
  font-family: var(--serif); font-size: .72rem; letter-spacing: .14em;
  color: var(--amber-ink);
}
.ph h1 {
  margin: 0;
  font-family: var(--serif); font-weight: 600;
  font-size: clamp(1.85rem, 1.15rem + 2.2vw, 2.85rem);
  line-height: 1.28;
  letter-spacing: -.005em;
  text-wrap: balance;
}
/* 英文标题字身比中文窄，同样字号会排到四五行，单独收一档 */
html[lang="en"] .ph h1 { font-size: clamp(1.75rem, 1.15rem + 1.8vw, 2.45rem); }
.lede { font-size: 1.125rem; line-height: 1.85; color: var(--ink-2); }
.lede--top { margin: 2rem 0 0; }
.ph__m {
  margin: 1.15rem 0 0;
  display: flex; flex-wrap: wrap; gap: .3rem 1rem; align-items: baseline;
  font-family: var(--serif); font-size: .72rem; letter-spacing: .03em; color: var(--quiet);
}
.ph__m .meta { color: var(--amber-ink); }
.ph__m a { text-decoration: none; border-bottom: 1px solid var(--hair); }
.ph__m a:hover { color: var(--amber-ink); border-color: var(--amber); }

.art p { margin: 0 0 1.15rem; font-size: 1.12rem; line-height: 1.82; }
.ph + h2.sec { margin-top: .6rem; padding-top: 0; border-top: 0; }

h2.sec {
  margin: 2.8rem 0 1.2rem;
  padding-top: 1rem;
  border-top: 1px solid var(--hair);
  font-family: var(--serif); font-weight: 600;
  font-size: 1.375rem;
  line-height: 1.5;
  display: grid;
  grid-template-columns: 2.8rem minmax(0, 1fr);
  align-items: baseline;
}
.sec__n {
  font-family: var(--serif); font-weight: 400; font-size: .72rem;
  color: var(--amber-ink); letter-spacing: .06em;
}
.art h3 {
  margin: 1.9rem 0 .55rem;
  font-family: var(--serif); font-weight: 600;
  font-size: 1.0625rem; line-height: 1.6;
}
.art h3::before {
  content: ""; display: inline-block;
  width: .55rem; height: .55rem; margin-right: .55rem;
  background: var(--amber); vertical-align: .04em;
}

/* 列表 */
.ticks { list-style: none; margin: 0 0 1.3rem; padding: 0; }
.ticks li { position: relative; padding: .34rem 0 .34rem 1.35rem; border-top: 1px solid var(--hair-2); }
.ticks li:first-child { border-top: 0; }
.ticks li::before {
  content: ""; position: absolute; left: 0; top: 1.05em;
  width: .5rem; height: 2px; background: var(--amber);
}

.numbered { list-style: none; margin: 0 0 1.3rem; padding: 0; }
.numbered li {
  display: grid; grid-template-columns: 2.4rem minmax(0, 1fr); gap: 0 .6rem;
  padding: .36rem 0; border-top: 1px solid var(--hair-2);
}
.numbered li:first-child { border-top: 0; }
.ol__n { font-family: var(--serif); font-size: .74rem; color: var(--amber-ink); padding-top: .45em; }

.terms { margin: 0 0 1.4rem; }
.terms dt {
  font-family: var(--serif); font-weight: 600; font-size: 1.0625rem;
  padding-top: .8rem; border-top: 1px solid var(--hair-2);
}
.terms dt:first-of-type { border-top: 0; padding-top: 0; }
.terms dd { margin: .2rem 0 .9rem; color: var(--ink-2); }

.steps { list-style: none; margin: 0 0 1.4rem; padding: 0; }
.steps > li { padding: 1rem 0; border-top: 1px solid var(--hair-2); }
.steps > li:first-child { border-top: 0; padding-top: .2rem; }
.step__h { margin: 0 0 .35rem !important; display: flex; gap: .8rem; align-items: baseline; }
.step__n {
  font-family: var(--serif); font-size: .7rem; letter-spacing: .08em;
  color: var(--on-amber); background: var(--amber);
  padding: .14rem .5rem; flex: 0 0 auto;
}
.step__t { font-family: var(--serif); font-weight: 600; }
.step__b { margin: 0 !important; color: var(--ink-2); }

.qas { list-style: none; margin: 0; padding: 0; }
.qa { padding: 1.15rem 0; border-top: 1px solid var(--hair-2); }
.qa:first-child { border-top: 0; }
.qa__q { margin: 0 0 .4rem !important; display: grid; grid-template-columns: 2.4rem minmax(0, 1fr); gap: 0 .5rem; }
.qa__n { font-family: var(--serif); font-size: .74rem; color: var(--amber-ink); padding-top: .45em; }
.qa__t { font-family: var(--serif); font-weight: 600; font-size: 1.0625rem; }
.qa__a { margin: 0 0 0 2.9rem !important; color: var(--ink-2); }

/* 关键句：全站唯一让衬线放大声音的地方 */
.key {
  margin: 2.2rem 0 !important;
  padding: .35rem 0 .35rem 1.4rem;
  border-left: 4px solid var(--amber);
  font-family: var(--serif); font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.72;
}

.note {
  font-size: .875rem;
  line-height: 1.75;
  color: var(--ink-2);
  margin: 1.5rem 0 !important;
  padding: .85rem 1rem;
  background: var(--ground-2);
  border-left: 3px solid var(--amber);
}

/* ── 结构图 ───────────────────────────────────────────────────────────
   内联 SVG，零外部请求。画法跟着版面的规矩线走：直角、发丝线、
   琥珀只标关键路径。viewBox 宽 480 配 max-width 30rem，桌面 1:1，
   窄屏等比缩到约七成，所以字号在两端都还读得动。 */

.dg { margin: 1.8rem 0 1.9rem; }
.dg__c { display: block; width: 100%; max-width: 30rem; height: auto; }
.dg figcaption {
  margin-top: .8rem; padding-top: .5rem;
  border-top: 1px solid var(--hair-2);
  max-width: 30rem;
  font-family: var(--serif); font-size: .72rem; letter-spacing: .1em;
  color: var(--amber-ink);
}

.dg-box   { fill: var(--ground); stroke: var(--hair); stroke-width: 1.5; }
.dg-box--k { fill: var(--ground-2); stroke: var(--ink); stroke-width: 1.8; }
.dg-box--q { fill: none; stroke: var(--hair); stroke-width: 1.5; stroke-dasharray: 5 4; }
.dg-box--a { fill: none; stroke: var(--amber); stroke-width: 1.8; stroke-dasharray: 6 4; }
.dg-bar   { fill: var(--amber); }
.dg-line  { stroke: var(--hair); stroke-width: 1.5; fill: none; }
.dg-line--k { stroke: var(--amber); stroke-width: 2; }
.dg-line--d { stroke: var(--amber); stroke-width: 1.5; stroke-dasharray: 5 4; fill: none; }
.dg-line--q { stroke: var(--hair); stroke-width: 1.5; stroke-dasharray: 3 4; }
.dg-fill  { fill: var(--hair); }
.dg-fill--k { fill: var(--amber); }
.dg-cell  { fill: var(--amber-soft); stroke: var(--amber); stroke-width: 1.2; }
.dg-cell--0 { fill: none; stroke: var(--hair-2); }

.dg text { font-family: var(--serif); }
.dg-t   { fill: var(--ink); font-weight: 600; font-size: 20px; }
.dg-t2  { fill: var(--ink); font-weight: 600; font-size: 17px; }
.dg-b   { fill: var(--ink-2); font-weight: 400; font-size: 14px; }
.dg-q   { fill: var(--quiet); font-weight: 400; font-size: 13px; }
.dg-n   { fill: var(--amber-ink); font-weight: 400; font-size: 13px; letter-spacing: .08em; }
.dg-x   { fill: var(--amber); font-weight: 400; font-size: 16px; }
.dg-num { fill: var(--amber-ink); font-weight: 600; font-size: 17px; }

/* 表格 */
.tablewrap { margin: 1.5rem 0 1.7rem; overflow-x: auto; }
.grid { width: 100%; border-collapse: collapse; font-size: .875rem; line-height: 1.65; }
.grid caption {
  text-align: left;
  font-family: var(--serif); font-size: .68rem; letter-spacing: .12em;
  color: var(--amber-ink); padding-bottom: .6rem;
}
.grid th {
  text-align: left;
  font-family: var(--serif); font-weight: 400; font-size: .68rem; letter-spacing: .1em;
  color: var(--quiet);
  padding: 0 1rem .45rem 0;
  border-bottom: 2px solid var(--ink);
  white-space: nowrap;
}
.grid td { padding: .6rem 1rem .6rem 0; border-bottom: 1px solid var(--hair-2); vertical-align: top; }
.grid tr:hover td { background: var(--ground-2); }
.grid td:last-child, .grid th:last-child { padding-right: 0; }

.lg__n { white-space: nowrap; }
.lg__n .meta { color: var(--amber-ink); font-size: .8rem; }
.bl__n .cref { vertical-align: baseline; font-size: .8rem; }
.lg__s { min-width: 17rem; }
.lg__src { color: var(--quiet); font-size: .8125rem; min-width: 9rem; }
.lg__w { min-width: 9rem; }
.lg__w a { font-size: .8125rem; white-space: nowrap; }
.lg__sep { color: var(--hair); }
.grid--ledger td { padding-top: .7rem; padding-bottom: .7rem; }
.grid--blank .bl__t { font-family: var(--serif); font-weight: 600; }

.bd {
  display: inline-block;
  font-family: var(--serif); font-size: .68rem; letter-spacing: .04em;
  padding: .08rem .42rem;
  white-space: nowrap;
  border: 1px solid currentColor;
}
.bd--verified { background: var(--amber); border-color: var(--amber); color: var(--on-amber); }
.bd--derived { color: var(--amber-ink); border-color: var(--amber); }
.bd--unverified { color: var(--ink); border-color: var(--ink-2); border-style: dashed; }
.bd--undecided { color: var(--quiet); border-style: dotted; }
.bd--public, .bd--review, .bd--withheld { border: 0; padding-left: 0; }
.bd--public { color: var(--quiet); }
.bd--review { color: var(--amber-ink); }
.bd--withheld { color: var(--ink); }
.bd--public::before, .bd--review::before, .bd--withheld::before { content: "〔"; }
.bd--public::after, .bd--review::after, .bd--withheld::after { content: "〕"; }

::selection { background: var(--amber-soft); }

/* 引注号：朴素，不着色、不编码等级。等级在页末尾注区。 */
.cref {
  font-family: var(--serif);
  font-size: .64em;
  vertical-align: .45em;
  line-height: 1;
  margin: 0 .12em 0 .08em;
  color: var(--ink-2);
  text-decoration: none;
  border-bottom: 1px dotted var(--quiet);
  padding-bottom: 1px;
}
.cref:hover { color: var(--amber-ink); border-bottom-color: var(--amber); background: var(--amber-soft); }

/* ── 页末证据区 ───────────────────────────────────────────────────── */

.ends { margin-top: 3.2rem; padding-top: 1.3rem; border-top: 3px solid var(--ink); }
.ends__w { padding-bottom: 1rem; }
.ends__h { margin: 0 0 .5rem; font-family: var(--serif); font-weight: 600; font-size: 1.25rem; }
.ends__l { margin: 0 0 1.2rem; font-size: .875rem; line-height: 1.75; color: var(--quiet); max-width: 38em; }
.ends__l2 { list-style: none; margin: 0; padding: 0; }
.en__i {
  display: grid;
  grid-template-columns: 2.6rem minmax(0, 1fr);
  gap: 0 .8rem;
  padding: .7rem 0;
  border-top: 1px solid var(--hair-2);
  scroll-margin-top: 1.5rem;
}
.en__i:first-child { border-top: 0; }
.en__i:target { background: var(--amber-soft); box-shadow: -.6rem 0 0 var(--amber-soft), .6rem 0 0 var(--amber-soft); }
.en__n { grid-row: 1 / span 2; margin: 0; padding-top: .1rem; }
.en__n a { font-family: var(--serif); font-size: .82rem; color: var(--amber-ink); text-decoration: none; }
.en__n a:hover { text-decoration: underline; }
.en__t { margin: 0; font-size: .9375rem; line-height: 1.72; }
.en__m {
  margin: .35rem 0 0;
  display: flex; flex-wrap: wrap; gap: .35rem .55rem; align-items: center;
}
.en__src { font-family: var(--serif); font-size: .72rem; color: var(--quiet); }
.ends__more { margin: 1.2rem 0 0; font-size: .8125rem; }
.ends__more a { text-decoration: none; border-bottom: 1px solid var(--hair); }
.ends__more a:hover { color: var(--amber-ink); border-color: var(--amber); }

/* 台账总表命中行 */
.grid tbody tr[id] { scroll-margin-top: 1.5rem; }
.grid tbody tr:target td { background: var(--amber-soft); }
.grid tbody tr:target .lg__n { box-shadow: inset 3px 0 0 var(--amber); }

/* ── 常驻边栏：本页目录 + 全站发现区 ─────────────────────────────────
   上半是这一页的目录，下半是每一页都一样的发现区。发现区不是导航的
   复制品：它把台账读数、还没核验的缺口、方法七篇、案例与能力摆成六组
   内容流，让读完这一页的人有下一步可走。分组标题右侧一枚琥珀胶囊，
   每组收尾一条「看全部」。 */

.aside { padding-top: 2.4rem; }
.aside__s { padding-bottom: 1.4rem; margin-bottom: 1.4rem; border-bottom: 1px solid var(--hair); }
.aside__s:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.aside__h {
  display: inline-block;
  margin: 0 0 .7rem;
  padding-bottom: .35rem;
  border-bottom: 2px solid var(--amber);
  font-family: var(--serif); font-weight: 600; font-size: .9375rem; line-height: 1.4;
}
.toc { list-style: none; margin: 0; padding: 0; }
.toc li { border-top: 1px solid var(--hair-2); }
.toc li:first-child { border-top: 0; }
.toc a {
  display: grid; grid-template-columns: 1.9rem minmax(0, 1fr); gap: 0 .35rem;
  padding: .42rem 0; text-decoration: none;
  font-size: .8125rem; line-height: 1.55; color: var(--ink-2);
}
.toc .meta { color: var(--quiet); font-size: .7rem; padding-top: .1rem; }
.toc a:hover { color: var(--amber-ink); }
.toc a:hover .meta { color: var(--amber); }

/* 分组标题：黑体标题 + 琥珀胶囊标签，与基准站右栏同一个语法 */
.rail__h {
  display: flex; flex-wrap: wrap; align-items: center; gap: .45rem;
  margin: 0 0 .7rem;
  font-family: var(--serif); font-weight: 600; font-size: .9375rem; line-height: 1.4;
}
.pill {
  background: var(--amber); color: var(--on-amber);
  font-family: var(--serif); font-weight: 400;
  font-size: .66rem; letter-spacing: .08em;
  padding: .12rem .5rem .16rem;
}
.rail__l { list-style: none; margin: 0; padding: 0; }
.rail__l li { border-top: 1px solid var(--hair-2); }
.rail__l li:first-child { border-top: 0; }
.rail__l a { display: block; padding: .48rem 0; text-decoration: none; }
.rail__t { display: block; font-size: .8125rem; line-height: 1.5; color: var(--ink); }
.rail__m {
  display: block; margin-top: .12rem;
  font-family: var(--serif); font-size: .7rem; letter-spacing: .04em; color: var(--quiet);
  font-variant-numeric: tabular-nums;
}
.rail__l a:hover .rail__t { color: var(--amber-ink); }
.rail__l a:hover .rail__m { color: var(--amber); }
.rail__a { margin: .8rem 0 0; }
.rail__a a {
  display: inline-block;
  border: 1px solid var(--hair);
  padding: .32rem .7rem;
  font-size: .75rem; letter-spacing: .02em;
  text-decoration: none; color: var(--ink-2);
}
.rail__a a:hover { border-color: var(--amber); color: var(--amber-ink); background: var(--amber-soft); }

/* 台账读数：条长按实际条数分配，数字与条同源 */
.dist { list-style: none; margin: 0; padding: 0; }
.dist li {
  display: grid; grid-template-columns: 4.1rem minmax(0, 1fr) 2rem;
  align-items: center; gap: .5rem; padding: .3rem 0;
  font-size: .8125rem;
}
.dist__b { height: 6px; background: var(--hair-2); }
.dist__b i { display: block; height: 100%; background: var(--amber); }
.dist li[data-e="derived"] .dist__b i { background: rgba(217, 126, 20, .55); }
.dist li[data-e="unverified"] .dist__b i,
.dist li[data-e="undecided"] .dist__b i { background: var(--ink-2); }
.dist__n { text-align: right; color: var(--amber-ink); font-size: .78rem; }

/* ── 检索：索引在构建期生成，过滤全在本地 ────────────────────────── */

.find { display: block; }
.find__i {
  width: 100%;
  font-family: var(--serif); font-size: .8125rem; line-height: 1.6;
  color: var(--ink); background: var(--ground);
  border: 1px solid var(--hair);
  padding: .48rem .6rem;
  -webkit-appearance: none; appearance: none; border-radius: 0;
}
.find__i::placeholder { color: var(--quiet); opacity: 1; }
.find__i:focus { outline: 2px solid var(--amber); outline-offset: -1px; border-color: var(--amber); }
.find__hint { margin: .4rem 0 0; font-size: .68rem; letter-spacing: .06em; color: var(--quiet); }
.find__o { list-style: none; margin: .8rem 0 0; padding: 0; }
.find__o li { border-top: 1px solid var(--hair-2); }
.find__o li:first-child { border-top: 0; }
.find__o a {
  display: grid; grid-template-columns: 2.6rem minmax(0, 1fr);
  gap: 0 .5rem; padding: .45rem 0; text-decoration: none;
}
.find__k {
  grid-row: 1 / span 2;
  font-family: var(--serif); font-size: .66rem; letter-spacing: .06em;
  color: var(--amber-ink); padding-top: .18rem;
}
.find__t { font-size: .8125rem; line-height: 1.5; color: var(--ink); }
.find__m { font-size: .7rem; color: var(--quiet); letter-spacing: .04em; }
.find__o a:hover .find__t { color: var(--amber-ink); }
.find__none { padding: .6rem 0; font-size: .78rem; line-height: 1.6; color: var(--quiet); }

/* 台账页没有边栏，检索与等级开关直接压在表头上 */
.lbar {
  display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem;
  margin: 1.6rem 0 .2rem; padding-bottom: .9rem;
  border-bottom: 2px solid var(--ink);
}
.find--wide { flex: 1 1 17rem; }
.chips { display: flex; flex-wrap: wrap; gap: .4rem; }
.chip {
  font-family: var(--serif); font-size: .72rem; letter-spacing: .04em;
  color: var(--ink-2); background: transparent;
  border: 1px solid var(--hair); border-radius: 0;
  padding: .28rem .55rem; cursor: pointer;
}
.chip b { font-weight: 400; color: var(--amber-ink); margin-left: .4em;
          font-variant-numeric: tabular-nums; }
.chip:hover { border-color: var(--amber); color: var(--amber-ink); }
.chip[aria-pressed="true"] { background: var(--amber); border-color: var(--amber); color: var(--on-amber); }
.chip[aria-pressed="true"] b { color: var(--on-amber); }
.lcount { margin: 0; font-size: .72rem; color: var(--quiet); flex: 0 0 auto; }

/* ── 相关与翻页 ───────────────────────────────────────────────────── */

.rel { margin-top: 2.4rem; padding-top: 1rem; border-top: 1px solid var(--hair); }
.rel__h {
  margin: 0 0 .5rem !important;
  font-family: var(--serif); font-size: .68rem; letter-spacing: .16em; color: var(--quiet);
}
.rel ul { list-style: none; margin: 0; padding: 0; }
.rel li { padding: .22rem 0; }
.rel a { text-decoration: none; font-size: .9375rem; }
.rel a .meta { color: var(--amber-ink); margin-right: .55rem; font-size: .8rem; }
.rel a:hover { color: var(--amber-ink); }

.pn { border-top: 1px solid var(--hair); margin-top: 1rem; }
.pn__in {
  display: flex; justify-content: space-between; gap: 1.5rem;
  padding-top: 1.3rem; padding-bottom: 2.6rem;
}
.pn a { text-decoration: none; display: block; max-width: 20rem; }
.pn a .meta { display: block; font-size: .7rem; color: var(--amber-ink); letter-spacing: .06em; margin-bottom: .25rem; }
.pn__t { font-family: var(--serif); font-weight: 600; font-size: 1rem; line-height: 1.45; }
.pn__n { text-align: right; margin-left: auto; }
.pn a:hover .pn__t { color: var(--amber-ink); }

/* ── 长文 ─────────────────────────────────────────────────────────── */

.essay__h1 {
  margin: 0 0 1.3rem;
  font-family: var(--serif); font-weight: 600;
  font-size: clamp(1.9rem, 1.1rem + 2vw, 2.6rem);
  line-height: 1.3;
  letter-spacing: -.005em;
}
/* 中文可以在任意两字之间断行；标题按句读切块，只让换行落在标点上 */
.essay__h1 .cl, .lead__t .cl { display: inline-block; }
.essay__meta {
  display: flex; flex-wrap: wrap; gap: .15rem 1.6rem;
  padding: .8rem 0 1rem;
  margin-bottom: 2.2rem;
  border-top: 1px solid var(--hair);
  border-bottom: 3px solid var(--ink);
  font-size: .8125rem;
  color: var(--ink-2);
}
/* 题头下面已经有一条粗线，第一节的分节线不再叠一条 */
.essay__meta + .essay__h2 { margin-top: 1.6rem; padding-top: 0; border-top: 0; }
.essay__meta p { margin: 0 !important; }
.essay__meta .meta { color: var(--quiet); font-size: .68rem; letter-spacing: .12em; margin-right: .4rem; }
.essay__meta a { text-decoration: none; border-bottom: 1px solid var(--hair); }
.essay__meta a:hover { color: var(--amber-ink); border-color: var(--amber); }

.essay > p:first-of-type { font-size: 1.125rem; line-height: 1.9; }
html[lang="en"] .essay > p:first-of-type { line-height: 1.68; }
.essay p { margin: 0 0 1.3rem; font-size: 1.12rem; line-height: 1.9; }
html[lang="en"] .essay p { line-height: 1.72; }

.essay__h2 {
  margin: 3.2rem 0 1.5rem;
  padding-top: 1.1rem;
  border-top: 3px solid var(--ink);
  font-family: var(--serif); font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.5;
}
.essay__rule { border: 0; border-top: 2px solid var(--amber); width: 4rem; margin: 2.8rem 0 1.8rem; }
.essay__note {
  font-size: .875rem;
  line-height: 1.8;
  color: var(--quiet);
  padding-left: 1rem;
  border-left: 2px solid var(--hair);
  margin-bottom: 1rem !important;
}
.refs { list-style: none; margin: .4rem 0 0; padding: 0; }
.refs li {
  font-size: .8125rem; line-height: 1.72; color: var(--ink-2);
  padding: .4rem 0; border-top: 1px solid var(--hair-2);
}
.refs li:first-child { border-top: 0; }
.refs a { text-decoration-color: var(--amber); }
.refs a::after { content: " ↗"; font-family: var(--serif); font-size: .82em; color: var(--quiet); }
.refs a:hover::after { color: var(--amber); }

/* ── 页脚：与报头带同一块深色，把白纸夹在中间 ────────────────────── */

.foot {
  margin-top: 3rem;
  background: var(--band);
  color: var(--band-ink);
  border-top: 3px solid var(--amber);
  padding: 2.3rem 0 2.6rem;
}
.foot__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.7rem 2.4rem; }
.foot__h {
  margin: 0 0 .6rem;
  font-family: var(--serif); font-weight: 600; font-size: .875rem;
  color: var(--amber);
}
.foot__c ul { list-style: none; margin: 0; padding: 0; }
.foot__c li { padding: .13rem 0; }
.foot__c a { text-decoration: none; font-size: .8125rem; }
.foot__c a .meta { color: var(--band-q); font-size: .68rem; margin-right: .55rem; }
.foot__c a:hover { color: var(--amber); }
.foot__c a:hover .meta { color: var(--amber); }
.foot__note { margin: 0 0 .7rem; font-size: .8125rem; line-height: 1.7; color: var(--band-q); }
.foot__end {
  margin: 2rem 0 0; padding-top: 1rem;
  border-top: 1px solid var(--band-hair);
  font-size: .75rem; color: var(--band-q);
}
.foot__end .meta { letter-spacing: .12em; color: var(--band-ink); }
.foot__end a { text-decoration: none; border-bottom: 1px solid var(--band-hair); }
.foot__end a:hover { color: var(--amber); border-color: var(--amber); }

/* ── 断点 ─────────────────────────────────────────────────────────── */

@media (min-width: 48rem) {
  .band__in { grid-template-columns: minmax(0, 1fr) 14rem; gap: 1.3rem 2rem; }
  .band__id, .nav { grid-column: 1; }
  .promo { grid-column: 2; grid-row: 1 / span 2; align-self: start; }
  .foot__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .foot__c--wide { grid-column: 1 / -1; border-top: 1px solid var(--band-hair); padding-top: 1.3rem; }
}

/* 报头三栏（报名 · 导航 · 常驻区块）要到能同时容下三者的宽度才铺开；
   在此之前保持两栏，否则报名会被挤断行。 */
@media (min-width: 72rem) {
  /* 报名列按自身宽度定，导航吃剩下的空间：报名不换行也不会压到导航上 */
  .band__in {
    grid-template-columns: auto minmax(0, 1fr) 15.5rem;
    gap: 0 2.2rem;
    padding-block: 1.7rem 1.6rem;
  }
  .band--home .band__in { padding-block: 2.1rem 1.9rem; }
  .band__id { grid-column: 1; grid-row: 1; }
  .nav { grid-column: 2; grid-row: 1; gap: .9rem 1.8rem; justify-content: space-between; }
  .nav__g { min-width: 6.5rem; }
  .promo { grid-column: 3; grid-row: 1; }
  .word__m { white-space: nowrap; font-size: clamp(1.35rem, 1rem + .78vw, 1.95rem); }
  .band--home .word__m { font-size: clamp(1.6rem, 1.1rem + 1.15vw, 2.45rem); }
}

@media (min-width: 64rem) {
  .home, .page { grid-template-columns: minmax(0, 1fr) calc(var(--side) + var(--gutter)); }
  /* 首页页末的证据区跟主栏对齐，不铺满整幅 */
  .ends__w > .ends { max-width: calc(100% - var(--side) - var(--gutter)); }
  .home__main, .art {
    border-right: 1px solid var(--hair);
    padding-right: var(--gutter);
  }
  .aside, .home__side { padding-left: var(--gutter); align-self: start; }
  .art { padding-top: 2.4rem; padding-bottom: 2.4rem; }
  .page--full { grid-template-columns: minmax(0, 1fr); }
  .art--full { border-right: 0; padding-right: 0; }
  .art--full > * { max-width: var(--measure); }
  .art--full > .tablewrap, .art--full > .ph { max-width: none; }
  .art--full > .ph > * { max-width: var(--measure); }

  .foot__grid { grid-template-columns: repeat(4, minmax(0, 1fr)) 1.4fr; }
  .foot__c--wide { grid-column: auto; border-top: 0; padding-top: 0; }
}

@media (max-width: 63.99rem) {
  .art { padding-top: 1.9rem; }
  .aside {
    margin-top: 2.4rem;
    padding-top: 1.4rem;
    border-top: 3px solid var(--ink);
  }
  /* 本页目录在窄屏上已被正文本身取代，发现区改成两栏，不把页脚推远 */
  .aside__s--toc { display: none; }
  .aside, .home__side {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 2.2rem; align-items: start;
  }
  .home__side { border-top: 1px solid var(--hair); margin-top: .5rem; padding-top: 1.6rem; }
  .side--limits { grid-column: 1 / -1; margin-bottom: 1.4rem; }
  .grid--ledger { font-size: .8125rem; }
  .grid--ledger .lg__s { min-width: 11rem; }
  .grid--ledger .lg__src { min-width: 7rem; font-size: .75rem; }
  .grid--ledger .lg__w { min-width: 6.5rem; }
  .grid--ledger .lg__w a { white-space: normal; font-size: .75rem; }
  .grid--ledger td, .grid--ledger th { padding-right: .7rem; }
}

@media (max-width: 47.99rem) {
  .band__in { gap: 1.2rem; padding-block: 1.2rem 1.1rem; }
  .promo { order: 2; padding: .85rem .95rem .95rem; }
  .promo__b { margin-bottom: .7rem; }
  .promo__a, .promo__x { display: inline-block; vertical-align: middle; }
  .promo__x { margin: 0 0 0 1.1rem; }
  .nav { order: 3; gap: .8rem 1.6rem; }
  .nav__g { min-width: 100%; border-top: 1px solid var(--band-hair); padding-top: .55rem; }
  .nav__g:first-child { border-top: 0; padding-top: 0; }
  .nav__g ul { display: flex; flex-wrap: wrap; gap: 0 1.1rem; }
  .nav__h { margin-bottom: .25rem; }
  .strip__in { font-size: .66rem; }
  .strip__rules { gap: .15rem 1.1rem; }

  .lead { padding: 2.1rem 0 1.6rem; }
  .lead__t { font-size: 1.7rem; line-height: 1.4; }
  .lead__s { font-size: 1rem; }
  .ph h1 { font-size: 1.62rem; }
  .essay__h1 { font-size: 1.7rem; line-height: 1.36; }
  .essay__h2 { font-size: 1.25rem; }
  .feat__t { font-size: 1.25rem; }
  .key { font-size: 1.0625rem; padding-left: 1rem; }

  .card { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .card__k { margin-bottom: .25rem; }
  .card__t, .card__b { grid-column: 1; }
  .qa__a { margin-left: 0 !important; }
  h2.sec { grid-template-columns: minmax(0, 1fr); font-size: 1.25rem; }
  .sec__n { display: block; margin-bottom: .25rem; }
  .pn__in { flex-direction: column; gap: 1.2rem; }
  .pn__n { text-align: left; margin-left: 0; }
  .en__i { grid-template-columns: 2.2rem minmax(0, 1fr); gap: 0 .6rem; }

  /* 表格改成块，避免横向滚动 */
  .tablewrap { overflow-x: visible; }
  .grid, .grid tbody, .grid tr, .grid td { display: block; width: 100%; }
  .grid thead { position: absolute; left: -9999px; }
  .grid tr { border-bottom: 1px solid var(--hair); padding: .75rem 0; }
  .grid tr:last-child { border-bottom: 0; }
  .grid td { border: 0; padding: .12rem 0; }
  .grid td::before {
    content: attr(data-l);
    display: inline-block;
    min-width: 4.6rem;
    font-family: var(--serif);
    font-size: .66rem;
    letter-spacing: .08em;
    color: var(--quiet);
  }
  .grid td.lg__s, .grid td.bl__t { display: block; }
  .grid td.lg__s::before, .grid td.bl__t::before { display: block; margin-bottom: .1rem; }
  .grid td.lg__s { min-width: 0; }
  .lg__w a { display: inline-block; margin-right: .8rem; }
}

/* ── 扫光 ─────────────────────────────────────────────────────────────
   正文里的引注号跳到页末尾注、尾注的编号跳回正文，这条来回路径上，
   一道琥珀光扫过目标块，把「你要找的就是这一条」当场交代掉。
   :target 的底色是留在原地的位置标记，扫光只负责落位那一下。 */

.scan { position: relative; overflow: hidden; }
.scan::after {
  content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
  background: linear-gradient(90deg, transparent,
              var(--amber-soft) 40%, var(--amber-soft) 56%, transparent);
  transform: translateX(-102%);
  animation: sweep .95s cubic-bezier(.22, .7, .3, 1) .04s 1 both;
}
@keyframes sweep { to { transform: translateX(102%); } }

/* 表格行开不了 overflow，改成逐格错时点亮：看上去仍是一道光横过去 */
tr.scan { position: static; overflow: visible; }
tr.scan::after { content: none; }
tr.scan td { animation: cellsweep .52s ease-out both; }
tr.scan td:nth-child(2) { animation-delay: .07s; }
tr.scan td:nth-child(3) { animation-delay: .14s; }
tr.scan td:nth-child(4) { animation-delay: .21s; }
tr.scan td:nth-child(5) { animation-delay: .28s; }
tr.scan td:nth-child(6) { animation-delay: .35s; }
@keyframes cellsweep {
  0%, 55% { background: var(--amber-soft); }
  100%    { background: transparent; }
}

@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; }
  .scan { overflow: visible; }
  .scan::after, tr.scan td { animation: none; }
  .scan::after { content: none; }
}

@media print {
  .nav, .aside, .pn, .skip, .promo { display: none; }
  body { background: #fff; color: #000; }
  .band, .foot { background: #fff; color: #000; border-color: #000; }
}

/* ── 报头读数与滚动进度 ───────────────────────────────────────────── */
/* 读数条来自变体三：本页有几条登记陈述、各是什么等级，就在报头右端。
   构成条在加载后展开一次，此后静止；进度条贴在报头带底边，随滚动推进。 */

.gauge {
  display: flex; align-items: center; gap: .55rem;
  margin-left: auto; flex: none;
  font-size: .66rem; letter-spacing: .12em;
  color: var(--band-q);
}
.gauge__h { text-transform: none; }
.gauge__n {
  font-size: .8rem; letter-spacing: .04em;
  color: var(--band-ink); font-variant-numeric: tabular-nums;
}
.gauge__bar {
  display: flex; width: 7rem; height: 4px; gap: 1px;
  clip-path: inset(0 100% 0 0);
}
.gauge__bar.is-in {
  clip-path: inset(0 0 0 0);
  transition: clip-path .55s cubic-bezier(.22, .7, .3, 1) .1s;
}
@media (prefers-reduced-motion: reduce) { .gauge__bar { clip-path: none; } }
.gauge__bar i { display: block; height: 100%; background: var(--band-q); }
.gauge__bar i[data-e="verified"]  { background: var(--amber); }
.gauge__bar i[data-e="derived"]   { background: rgba(217, 126, 20, .55); }
.gauge__bar i[data-e="unverified"]{ background: var(--band-ink); }
.gauge__bar i[data-e="undecided"] { background: var(--band-ink); }

.gauge__ks { display: flex; gap: .7rem; }
.gauge__k { white-space: nowrap; }
.gauge__k b { font-weight: 400; margin-left: .3em; color: var(--band-ink);
              font-variant-numeric: tabular-nums; }
.gauge__k[data-e="unverified"], .gauge__k[data-e="undecided"] { color: var(--amber); }
.gauge__k[data-e="unverified"] b, .gauge__k[data-e="undecided"] b { color: var(--amber); }

.prog { position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; }
.prog i { display: block; height: 100%; width: 0; background: var(--amber); }

.strip { position: sticky; top: 0; z-index: 6; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
/* 吸顶的细带会盖住锚点目标，锚点滚动位置整体下推一个带高 */
[id] { scroll-margin-top: 3.6rem; }
@media (max-width: 60rem) {
  .gauge__ks { display: none; }
  .gauge { gap: .45rem; }
  .gauge__bar { width: 4.5rem; }
}
@media (max-width: 38rem) {
  .gauge__h { display: none; }
}

/* ── ARK 登录表单：入口附页，与检索输入同一套版式语言 ─────────────── */
.form { max-width: 24rem; margin: 2.2rem 0 0; }
.form .f { margin: 0 0 1.1rem; }
.form label {
  display: block; margin: 0 0 .35rem;
  font-size: .72rem; letter-spacing: .1em; color: var(--quiet);
}
.form input {
  width: 100%;
  font-family: var(--serif); font-size: .875rem; line-height: 1.6;
  color: var(--ink); background: var(--ground);
  border: 1px solid var(--hair);
  padding: .55rem .65rem;
  -webkit-appearance: none; appearance: none; border-radius: 0;
}
.form input:focus { outline: 2px solid var(--amber); outline-offset: -1px; border-color: var(--amber); }
.form__btn {
  font-family: var(--serif); font-weight: 600; font-size: .8125rem;
  letter-spacing: .08em; cursor: pointer;
  color: var(--on-amber); background: var(--amber);
  border: 1px solid var(--amber); border-radius: 0;
  padding: .55rem 1.4rem;
}
.form__btn:hover { background: var(--amber-ink); border-color: var(--amber-ink); }
.form__msg { margin: .9rem 0 0; font-size: .8125rem; color: var(--amber-ink); min-height: 1.4em; }
