
:root{--bg:#faf8f4;--fg:#1c1a17;--muted:#6b6357;--line:#ddd6c9;--accent:#7a4a1e;
--card:#fffdf9;--warn:#8a5a00;--warnbg:#fdf5e3;--code:#f2ece1}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);
font:16px/1.6 "Iowan Old Style",Palatino,"Palatino Linotype",Georgia,serif}
header.site{border-bottom:1px solid var(--line);background:var(--card)}
header.site .in{max-width:1080px;margin:0 auto;padding:14px 20px;display:flex;
flex-wrap:wrap;gap:18px;align-items:baseline}
header.site a{color:var(--fg);text-decoration:none}
header.site .brand{font-weight:700;letter-spacing:.02em;font-size:18px}
header.site nav a{color:var(--muted);font-size:14px;margin-right:14px}
header.site nav a:hover{color:var(--accent)}
main{max-width:1080px;margin:0 auto;padding:28px 20px 64px}
h1{font-size:30px;line-height:1.25;margin:.2em 0 .1em}
h2{font-size:21px;margin:1.8em 0 .5em;border-bottom:1px solid var(--line);padding-bottom:.25em}
h3{font-size:17px;margin:1.4em 0 .4em}
a{color:var(--accent)}
.lede{color:var(--muted);font-size:17px;margin:.4em 0 1.4em}
.crumb{font-size:13px;color:var(--muted);margin-bottom:.6em}
.crumb a{color:var(--muted)}
table{border-collapse:collapse;width:100%;margin:1em 0;font-size:14.5px;
font-family:ui-sans-serif,-apple-system,"Segoe UI",Roboto,sans-serif}
th,td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-weight:600;color:var(--muted);font-size:12.5px;text-transform:uppercase;letter-spacing:.05em}
tbody tr:hover{background:var(--card)}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
code,kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;
background:var(--code);padding:1px 5px;border-radius:3px}
pre{background:var(--code);padding:12px 14px;border-radius:5px;overflow-x:auto;font-size:13px}
.wrap{overflow-x:auto}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin:1.2em 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:14px 16px}
.card h3{margin:0 0 .3em;font-size:16px}
.card p{margin:0;color:var(--muted);font-size:14px}
.card .n{float:right;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}
.note{background:var(--warnbg);border-left:3px solid var(--warn);padding:10px 14px;
margin:1.2em 0;font-size:14.5px}
.note strong{color:var(--warn)}
.zh{color:var(--muted);font-size:14px}
.tag{display:inline-block;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;
border:1px solid var(--line);border-radius:3px;padding:1px 6px;color:var(--muted);margin-right:5px;
font-family:ui-sans-serif,-apple-system,"Segoe UI",Roboto,sans-serif}
footer.site{border-top:1px solid var(--line);margin-top:40px;background:var(--card)}
footer.site .in{max-width:1080px;margin:0 auto;padding:20px;color:var(--muted);font-size:13px}
.stamp{font-family:ui-sans-serif,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:13px;
color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:8px 12px;
display:inline-block;margin:.4em 0 1em;background:var(--card)}
ul.plain{list-style:none;padding:0}
ul.plain li{padding:5px 0;border-bottom:1px solid var(--line)}
@media(max-width:640px){h1{font-size:25px}main{padding:20px 14px 48px}}
