:root{color-scheme:light dark;--fg:#1a1a1a;--bg:#fff;--accent:#0b57d0;--on-accent:#fff;--line:#d0d0d0;--muted:#505050}
@media (prefers-color-scheme:dark){:root{--fg:#e8e8e8;--bg:#141414;--accent:#8ab4f8;--on-accent:#141414;--line:#333;--muted:#b0b0b0}}
*{box-sizing:border-box}
body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--fg);background:var(--bg)}
a{color:var(--accent)}
a:focus-visible{outline:3px solid currentColor;outline-offset:2px}
.skip{position:absolute;left:-9999px;top:0;padding:.75rem 1rem;background:var(--bg);color:var(--fg)}
.skip:focus{left:0;z-index:10}
header,main,footer{max-width:44rem;margin:0 auto;padding:1.5rem 1rem}
header{padding-bottom:0}
.wordmark{font-size:1.5rem;font-weight:700;letter-spacing:.04em;text-decoration:none;color:var(--fg);display:inline-block;min-height:44px}
.tagline{margin:0;color:var(--muted)}
h1{font-size:2rem;line-height:1.2}
h2{font-size:1.3rem;margin-top:2rem}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem}
.card{border:1px solid var(--line);border-radius:8px;padding:1.25rem}
.card h3{margin:0 0 .5rem}
.badge{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:0 .6rem;font-size:.85rem;color:var(--muted)}
.btn{display:inline-block;min-height:44px;line-height:44px;padding:0 1rem;border-radius:6px;background:var(--accent);color:var(--on-accent);text-decoration:none;font-weight:600}
.note{color:var(--muted);border-left:4px solid var(--line);padding-left:1rem;margin:1.5rem 0}
.muted{color:var(--muted)}
footer{border-top:1px solid var(--line);margin-top:2rem;font-size:.9rem}
footer p{margin:.25rem 0}
footer a{display:inline-block;min-height:24px}
