/* 檐语 —— 个人博客样式
   设计取向：纸墨感、单栏长文、克制的朱砂点缀。全部使用系统字体，
   不加载任何外部 Web 字体（国内访问友好）。 */

:root {
  --paper: #f7f4ee;
  --paper-2: #efe9df;
  --ink: #23201b;
  --ink-soft: #5c564c;
  --ink-faint: #8f887c;
  --rule: #ddd4c6;
  --accent: #a8432f;       /* 朱砂 */
  --accent-soft: #c9704f;
  --measure: 40rem;        /* 正文行宽 */
  --serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "STSong", "SimSun", serif;
  --sans: "Noto Sans SC", "Source Han Sans SC", -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
}

* { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.85;
  letter-spacing: .01em;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/* 细密的纸纹底：极淡的斜向条纹，不喧宾夺主 */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image: repeating-linear-gradient(
    135deg,
    rgba(0,0,0,.012) 0 1px,
    transparent 1px 7px
  );
}

.wrap {
  width: 100%;
  max-width: var(--measure);
  margin: 0 auto;
  padding: 0 1.4rem;
}

a { color: var(--accent); text-decoration: none; }
a:hover { color: var(--accent-soft); text-decoration: underline; text-underline-offset: .18em; }

/* ── 页眉 ─────────────────────────────────────────── */
.masthead {
  padding: 3.4rem 0 1.4rem;
}
.masthead .site-name {
  font-family: var(--serif);
  font-weight: 700;
  font-size: 2.5rem;
  letter-spacing: .16em;
  margin: 0;
  color: var(--ink);
}
.masthead .site-name a { color: inherit; }
.masthead .site-name a:hover { color: var(--accent); text-decoration: none; }
.masthead .tagline {
  margin: .55rem 0 0;
  color: var(--ink-faint);
  font-size: .96rem;
  letter-spacing: .12em;
}

.topnav {
  display: flex;
  gap: 1.6rem;
  align-items: baseline;
  margin-top: 1.5rem;
  padding-bottom: 1.1rem;
  border-bottom: 1px solid var(--rule);
  font-size: .92rem;
  letter-spacing: .1em;
}
.topnav a { color: var(--ink-soft); }
.topnav a:hover { color: var(--accent); text-decoration: none; }
.topnav a.active { color: var(--ink); border-bottom: 2px solid var(--accent); padding-bottom: .3rem; }

/* ── 首页文章列表 ─────────────────────────────────── */
.lede {
  font-family: var(--serif);
  font-size: 1.22rem;
  line-height: 1.95;
  color: var(--ink-soft);
  margin: 2.6rem 0 3rem;
}
.lede::first-letter { color: var(--accent); }

.section-label {
  font-size: .78rem;
  letter-spacing: .32em;
  color: var(--ink-faint);
  text-transform: uppercase;
  margin: 0 0 1.4rem;
}

.post-list { list-style: none; margin: 0; padding: 0; }
.post-list li { padding: 1.5rem 0; border-bottom: 1px solid var(--rule); }
.post-list li:last-child { border-bottom: none; }
.post-list .date {
  display: block;
  font-size: .8rem;
  letter-spacing: .18em;
  color: var(--ink-faint);
  margin-bottom: .35rem;
}
.post-list h2 {
  font-family: var(--serif);
  font-weight: 600;
  font-size: 1.4rem;
  margin: 0 0 .5rem;
  line-height: 1.5;
}
.post-list h2 a { color: var(--ink); }
.post-list h2 a:hover { color: var(--accent); text-decoration: none; }
.post-list .excerpt { margin: 0; color: var(--ink-soft); font-size: .98rem; }

/* ── 文章正文 ─────────────────────────────────────── */
article.post { padding: 2.8rem 0 1rem; }
article.post .post-meta {
  font-size: .8rem;
  letter-spacing: .2em;
  color: var(--ink-faint);
  margin-bottom: .8rem;
}
article.post h1 {
  font-family: var(--serif);
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.45;
  margin: 0 0 1.8rem;
}
article.post h2 {
  font-family: var(--serif);
  font-weight: 600;
  font-size: 1.35rem;
  margin: 2.4rem 0 .9rem;
}
article.post p { margin: 1.2rem 0; }
article.post blockquote {
  margin: 1.6rem 0;
  padding: .2rem 0 .2rem 1.3rem;
  border-left: 3px solid var(--accent);
  color: var(--ink-soft);
  font-family: var(--serif);
  font-style: normal;
}
article.post hr {
  border: none;
  border-top: 1px solid var(--rule);
  margin: 2.6rem 0;
}
article.post code {
  font-family: "SFMono-Regular", "JetBrains Mono", Consolas, monospace;
  background: var(--paper-2);
  padding: .1rem .4rem;
  border-radius: 3px;
  font-size: .88em;
}
.post-nav {
  margin: 2.6rem 0 0;
  padding-top: 1.4rem;
  border-top: 1px solid var(--rule);
  font-size: .92rem;
}
.post-nav a::before { content: "← "; }

/* ── 关于页 ───────────────────────────────────────── */
.prose { padding: 2.8rem 0 1rem; }
.prose h1 {
  font-family: var(--serif); font-weight: 700; font-size: 1.9rem;
  margin: 0 0 1.6rem;
}
.prose p { margin: 1.15rem 0; }

/* ── 页脚（含备案信息）───────────────────────────── */
.site-foot {
  margin-top: 4rem;
  border-top: 1px solid var(--rule);
  background: var(--paper-2);
}
.site-foot .foot-inner {
  max-width: var(--measure);
  margin: 0 auto;
  padding: 1.8rem 1.4rem 2.4rem;
  text-align: center;
  font-size: .82rem;
  color: var(--ink-faint);
  line-height: 2;
}
.site-foot .beian a { color: var(--ink-faint); }
.site-foot .beian a:hover { color: var(--accent); }
.site-foot .beian a + a { margin-left: 1.1rem; }
.site-foot .copy { margin: .4rem 0 0; letter-spacing: .06em; }

@media (max-width: 480px) {
  body { font-size: 16px; }
  .masthead .site-name { font-size: 2rem; }
  article.post h1 { font-size: 1.6rem; }
}
