:root{
  --primary:#5C3D2E;--secondary:#8B6914;--bg:#F5F0E8;--card-bg:#FFFFFF;
  --accent:#A0522D;--text:#2C2C2C;--muted:#7A7570;
  --glass:rgba(255,255,255,0.6);--shadow:0 8px 24px rgba(44,44,44,0.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Noto Serif SC","Source Han Serif CN",Georgia,serif;color:var(--text);background:var(--bg);line-height:1.75;font-size:16px}
.ui,nav,button,input,select,.btn,.tag,.meta,.breadcrumb{font-family:"Noto Sans SC","Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--primary);text-decoration:underline}
img{max-width:100%;height:auto;display:block}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
header.site{background:var(--primary);color:#F5F0E8;position:sticky;top:0;z-index:50;box-shadow:var(--shadow)}
.nav-inner{display:flex;align-items:center;gap:20px;padding:14px 20px;max-width:1200px;margin:0 auto;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;color:#F5F0E8;font-size:18px}
.brand img{width:36px;height:36px;border-radius:6px;background:#fff}
.nav-links{display:flex;gap:18px;margin-left:auto;flex-wrap:wrap}
.nav-links a{color:#F5F0E8;font-size:14px}
.nav-links a:hover{color:#fff}
.hero{padding:60px 0 40px;background:linear-gradient(180deg,rgba(245,240,232,.6),var(--bg)),url('../images/hero-archive.webp') center/cover no-repeat;min-height:60vh;display:flex;align-items:center}
.hero h1{font-size:42px;margin:0 0 16px;color:var(--primary);line-height:1.3;text-shadow:0 2px 8px rgba(255,255,255,.4)}
.hero p.lead{font-size:18px;color:var(--text);max-width:720px;margin:0 0 24px}
.search-box{display:flex;max-width:640px;background:#fff;border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}
.search-box input{flex:1;padding:14px 18px;border:0;font-size:15px;outline:0}
.search-box button{background:var(--accent);color:#fff;border:0;padding:0 24px;cursor:pointer;font-weight:600}
section{padding:48px 0}
section h2{font-size:30px;color:var(--primary);margin:0 0 12px;border-left:4px solid var(--accent);padding-left:14px}
section .intro{color:var(--muted);margin:0 0 28px;max-width:820px}
.grid{display:grid;gap:24px}
.grid-3{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.grid-4{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.card{background:var(--card-bg);border-radius:8px;box-shadow:var(--shadow);overflow:hidden;transition:transform .3s cubic-bezier(.22,.12,.18,1),box-shadow .3s}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(44,44,44,.12)}
.card .thumb{position:relative;aspect-ratio:4/3;overflow:hidden;background:#eee}
.card .thumb img{width:100%;height:100%;object-fit:cover}
.card .thumb::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(0,0,0,.04) 1px,transparent 1px);background-size:3px 3px;opacity:.06;pointer-events:none}
.card .body{padding:18px}
.card h3{margin:0 0 8px;font-size:18px;color:var(--primary)}
.card .meta{font-size:13px;color:var(--muted);margin-bottom:8px}
.card p{margin:0;font-size:14px;color:var(--text)}
.tag{display:inline-block;background:var(--secondary);color:#fff;padding:3px 10px;border-radius:12px;font-size:12px;margin-right:6px}
.timeline{position:relative;padding-left:40px;border-left:3px solid var(--secondary);margin-top:32px}
.timeline .node{position:relative;margin-bottom:36px;background:var(--card-bg);padding:20px;border-radius:8px;box-shadow:var(--shadow)}
.timeline .node::before{content:"";position:absolute;left:-52px;top:24px;width:18px;height:18px;border-radius:50%;background:var(--primary);border:3px solid var(--bg)}
.timeline .year{position:sticky;top:80px;font-size:28px;color:var(--accent);font-weight:700;margin-bottom:8px;font-family:"Noto Sans SC",sans-serif}
.btn{display:inline-block;padding:10px 22px;background:var(--accent);color:#fff;border-radius:6px;font-weight:600;border:0;cursor:pointer;transition:background .3s}
.btn:hover{background:var(--primary);color:#fff;text-decoration:none}
.btn-outline{background:transparent;color:var(--primary);border:2px solid var(--primary)}
.btn-outline:hover{background:var(--primary);color:#fff}
.citation{background:#FAF6EE;border-left:4px solid var(--secondary);padding:16px 20px;margin:20px 0;border-radius:4px;font-size:14px}
.citation strong{color:var(--primary)}
.breadcrumb{padding:14px 0;font-size:13px;color:var(--muted)}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--accent)}
footer.site{background:var(--primary);color:#E8DCC8;padding:48px 0 24px;margin-top:64px}
footer.site .container{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px}
footer.site h4{color:#F5F0E8;margin:0 0 12px;font-size:15px}
footer.site a{color:#E8DCC8;font-size:14px;display:block;padding:4px 0}
footer.site a:hover{color:#fff}
.copyright{text-align:center;padding:20px;border-top:1px solid rgba(255,255,255,.1);margin-top:32px;font-size:13px;color:#C9B998}
.audio-player{background:#FAF6EE;padding:20px;border-radius:8px;margin:20px 0}
.audio-player audio{width:100%}
.transcript{max-height:240px;overflow-y:auto;padding:12px;background:#fff;border-radius:6px;margin-top:12px;font-size:14px}
.transcript li{list-style:none;padding:6px 0;border-bottom:1px dashed #eee;cursor:pointer}
.transcript li:hover{background:#FAF6EE}
.transcript time{color:var(--accent);font-weight:600;margin-right:8px}
article.prose h2{font-size:24px;margin-top:36px}
article.prose h3{font-size:19px;color:var(--secondary);margin-top:28px}
article.prose p{margin:14px 0}
article.prose ul{padding-left:22px}
@media(max-width:768px){.hero h1{font-size:30px}.hero{padding:40px 0;min-height:50vh}section{padding:32px 0}section h2{font-size:24px}.nav-links{font-size:13px;gap:12px}.timeline{padding-left:24px}.timeline .node::before{left:-36px;width:14px;height:14px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}}
