:root{
  --bg:#FAFAF7; --surface:#FFFFFF; --surface-2:#EFF1EC; --line:#DDE1D9;
  --ink:#24303A; --ink-strong:#16202A; --ink-2:#5F6B75;
  --accent:#14735A; --on-accent:#fff; --link:#0E5A47; --link-hover:#14735A;
  --ok:#14735A; --warn:#A16207; --bad:#B42318;
  --font-body:"IBM Plex Sans",system-ui,-apple-system,sans-serif;
  --font-display:"IBM Plex Serif",Georgia,serif;
  --font-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --max-w:1080px; --prose-w:70ch;
}
.site-header{background:var(--surface)}
.site-header .brand .mark{border-radius:50%}
.hero{padding:36px 0 20px;max-width:64ch}
.hero h1{font-size:clamp(1.9rem,4.6vw,2.7rem)}
.hero .lead{font-size:1.15rem;color:var(--ink-2)}
.tool h2{margin-top:0}
.cmp{display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:16px}
.cmp .col{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:14px}
.cmp .col h3{margin:0 0 .4em;font-size:1rem}
.cmp .col .big{font-size:1.5rem}
.cmp .col.best{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.cmp .col .rows{font-size:.86rem;color:var(--ink-2);margin-top:8px}
.cmp .col .rows div{display:flex;justify-content:space-between;gap:8px;padding:2px 0;border-top:1px dashed var(--line)}
.cmp .col .rows div span:last-child{font-variant-numeric:tabular-nums;color:var(--ink)}
.dl{list-style:none;padding:0;margin:0}
.dl li{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.dl .d{font-family:var(--font-mono);font-weight:600;color:var(--accent)}
.dl .d small{display:block;font-weight:400;color:var(--ink-2)}
.dl .soon .d{color:var(--bad)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.chips label{display:inline-flex;align-items:center;gap:.35em;border:1px solid var(--line);border-radius:999px;padding:.3em .8em;font-size:.9rem;cursor:pointer;background:var(--surface);font-weight:500}
.chips input{width:auto;margin:0}
.chips label:has(input:checked){border-color:var(--accent);background:var(--surface-2)}
.src-tag{font-size:.78rem;color:var(--ink-2)}
@media (max-width:760px){.cmp{grid-template-columns:1fr}}
