:root{
  /* 墨 / 金 体系（2026-10-07 提亮：墨底加暖、金色更亮） */
  --ink:#17140f;
  --ink-2:#211d15;
  --paper:#f7f4ec;
  --paper-2:#f0eadd;
  --gold:#c8a25a;
  --gold-bright:#f0d49a;
  --gold-shine:#f7e4b8;
  --gold-deep:#a38444;
  --text-dark:#f0ebdd;
  --muted-dark:#aaa391;
  --text-light:#211e17;
  --muted-light:#756f60;
  --line-dark:rgba(204,170,104,.32);
  --line-light:#e0d9c6;
  --serif:"Noto Serif SC","Songti SC","STSong","SimSun","Source Han Serif SC",serif;
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",-apple-system,sans-serif;
  --w:820px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%; overflow-x:hidden}
body{
  margin:0; background:var(--paper); color:var(--text-light);
  font:16.5px/1.85 var(--sans);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:inherit; text-decoration:none}
::selection{background:var(--gold); color:#14120e}

header.site{
  position:sticky; top:0; z-index:20;
  background:rgba(20,18,14,.86); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line-dark);
}
header.site .inner{
  max-width:var(--w); margin:0 auto; padding:14px 24px;
  display:flex; align-items:center; justify-content:space-between;
}
header.site .brand{
  font-family:var(--serif); font-weight:700; font-size:20px;
  color:var(--gold-bright); letter-spacing:3px; display:flex; align-items:center; gap:9px;
}
header.site .brand img{height:34px;width:auto;display:block}
header.site nav a{
  margin-left:26px; font-size:14px; letter-spacing:2px; color:var(--text-dark);
  position:relative; padding:2px 0; transition:color .2s;
}
header.site nav a:hover{color:var(--gold-bright)}
header.site nav a::after{
  content:""; position:absolute; left:0; bottom:-2px; width:0; height:1px;
  background:var(--gold); transition:width .25s ease;
}
header.site nav a:hover::after{width:100%}

main{max-width:var(--w); margin:0 auto; padding:0 24px}

body.is-home{
  color:var(--text-dark);
  background:
    radial-gradient(1100px 480px at 78% -8%,rgba(226,190,124,.1),transparent 60%),
    radial-gradient(760px 420px at 8% 4%,rgba(200,162,90,.07),transparent 62%),
    var(--ink);
  background-attachment:fixed;
}
/* 纸张颗粒：极淡，印刷触感 */
body.is-home::before{
  content:""; position:fixed; inset:0; z-index:3; pointer-events:none; opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.hero{padding:104px 0 72px; position:relative}
/* 金色柔光：从标题区漫开，整体提亮 */
.hero::before{
  content:""; position:absolute; z-index:0; pointer-events:none;
  top:-40px; left:-120px; width:640px; height:520px;
  background:radial-gradient(circle at 40% 40%,rgba(224,188,120,.16),rgba(224,188,120,.05) 45%,transparent 70%);
}
/* 烫金渐变细线：两端隐入黑底 */
.hero::after{
  content:""; position:absolute; left:0; right:0; bottom:-1px; height:1px;
  background:linear-gradient(90deg,transparent,rgba(200,162,90,.6) 30%,rgba(200,162,90,.6) 70%,transparent);
}
/* 巨大「9」水印已移除，品牌识别由 logo/favicon 承担 */
.hero>*{position:relative; z-index:1}
.hero .eyebrow{
  font-size:13px; letter-spacing:6px; color:var(--gold);
  text-transform:uppercase; margin-bottom:26px; display:flex; align-items:center; gap:14px;
}
.hero .eyebrow::before{content:""; width:34px; height:1px; background:var(--gold)}
.hero h1{
  font-family:var(--serif); font-weight:700;
  font-size:clamp(38px,7vw,68px); line-height:1.22; letter-spacing:2px;
  margin:0 0 28px; color:#f6efe0;
}
/* 金属渐变金 + 柔光 */
.hero h1 em{
  font-style:normal;
  background:linear-gradient(105deg,#d9b978 0%,#f7e4b8 42%,#e7c98f 60%,#c9a45e 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  filter:drop-shadow(0 2px 14px rgba(228,192,124,.22));
}
.hero p{font-size:17px; line-height:2; color:var(--muted-dark); max-width:620px; margin:0}

.section-label{font-size:13px; letter-spacing:5px; color:var(--gold); margin:72px 0 8px}
.directory{margin-top:18px}
.directory a{
  display:grid; grid-template-columns:64px 1fr auto; align-items:baseline;
  gap:20px; padding:30px 14px; border-bottom:1px solid var(--line-dark);
  border-radius:8px;
  transition:padding-left .28s ease, background .3s ease, box-shadow .3s ease;
}
.directory a:first-child{border-top:1px solid var(--line-dark)}
.directory a:hover{
  padding-left:24px;
  background:linear-gradient(90deg,rgba(224,188,120,.1),rgba(224,188,120,.02) 60%,transparent);
  box-shadow:inset 3px 0 0 var(--gold-bright);
}
.directory .num{font-family:var(--serif); font-size:15px; color:var(--gold-deep); letter-spacing:1px}
.directory .name{
  font-family:var(--serif); font-size:24px; font-weight:600; letter-spacing:1px;
  color:#ece5d3; transition:color .25s;
}
.directory a:hover .name{color:var(--gold-bright)}
.directory .desc{font-size:13.5px; color:var(--muted-dark); letter-spacing:.5px}
.directory .arrow{color:var(--gold-deep); font-size:20px; transition:transform .28s,color .25s}
.directory a:hover .arrow{transform:translateX(6px); color:var(--gold-bright)}

.latest article{
  display:flex; justify-content:space-between; align-items:baseline; gap:20px;
  padding:22px 6px; border-bottom:1px solid var(--line-dark);
}
.latest article:first-of-type{border-top:1px solid var(--line-dark)}
.latest a{font-size:17px; color:#e6dfcd; letter-spacing:.5px}
.latest a:hover{color:var(--gold-bright)}
.latest time{font-size:13px; color:var(--muted-dark); white-space:nowrap}

/* 类型标记行 */
.crumb-row{display:flex; align-items:center; padding:60px 0 0}
.crumb-tag{display:inline-flex; align-items:center; gap:14px;
  font-size:13px; letter-spacing:5px; color:var(--gold-deep); white-space:nowrap; text-transform:uppercase}
.crumb-tag::before{content:""; width:34px; height:1px; background:linear-gradient(90deg,var(--gold),transparent)}

.page-head{padding:22px 0 36px; border-bottom:1px solid var(--line-light)}
.page-head .eyebrow{font-size:13px; letter-spacing:5px; color:var(--gold-deep); margin-bottom:18px}
.page-head h1{
  font-family:var(--serif); font-size:clamp(30px,5vw,44px); line-height:1.3;
  letter-spacing:1px; margin:0 0 16px; color:var(--text-light);
}
.page-head .lead{color:var(--muted-light); font-size:16.5px; line-height:1.9; margin:0}

.content{padding:48px 0}
.content article.post-single h1{
  font-family:var(--serif); font-size:clamp(30px,5vw,42px); line-height:1.35;
  letter-spacing:1px; margin:0 0 16px;
}
.meta{font-size:14px; color:var(--muted-light); letter-spacing:1px; margin-bottom:40px}
.content p{margin:0 0 22px}
.content h2{font-family:var(--serif); font-size:24px; margin:44px 0 16px; letter-spacing:1px}
.content a{color:var(--gold-deep); border-bottom:1px solid rgba(154,125,66,.4)}
.content a:hover{color:var(--gold-deep); border-color:var(--gold-deep)}
.tags{margin-top:48px; display:flex; flex-wrap:wrap; gap:10px}
.tags a{
  border:1px solid var(--line-light); border-radius:999px; padding:5px 16px;
  font-size:14px; color:var(--muted-light); transition:.2s;
}
.tags a:hover{border-color:var(--gold-deep); color:var(--gold-deep)}

.term-list article{padding:20px 0; border-bottom:1px solid var(--line-light)}
.term-list a{font-size:17px; color:var(--text-light)}
.term-list a:hover{color:var(--gold-deep)}
.term-list a .tc{color:var(--muted-light);font-size:14px;margin-left:8px}

footer.site{margin-top:40px; border-top:1px solid var(--line-dark); background:var(--ink)}
footer.site .inner{
  max-width:var(--w); margin:0 auto; padding:40px 24px;
  display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap;
}
footer.site .fbrand{display:inline-flex; align-items:center}
footer.site .fbrand img{height:30px;width:auto;display:block}
footer.site .fmeta{font-size:13px; color:var(--muted-dark); letter-spacing:1px}
footer.site .fmeta a{color:#c9b68f;text-decoration:none}
footer.site .fmeta a:hover{color:var(--gold-bright)}

@media(max-width:600px){
  .hero{padding:30px 0 44px}
  .crumb-row{padding-top:36px}
  .crumb-tag{letter-spacing:2px}
  header.site nav a{margin-left:14px; font-size:13px}
  .directory a{grid-template-columns:44px 1fr; gap:12px}
  .directory .arrow,.directory .desc{display:none}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important; animation:none!important}}

/* ===== Cookie 同意条 ===== */
#cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:900;
  background:rgba(20,18,15,.96);border-top:1px solid rgba(198,160,92,.35);
  color:#efe7d8;padding:14px 20px;backdrop-filter:blur(4px)}
#cookie-bar .cb-inner{max-width:1080px;margin:0 auto;display:flex;
  align-items:center;gap:20px;flex-wrap:wrap;justify-content:space-between}
#cookie-bar .cb-text{margin:0;font-size:14px;line-height:1.6;flex:1;min-width:260px}
#cookie-bar .cb-text a{color:#c6a05c;text-decoration:underline}
#cookie-bar .cb-btns{display:flex;gap:10px}
#cookie-bar button{font:inherit;cursor:pointer;padding:8px 20px;
  border-radius:2px;font-size:14px;transition:.2s}
#cookie-bar .cb-accept{background:#c6a05c;color:#1a1713;border:1px solid #c6a05c}
#cookie-bar .cb-accept:hover{background:#d8b471}
#cookie-bar .cb-reject{background:transparent;color:#d9cfbb;border:1px solid rgba(217,207,187,.4)}
#cookie-bar .cb-reject:hover{border-color:#d9cfbb}
.error-links{display:flex;flex-direction:column;gap:4px}

/* ===== 正文关键词内链 ===== */
.kw-link{color:#9a6a1f;text-decoration:none;border-bottom:1px solid rgba(154,106,31,.35);
  font-weight:600;transition:.2s}
.kw-link:hover{color:#c6a05c;border-bottom-color:#c6a05c}
/* ===== 相关笔记 ===== */
.related{margin-top:40px;padding-top:24px;border-top:1px solid rgba(120,90,50,.18)}
.related h2{font-size:18px;color:#2a241c;margin-bottom:14px}
.related ul{list-style:none;margin:0;padding:0}
.related li{padding:9px 0;border-bottom:1px dashed rgba(120,90,50,.15)}
.related li:last-child{border-bottom:none}
.related a{color:#33302a;text-decoration:none;display:flex;gap:8px;line-height:1.5}
.related a:hover{color:#9a6a1f}
.related a::before{content:"›";color:#c6a05c;font-weight:700}
/* 页脚链接排布 */
.ftags{margin-top:20px;display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.ftags .ft-label{font-size:12px;color:#8d7f66;letter-spacing:2px;margin-right:2px}
.ftags a{font-size:12px;color:#b3a488;border:1px solid rgba(198,160,92,.28);
  padding:3px 11px;border-radius:13px;text-decoration:none;transition:.2s}
.ftags a:hover{color:#e2d0a6;border-color:#c6a05c}
.flinks{display:flex;gap:18px;flex-wrap:wrap;font-size:13px}
.flinks a{color:#b8ab94;text-decoration:none}
.flinks a:hover{color:#e2d6bd}
.beian{flex-basis:100%;font-size:12px;color:#8d8270;text-decoration:none;margin-top:4px}
.beian:hover{color:#c6a05c}

/* ===== 本文关键词锚链 ===== */
.post-keywords{margin-top:26px;padding:16px 18px;background:rgba(198,160,92,.07);
  border-left:2px solid #c6a05c;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.post-keywords .pk-label{font-size:13px;color:#8a6d3b;font-weight:600;margin-right:4px}
.post-keywords a{font-size:13px;color:#5a5044;background:#fff;padding:4px 12px;
  border:1px solid rgba(120,90,50,.2);border-radius:14px;text-decoration:none;transition:.2s}
.post-keywords a:hover{color:#9a6a1f;border-color:#c6a05c;background:rgba(198,160,92,.12)}

/* ===== 移动端导航折叠 ===== */
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;
  width:40px;height:40px;padding:8px;background:none;border:1px solid rgba(198,160,92,.45);
  border-radius:8px;cursor:pointer}
.nav-toggle span{display:block;height:2px;width:100%;background:#d9c6a0;transition:.25s}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:720px){
  .nav-toggle{display:flex}
  header.site{position:sticky}
  header.site .brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
  header.site nav{display:none;position:absolute;top:100%;left:0;right:0;
    flex-direction:column;background:rgba(20,18,14,.97);
    border-bottom:1px solid var(--line-dark);padding:6px 0}
  header.site nav.open{display:flex}
  header.site nav a{margin:0;padding:13px 24px;font-size:15px}
  header.site nav a::after{display:none}
}
