/* ============================================================
   余映潮 · 课例索引 /ke/
   沿用首页设计语言
   ============================================================ */

.nav-links a.cur {
  color: var(--tide);
  font-weight: 600;
  position: relative;
}
.nav-links a.cur::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -7px;
  height: 1px;
  background: var(--gold);
}

.lib-note-line {
  margin: 14px 0 0;
  font-size: 13.5px;
  color: var(--ink-mute);
  letter-spacing: .02em;
}

/* ---------- 分组 ---------- */
.kg {
  margin: 0 0 44px;
}
.kg-h {
  margin: 0 0 6px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--line);
  font-family: var(--serif);
  font-size: 17px;
  font-weight: 600;
  color: var(--ink);
  letter-spacing: .03em;
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.kg-stage {
  display: inline-block;
  font-size: 11.5px;
  font-weight: 400;
  letter-spacing: .14em;
  color: var(--gold);
  border: 1px solid rgba(168, 134, 74, .35);
  border-radius: 2px;
  padding: 2px 7px;
}
.kg-h em {
  font-style: normal;
  font-size: 12.5px;
  color: var(--ink-mute);
  font-variant-numeric: tabular-nums;
  margin-left: auto;
}

.kl {
  list-style: none;
  margin: 0;
  padding: 0;
  columns: 2;
  column-gap: 40px;
}
.kl li { break-inside: avoid; }
.kl a {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 9px 8px;
  text-decoration: none;
  color: inherit;
  border-bottom: 1px solid #f2ecdf;
  transition: background .2s var(--ease);
}
.kl a:hover { background: #fffdf8; }
.kl-t {
  font-family: var(--serif);
  font-size: 15px;
  color: var(--ink);
  flex: 1;
}
.kl a:hover .kl-t { color: var(--tide); }
.kl-n {
  font-size: 12px;
  color: var(--tide);
  font-variant-numeric: tabular-nums;
  background: var(--tide-soft);
  border-radius: 2px;
  padding: 1px 7px;
  white-space: nowrap;
}

/* ---------- 单课页 ---------- */
.ev-block {
  margin: 0 0 44px;
}
.ev-h2 {
  margin: 0 0 14px;
  padding-bottom: 11px;
  border-bottom: 1px solid var(--line);
  font-family: var(--serif);
  font-size: 18px;
  font-weight: 600;
  color: var(--ink);
  letter-spacing: .03em;
}
.ev-h2 em {
  font-style: normal;
  font-size: 13px;
  color: var(--gold);
  font-variant-numeric: tabular-nums;
  margin-left: 8px;
}
.ev-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ev-list li {
  display: flex;
  align-items: baseline;
  gap: 14px;
  padding: 11px 4px;
  border-bottom: 1px solid #f2ecdf;
  font-family: var(--serif);
  font-size: 15.5px;
  line-height: 1.7;
  color: var(--ink);
}
.ev-list li a {
  color: var(--ink);
  text-decoration: none;
  flex: 1;
  transition: color .2s var(--ease);
}
.ev-list li a:hover { color: var(--tide); }
.ev-book { flex: 1; color: var(--ink-soft); }
.ev-hits {
  font-size: 12px;
  color: var(--ink-mute);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  flex-shrink: 0;
}
.ev-back {
  margin: 50px 0 0;
  padding-top: 24px;
  border-top: 1px solid var(--line);
  font-size: 14px;
  color: var(--ink-mute);
}
.ev-back a {
  color: var(--tide);
  text-decoration: none;
  border-bottom: 1px solid rgba(44, 95, 93, .3);
}
.ev-back a:hover { border-bottom-color: var(--tide); }

@media (max-width: 960px) {
  .kl { columns: 1; }
}
@media (max-width: 720px) {
  .kg { margin-bottom: 34px; }
  .kg-h { font-size: 15.5px; }
  .ev-list li { font-size: 15px; gap: 10px; }
}

/* 相关度标签 */
.ev-list--banded li { align-items: center; }
.ev-band {
  flex-shrink: 0;
  font-size: 11.5px;
  letter-spacing: .06em;
  padding: 2px 8px;
  border-radius: 2px;
  font-family: var(--serif);
  white-space: nowrap;
}
.ev-band--core { color: #f7f4ec; background: var(--seal); }
.ev-band--related { color: var(--seal); background: rgba(156,43,37,.07); border: 1px solid rgba(156,43,37,.22); }
.ev-band--mention { color: var(--ink-mute); background: #f4efe4; border: 1px solid var(--line); }
