:root { --bg:#f7f8fb; --surface:#fff; --text:#141826; --muted:#5b6275; --line:#e3e6ee; --brand:#1d3a8a; --brand-2:#0f9d8a; --accent-bg:#eef3ff; --warn:#b4530a; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --bg:#0e111a; --surface:#161a26; --text:#e9ecf4; --muted:#a2a9bb; --line:#2a3043; --brand:#8fb0ff; --brand-2:#4fd1bf; --accent-bg:#1b2440; --warn:#f0a35b; } }
:root[data-theme="dark"] { --bg:#0e111a; --surface:#161a26; --text:#e9ecf4; --muted:#a2a9bb; --line:#2a3043; --brand:#8fb0ff; --brand-2:#4fd1bf; --accent-bg:#1b2440; --warn:#f0a35b; }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--text); font:17px/1.7 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif; }
a { color:var(--brand); }
header.top { max-width:760px; margin:0 auto; padding:18px 16px; display:flex; align-items:center; gap:10px; }
header.top a { color:inherit; text-decoration:none; display:flex; align-items:center; gap:10px; }
.mark { width:26px; height:26px; border-radius:7px; background:linear-gradient(135deg, var(--brand), var(--brand-2)); }
.wordmark { font-weight:700; }
main { max-width:760px; margin:0 auto; padding:0 16px 48px; overflow-wrap:anywhere; }
h1 { font-size:clamp(1.6rem, 4vw, 2.3rem); line-height:1.2; margin:24px 0 10px; letter-spacing:-.4px; }
h2 { font-size:1.3rem; margin:34px 0 8px; }
h3 { font-size:1.08rem; margin:22px 0 6px; }
.lead { color:var(--muted); font-size:1.08rem; }
.meta { color:var(--muted); font-size:.9rem; }
.box { background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:16px 18px; margin:20px 0; }
.box.tldr { background:var(--accent-bg); border-color:transparent; }
.cta { display:inline-block; margin-top:6px; padding:11px 16px; border-radius:10px; background:var(--brand); color:#fff; text-decoration:none; font-weight:650; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .cta { color:#0e111a; } }
table { width:100%; border-collapse:collapse; font-size:.95rem; display:block; overflow-x:auto; }
th, td { text-align:left; padding:8px 10px; border-top:1px solid var(--line); vertical-align:top; }
th { color:var(--muted); font-weight:600; }
.disclosure { color:var(--muted); font-size:.92rem; border-left:3px solid var(--line); padding-left:12px; }
footer { max-width:760px; margin:0 auto; padding:24px 16px 40px; color:var(--muted); font-size:.9rem; border-top:1px solid var(--line); }
