/* ============================================================
   南方數據博客 —— 淺色主題（覆蓋 site.css / blog.css 的深色 token）
   參考視覺：白底 + 黑字 + 細灰邊框 + 黑色主按鈕
   ============================================================ */

:root{
  --bg:        #ffffff;
  --bg-elev:   #fafafa;
  --bg-card:   #ffffff;
  --ink:       #111318;
  --ink-dim:   #3d434e;
  --muted:     #6b7280;
  --line:      rgba(17,19,24,.12);
  --line-soft: rgba(17,19,24,.07);
  --accent:    #111318;
  --accent-ink:#1a56db;
  --cyan:      #0ea5e9;
  --ok:        #16a34a;
}

body{ background:var(--bg); color:var(--ink); }

/* 头部 */
.hdr.is-stuck{
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(140%) blur(12px);
  border-bottom-color:var(--line);
}
.nav a{ color:var(--ink-dim); }
.nav a:hover,.nav a[aria-current="page"]{ color:var(--ink); }
.nav a::after{ background:var(--ink); }
.burger{ border-color:var(--line); }
.burger span,.burger span::before,.burger span::after{ background:var(--ink); }
.drawer{ background:var(--bg); }

/* 按钮：黑底白字 */
.btn{ border-color:var(--line); color:var(--ink); }
.btn:hover{ border-color:rgba(17,19,24,.35); background:rgba(17,19,24,.03); }
.btn--primary{ background:var(--ink); border-color:var(--ink); color:#fff; }
.btn--primary:hover{ background:#2b2f38; border-color:#2b2f38; }
.btn--ghost{ color:var(--ink); }
.btn--ghost:hover{ color:var(--accent-ink); background:none; }
.link-arrow{ color:var(--accent-ink); }

/* 首屏网格：改成浅灰细线 */
.blog-hero__mesh{
  opacity:1;
  background-image:
    linear-gradient(to right, rgba(17,19,24,.055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(17,19,24,.055) 1px, transparent 1px);
  mask-image:radial-gradient(ellipse 70% 70% at 25% 30%, #000 10%, transparent 72%);
  -webkit-mask-image:radial-gradient(ellipse 70% 70% at 25% 30%, #000 10%, transparent 72%);
}

/* 精选卡片 */
.featured{ background:var(--line-soft); border-color:var(--line); }
.featured__main{ background:#fff; }
.featured__side{ background:var(--bg-elev); }
.mini-post span{ color:var(--accent-ink); }
.mini-post:hover h4{ color:var(--ink); }

/* 每日简报卡片：白底 + 灰边，圆角更明显（贴合参考站） */
.digest-grid{ display:grid; grid-template-columns:1fr; gap:18px; background:none; border:0; }
.digest-card{
  background:#fff; border:1px solid var(--line); border-radius:14px;
  padding:24px 22px 20px; box-shadow:0 1px 2px rgba(17,19,24,.04);
}
.digest-card:hover{ background:#fff; border-color:rgba(17,19,24,.2); box-shadow:0 4px 16px rgba(17,19,24,.06); }
.digest-card h3{ color:var(--ink); }
.digest-card p{ color:var(--ink-dim); }
.digest-src{ color:var(--muted); }

/* 列表行 */
.post-list{ border-top-color:var(--line-soft); }
.post-item{ border-bottom-color:var(--line-soft); }
.post-item:hover{ background:rgba(17,19,24,.02); }
.post-item h3 a{ color:var(--ink); }
.post-item p{ color:var(--muted); }

/* 分类标签 */
.cat{ color:var(--ink-dim); border-color:var(--line); }
.cat:hover,.cat.is-on{ color:#fff; background:var(--ink); border-color:var(--ink); }

/* 文章正文 */
.article__body > p{ color:var(--ink-dim); }
.article__body h2{ border-top-color:var(--line-soft); }
.article__body code{ background:var(--bg-elev); border-color:var(--line); color:var(--accent-ink); }
.article__body pre{ background:var(--bg-elev); border-color:var(--line); }
.article__body pre code{ color:var(--ink-dim); }
.article__body blockquote{ border-left-color:var(--ink); color:var(--ink-dim); }
.article__meta{ color:var(--muted); }

/* 订阅块 */
.subscribe{ background:var(--bg-elev); border-color:var(--line); border-radius:14px; }
.subscribe input{ background:#fff; border-color:var(--line); color:var(--ink); }

/* 分页 */
.pager__link{ color:var(--ink-dim); border-color:var(--line); }
.pager__link:hover{ color:#fff; background:var(--ink); border-color:var(--ink); }

/* 页脚 */
.ftr{ border-top-color:var(--line-soft); }
.ftr ul a{ color:var(--ink-dim); }
.ftr ul a:hover{ color:var(--ink); }
.ftr__bot{ border-top-color:var(--line-soft); color:var(--muted); }

/* 顺带把 CTA/状态点等细节调浅 */
.dot-live{ color:var(--ok); }

/* 列表条目改成卡片（对齐参考站视觉） */
.post-list{ border-top:0; display:grid; gap:14px; }
.post-item{
  display:block; border:1px solid var(--line); border-radius:14px;
  padding:20px 22px; background:#fff; margin:0;
  box-shadow:0 1px 2px rgba(17,19,24,.04);
}
.post-item:hover{ background:#fff; border-color:rgba(17,19,24,.2); box-shadow:0 4px 16px rgba(17,19,24,.06); }
.post-item__date{
  font-size:11px; letter-spacing:.08em; color:var(--muted);
  margin:0 0 8px; padding:0;
}
.post-item h3{ font-size:17.5px; line-height:1.42; margin:0 0 8px; }
.post-item p{ font-size:14.5px; line-height:1.62; color:var(--ink-dim); max-width:none; }
.post-item__tag{ display:none; }

/* 列表页首屏与列表之间收一点留白 */
.pagehead{ padding-block:64px 48px; }
@media (max-width:720px){
  .pagehead{ padding-block:44px 32px; }
  .post-item{ padding:18px 18px; }
}
