:root{--bg:#0f172a;--card:#1e293b;--accent:#38bdf8;--accent2:#a78bfa;--text:#e2e8f0;--muted:#94a3b8;--good:#34d399;--warn:#fbbf24}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
a{color:var(--accent)}header{padding:2.2rem 1rem;text-align:center;background:linear-gradient(135deg,#0f172a,#1e1b4b 60%,#0c4a6e)}
header h1{margin:.2rem 0;font-size:2.2rem}header p{color:var(--muted);max-width:760px;margin:.5rem auto}
.badge{display:inline-block;background:#164e63;border:1px solid #155e75;padding:.2rem .7rem;border-radius:999px;font-size:.85rem;color:#a5f3fc}
nav{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;padding:1rem;background:#0b1220;position:sticky;top:0;z-index:10;border-bottom:1px solid #1e293b}
nav a{text-decoration:none;background:var(--card);padding:.45rem .9rem;border-radius:8px;border:1px solid #334155;font-size:.9rem}
nav a:hover,nav a.active{border-color:var(--accent);color:#fff}
main{max-width:960px;margin:0 auto;padding:1.5rem 1rem 3rem}
.card{background:var(--card);border:1px solid #334155;border-radius:12px;padding:1.2rem;margin:1rem 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
h2{color:#fff;margin-top:2rem}h3{color:var(--accent)}
ul.check{list-style:none;padding:0}ul.check li{background:#0f2436;border:1px solid #1e3a4f;margin:.4rem 0;padding:.6rem .8rem;border-radius:8px;display:flex;gap:.6rem;align-items:flex-start}
ul.check input{margin-top:.3rem;transform:scale(1.2)}ul.check li.done{opacity:.6;text-decoration:line-through}
table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{border:1px solid #334155;padding:.6rem;text-align:left}th{background:#0b1220}
.btn{display:inline-block;background:var(--accent);color:#06202e;font-weight:700;padding:.6rem 1.1rem;border-radius:8px;text-decoration:none;margin:.3rem .2rem}
.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}
footer{text-align:center;color:var(--muted);padding:2rem;font-size:.85rem}
code{background:#0b1220;padding:.15rem .4rem;border-radius:4px}
.progress{background:#0b1220;border-radius:999px;height:10px;overflow:hidden;margin:.5rem 0} .progress>div{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));width:0%}
.small{color:var(--muted);font-size:.9rem}
.kbd{border:1px solid #475569;border-bottom-width:2px;border-radius:6px;padding:0 .4rem;font-size:.85rem}
