:root{--bg:#0d1117;--fg:#e6edf3;--muted:#8b949e;--card:#161b22;--accent:#2f81f7;--ring:#7aa2f7;--ok:#2ea043;--warn:#d29922;--danger:#f85149}
:root[data-theme="hc"]{--bg:#000;--fg:#fff;--muted:#eee;--card:#000;--accent:#fff;--ring:#fff}
*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:system-ui,Inter,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--fg)}
a{color:var(--accent)}img{max-width:100%;display:block}
header.header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:var(--card);position:sticky;top:0;z-index:50;border-bottom:1px solid #00000022}
.brand{display:flex;gap:10px;align-items:center}.logo{width:28px;height:28px;border-radius:8px;background:var(--accent)}
nav a.btn.link{color:var(--accent);text-decoration:none;padding:.4rem .6rem;border-radius:10px}
.container{max-width:1100px;margin:0 auto;padding:24px}
.grid{display:grid;gap:16px}
.grid.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:var(--card);border:1px solid #0000001a;border-radius:16px;padding:18px}
.btn{display:inline-flex;gap:.5rem;align-items:center;border-radius:14px;border:1px solid #ffffff1a;background:#ffffff10;color:var(--fg);padding:.7rem 1rem;cursor:pointer}
.btn.solid{background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 6px 16px #2f81f744}
.btn:focus-visible{outline:3px solid var(--ring);outline-offset:2px}
footer{margin-top:40px;padding:24px;border-top:1px solid #0000001a;color:var(--muted);background:var(--card)}
.badge{background:#00000020;padding:6px 10px;border-radius:999px}
.kbd{font-family:ui-monospace,Consolas,Menlo,monospace;background:#00000033;padding:.1rem .35rem;border-radius:6px}
.skip-links{position:absolute;top:0;left:0;right:0;display:flex;gap:8px;justify-content:center;transform:translateY(-120%)}
.skip-links a{background:var(--accent);color:#fff;padding:.5rem 1rem;margin:.5rem;border-radius:10px;box-shadow:0 6px 14px #2f81f744}
.skip-links a:focus{transform:translateY(140%)}
.tooltip{position:absolute;padding:6px 8px;border-radius:8px;background:#000;color:#fff;transform:translate(-50%,-120%);white-space:nowrap;box-shadow:0 4px 12px #0005;z-index:1000}
.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid #00000022;padding:8px 6px;text-align:left}
.meta{color:var(--muted);font-size:.95rem}

.card:hover{transform:translateY(-2px);transition:transform .15s ease}
.btn:active{transform:scale(.98)}
