
:root {
  color-scheme: light dark;
  --bg:#ffffff;
  --ink:#09090b;
  --muted:#646b74;
  --faint:#8b949e;
  --line:#e4e7eb;
  --line-strong:#cbd3dc;
  --panel:#fafafa;
  --panel-2:#f4f6f8;
  --code:#0b0f14;
  --code-ink:#eef6f8;
  --accent:#0f6f7c;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  margin:0;
  min-width:320px;
  background:var(--bg);
  color:var(--ink);
  font:16px/1.65 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
a { color:inherit; text-decoration:none; }
a:hover { text-decoration:underline; text-underline-offset:4px; }
code, pre { font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.topbar {
  position:sticky;
  top:0;
  z-index:10;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  height:64px;
  padding:0 clamp(20px,5vw,72px);
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(14px);
}
.wordmark {
  display:flex;
  align-items:center;
  gap:11px;
  color:#111;
  font:600 14px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.wordmark i { display:block; width:28px; height:1px; background:#111; opacity:.65; }
.topnav { display:flex; align-items:center; gap:22px; color:var(--muted); font-size:14px; }
main { max-width:1180px; margin:0 auto; padding:0 clamp(20px,5vw,72px); }
.hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:64px;
  align-items:end;
  padding:92px 0 72px;
}
.label {
  margin:0 0 14px;
  color:var(--faint);
  font:12px/1.3 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-transform:uppercase;
  letter-spacing:.13em;
}
h1, h2, h3, p { margin:0; }
h1 {
  max-width:850px;
  font-size:clamp(46px,7vw,84px);
  line-height:.98;
  letter-spacing:-.035em;
  font-weight:760;
}
h2 {
  max-width:760px;
  font-size:clamp(28px,3.2vw,44px);
  line-height:1.08;
  letter-spacing:-.025em;
  font-weight:720;
}
p { color:var(--muted); max-width:760px; }
.lede { margin-top:24px; color:#343a42; font-size:20px; line-height:1.6; }
.hero-links { display:flex; flex-wrap:wrap; gap:18px; margin-top:32px; color:#111; font-size:14px; }
.hero-links a { border-bottom:1px solid var(--line-strong); padding-bottom:3px; }
.contract-panel {
  border:1px solid var(--line);
  background:var(--panel);
  padding:20px;
}
.panel-title { color:var(--faint); font:12px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; text-transform:uppercase; letter-spacing:.14em; margin-bottom:12px; }
dl { margin:0; }
dl div { display:grid; grid-template-columns:1fr auto; gap:16px; padding:10px 0; border-top:1px solid var(--line); }
dt { color:var(--muted); }
dd { margin:0; font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color:#111; }
.docs-shell {
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:56px;
  border-top:1px solid var(--line);
}
.toc {
  position:sticky;
  top:88px;
  align-self:start;
  display:grid;
  gap:9px;
  padding:34px 0;
  color:var(--muted);
  font-size:14px;
}
.toc a { padding:4px 0; }
.doc { min-width:0; }
.doc-section {
  padding:54px 0;
  border-bottom:1px solid var(--line);
}
.doc-section p + p { margin-top:16px; }
.endpoint-block {
  display:grid;
  gap:1px;
  margin-top:24px;
  border:1px solid var(--line);
  background:var(--line);
}
.endpoint-block > div {
  background:var(--bg);
  padding:18px;
}
.endpoint-block code { color:#111; font-size:14px; }
.endpoint-block p { margin-top:8px; }
.split {
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(400px,1fr);
  gap:38px;
  align-items:start;
}
.code-sample {
  overflow:auto;
  margin:0;
  padding:20px;
  border:1px solid #1f2937;
  background:var(--code);
  color:var(--code-ink);
  font-size:13px;
  line-height:1.58;
}
.reason-grid {
  display:grid;
  gap:1px;
  margin-top:26px;
  border:1px solid var(--line);
  background:var(--line);
}
.reason-grid div {
  display:grid;
  grid-template-columns:270px minmax(0,1fr);
  gap:18px;
  padding:16px;
  background:var(--bg);
}
.reason-grid code { color:#111; font-size:13px; }
.reason-grid span { color:var(--muted); }
.access-note { background:linear-gradient(90deg, transparent, var(--panel), transparent); }
.footer {
  max-width:1180px;
  margin:0 auto;
  padding:30px clamp(20px,5vw,72px) 56px;
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  color:var(--muted);
  font-size:14px;
}
.footer span { color:#111; font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
@media (prefers-color-scheme: dark) {
  :root {
    --bg:#090a0c;
    --ink:#f5f7f8;
    --muted:#a1a8b0;
    --faint:#717b85;
    --line:#242a31;
    --line-strong:#3a444e;
    --panel:#0d1014;
    --panel-2:#11151a;
    --code:#05070a;
    --code-ink:#eef6f8;
    --accent:#76e7f2;
  }
  .topbar { background:rgba(9,10,12,.86); }
  .wordmark, h1, h2, .hero-links, dd, .endpoint-block code, .reason-grid code, .footer span { color:#f5f7f8; }
  .wordmark i { background:#f5f7f8; }
  .lede { color:#d3d9df; }
  .endpoint-block > div, .reason-grid div { background:var(--bg); }
}
@media (max-width: 920px) {
  .topbar { position:relative; height:auto; padding-top:18px; padding-bottom:18px; align-items:flex-start; }
  .topnav { flex-wrap:wrap; justify-content:flex-end; gap:12px 18px; }
  .hero, .docs-shell, .split { grid-template-columns:1fr; gap:28px; }
  .hero { padding:58px 0 48px; }
  .toc { position:relative; top:auto; display:flex; flex-wrap:wrap; border-bottom:1px solid var(--line); padding:18px 0; }
}
@media (max-width: 560px) {
  .topbar { display:grid; gap:16px; }
  .topnav { justify-content:flex-start; }
  main { padding:0 16px; }
  h1 { font-size:40px; }
  h2 { font-size:30px; }
  .lede { font-size:18px; }
  .contract-panel { padding:16px; }
  .doc-section { padding:42px 0; }
  .reason-grid div { grid-template-columns:1fr; gap:8px; }
  .split { gap:20px; }
  .code-sample { font-size:11px; padding:14px; }
}
