/* 文库文章页宽版（2026-10-14）。只被文章页引用（library-article.css），不影响文库首页与其他栏目页。
   宽度与官网其他页一致：沿用 .shell（最宽 1340px、随窗口缩放）；右侧为随页面滚动的本文目录。 */

/* ---- 页头：整行铺开，不再留空的左栏 ---- */
.libart-hero{padding-block:44px 30px}
.libart-top{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}
.libart-top .libcrumb{margin:0;font-size:14px}
.libart-hero h1{margin-top:14px;font-size:clamp(28px,3.3vw,50px);line-height:1.28;max-width:none}
.libart-hero .lede{margin-top:18px;max-width:62em;font-size:clamp(16px,1.25vw,20px);line-height:1.8}
.libart-hero .libmeta{margin-top:14px}

/* ---- 正文＋目录：两栏，正文随窗口变宽 ---- */
.libart{padding-top:40px}
.libart-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:clamp(32px,4.5vw,76px);align-items:start}
.libart-grid .libbody{font-size:clamp(16.5px,1.3vw,20px);line-height:1.95;max-width:none}
.libart-grid .libbody p,.libart-grid .libbody li{line-height:1.95}
.libart-grid .libbody h2{font-size:clamp(22px,1.9vw,30px);margin-top:44px;scroll-margin-top:92px}
.libart-grid .libbody h2:first-child{margin-top:0}
.libart-grid .libbody .libsub b{font-size:1.06em}
.libart-grid .libbody .libdisc{font-size:.82em}

/* 浏览器给 figure 默认左右各 40px 外边距，会把图挤得比正文窄一圈（手机上尤其明显），清掉 */
.libart-grid .libfig{margin-inline:0}
/* 配图：卡片式竖图，放大到随栏宽，但不超过 680px，居中 */
.libart-grid .libfig img{max-width:min(100%,680px)}
.libart-grid .libfig figcaption{font-size:14px}

/* ---- 右侧目录 ---- */
.libtoc{position:sticky;top:96px;font-size:15px}
.libtoc .cap{margin-bottom:10px}
.libtoc ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--line)}
.libtoc li{margin:0}
.libtoc li a{display:block;padding:8px 14px;margin-left:-2px;border-left:2px solid transparent;color:var(--ink-2);text-decoration:none;line-height:1.5}
.libtoc li a:hover{color:var(--accent);border-left-color:var(--accent)}
.libtoc-cta{margin-top:26px;padding:18px 18px 16px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}
.libtoc-cta p{margin:0;font-size:14.5px;line-height:1.7;color:var(--ink-2)}
.libtoc-cta p + p{margin-top:6px}
.libtoc-cta p:last-child{margin-top:14px}

/* ---- 文末：问诊台入口＋免责，同样铺开 ---- */
.libnext{padding-block:44px 64px}
.libnext-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.libnext-grid .note{margin:0}
.libnext-grid > .muted{margin:0;font-size:14.5px;line-height:1.85}

/* ---- 窄屏：单栏，目录收起 ---- */
@media (max-width:1100px){
  .libart-grid{grid-template-columns:1fr}
  .libtoc{display:none}
  .libnext-grid{grid-template-columns:1fr}
}
/* 手机：配图与正文同宽、两边对齐（旧样式限制在 520px，手机上比正文窄一圈、图里的字更小）。参照知乎的做法 */
@media (max-width:700px){
  .libart-grid .libfig img{max-width:none;width:100%;margin-inline:0;border-radius:8px}
  .libart-grid .libfig figcaption{font-size:13px}
}
@media (max-width:640px){
  .libart-hero{padding-block:30px 20px}
  .libart{padding-top:28px}
  .libart-grid .libbody h2{margin-top:34px}
}

/* ---- 合集（与公众号 4 个合集同名同色；颜色变量由页面行内 style 传入 --col / --col-deep / --col-soft / --col-line）---- */
.colbadge{display:inline-block;font-size:14px;font-weight:700;letter-spacing:.14em;color:var(--col-deep);background:var(--col-soft);border:1px solid var(--col-line);border-radius:3px;padding:3px 12px 3px 10px;text-decoration:none;line-height:1.5}
.colbadge::before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--col);margin-right:8px;vertical-align:1px}
a.colbadge:hover{border-color:var(--col-deep)}
.libcol{padding-block:8px 0;border-top:0}
.libcol-box{display:flex;align-items:center;gap:14px 28px;flex-wrap:wrap;padding:18px 22px;border:1px solid var(--col-line);border-left:6px solid var(--col);border-radius:4px;background:var(--col-soft)}
.libcol-box p{margin:0;flex:1 1 320px;color:var(--ink-2);font-size:15px;line-height:1.8}
.colnav{display:flex;flex-wrap:wrap;gap:10px;padding-top:26px}
.colnav a{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid var(--col-line);border-radius:3px;background:var(--col-soft);color:var(--col-deep);font-weight:700;font-size:15px;text-decoration:none}
.colnav a i{font-style:normal;font-weight:600;font-size:13px;opacity:.8}
.colnav a:hover{border-color:var(--col-deep)}
.colsec .cap{color:var(--col-deep)}
.colsec .card{border-top:3px solid var(--col)}
.colsec .lead-col .muted{font-size:15px;line-height:1.85;margin-top:10px}
.colsec .lead-col .btn{margin-top:14px}
.colsec .soon{margin:0;padding:22px 24px;border:1px dashed var(--col-line);border-radius:4px;color:var(--ink-3);font-size:15px}
.colhero{padding-bottom:6px}
