:root { --paper:#f4f1e8; --paper2:#e7e3d6; --ink:#22303a; --soft:#5f6d75; --line:#b8c2c7; --navy:#12324f; --orange:#b34a2c; }
* { box-sizing: border-box; }
body { margin:0; background:#dfe5e4; color:var(--ink); font:15px/1.9 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; }
.wrap { max-width: 860px; margin: 0 auto; padding: 20px 16px 60px; }
.top { border:1px solid var(--line); background:var(--paper); padding: 12px 16px; margin-bottom: 16px; }
.top .row { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.brand { font-family:"Songti SC","Noto Serif SC",Georgia,serif; font-size:19px; letter-spacing:.08em; color:var(--navy); text-decoration:none; }
.brand small { display:block; font-family:ui-monospace,Menlo,monospace; font-size:9px; letter-spacing:.18em; color:#87949a; font-weight:400; margin-top:2px; }
.nav { display:flex; gap:12px; flex-wrap:wrap; font-size:12px; }
.nav a { color:#42545f; text-decoration:none; border-bottom:1px solid #c3cdd0; }
.nav a[aria-current="page"] { color:var(--orange); border-color:var(--orange); }
article { background:var(--paper); border:1px solid var(--line); padding: 22px 24px 28px; }
h1 { font-family:"Songti SC","Noto Serif SC",Georgia,serif; font-size:27px; letter-spacing:.08em; color:var(--navy); margin:0 0 4px; }
h1 .en-inline { font-family:ui-monospace,Menlo,monospace; font-size:11px; letter-spacing:.14em; color:#87949a; margin-left:8px; }
.meta { font-family:ui-monospace,Menlo,monospace; font-size:10px; color:#87949a; margin:0 0 18px; }
h2 { font-family:"Songti SC","Noto Serif SC",Georgia,serif; font-size:17px; letter-spacing:.06em; color:#2c4657; margin:22px 0 6px; }
p { margin:0 0 10px; color:#37444c; }
ul { padding-left:20px; margin:6px 0 12px; }
li { margin-bottom:5px; }
code { font-family:ui-monospace,Menlo,monospace; font-size:.9em; background:#e9e5d8; padding:1px 4px; }
hr { border:0; border-top:1px dashed #c9d1d2; margin:22px 0; }
.en { border-top:1px solid #c9d1d2; padding-top:14px; }
.en h2 { color:#4d606b; }
.foot { margin-top:14px; text-align:center; font-size:10.5px; color:#66747b; line-height:1.9; }
.foot .nav { justify-content:center; margin-bottom:6px; }
a { color:#1f4e79; }
@media (max-width:600px) { .wrap { padding:10px 8px 40px; } article { padding:16px 13px 22px; } h1 { font-size:23px; } }
