/* =========================================================
   赢咖指南 · 共享外壳样式 · /assets/site.css
   v2.3 / 墨蓝档案库语汇
   ========================================================= */

/* ---------- 1. Reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;}
body{margin:0;}
h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ol,ul{margin:0;}
ul,ol{padding:0;}
:where(ul,ol)[class]{list-style:none;}
img,picture,video,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;}
table{border-collapse:collapse;width:100%;}
hr{border:0;border-top:1px solid var(--line);}

/* ---------- 2. Tokens ---------- */
:root{
  /* 色彩 */
  --ink:#0B1F33;
  --ink-2:#182633;
  --ink-soft:#3F5164;
  --slate:#6F8497;
  --mist:#AEBBC6;
  --paper:#F5F1E8;
  --paper-2:#EFEAE0;
  --amber:#C8942F;
  --amber-bright:#DDA63C;
  --signal:#E2683C;
  --moss:#5F7A58;
  --clay:#B56F55;
  --line:#E3E6E8;
  --rule:rgba(11,31,51,.12);
  --rule-inv:rgba(174,187,198,.16);

  /* 字体 */
  --font-display:"Source Han Serif SC","Noto Serif SC","Songti SC",serif;
  --font-ui:"Source Han Sans SC","Noto Sans SC","PingFang SC",sans-serif;
  --font-mono:"IBM Plex Mono","JetBrains Mono",ui-monospace,monospace;

  /* 尺寸 */
  --rail-w:250px;
  --bar-h:62px;
  --content-max:1360px;
  --gutter:clamp(20px,3.4vw,56px);
  --gap:clamp(20px,2.6vw,36px);
  --radius:2px;

  /* 节奏 */
  --sp-xs:.5rem;
  --sp-sm:.875rem;
  --sp-md:1.5rem;
  --sp-lg:2.5rem;
  --sp-xl:clamp(2.5rem,5vw,5.5rem);
  --sp-section:clamp(40px,6vw,88px);

  /* 动效 */
  --ease:cubic-bezier(.22,.61,.36,1);
  --dur:240ms;

  /* 滚动进度 */
  --p:0;
}

/* ---------- 3. 基础排版 ---------- */
body{
  padding-inline-start:var(--rail-w);
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font-ui);
  font-size:clamp(1rem,1.1vw,1.125rem);
  line-height:1.75;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
::selection{background:rgba(200,148,47,.32);color:var(--ink);}

:focus-visible{
  outline:2px solid var(--signal);
  outline-offset:3px;
  border-radius:var(--radius);
}

a{
  transition:color var(--dur) var(--ease),background-color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}

/* 排版工具 */
.display{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(2.6rem,5vw,5.4rem);
  line-height:1.05;
  letter-spacing:-.02em;
}
.h2{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(1.8rem,3vw,3rem);
  line-height:1.2;
  letter-spacing:-.015em;
}
.h3{
  font-family:var(--font-ui);
  font-weight:700;
  font-size:clamp(1.12rem,1.6vw,1.4rem);
  line-height:1.4;
  letter-spacing:-.005em;
}
.lede{
  font-size:clamp(1.05rem,1.45vw,1.28rem);
  line-height:1.7;
  color:var(--ink-soft);
}
.prose{max-width:38em;}
.prose p + p{margin-top:1em;}
.label{
  display:inline-block;
  font-family:var(--font-mono);
  font-size:.75rem;
  line-height:1.4;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--slate);
}
.mono{
  font-family:var(--font-mono);
  font-variant-numeric:tabular-nums;
  letter-spacing:.02em;
}

/* ---------- 4. 布局容器 ---------- */
.container{
  width:100%;
  max-width:var(--content-max);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.section{padding-block:var(--sp-section);}
.section--tight{padding-block:clamp(28px,4vw,56px);}
.section--paper{background:var(--paper);}
.section--ink{background:var(--ink);color:var(--paper);}
.section--ink .lede,.section--ink .prose{color:var(--mist);}
.section--ink .label{color:var(--slate);}

.grid{display:grid;gap:var(--gap);}
.grid--2{grid-template-columns:repeat(2,minmax(0,1fr));}
.grid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.grid--4{grid-template-columns:repeat(4,minmax(0,1fr));}
.grid--split{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);}
.stack{display:flex;flex-direction:column;gap:var(--gap);}
.stack--sm{display:flex;flex-direction:column;gap:var(--sp-sm);}

.rule{border:0;border-top:1px solid var(--rule);margin-block:var(--sp-lg);}
.rule--amber{border-top:3px solid var(--amber);width:56px;margin-block:var(--sp-md);}

/* ---------- 5. 按钮 ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55em;
  min-height:44px;
  padding:.72em 1.35em;
  border:1px solid transparent;
  border-radius:var(--radius);
  font-family:var(--font-ui);
  font-size:.94rem;
  font-weight:600;
  letter-spacing:.02em;
  line-height:1.2;
  cursor:pointer;
  transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur) var(--ease);
}
.btn--amber{background:var(--amber);color:var(--ink);}
.btn--amber:hover{background:var(--amber-bright);}
.btn--signal{background:var(--signal);color:var(--ink);}
.btn--signal:hover{background:#EE7A50;}
.btn--ghost{background:transparent;border-color:rgba(11,31,51,.28);color:var(--ink);}
.btn--ghost:hover{border-color:var(--ink);background:rgba(11,31,51,.06);}
.btn--ink{background:var(--ink);color:var(--paper);}
.btn--ink:hover{background:var(--ink-2);}
.btn--sm{min-height:38px;padding:.5em 1em;font-size:.84rem;}

/* ---------- 6. 标签 / 徽标 / 编号 ---------- */
.tag{
  display:inline-flex;
  align-items:center;
  gap:.45em;
  padding:.26em .7em;
  border:1px solid transparent;
  border-radius:999px;
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.06em;
  line-height:1.5;
  white-space:nowrap;
}
.tag--amber{color:#7A5A11;background:rgba(200,148,47,.14);border-color:rgba(200,148,47,.42);}
.tag--signal{color:#9A3E1D;background:rgba(226,104,60,.13);border-color:rgba(226,104,60,.4);}
.tag--moss{color:#3D5337;background:rgba(95,122,88,.15);border-color:rgba(95,122,88,.4);}
.tag--clay{color:#7E4430;background:rgba(181,111,85,.14);border-color:rgba(181,111,85,.4);}
.tag--mist{color:var(--ink-soft);background:rgba(174,187,198,.24);border-color:rgba(174,187,198,.5);}

.badge{
  display:inline-flex;
  align-items:center;
  gap:.4em;
  padding:.18em .55em;
  border:1px solid rgba(200,148,47,.45);
  border-radius:var(--radius);
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.08em;
  color:var(--amber);
}
.index-num{
  font-family:var(--font-mono);
  font-size:clamp(1.4rem,2.4vw,2.1rem);
  font-weight:500;
  line-height:1;
  letter-spacing:-.02em;
  color:var(--amber);
}

/* ---------- 7. 面包屑 ---------- */
.crumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.5em;
  padding-block:var(--sp-md) 0;
  font-size:.8rem;
  color:var(--slate);
}
.crumbs a{color:var(--ink-soft);}
.crumbs a:hover{color:var(--amber);}
.crumbs__sep{color:var(--mist);}

/* ---------- 8. 定义块 ---------- */
.def-list{
  display:grid;
  gap:0;
  border-top:1px solid var(--rule);
}
.def-list__row{
  display:grid;
  grid-template-columns:minmax(120px,10em) minmax(0,1fr);
  gap:var(--sp-md);
  padding-block:var(--sp-sm);
  border-bottom:1px solid var(--rule);
}
.def-list__term{
  font-family:var(--font-mono);
  font-size:.78rem;
  letter-spacing:.08em;
  color:var(--slate);
  padding-top:.25em;
}
.def-list__desc{color:var(--ink-soft);}

/* ---------- 9. 媒体容器 ---------- */
.media{
  position:relative;
  display:block;
  overflow:hidden;
  background:var(--ink-2);
  border:1px solid var(--rule);
  border-radius:var(--radius);
  isolation:isolate;
}
.media::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background-image:
    linear-gradient(rgba(174,187,198,.10) 1px,transparent 1px),
    linear-gradient(90deg,rgba(174,187,198,.10) 1px,transparent 1px);
  background-size:26px 26px;
  pointer-events:none;
}
.media--wide{aspect-ratio:16/9;}
.media--4x3{aspect-ratio:4/3;}
.media--1x1{aspect-ratio:1/1;}
.media--3x4{aspect-ratio:3/4;}
.media__img{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:cover;
}
.media__cap{
  display:block;
  margin-top:.6em;
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.06em;
  color:var(--slate);
}

/* ---------- 10. 手风琴 ---------- */
.acc{border-top:1px solid var(--rule);}
.acc__item{border-bottom:1px solid var(--rule);}
.acc__trigger{
  display:flex;
  align-items:flex-start;
  gap:var(--sp-sm);
  width:100%;
  padding:1.05em 0;
  text-align:start;
  color:var(--ink);
  transition:color var(--dur) var(--ease);
}
.acc__trigger:hover{color:var(--amber);}
.acc__num{
  flex:0 0 auto;
  font-family:var(--font-mono);
  font-size:.78rem;
  letter-spacing:.08em;
  color:var(--slate);
  padding-top:.35em;
  min-width:2.2em;
}
.acc__title{
  flex:1 1 auto;
  font-weight:600;
  font-size:1.02rem;
  line-height:1.6;
}
.acc__icon{
  flex:0 0 auto;
  position:relative;
  width:16px;
  height:16px;
  margin-top:.35em;
}
.acc__icon::before,
.acc__icon::after{
  content:"";
  position:absolute;
  top:50%;
  left:0;
  width:16px;
  height:1.5px;
  background:var(--amber);
  transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease);
}
.acc__icon::after{transform:rotate(90deg);}
.acc__item[data-open="true"] .acc__icon::after{transform:rotate(0);opacity:0;}
.acc__item[data-open="true"] .acc__trigger{color:var(--ink);}
.acc__panel{
  display:grid;
  grid-template-rows:0fr;
  visibility:hidden;
  transition:grid-template-rows 300ms var(--ease),visibility 0s linear 300ms;
}
.acc__item[data-open="true"] .acc__panel{
  grid-template-rows:1fr;
  visibility:visible;
  transition-delay:0s;
}
.acc__inner{
  overflow:hidden;
  min-height:0;
  padding-inline-start:calc(2.2em + var(--sp-sm));
  padding-bottom:1.1em;
  color:var(--ink-soft);
  max-width:38em;
}

/* ---------- 11. HEADER ---------- */
.skip-link{
  position:fixed;
  top:10px;
  left:10px;
  z-index:300;
  padding:.7em 1.1em;
  background:var(--signal);
  color:var(--ink);
  font-size:.88rem;
  font-weight:700;
  border-radius:var(--radius);
  transform:translateY(-180%);
  transition:transform 200ms var(--ease);
}
.skip-link:focus,
.skip-link:focus-visible{transform:translateY(0);}

.site-header{
  position:fixed;
  top:0;
  left:0;
  bottom:0;
  width:var(--rail-w);
  z-index:80;
  display:flex;
  flex-direction:column;
  background:var(--ink);
  border-right:1px solid var(--rule-inv);
}

/* 品牌行 */
.shell{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:22px 20px 18px;
  border-bottom:1px solid var(--rule-inv);
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.brand__glyph{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  background:var(--amber);
  color:var(--ink);
  font-family:var(--font-display);
  font-size:1.15rem;
  font-weight:700;
  line-height:1;
  border-radius:var(--radius);
}
.brand__body{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
.brand__name{
  font-family:var(--font-ui);
  font-size:1.02rem;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.2;
  color:var(--paper);
  white-space:nowrap;
}
.brand__meta{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.66rem;
  line-height:1.4;
  color:var(--slate);
  white-space:nowrap;
}
.brand__ver{
  font-family:var(--font-mono);
  letter-spacing:.06em;
  color:var(--amber);
  border:1px solid rgba(200,148,47,.42);
  border-radius:var(--radius);
  padding:0 5px;
}
.brand__sub{letter-spacing:.12em;}

/* 移动端汉堡 */
.nav-toggle{
  display:none;
  align-items:center;
  gap:9px;
  min-height:44px;
  padding:8px 12px;
  border:1px solid rgba(174,187,198,.32);
  border-radius:var(--radius);
  color:var(--paper);
  font-size:.82rem;
  letter-spacing:.1em;
}
.nav-toggle:hover{border-color:var(--amber);color:var(--amber);}
.nav-toggle__box{
  position:relative;
  display:block;
  width:18px;
  height:13px;
}
.nav-toggle__box span{
  position:absolute;
  left:0;
  right:0;
  height:1.5px;
  background:currentColor;
  transition:transform var(--dur) var(--ease),opacity 160ms var(--ease),top var(--dur) var(--ease),bottom var(--dur) var(--ease);
}
.nav-toggle__box span:nth-child(1){top:0;}
.nav-toggle__box span:nth-child(2){top:5.75px;}
.nav-toggle__box span:nth-child(3){bottom:0;}
.site-header[data-open="true"] .nav-toggle__box span:nth-child(1){top:5.75px;transform:rotate(45deg);}
.site-header[data-open="true"] .nav-toggle__box span:nth-child(2){opacity:0;}
.site-header[data-open="true"] .nav-toggle__box span:nth-child(3){bottom:5.75px;transform:rotate(-45deg);}
.nav-toggle__label{white-space:nowrap;}

/* 轨道 */
.rail{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:var(--sp-md);
  min-height:0;
  overflow-y:auto;
  padding-bottom:18px;
}

.nav{padding-top:16px;}
.nav__cap{
  padding:0 20px 10px;
  font-family:var(--font-mono);
  font-size:.66rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--slate);
}
.nav__list{
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:0 12px;
}
.nav__link{
  position:relative;
  display:flex;
  align-items:baseline;
  gap:10px;
  padding:.62em .75em;
  border-radius:var(--radius);
  color:var(--mist);
  font-size:.95rem;
  line-height:1.5;
}
.nav__link::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:2px;
  height:0;
  background:var(--amber);
  translate:0 -50%;
  transition:height var(--dur) var(--ease);
}
.nav__link:hover{
  color:var(--paper);
  background:rgba(174,187,198,.08);
}
.nav__link[aria-current="page"]{
  color:var(--paper);
  background:rgba(200,148,47,.13);
}
.nav__link[aria-current="page"]::before{height:64%;}
.nav__link[aria-current="page"] .nav__idx{color:var(--amber);}
.nav__idx{
  flex:0 0 auto;
  font-family:var(--font-mono);
  font-size:.68rem;
  letter-spacing:.08em;
  color:var(--slate);
  min-width:1.7em;
  transition:color var(--dur) var(--ease);
}
.nav__text{min-width:0;}

.rail-foot{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:16px 20px 0;
  border-top:1px solid var(--rule-inv);
}
.rail-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:44px;
  padding:.66em 1em;
  background:var(--signal);
  color:var(--ink);
  font-size:.9rem;
  font-weight:700;
  letter-spacing:.04em;
  border-radius:var(--radius);
  transition:background-color var(--dur) var(--ease);
}
.rail-cta:hover{background:#EE7A50;}
.rail-cta__arrow{font-family:var(--font-mono);font-size:.95rem;transition:transform var(--dur) var(--ease);}
.rail-cta:hover .rail-cta__arrow{transform:translateX(3px);}

.rail-mail{
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:.45em .1em;
  min-width:0;
}
.rail-mail__label{
  font-family:var(--font-mono);
  font-size:.64rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--slate);
}
.rail-mail__addr{
  font-size:.78rem;
  line-height:1.5;
  color:var(--mist);
  word-break:break-all;
  transition:color var(--dur) var(--ease);
}
.rail-mail:hover .rail-mail__addr{color:var(--amber);}

/* 遮罩：桌面端不参与 */
.scrim{
  position:fixed;
  inset:0;
  z-index:-1;
  background:rgba(11,31,51,.58);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity var(--dur) var(--ease),visibility 0s linear var(--dur);
}

/* 滚动进度 */
.scroll-line{
  position:fixed;
  top:0;
  left:calc(var(--rail-w) - 2px);
  bottom:0;
  width:2px;
  z-index:78;
  background:rgba(174,187,198,.14);
  pointer-events:none;
}
.scroll-line__bar{
  display:block;
  width:100%;
  height:100%;
  transform-origin:50% 0;
  transform:scaleY(var(--p));
  background:linear-gradient(180deg,var(--amber),var(--signal));
  transition:transform 100ms linear;
}

/* ---------- 12. FOOTER ---------- */
.site-footer{
  background:var(--ink);
  color:var(--mist);
  border-top:2px solid var(--amber);
  padding-top:clamp(40px,5vw,72px);
  font-size:.95rem;
}
.footer__grid{
  display:grid;
  grid-template-columns:1.6fr .85fr .85fr 1.25fr;
  gap:clamp(28px,3vw,48px);
  max-width:var(--content-max);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.footer__brand{display:flex;flex-direction:column;gap:16px;min-width:0;}
.footer__lede{
  max-width:26em;
  font-size:.92rem;
  line-height:1.75;
  color:var(--mist);
}
.footer__ver{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.76rem;
  letter-spacing:.06em;
  color:var(--slate);
}
.footer__ver .mono{
  color:var(--amber);
  border:1px solid rgba(200,148,47,.42);
  border-radius:var(--radius);
  padding:1px 6px;
  font-size:.74rem;
}
.footer__col{min-width:0;}
.footer__cap{
  margin-bottom:16px;
  font-family:var(--font-mono);
  font-size:.7rem;
  font-weight:500;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--slate);
}
.footer__links{
  display:flex;
  flex-direction:column;
  gap:10px;
  font-size:.92rem;
}
.footer__links a{
  color:var(--mist);
  display:inline-block;
  border-bottom:1px solid transparent;
  padding-bottom:1px;
}
.footer__links a:hover{color:var(--amber);border-bottom-color:rgba(200,148,47,.5);}

.footer__col--contact{display:flex;flex-direction:column;gap:10px;}
.footer__mail{font-size:.9rem;line-height:1.5;word-break:break-all;}
.footer__mail a{color:var(--amber);border-bottom:1px solid rgba(200,148,47,.4);}
.footer__mail a:hover{color:var(--amber-bright);border-bottom-color:var(--amber-bright);}
.footer__tel{font-size:.86rem;color:var(--paper);letter-spacing:.06em;}
.footer__addr{font-size:.86rem;line-height:1.6;color:var(--mist);}
.footer__note{font-size:.8rem;line-height:1.7;color:var(--slate);}

.footer__base{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px 26px;
  max-width:var(--content-max);
  margin:clamp(32px,4vw,56px) auto 0;
  padding:22px var(--gutter) 26px;
  border-top:1px solid var(--rule-inv);
  font-size:.78rem;
  color:var(--slate);
}
.footer__copy{letter-spacing:.04em;}
.footer__icp .mono{font-size:.78rem;letter-spacing:.06em;color:var(--mist);}
.footer__region{letter-spacing:.04em;}

/* ---------- 13. 响应式 ---------- */
@media (max-width:959px){
  body{
    padding-inline-start:0;
    padding-block-start:var(--bar-h);
  }
  html.is-nav-open{overflow:hidden;}

  .site-header{
    top:0;
    left:0;
    right:0;
    bottom:auto;
    width:auto;
    height:var(--bar-h);
    flex-direction:row;
    align-items:center;
    border-right:0;
    border-bottom:1px solid var(--rule-inv);
  }
  .shell{
    width:100%;
    height:var(--bar-h);
    padding:0 16px;
    border-bottom:0;
  }
  .brand__glyph{width:32px;height:32px;font-size:1rem;}
  .brand__sub{display:none;}
  .nav-toggle{display:inline-flex;}

  .rail{
    position:fixed;
    top:var(--bar-h);
    left:0;
    bottom:0;
    width:min(320px,86vw);
    padding-bottom:24px;
    background:var(--ink);
    border-right:1px solid var(--rule-inv);
    box-shadow:24px 0 48px -24px rgba(0,0,0,.6);
    transform:translateX(-102%);
    visibility:hidden;
    transition:transform 280ms var(--ease),visibility 0s linear 280ms;
    z-index:82;
    overscroll-behavior:contain;
  }
  .site-header[data-open="true"] .rail{
    transform:translateX(0);
    visibility:visible;
    transition-delay:0s;
  }

  .scrim{
    z-index:81;
    top:var(--bar-h);
  }
  .scrim[data-visible="true"]{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition-delay:0s;
  }

  .scroll-line{
    top:var(--bar-h);
    left:0;
    right:0;
    bottom:auto;
    width:auto;
    height:2px;
  }
  .scroll-line__bar{
    height:100%;
    width:100%;
    transform-origin:0 50%;
    transform:scaleX(var(--p));
    background:linear-gradient(90deg,var(--amber),var(--signal));
  }

  .footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .grid--4{grid-template-columns:repeat(2,minmax(0,1fr));}
  .grid--3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .grid--split{grid-template-columns:minmax(0,1fr);}
}

@media (max-width:639px){
  :root{--bar-h:58px;}
  .footer__grid{grid-template-columns:minmax(0,1fr);}
  .grid--2,.grid--3,.grid--4{grid-template-columns:minmax(0,1fr);}
  .footer__base{flex-direction:column;align-items:flex-start;gap:8px;}
  .def-list__row{grid-template-columns:minmax(0,1fr);gap:4px;}
  .nav__link{font-size:1rem;padding:.7em .75em;}
}

/* ---------- 14. 动效偏好 ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
  .acc__panel{transition:none;}
  .scroll-line__bar{transition:none;}
}
