:root { --bg: #0a0a0a; --fg: #e6e6e6; --dim: #9a9a9a; --line: #1f1f1f; --max: 46rem; }
@media (prefers-color-scheme: light) { :root { --bg: #ffffff; --fg: #111111; --dim: #666666; --line: #e5e5e5; } }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--fg); font: 16px/1.8 "Noto Serif SC", "Songti SC", serif; }
.site-head, main, .site-foot { width: min(92vw, var(--max)); margin-inline: auto; }
.site-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding: 20px 0 12px; border-bottom: 1px solid var(--line); }
.brand { color: inherit; font-weight: 600; text-decoration: none; }
.meta { color: var(--dim); font-size: 13px; }
main { padding: 28px 0 56px; }
h1 { font-size: 1.9rem; line-height: 1.35; margin: 0 0 6px; }
h2 { font-size: 1.25rem; margin-top: 2.2em; }
a { color: inherit; }
img { max-width: 100%; height: auto; }
pre, code { font-family: ui-monospace, Consolas, monospace; font-size: 14px; }
pre { background: #111; padding: 14px; overflow-x: auto; }
blockquote { margin: 1.6em 0; padding-left: 14px; border-left: 2px solid var(--line); color: var(--dim); }
.post-list { list-style: none; padding: 0; margin: 0; }
.post-list li { display: flex; align-items: baseline; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--line); animation: in 160ms ease-out; }
.post-list a { text-decoration: none; }
.post-list time { color: var(--dim); font-size: 13px; margin-left: auto; }
.site-foot { padding: 20px 0 40px; border-top: 1px solid var(--line); color: var(--dim); font-size: 13px; }
@keyframes in { from { opacity: 0; } to { opacity: 1; } }
