/* ==========================================================================
   glossary.css — 术语表页专属样式
   页头导语 / 词条速查索引 / 分类小节(标题行+计数)/ 术语卡网格 / 锚点位移
   颜色只引用 base.css 令牌,不新增硬编码色值。
   ========================================================================== */

/* ------------------------------------------------------------- 页头区 */
.gloss-badge{ margin-bottom:22px; }
.gloss-lede{
  max-width:64ch;
  margin:0;
  font-size:16.5px;
  color:var(--textMuted);
}
.band-panel .toc-tabs{ margin-top:34px; margin-bottom:0; }

/* --------------------------------------------------------- 词条速查 */
.gloss-index{ margin-bottom:56px; }
.gloss-index-label{
  display:block;
  font-family:var(--fontMono);
  font-size:12px;
  letter-spacing:.14em;
  color:var(--textMuted);
  margin-bottom:12px;
}

/* --------------------------------------------------------- 分类小节 */
.gloss-cat{
  margin-bottom:60px;
  scroll-margin-top:calc(var(--headH) + 20px);
}
.gloss-cat-head{
  display:flex;
  align-items:baseline;
  gap:16px;
  border-bottom:2px solid var(--border);
  padding-bottom:12px;
  margin-bottom:14px;
}
.gloss-cat-head h2{ margin:0; }
.gloss-count{
  margin-left:auto;
  flex:none;
  font-family:var(--fontMono);
  font-size:12px;
  letter-spacing:.12em;
  border:2px solid var(--border);
  background:var(--bg);
  padding:4px 10px;
  max-width:100%;
  overflow:hidden;
  white-space:nowrap;
}
.gloss-cat-desc{
  margin:0 0 22px;
  max-width:64ch;
  color:var(--textMuted);
}

/* --------------------------------------------------------- 术语卡网格 */
.gloss-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.gloss-grid > *{ min-width:0; }
.term-card{ scroll-margin-top:calc(var(--headH) + 20px); }

/* 卡片与 callout 内的正文链接:纸白高亮下划,悬停翻日光黄 */
.term-card p a,
.callout p a{
  font-weight:700;
  box-shadow:inset 0 -.5em 0 var(--bgPanel2);
}
.term-card p a:hover,
.callout p a:hover{ box-shadow:inset 0 -.5em 0 var(--bg); }

/* ------------------------------------------------------------- 响应式 */
@media (max-width:1080px){
  .gloss-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px){
  .gloss-grid{ grid-template-columns:minmax(0,1fr); }
  .gloss-cat{ margin-bottom:44px; }
  .gloss-index{ margin-bottom:40px; }
}