/* 主恢复百年历史 · 全站基础样式
   首页（index.html）与档案馆（archive.html）共用：设计变量、页眉、首屏、页脚。
   专题阅读页另见 longread.css；档案馆各栏目另见 archive.css。 */

:root{
  --serif:"Source Han Serif SC","Noto Serif CJK SC","Noto Serif SC","Songti SC","STSong","SimSun",serif;
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC","Noto Sans SC",sans-serif;
  --latin:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;

  --night:#15110d;
  --night-2:#211a14;
  --night-rule:#4a3a25;
  --paper:#f1ebdf;
  --paper-2:#e9e0cf;
  --sheet:#faf7f0;
  --ink:#211b15;
  --body:#3a3027;
  --muted:#76674f;
  --faint:#9a8a70;
  --rule:#d8ccb3;
  --rule-strong:#b7a47f;
  --red:#7f2923;
  --red-2:#9a3a2f;
  --gold:#a9803c;
  --gold-soft:#dcc48f;
  --on-night:#e9dcc2;
  --on-night-muted:#a7977a;

  --wrap:1180px;
  --wrap-narrow:980px;
  --gutter:clamp(16px,3.2vw,40px);
  --header-h:60px;
}

*,*::before,*::after{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(--serif);line-height:1.8;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit}
button{font:inherit}
img{max-width:100%}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
::selection{background:#a9803c40}

/* ───────── 页眉 ───────── */
.site-top{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:28px;min-height:var(--header-h);padding:0 max(var(--gutter),calc((100vw - 1320px)/2));background:#15110d;border-bottom:1px solid var(--night-rule);color:var(--on-night)}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;color:var(--on-night);text-decoration:none;cursor:pointer;white-space:nowrap}
/* 主恢复徽记；元素内保留“史”字（隐藏），以免改变管理员编辑的文字序号 */
.seal{flex-shrink:0;width:42px;height:42px;background:url("./emblem.png") center/contain no-repeat;color:transparent;font-size:0;line-height:0;overflow:hidden}
.brand-copy{display:flex;flex-direction:column;line-height:1.3}
.brand-title{font-size:16px;font-weight:700;letter-spacing:.18em;color:#f1e4c8}
.brand-en{margin-top:2px;font-family:var(--sans);font-size:10.5px;letter-spacing:.24em;color:var(--on-night-muted)}
.site-nav{display:flex;align-items:stretch;gap:24px;margin-left:auto;align-self:stretch}
.site-nav a,.site-nav .nav-item{display:flex;align-items:center;padding:0 1px;border-bottom:2px solid transparent;color:var(--on-night-muted);font-family:var(--sans);font-size:14px;letter-spacing:.14em;text-decoration:none;white-space:nowrap;cursor:pointer;transition:color .15s ease,border-color .15s ease}
.site-nav a:hover,.site-nav .nav-item:hover{color:#f3e5c5}
.site-nav a[aria-current="page"]{color:var(--gold-soft);border-bottom-color:var(--gold)}
.tools{display:flex;gap:8px;flex-shrink:0}
.tool{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #6d5532;background:transparent;color:var(--gold-soft);font-family:var(--sans);font-size:12px;letter-spacing:.12em;line-height:1.4;text-decoration:none;white-space:nowrap;cursor:pointer;transition:border-color .15s ease,color .15s ease}
.tool:hover{border-color:var(--gold);color:#f3e5c5}

@media(max-width:1080px){
  .site-top{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand tools" "nav nav";gap:0 12px;padding:8px var(--gutter) 0}
  .brand{grid-area:brand;min-width:0}
  .tools{grid-area:tools}
  .site-nav{grid-area:nav;margin:6px calc(var(--gutter) * -1) 0;padding:0 var(--gutter);gap:22px;overflow-x:auto;scrollbar-width:none;border-top:1px solid #2e241a}
  .site-nav::-webkit-scrollbar{display:none}
  .site-nav a,.site-nav .nav-item{padding:10px 0 8px}
}
@media(max-width:560px){
  .seal{width:36px;height:36px}
  .brand-title{font-size:14px;letter-spacing:.12em}
  .brand-en{display:none}
  .tool{padding:5px 9px;font-size:11.5px;letter-spacing:.06em}
  .site-nav{gap:19px}
  .site-nav a,.site-nav .nav-item{font-size:13.5px;letter-spacing:.1em}
}

/* ───────── 首屏（首页与档案馆共用） ───────── */
.hero{position:relative;display:flex;flex-direction:column;min-height:min(calc(100vh - var(--header-h)),860px);background:#c9bb9f url("./hero-home.webp") center/cover no-repeat;overflow:hidden;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 58% 52% at 50% 42%,rgba(244,236,219,.55),rgba(244,236,219,0) 70%),linear-gradient(180deg,rgba(21,17,13,.18) 0,rgba(21,17,13,0) 22%,rgba(21,17,13,0) 58%,rgba(21,17,13,.5) 100%)}
.hero-inner{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:72px 20px 56px;text-align:center}
.hero-era{order:-1;margin-bottom:22px;color:var(--red);font-family:var(--latin);font-size:clamp(15px,1.5vw,19px);font-weight:600;letter-spacing:.36em;text-indent:.36em}
.hero-title{margin:0;color:#1d1711;font-family:var(--serif);font-size:clamp(46px,6.6vw,92px);font-weight:900;line-height:1.24;letter-spacing:.14em;text-indent:.14em;text-shadow:0 1px 0 rgba(250,244,230,.6),0 0 28px rgba(244,236,219,.7)}
/* 首页标题沿用原字体 */
.hero:not(.hero-archive) .hero-title{font-family:"Songti SC","STSong","Noto Serif CJK SC","SimSun",serif;font-size:clamp(2.5rem,7vw,5.8rem);font-weight:700;line-height:1.27;letter-spacing:.12em;text-indent:.12em;text-shadow:0 2px 18px rgba(246,239,225,.65)}
.hero-rule{order:0;width:min(420px,72%);height:0;margin:30px auto 0;border-top:1px solid rgba(33,27,21,.45)}
.hero-motto{margin-top:18px;color:#2b231b;font-size:clamp(14px,1.5vw,18px);font-weight:700;letter-spacing:.34em;text-indent:.34em}
.hero-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:34px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 24px;border:1px solid var(--ink);background:rgba(250,246,237,.9);color:var(--ink);font-family:var(--serif);font-size:15px;font-weight:700;letter-spacing:.16em;text-decoration:none;cursor:pointer;transition:background .15s ease,color .15s ease}
.btn:hover{background:#fffaf0}
.btn-primary{background:var(--night-2);border-color:var(--night-2);color:#f1e2bf}
.btn-primary:hover{background:var(--red);border-color:var(--red);color:#fff5e2}

/* 首屏下沿的深色条：首页为馆藏数字，档案馆为栏目入口 */
.hero-band{position:relative;display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));width:100%;background:rgba(21,17,13,.9);border-top:1px solid #a9803c66;color:var(--on-night)}
.hero-band>*{position:relative;padding:20px 14px 18px;text-align:center}
.hero-band>*+*::before{content:"";position:absolute;left:0;top:18px;bottom:18px;border-left:1px solid #a9803c3d}
.band-num{display:block;color:var(--gold-soft);font-family:var(--latin);font-size:clamp(20px,2vw,26px);font-weight:600;line-height:1.25;letter-spacing:.04em}
.band-label{display:block;margin-top:5px;color:var(--on-night-muted);font-family:var(--sans);font-size:12px;letter-spacing:.2em}
.band-link{cursor:pointer;transition:background .15s ease}
.band-link:hover{background:#2b2219}
.band-icon{color:var(--gold);font-size:20px;line-height:1.1}
.band-title{margin-top:8px;color:#f1e4c8;font-size:16px;font-weight:700;letter-spacing:.16em}
.band-sub{margin-top:4px;color:var(--on-night-muted);font-family:var(--sans);font-size:11.5px;letter-spacing:.08em}

@media(max-width:860px){
  .hero{min-height:0}
  .hero-inner{padding:56px 18px 44px}
  .hero-title{letter-spacing:.1em;text-indent:.1em}
  .hero-motto{letter-spacing:.2em;text-indent:.2em}
  .hero-band{--cols:4}
  .hero-band.band-tiles{--cols:4}
  .band-tiles>*{padding:16px 6px 14px}
  .band-tiles .band-sub{display:none}
  .band-tiles .band-title{font-size:14px;letter-spacing:.08em}
  .hero-band>*:nth-child(4n+1)::before{display:none}
  .band-tiles>*:nth-child(n+5){border-top:1px solid #a9803c3d}
}
@media(max-width:560px){
  .hero-band.band-stats{--cols:2}
  .band-stats>*:nth-child(2n+1)::before{display:none}
  .band-stats>*:nth-child(n+3){border-top:1px solid #a9803c3d}
  .btn{padding:10px 18px;font-size:14px;letter-spacing:.1em}
}

/* ───────── 首页栏目 ───────── */
.section{width:min(var(--wrap),calc(100% - var(--gutter) * 2));margin:88px auto 0}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:16px;border-bottom:2px solid var(--ink)}
.kicker{color:var(--red);font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.3em}
.section h2{margin:6px 0 0;font-size:clamp(26px,3vw,34px);font-weight:800;line-height:1.35;letter-spacing:.12em}

.entries{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:36px}
.entry{display:flex;flex-direction:column;padding:26px 0 28px;border-bottom:1px solid var(--rule);color:inherit;text-decoration:none}
.entry-no{color:var(--red);font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.16em}
.entry h3{margin:12px 0 8px;font-size:21px;font-weight:800;line-height:1.45;letter-spacing:.1em;transition:color .15s ease}
.entry p{flex:1;margin:0;color:var(--muted);font-size:15px;line-height:1.85}
.entry-go{margin-top:16px;color:var(--red);font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.1em}
.entry:hover h3{color:var(--red)}

.readings{counter-reset:book}
.book{display:grid;grid-template-columns:88px minmax(0,1fr) 230px;grid-template-areas:"no kicker go" "no title go" "no desc form";column-gap:32px;align-items:start;padding:30px 0 30px;border-bottom:1px solid var(--rule);color:inherit;text-decoration:none}
.book-top,.book-bottom{display:contents}
.book-top>span:first-child{grid-area:kicker;color:var(--red);font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.24em}
.book-top>span:last-child{grid-area:no;padding-top:2px;color:var(--rule-strong);font-family:var(--latin);font-size:44px;font-weight:500;line-height:1}
.book h3{grid-area:title;margin:6px 0 8px;font-size:clamp(21px,2.1vw,25px);font-weight:800;line-height:1.5;letter-spacing:.06em;transition:color .15s ease}
.book p{grid-area:desc;margin:0;max-width:44em;color:var(--body);font-size:15.5px;line-height:1.9}
.book-bottom>span{grid-area:form;align-self:end;color:var(--muted);font-family:var(--sans);font-size:12.5px;line-height:1.7;letter-spacing:.04em;text-align:right}
.book-bottom>strong{grid-area:go;align-self:center;justify-self:end;padding:8px 16px;border:1px solid var(--ink);font-family:var(--sans);font-size:13px;letter-spacing:.14em;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease}
.book:hover h3{color:var(--red)}
.book:hover .book-bottom>strong{background:var(--ink);color:#f3e5c5}

@media(max-width:1080px){.entries{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .section{margin-top:64px}
  .section-head{display:block}
  .book{grid-template-columns:44px minmax(0,1fr);grid-template-areas:"no kicker" "no title" "no desc" "no form" "no go";column-gap:16px;padding:24px 0}
  .book-top>span:last-child{font-size:30px}
  .book-bottom>span{text-align:left;margin-top:12px}
  .book-bottom>strong{justify-self:start;margin-top:12px}
}
@media(max-width:560px){
  .entries{column-gap:20px}
  .entry{padding:18px 0 20px}
  .entry-no{font-size:11px;letter-spacing:.1em}
  .entry h3{margin:8px 0 6px;font-size:17.5px;letter-spacing:.06em}
  .entry p{font-size:13.5px;line-height:1.75}
  .entry-go{margin-top:10px;font-size:12px}
}

/* ───────── 页脚 ───────── */
.site-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:96px;padding:30px max(var(--gutter),calc((100vw - 1320px)/2));background:var(--night);border-top:1px solid var(--night-rule);color:var(--on-night-muted);font-family:var(--sans);font-size:12px;letter-spacing:.18em}
.site-foot>:last-child{color:#a9803c;font-family:var(--serif);letter-spacing:.3em}
@media(max-width:760px){.site-foot{flex-direction:column;gap:8px;text-align:center}}

@media print{.site-top,.site-foot,.hero-band{display:none}}
