:root{--bg:#f4f1ea;--fg:#2b2620;--muted:#7a6f62;--accent:#7b4b2a;--card:#fffdf8;--line:#e2dbcf}
@media (prefers-color-scheme:dark){:root{--bg:#1b1916;--fg:#e9e3d8;--muted:#a09684;--accent:#d29a6a;--card:#24211d;--line:#3a352e}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.65 Georgia,"Times New Roman",serif}
a{color:var(--accent)}
header,main,footer{max-width:760px;margin:0 auto;padding:0 18px}
header{padding-top:36px;padding-bottom:18px;border-bottom:1px solid var(--line)}
header .site{font-size:28px;font-weight:bold;text-decoration:none;color:var(--fg);letter-spacing:.5px}
header p{margin:4px 0 0;color:var(--muted);font-style:italic}
nav{margin-top:12px;font-family:system-ui,sans-serif;font-size:15px}
nav a{margin-right:16px;text-decoration:none}
main{padding-top:24px;padding-bottom:40px}
.post{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:18px 22px;margin-bottom:18px}
.post h2{margin:0 0 4px;font-size:22px}
.post h2 a{text-decoration:none;color:var(--fg)}
.meta{color:var(--muted);font-size:14px;font-family:system-ui,sans-serif}
article h1{font-size:30px;line-height:1.25;margin-bottom:4px}
table{border-collapse:collapse;width:100%;margin:16px 0;font-size:15px}
th,td{border:1px solid var(--line);padding:6px 10px;text-align:left}
th{background:var(--card)}
code{background:var(--card);border:1px solid var(--line);padding:1px 5px;border-radius:3px;font-size:14px}
footer{border-top:1px solid var(--line);padding-top:14px;padding-bottom:30px;color:var(--muted);font-size:14px;font-family:system-ui,sans-serif}
