:root { --ink:#1f2328; --muted:#656d76; --line:#e5e7eb; --bg:#fafbfc; --accent:#2563eb; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font:17px/1.6 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }
header, main, footer { max-width:44rem; margin:0 auto; padding:0 1.25rem; }
header { padding-top:2.5rem; padding-bottom:1.25rem; border-bottom:1px solid var(--line); }
header h1 { font-size:1.6rem; margin:0 0 .25rem; letter-spacing:.01em; }
header p { margin:0; color:var(--muted); }
nav { margin-top:.75rem; }
nav a { color:var(--accent); text-decoration:none; margin-right:1rem; font-size:.95rem; white-space:nowrap; }
section { padding:1.75rem 0; border-bottom:1px solid var(--line); }
section:last-child { border-bottom:0; }
h2 { font-size:1.25rem; margin:0 0 .5rem; }
h3 { font-size:1.05rem; margin:1.25rem 0 .25rem; }
p { margin:.5rem 0; }
ol, ul { padding-left:1.25rem; margin:.5rem 0; }
li { margin:.2rem 0; }
table { border-collapse:collapse; width:100%; margin:.5rem 0; }
th, td { text-align:left; padding:.5rem .6rem; border-bottom:1px solid var(--line); }
th { color:var(--muted); font-weight:600; font-size:.9rem; }
.note { color:var(--muted); font-size:.95rem; }
.btn { display:inline-block; padding:.55rem 1rem; border-radius:.5rem; background:var(--accent); color:#fff; text-decoration:none; }
.btn:hover { opacity:.92; }
footer { padding:2rem 0 3rem; color:var(--muted); font-size:.9rem; }
footer a { color:var(--muted); margin-right:1rem; }
a { color:var(--accent); }
