/*
 * 修复 Fluid 主题 TOC 只显示 H1 的问题
 *
 * 根因：toc.styl 给 .toc-list-item 设置 -webkit-line-clamp: 2，
 *       H1 长标题占满行配额后嵌套子树（h2/h3 的 <ol>）文字被钳掉不绘制。
 * 方案：li 恢复普通 block，"两行省略"移到直接子级 a.tocbot-link 上。
 *
 * 2026-08-20 追加：箭头 .toc-toggle 绝对定位。
 * 原因：a.tocbot-link 为块级（-webkit-box）后，行内的箭头 span 被挤到
 *       独立一行，每个条目多占一行导致行距翻倍。绝对定位到左上角 +
 *       标题 padding-left 让位，布局完全确定（单行/两行/箭头均正常）。
 *
 * 2026-08-20 追加 v3：竖线 .toc-list-item::before 回移 left: -0.75rem。
 * 原因：li 设 position: relative 后成为 ::before（激活指示竖线）新的
 *       定位基准，竖线从"父级 ol 左侧导轨"移到 li 内部、压在箭头上。
 *       主题每层 ol 的 padding 恰为 1rem，-0.75rem 使竖线回到原始位置
 *       （对任意嵌套层级均成立）。
 *
 * 2026-08-20 追加 v5：.tocbot-is-collapsed 补 overflow: hidden。
 * 原因：Fluid 传 collapseDepth: 6，tocbot 不给嵌套 ol 加 tocbot-is-collapsible
 *       （该类自带 overflow: hidden），点击箭头折叠只加 max-height: 0 的
 *       .tocbot-is-collapsed——原始主题靠 li 的 overflow: hidden（line-clamp
 *       三件套）兜底裁剪溢出内容；v4 将 li 改 overflow: visible（为保住
 *       li 外左侧的竖线）后，折叠的子树内容溢出可见。在折叠类上直接补
 *       裁剪，展开态不受影响。
 */
.toc-list-item {
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
  text-overflow: clip;
  position: relative;
}

.toc-list-item::before {
  left: -0.75rem;
}

.tocbot-is-collapsed {
  overflow: hidden;
}

.toc-list-item > .toc-toggle {
  position: absolute;
  left: 0;
  top: 0.2rem;
}

.toc-list-item > a.tocbot-link {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-left: 0.85rem;
  line-height: 22px; /* 对齐原始 -webkit-box 的行盒高度（原 li 单行 25.2 = 22 + padding 3.2） */
}
