:root { --bg:#f6f1e4; --ink:#2a2620; --muted:#6f675c; --leaf:#3f6b52; --card:#fffaf1; }
* { box-sizing:border-box; }
html { background:var(--bg); color:var(--ink); }
body { margin:0; font:17px/1.65 "Source Han Sans SC","PingFang SC","Noto Sans SC",sans-serif; }
a { color:var(--leaf); }
header, main, footer { width:min(44rem, calc(100% - 2rem)); margin:0 auto; }
header { padding:1.5rem 0 .4rem; }
.mark { color:var(--ink); text-decoration:none; font-weight:600; letter-spacing:.14em; }
nav { margin-top:.4rem; }
nav a { margin-right:1rem; text-decoration:none; }
h1 { font-weight:560; font-size:2rem; margin-bottom:.2rem; }
.lede { color:var(--muted); }
ol { list-style:none; padding:0; margin:1.5rem 0 2.5rem; }
li { background:var(--card); border-left:4px solid var(--leaf); padding:1rem 1.1rem; margin:0 0 .8rem; }
li time { display:block; color:var(--muted); font-size:.82rem; }
li h2 { margin:.15rem 0 .35rem; font-size:1.2rem; font-weight:600; }
li p { margin:0; }
.facts { display:flex; gap:1.2rem; color:var(--muted); font-size:.88rem; margin-top:.55rem; }
footer { color:var(--muted); font-size:.85rem; padding-bottom:2rem; }
.prose { padding-bottom:2rem; }
