:root { --bg: #fff; --fg: #222; --muted: #777; --line: #e3e3e3; --link: #0a6cc7; --code: #f4f4f4; }
@media (prefers-color-scheme: dark) { :root { --bg: #16181c; --fg: #e6e6e6; --muted: #9a9a9a; --line: #2c2f36; --link: #6cb2ff; --code: #22252b; } }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--fg); font: 17px/1.65 -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
a { color: var(--link); text-decoration: none; }
a:hover { text-decoration: underline; }
main, header.site, footer.site { max-width: 760px; margin: 0 auto; padding: 0 16px; }
header.site { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 20px; padding-top: 24px; padding-bottom: 16px; border-bottom: 1px solid var(--line); margin-bottom: 24px; }
.brand { display: flex; align-items: center; gap: 10px; color: var(--fg); font-weight: 700; font-size: 20px; }
.brand img { border-radius: 50%; }
header nav { margin-left: auto; display: flex; flex-wrap: wrap; gap: 2px 14px; font-size: 15px; }
header nav a { color: var(--muted); }
header nav a.on { color: var(--fg); font-weight: 600; }
h1 { font-size: 30px; line-height: 1.25; margin: 0 0 6px; }
h2 { font-size: 22px; line-height: 1.3; margin: 0 0 4px; }
.post h2 { margin-top: 32px; }
.post { padding-bottom: 24px; margin-bottom: 32px; border-bottom: 1px solid var(--line); }
.post:last-of-type { border-bottom: 0; }
.post h1 a { color: var(--fg); }
.cats { color: var(--muted); font-size: 14px; margin: 0 0 16px; }
.meta { color: var(--muted); font-size: 14px; margin-top: 16px; }
.meta a { color: var(--muted); }
.more a { font-weight: 600; }
.body img { max-width: 100%; height: auto; display: block; margin: 16px auto; }
.body pre { background: var(--code); padding: 12px 14px; overflow-x: auto; font-size: 14px; line-height: 1.5; border-radius: 4px; }
.body code { background: var(--code); padding: 1px 5px; border-radius: 3px; font-size: 0.92em; }
.body pre code { background: none; padding: 0; }
.body blockquote { border-left: 3px solid var(--line); margin: 0; padding-left: 14px; color: var(--muted); }
footer.site { border-top: 1px solid var(--line); margin-top: 40px; padding-top: 16px; padding-bottom: 24px; color: var(--muted); font-size: 14px; }
