:root{
  --bg:#ffffff;
  --fg:#1a1a1a;
  --muted:#6b7280;
  --rule:#e5e7eb;
  --accent:#111827;
  --link:#1f4ed8;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0f1115;
    --fg:#e6e7ea;
    --muted:#9aa1ac;
    --rule:#23262d;
    --accent:#f3f4f6;
    --link:#8ab4ff;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--bg);
  color:var(--fg);
  font:16px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,"Noto Sans",sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
.site-head{
  max-width:760px;margin:0 auto;padding:40px 24px 0;
  display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap;
}
.brand{font-weight:600;letter-spacing:-.01em;color:var(--fg);font-size:17px}
.brand .dot{color:var(--link)}
.site-head nav{display:flex;gap:20px;font-size:14px}
.site-head nav a{color:var(--muted)}
.site-head nav a:hover{color:var(--fg);text-decoration:none}
main{max-width:760px;margin:0 auto;padding:0 24px}
.intro{padding:72px 0 56px;border-bottom:1px solid var(--rule)}
h1{font-size:clamp(28px,5vw,40px);line-height:1.18;letter-spacing:-.022em;font-weight:650;margin:0 0 20px}
.lead{font-size:17px;color:var(--muted);margin:0;max-width:60ch}
.listing{padding:44px 0 24px}
h2{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0 0 22px}
.posts{list-style:none;padding:0;margin:0}
.posts li{padding:20px 0;border-bottom:1px solid var(--rule)}
.posts li:last-child{border-bottom:0}
.posts a{font-size:17px;font-weight:550;color:var(--fg);letter-spacing:-.008em}
.posts a:hover{color:var(--link);text-decoration:none}
.posts time{display:block;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums;margin-top:5px}
.posts p{margin:7px 0 0;font-size:14.5px;color:var(--muted)}
.site-foot{
  max-width:760px;margin:48px auto 0;padding:28px 24px 56px;
  border-top:1px solid var(--rule);font-size:13.5px;color:var(--muted);
}
.site-foot p{margin:0 0 6px}
.muted{color:var(--muted);font-size:12.5px;opacity:.85}
article{max-width:760px;margin:0 auto;padding:64px 24px 24px}
article h1{font-size:clamp(26px,4.4vw,34px);margin-bottom:8px}
article .meta{color:var(--muted);font-size:13.5px;margin:0 0 32px;padding-bottom:24px;border-bottom:1px solid var(--rule)}
article p,article li{color:var(--fg)}
article pre{
  background:rgba(127,127,127,.09);border:1px solid var(--rule);border-radius:8px;
  padding:14px 16px;overflow-x:auto;font-size:13.5px;line-height:1.55;
}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}
.back{display:inline-block;margin-top:40px;font-size:14px;color:var(--muted)}
.empty{padding:64px 0;color:var(--muted)}
