:root{
  --bg:#f7f8fa;
  --surface:#ffffff;
  --ink:#1b2430;
  --ink-muted:#5b6472;
  --border:#dde1e6;
  --accent:#1f6feb;
  --accent-soft:#e8f0fe;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#14171c;
    --surface:#1b1f26;
    --ink:#e7e9ec;
    --ink-muted:#9aa3af;
    --border:#2c313a;
    --accent:#5b9bff;
    --accent-soft:#1c2a42;
  }
}
*{box-sizing:border-box;}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  line-height:1.6;
  padding:0 20px;
  padding-block:56px 80px;
}
.wrap{max-width:640px;margin:0 auto;}
.badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:var(--accent-soft);
  color:var(--accent);
  font-size:12px;
  font-weight:600;
  letter-spacing:.03em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:100px;
  margin-bottom:16px;
}
h1{
  font-size:clamp(26px,5vw,34px);
  line-height:1.15;
  margin:0 0 8px;
}
p.lede{
  color:var(--ink-muted);
  font-size:17px;
  max-width:52ch;
  margin:0 0 32px;
}
h2{
  font-size:18px;
  margin:32px 0 8px;
}
p, li{font-size:15.5px;}
a{color:var(--accent);}
.card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:12px;
  padding:20px 22px;
  margin-bottom:16px;
}
.card a{font-weight:600;text-decoration:none;}
.card a:hover{text-decoration:underline;}
.card p{color:var(--ink-muted);margin:4px 0 0;font-size:14px;}
footer{
  margin-top:56px;
  padding-top:20px;
  border-top:1px solid var(--border);
  color:var(--ink-muted);
  font-size:13px;
}
footer a{color:var(--ink-muted);}
.updated{color:var(--ink-muted);font-size:13.5px;margin-bottom:28px;}
