:root{color-scheme:light dark;--bg:#fbfbf9;--fg:#1a1c1b;--mut:#5c625f;--card:#fff;--line:#e3e5e2;--acc:#1f4d3a;--accfg:#fff}
@media (prefers-color-scheme:dark){:root{--bg:#111312;--fg:#eceeed;--mut:#a3aaa6;--card:#191c1b;--line:#2b302d;--acc:#8fd3b0;--accfg:#0c1a13}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.wrap{max-width:960px;margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--card);padding:.5rem;z-index:9}
header{padding:1.5rem 0}.brand{font-weight:650;color:var(--fg);text-decoration:none;display:inline-flex;gap:.5rem;align-items:center}
.hero{padding:4rem 0 3rem}h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.15;letter-spacing:-.02em;margin:0 0 1rem;font-weight:650}
.lead{color:var(--mut);font-size:1.15rem;max-width:40rem;margin:0}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;padding-bottom:3rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.75rem;display:flex;flex-direction:column}
.card h2{margin:0 0 .25rem;font-size:1.4rem}.tag{color:var(--mut);font-size:.9rem;margin:0 0 1rem}
.card ul{padding-left:1.1rem;margin:0 0 1.5rem;flex:1}.card li{margin:.3rem 0}
.btn{align-self:flex-start;background:var(--acc);color:var(--accfg);text-decoration:none;padding:.6rem 1.1rem;border-radius:9px;font-weight:600}
.btn:hover{opacity:.9}a:focus-visible{outline:3px solid var(--acc);outline-offset:3px}
a{color:var(--acc)}
section h2.t{font-size:1.5rem;margin:0 0 .5rem}.note{color:var(--mut);margin:.75rem 0 0;font-size:.95rem}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--card)}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
th,td{text-align:left;padding:.7rem 1rem;border-bottom:1px solid var(--line)}tr:last-child td{border-bottom:0}
thead th{font-size:.85rem;color:var(--mut);font-weight:600}
.apps{padding:3rem 0}footer{border-top:1px solid var(--line);padding:2rem 0;color:var(--mut);font-size:.9rem}
.tbl{margin-top:1rem}
