:root {
  color-scheme: light;
  --surface-1:#fcfcfb; --plane:#f9f9f7;
  --ink:#0b0b0b; --ink-2:#52514e; --muted:#898781;
  --grid:#e1e0d9; --baseline:#c3c2b7; --ring:rgba(11,11,11,.10);
  --s1:#2a78d6;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --surface-1:#1a1a19; --plane:#0d0d0d;
  --ink:#ffffff; --ink-2:#c3c2b7; --muted:#898781;
  --grid:#2c2c2a; --baseline:#383835; --ring:rgba(255,255,255,.10);
  --s1:#3987e5;
}
* { box-sizing:border-box; }
body {
  margin:0; background:var(--plane); color:var(--ink);
  font:15px/1.62 system-ui,-apple-system,"Segoe UI",sans-serif;
}
a { color:var(--s1); text-decoration:none; }
a:hover { text-decoration:underline; }
.wrap { max-width:720px; margin:0 auto; padding:48px 24px 120px; }
.site-head h1 { font-size:30px; line-height:1.2; margin:8px 0 6px; }
.site-head h1 a { color:var(--ink); }
.site-head .links { color:var(--muted); font-size:13.5px; margin:0 0 40px; }
.post-item { padding:18px 0; border-top:1px solid var(--grid); }
.post-item time { font-size:12.5px; color:var(--muted); font-variant-numeric:tabular-nums; }
.post-item h2 { font-size:20px; line-height:1.3; margin:4px 0 6px; }
.post-item h2 a { color:var(--ink); }
.post-item h2 a:hover { color:var(--s1); }
.post-item p { color:var(--ink-2); margin:0; max-width:70ch; }
.site-foot { margin-top:60px; border-top:1px solid var(--grid); padding-top:14px; color:var(--muted); font-size:12.5px; }
.btn {
  font:600 13px system-ui,sans-serif; color:var(--ink); background:var(--surface-1);
  border:1px solid var(--baseline); border-radius:8px; padding:6px 14px; cursor:pointer;
}
.btn:hover { border-color:var(--s1); color:var(--s1); }
.toggle-theme { position:fixed; right:18px; top:14px; z-index:50; }
