/* 拾录正文页共用样式 —— 与首页同一套纸色 / 苔绿 / 衬线排印。 */
:root{
  --paper:#f7f2e7;
  --paper-2:#efe7d6;
  --card:#fffdf7;
  --ink:#23251f;
  --ink-soft:#5f6257;
  --moss:#3f6b4f;
  --moss-deep:#2c4d39;
  --moss-dark:#223b2c;
  --clay:#9a6b43;
  --line:#d9d0bd;
  --line-soft:#e7dfcd;
  --serif:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong","SimSun","Times New Roman",serif;
  --sans:"PingFang SC","Hiragino Sans GB","Noto Sans SC","Microsoft YaHei","微软雅黑",system-ui,-apple-system,sans-serif;
  --latin:Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:var(--sans); font-size:16px; line-height:1.85;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
body::before{
  content:""; position:fixed; inset:0; z-index:1; pointer-events:none; opacity:.05;
  mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
::selection{background:rgba(63,107,79,.2)}
a{color:inherit}
img,svg{display:block}
.wrap{max-width:1160px; margin:0 auto; padding:0 34px}

/* ---------- 导航（与首页一致，链接回首页锚点） ---------- */
.nav{
  position:sticky; top:0; z-index:50;
  background:rgba(247,242,231,.82);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line-soft);
}
.nav-inner{display:flex; align-items:center; justify-content:space-between; height:68px}
.brand{display:inline-flex; align-items:center; gap:11px; text-decoration:none}
.brand-mark{
  width:32px; height:32px; border-radius:9px; display:grid; place-items:center;
  background:var(--moss-deep); color:#f4efe3;
  font-family:var(--serif); font-size:17px; font-weight:700; line-height:1;
}
.brand-name{font-family:var(--serif); font-size:18px; font-weight:700; letter-spacing:.12em}
.nav nav{display:flex; gap:30px}
.nav nav a{
  text-decoration:none; font-size:14px; letter-spacing:.14em; color:var(--ink-soft);
  padding:6px 0; position:relative; transition:color .25s;
}
.nav nav a::after{
  content:""; position:absolute; left:0; right:100%; bottom:0; height:1px;
  background:var(--moss); transition:right .3s cubic-bezier(.2,.7,.2,1);
}
.nav nav a:hover{color:var(--moss-deep)}
.nav nav a:hover::after{right:0}

/* ---------- 正文骨架 ---------- */
.article{padding:64px 0 72px; position:relative}
.art-wrap{max-width:776px; margin:0 auto; padding:0 34px}
.crumb{
  font-size:12px; letter-spacing:.18em; color:var(--ink-soft);
  margin-bottom:30px; display:flex; align-items:center; gap:10px;
}
.crumb a{text-decoration:none; border-bottom:1px solid transparent; transition:border-color .25s,color .25s}
.crumb a:hover{color:var(--moss-deep); border-color:var(--clay)}
.crumb i{font-style:normal; color:var(--clay); opacity:.6}

.art-head{padding-bottom:34px; border-bottom:1px solid var(--line)}
.art-top{display:flex; align-items:center; gap:18px; flex-wrap:wrap}
.tag{
  font-size:11.5px; letter-spacing:.14em; padding:3px 11px; border-radius:999px;
  border:1px solid rgba(63,107,79,.35); color:var(--moss-deep); background:rgba(63,107,79,.05);
}
time{font-family:var(--latin); font-size:12px; letter-spacing:.12em; color:var(--ink-soft)}
.art-head h1{
  font-family:var(--serif); font-weight:700;
  font-size:clamp(30px,4.4vw,46px); line-height:1.34; letter-spacing:.02em;
  margin:22px 0 0;
}
.lede{
  margin:20px 0 0; font-size:clamp(15.5px,1.7vw,18px);
  line-height:1.95; color:var(--ink-soft); max-width:36em;
}

/* ---------- 正文排印 ---------- */
.art-body{padding-top:34px; font-size:16.5px; line-height:2.05}
.art-body p{margin:0 0 22px; color:#33352e}
.art-body > p:first-of-type::first-letter{
  float:left; font-family:var(--serif); font-size:54px; line-height:.92;
  padding:7px 12px 0 0; color:var(--moss-deep);
}
.art-body h2{
  font-family:var(--serif); font-weight:700; font-size:23px; line-height:1.5;
  letter-spacing:.04em; margin:46px 0 16px;
}
.art-body h2 .num{
  display:inline-block; font-family:var(--latin); font-weight:400;
  font-size:12px; letter-spacing:.2em; color:var(--clay);
  margin-right:12px; vertical-align:2px;
}
.art-body h3{
  font-family:var(--serif); font-weight:600; font-size:17.5px;
  letter-spacing:.03em; margin:30px 0 10px; color:var(--moss-deep);
}
.art-body ul,.art-body ol{margin:0 0 24px; padding-left:1.25em}
.art-body li{margin:0 0 10px}
.art-body li::marker{color:var(--clay)}
.art-body strong{color:var(--moss-deep); font-weight:600}

.pq{
  margin:42px 0; padding:6px 0 6px 26px;
  border-left:2px solid var(--moss);
  font-family:var(--serif); font-size:clamp(18px,2.1vw,22px);
  line-height:1.9; color:var(--moss-deep);
}
.pq p{margin:0; color:inherit; font-size:inherit; line-height:inherit}
.pq cite{
  display:block; margin-top:12px; font-family:var(--sans); font-style:normal;
  font-size:12.5px; letter-spacing:.14em; color:var(--ink-soft);
}
.pq cite::before{content:"—— "}

.note{
  background:var(--card); border:1px solid var(--line); border-left:3px solid var(--clay);
  border-radius:2px; padding:20px 22px; margin:32px 0;
  font-size:14.5px; line-height:1.9; color:var(--ink-soft);
}
.note b{color:var(--ink)}
.note span{font-family:var(--latin); letter-spacing:.02em}

.sprig{display:flex; justify-content:center; margin:48px 0 0; color:var(--moss); opacity:.5}
.sprig svg{width:54px; height:auto}

.end{
  display:flex; align-items:center; justify-content:center; gap:16px;
  margin:26px 0 0; color:var(--clay);
  font-family:var(--serif); font-size:13px; letter-spacing:.5em; text-indent:.5em;
}
.end::before,.end::after{content:""; height:1px; width:68px; background:var(--line)}

/* ---------- 翻页 ---------- */
.art-nav{
  display:grid; grid-template-columns:1fr 1fr; gap:16px;
  margin-top:50px; padding-top:28px; border-top:1px solid var(--line);
}
.art-nav a{
  display:block; padding:18px 20px; text-decoration:none;
  background:var(--card); border:1px solid var(--line); border-radius:2px;
  transition:border-color .3s, box-shadow .3s, transform .3s;
}
.art-nav a:hover{
  border-color:rgba(63,107,79,.55); box-shadow:0 12px 28px rgba(44,60,46,.07);
  transform:translateY(-2px);
}
.art-nav .lbl{display:block; font-size:11px; letter-spacing:.2em; color:var(--ink-soft)}
.art-nav .ttl{
  display:block; margin-top:7px; font-family:var(--serif);
  font-size:15px; line-height:1.6; color:var(--moss-deep);
}
.art-nav a.next{text-align:right}
.art-nav .ph{visibility:hidden}
.art-foot{margin:34px 0 0; text-align:center}
.back{
  font-size:12.5px; letter-spacing:.16em; color:var(--ink-soft);
  text-decoration:none; border-bottom:1px solid var(--line); padding-bottom:3px;
  transition:color .25s,border-color .25s;
}
.back:hover{color:var(--moss-deep); border-color:var(--clay)}

/* ---------- 页脚（与首页一致） ---------- */
footer{background:var(--moss-dark); color:rgba(244,239,227,.72); padding:54px 0 34px}
.footer-top{display:flex; align-items:flex-end; justify-content:space-between; gap:26px; flex-wrap:wrap}
.footer-brand{font-family:var(--serif); font-size:26px; letter-spacing:.2em; color:#f4efe3; font-weight:700}
.footer-slogan{font-size:12.5px; letter-spacing:.26em; color:rgba(244,239,227,.5); margin-top:10px}
.footer-meta{font-size:12.5px; letter-spacing:.1em; text-align:right; line-height:2}
.footer-bottom{
  margin-top:38px; padding-top:20px; border-top:1px solid rgba(244,239,227,.14);
  display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  font-size:12.5px; letter-spacing:.06em;
}
.footer-bottom a{
  color:rgba(244,239,227,.72); text-decoration:none;
  border-bottom:1px solid rgba(244,239,227,.28); padding-bottom:1px;
  transition:color .25s,border-color .25s;
}
.footer-bottom a:hover{color:#fff; border-color:#fff}

/* ---------- 载入 ---------- */
.rise{opacity:0; transform:translateY(16px); animation:rise .85s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes rise{to{opacity:1; transform:none}}
.d1{animation-delay:.04s}.d2{animation-delay:.14s}.d3{animation-delay:.24s}.d4{animation-delay:.34s}

@media(max-width:760px){
  .wrap{padding:0 22px}
  .art-wrap{padding:0 22px}
  .article{padding:44px 0 56px}
  .nav nav{gap:20px}
  .nav nav a{font-size:13px; letter-spacing:.08em}
  .art-body{font-size:16px; line-height:1.98}
  .art-body > p:first-of-type::first-letter{font-size:46px; padding-right:10px}
  .art-nav{grid-template-columns:1fr; gap:12px}
  .art-nav a.next{text-align:left}
  .art-nav .ph{display:none}
  .footer-top{align-items:flex-start; flex-direction:column}
  .footer-meta{text-align:left}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none !important; transition:none !important}
  .rise{opacity:1 !important; transform:none !important}
}
