:root{--bg:#fbfbfc;--surface:#fff;--surface-2:#f4f5f7;--ink:#15181d;--ink-2:#3d444f;--muted:#697180;--rule:#e2e5ea;--accent:#1f5f52;--accent-2:#14453b;--accent-wash:#e6f0ed;--code-bg:#12161c;--code-ink:#dfe6ef;--code-key:#8fd0bd}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1216;--surface:#161a20;--surface-2:#1c2128;--ink:#e7ebf1;--ink-2:#b6bec9;--muted:#8b94a1;--rule:#272d36;--accent:#63c3ab;--accent-2:#8ad6c1;--accent-wash:#12302a;--code-bg:#0a0d11;--code-ink:#dfe6ef;--code-key:#8fd0bd}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;background:var(--surface);padding:8px 12px;z-index:9}
header.site{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:baseline;justify-content:space-between;max-width:1000px;margin:0 auto;padding:20px 24px;border-bottom:1px solid var(--rule)}
.brand{font-weight:700;font-size:18px;letter-spacing:-.02em;color:var(--ink);text-decoration:none}
header.site nav{display:flex;flex-wrap:wrap;gap:20px;font-size:15px}
header.site nav a{color:var(--muted);text-decoration:none}
header.site nav a:hover,header.site nav a[aria-current]{color:var(--accent)}
main{max-width:1000px;margin:0 auto;padding:40px 24px 72px}
section{margin:0 0 48px}
h1{font-size:clamp(30px,5vw,42px);line-height:1.1;letter-spacing:-.03em;margin:0 0 14px;text-wrap:balance}
h1 em{font-style:normal;color:var(--accent)}
h2{font-size:24px;letter-spacing:-.02em;margin:0 0 12px;text-wrap:balance}
h3{font-size:17px;margin:26px 0 8px}
p{margin:0 0 14px;max-width:72ch}
.lede{font-size:19px;color:var(--ink-2);max-width:62ch}
.hero{padding:16px 0 8px}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.btn{display:inline-block;background:var(--accent);color:#fff;padding:11px 20px;border-radius:6px;text-decoration:none;font-weight:600;font-size:15px}
.btn:hover{background:var(--accent-2)}
.btn.ghost{background:transparent;color:var(--accent);border:1px solid var(--accent)}
.grid{display:grid;gap:18px}.grid.three{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:20px}
.card h3{margin-top:0}
.card p{margin-bottom:0;font-size:15px;color:var(--ink-2)}
ul.checks{padding-left:20px;max-width:72ch}ul.checks li{margin-bottom:10px}
a{color:var(--accent)}
code{font-family:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;font-size:.9em;background:var(--surface-2);padding:1px 5px;border-radius:4px}
pre.code{background:var(--code-bg);color:var(--code-ink);padding:18px 20px;border-radius:8px;overflow-x:auto;font-family:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;font-size:13.5px;line-height:1.6;margin:0}
pre.code code{background:none;padding:0;color:inherit}
.scroller{overflow-x:auto;margin:0 0 16px}
table{border-collapse:collapse;width:100%;font-size:14.5px;background:var(--surface)}
th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--rule);vertical-align:top}
th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--surface-2)}
td.n{font-variant-numeric:tabular-nums;white-space:nowrap}
.endpoint{border:1px solid var(--rule);border-radius:8px;padding:18px 20px;margin-bottom:18px;background:var(--surface)}
.endpoint h3{margin-top:0;display:flex;align-items:center;gap:10px}
.method{font-size:11px;font-weight:700;letter-spacing:.08em;padding:3px 8px;border-radius:4px;background:var(--accent-wash);color:var(--accent)}
details{border-bottom:1px solid var(--rule);padding:14px 0}
summary{cursor:pointer;font-weight:600}
details p{margin:10px 0 0;color:var(--ink-2)}
footer.site{border-top:1px solid var(--rule);max-width:1000px;margin:0 auto;padding:26px 24px 48px;font-size:14px;color:var(--muted)}
footer.site p{margin:0 0 8px}
.fine{font-size:13px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
