:root { --bg:#ffffff; --fg:#1e293b; --muted:#64748b; --accent:#16a34a; --border:#e2e8f0; --card:#f8fafc; }
@media (prefers-color-scheme: dark) {
  :root { --bg:#0f172a; --fg:#e2e8f0; --muted:#94a3b8; --accent:#4ade80; --border:#1e293b; --card:#111c33; }
}
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif; line-height:1.65; }
.wrap { max-width:820px; margin:0 auto; padding:2rem 1.25rem 4rem; }
header.doc { border-bottom:1px solid var(--border); padding-bottom:1.25rem; margin-bottom:2rem; }
h1 { font-size:1.9rem; margin:0 0 .4rem; line-height:1.25; }
h2 { font-size:1.25rem; margin:2.2rem 0 .6rem; }
h3 { font-size:1.02rem; margin:1.4rem 0 .4rem; color:var(--fg); }
p, li { font-size:1rem; }
ul { padding-left:1.25rem; }
li { margin:.3rem 0; }
.meta { color:var(--muted); font-size:.92rem; margin:0; }
a { color:var(--accent); }
.card { background:var(--card); border:1px solid var(--border); border-radius:12px; padding:1rem 1.15rem; margin:1.2rem 0; }
footer.doc { border-top:1px solid var(--border); margin-top:3rem; padding-top:1.25rem; color:var(--muted); font-size:.9rem; }
footer.doc a { margin-right:1rem; }
table { border-collapse:collapse; width:100%; margin:1rem 0; font-size:.95rem; display:block; overflow-x:auto; }
th, td { border:1px solid var(--border); padding:.55rem .7rem; text-align:left; vertical-align:top; }
th { background:var(--card); }
