
:root { --fg:#1a1a1a; --bg:#fafaf7; --accent:#2563eb; --muted:#666; }
* { box-sizing: border-box; }
body { font-family: -apple-system, 'Segoe UI', Georgia, serif; color: var(--fg);
  background: var(--bg); max-width: 720px; margin: 0 auto; padding: 2rem 1.25rem;
  line-height: 1.7; font-size: 17px; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
header.site { border-bottom: 1px solid #e5e5e0; padding-bottom: 1rem; margin-bottom: 2rem; }
header.site h1 { margin: 0; font-size: 1.6rem; }
header.site h1 a { color: var(--fg); }
header.site .tag { color: var(--muted); font-size: .9rem; }
.post-list { list-style: none; padding: 0; }
.post-list li { margin-bottom: 1.4rem; }
.post-list .date { color: var(--muted); font-size: .85rem; }
.post-list h2 { margin: .1rem 0 .2rem; font-size: 1.25rem; }
.post-list .excerpt { color: var(--muted); margin: .2rem 0 0; }
article h1.title { font-size: 1.9rem; margin-bottom: .2rem; }
article .date { color: var(--muted); font-size: .9rem; }
article .content { margin-top: 1.5rem; }
article img { max-width: 100%; }
pre { background: #f0efe9; padding: 1rem; border-radius: 6px; overflow-x: auto; }
code { font-family: 'SF Mono', Menlo, Consolas, monospace; font-size: .9em; }
p code, li code { background: #f0efe9; padding: .1em .35em; border-radius: 4px; }
blockquote { border-left: 3px solid #ddd; margin-left: 0; padding-left: 1rem; color: var(--muted); }
footer { margin-top: 3rem; padding-top: 1rem; border-top: 1px solid #e5e5e0;
  color: var(--muted); font-size: .85rem; }
