.link-preview {
  display: block;
  overflow: hidden;
  border: 1px solid #cbd0d3;
  border-radius: 8px;
  margin: 1rem 0;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #f2f3f5;
}

.link-preview .og-image img {
  display: block;
  object-fit: cover;
  object-position: center;
  aspect-ratio: 40/21;
  width: 100%;
  height: auto;
}

.link-preview .descriptions {
  padding: 0.5rem 1rem;
}

.link-preview .descriptions .og-title {
  font-size: 1.29rem;
  font-weight: 600;
  margin-bottom: 0.25rem;
}

.link-preview .descriptions .og-description {
  color: #525252;
}

/* CJK 与拉丁字母/数字之间的自动留白（原生 text-autospace，替代上游 5.x 移除的 pangu）
   支持门槛：Chrome/Edge 140+、Firefox 145+、Safari 18.4+；不支持的浏览器静默降级 */
body {
  text-autospace: normal;
}

pre,
code,
kbd,
samp {
  text-autospace: no-autospace;
}

/* sidebar 加宽：butterfly 无此配置项——宽度硬编码在主题源码（aside.styl:2 的 26%、common.styl:32 的 74%）。
   注意不能只改侧栏：正文列有 ~857px 的 min-content 地板（超宽表格造成，flex 压不动），
   只加宽侧栏会把布局挤成横向溢出。因此三件套一起改：容器放宽 + 30/70 重分。
   容器原放 1400px 观感过宽，按需求收回 5% → 1330px（主题基准 1200px）。
   实测（1280 视口）最长 TOC 条目仅剩 1 条折行；≥2000px 交由主题的 60% 规则，不介入 */
@media screen and (min-width: 901px) and (max-width: 1999px) {
  .layout {
    max-width: 1270px;
  }
  .layout > #aside-content {
    flex: 0 0 30%;
  }
  .layout > div:first-child:not(.aside-content) {
    width: 70%;
  }
  /* 隐藏侧栏后恢复主题的 80% 正文宽度 */
  html.hide-aside .layout > div:first-child:not(.aside-content) {
    width: 80%;
  }
}

/* 首页文章卡片摘要显示 3 行（主题默认 2 行，见 homepage.styl:174）。
   摘要文本本身在生成期已被 index_post_content.length=555 截断，
   这里只放宽视觉行数；3 行可见字数仍少于 555，预算够用 */
#recent-posts .recent-post-item > .recent-post-info > .content {
  -webkit-line-clamp: 3;
}

/* 正文字号 14px → 15px：只放大文章正文，侧栏 / 页脚 / 首页卡片保持原样。
   主题的全局字号 = :root 的 --global-font-size（默认 14px 写死在 var.styl:31，
   _global/index.styl:2 落到 :root，index.styl:107 由 body 消费）。
   #article-container 自身没有 font-size、靠继承 body，所以两行都要给：
   容器字号管正文文本本身，变量管子树内 var(--global-font-size) 的消费者
   （代码块字号默认值，var.styl:32）。自定义属性沿子树继承且元素级声明胜过 :root，无需 !important。
   注：rem 基准是 html 而非 body，故 .link-preview 的 1rem 等不受影响 */
#article-container {
  --global-font-size: 15px;
  font-size: 15px;
}
