@font-face{font-family:'Echo Serif';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/henan-serif-0.woff2') format('woff2')}
@font-face{font-family:'Echo Serif';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/henan-serif-1.woff2') format('woff2')}
:root{--ink:#111917;--paper:#f0ecdf;--muted:#b6c0b5;--gold:#c2b18b;--river:#bad4cd;--hair:rgba(221,226,205,.24);--serif:'Echo Serif','Noto Serif SC','Songti SC','SimSun',serif;--display:clamp(100px,10vw,166px);--h1:clamp(43px,4.2vw,68px);--h2:clamp(34px,3.4vw,54px);--h3:clamp(24px,2vw,32px);--body:clamp(15px,1.08vw,18px);--caption:13px;--data:clamp(62px,6.6vw,106px);--left:clamp(250px,20vw,360px);--right:6vw;--header:72px}
h1,h2,h3{font-family:var(--serif);font-weight:400;font-synthesis:none}h2{font-size:var(--h1);line-height:1.46;letter-spacing:-.025em;text-wrap:balance}h2 em{font-style:normal;color:var(--gold)}h3{font-size:var(--h3);line-height:1.6;letter-spacing:-.015em}p{font-size:var(--body);line-height:1.85;text-wrap:pretty}small,.source-note{font-size:var(--caption);line-height:1.8}.eyebrow{font-size:var(--caption);letter-spacing:.12em;font-weight:500;line-height:1.8;color:var(--muted);margin-bottom:28px}.body-copy{max-width:32em;color:var(--muted);margin-top:26px}
.chapter{position:relative;isolation:isolate;min-height:100svh;scroll-margin-top:0}.chapter-content{position:relative;z-index:2;margin-left:var(--left);margin-right:var(--right);padding-top:160px;padding-bottom:130px}.chapter-content h2{max-width:18em}.line-action{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:56px;border-bottom:1px solid var(--hair);font-size:16px;padding:13px 0;text-align:left;letter-spacing:.03em}.line-action span{font-family:system-ui;font-size:26px;font-weight:200}.text-action{font-size:var(--caption);border-bottom:1px solid var(--hair);padding:12px 0;min-height:44px}.source-note{color:var(--muted);max-width:45em}.scene-image,.scene-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.scene-canvas{z-index:1}.chapter h2,.chapter h3{overflow:visible}.land-stat strong,.economy,.rail-number,#archiveTotal{font-variant-numeric:lining-nums tabular-nums}
.skip-link{position:fixed;z-index:160;top:12px;left:20px;background:var(--paper);color:var(--ink);padding:12px 18px;transform:translateY(-160%)}.skip-link:focus{transform:none}.listen-status{display:flex;align-items:center;gap:10px;min-height:30px;font-size:12px;color:var(--muted);margin-bottom:20px;letter-spacing:.03em}.listen-status:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--gold);flex:0 0 auto}
