:root { --ink:#1a2332; --mut:#5a6b82; --bg:#f8f9fb; --card:#ffffff; --acc:#2563a8; --line:#e3e8ef; }
* { box-sizing: border-box; }
body { margin:0; font-family:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink); background:var(--bg); line-height:1.65; font-size:16px; }
.wrap { max-width: 860px; margin: 0 auto; padding: 0 20px 60px; }
header.site { border-bottom:1px solid var(--line); background:var(--card); }
header.site .wrap { padding-top:18px; padding-bottom:18px; display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
h1 { font-size:1.35rem; margin:0; letter-spacing:-.01em; }
h1 a { color:var(--ink); text-decoration:none; }
h2 { font-size:1.25rem; margin-top:2em; }
h3 { font-size:1.05rem; }
nav.top { margin-left:auto; font-size:.9rem; }
nav.top a { color:var(--acc); text-decoration:none; margin-left:14px; }
main { background:var(--card); border:1px solid var(--line); border-radius:8px;
  padding:28px 32px; margin-top:24px; }
a { color:var(--acc); }
ul.cards { list-style:none; padding:0; }
ul.cards li { border:1px solid var(--line); border-radius:6px; padding:14px 18px; margin:10px 0; }
ul.cards a { font-weight:600; text-decoration:none; }
ul.cards p { margin:.35em 0 0; color:var(--mut); font-size:.92rem; }
pre { background:#0f1720; color:#dbe6f1; padding:14px 16px; border-radius:6px;
  overflow-x:auto; font-size:.86rem; line-height:1.5; }
code { font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
p code, li code, td code { background:#eef2f7; padding:1px 5px; border-radius:4px; font-size:.85em; }
table { border-collapse:collapse; width:100%; margin:1em 0; font-size:.92rem; }
th, td { border:1px solid var(--line); padding:7px 10px; text-align:left; }
th { background:#f1f4f9; }
footer.site { margin-top:26px; color:var(--mut); font-size:.82rem; text-align:center; }
.note { background:#fdf6e3; border-left:4px solid #e0b93b; padding:10px 14px; border-radius:0 6px 6px 0; font-size:.92rem; }
