:root{--ink:#1e2430;--paper:#f7f4ec;--accent:#4a6fa5;--line:#d8d2c2;}
*{box-sizing:border-box}
body{margin:0;font-family:"Songti SC","STSong",Georgia,serif;background:var(--paper);color:var(--ink);line-height:1.85;}
.wrap{max-width:44rem;margin:0 auto;padding:2.5rem 1.25rem 6rem;}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
h1{font-size:1.6rem;border-bottom:2px solid var(--line);padding-bottom:.5rem}
h2{font-size:1.3rem;margin-top:2.2em;border-left:4px solid var(--accent);padding-left:.6rem}
h3{font-size:1.12rem;margin-top:1.8em}
h4{font-size:1rem;margin-top:1.4em}
p{margin:.9em 0;text-align:justify}
blockquote{margin:1em 0;padding:.4em 1em;border-left:3px solid var(--line);color:#555}
code{background:#efe9db;padding:.1em .35em;border-radius:3px;font-size:.92em}
pre{background:#2b2f36;color:#e8e2d2;padding:1em;border-radius:6px;overflow-x:auto}
pre code{background:none;padding:0;color:inherit}
table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:.94em}
th,td{border:1px solid var(--line);padding:.45em .6em;text-align:left;vertical-align:top}
th{background:#ece5d4}
hr{border:none;border-top:1px solid var(--line);margin:2.5em 0}
ul,ol{padding-left:1.4em}
li{margin:.3em 0}
.meta{color:#7a7364;font-size:.85em;margin-bottom:2rem}
nav.toc{margin:1.5rem 0;padding:1rem 1.2rem;background:#efe9db;border-radius:6px}
nav.toc a{display:inline-block;margin:.2em .8em .2em 0}
.card{border:1px solid var(--line);border-radius:8px;padding:1.1em 1.3em;margin:1.1em 0;background:#fffdf7;transition:border-color .15s;display:block}
.card:hover{border-color:var(--accent)}
.card h2{border:none;padding:0;margin:.1em 0 .3em;font-size:1.15rem}
.card p{margin:.3em 0;color:#6a6353;font-size:.92em}
.card .sz{color:#9a9280;font-size:.8em}
.back{position:sticky;top:0;background:var(--paper);padding:.7em 0;border-bottom:1px solid var(--line);z-index:9;font-size:.9em}
strong{font-weight:600}
