/* reach12.com/docs: the API reference, on top of the site's /style.css (fonts, tokens, nav,
   buttons). The page itself is generated from API.md by scripts/reach12-docs.mjs. */
.docs-page{background:var(--bg)}
.docs{display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px;padding:150px 0 90px;align-items:start}

.docs-toc{position:sticky;top:120px;max-height:calc(100vh - 140px);overflow:auto;font-size:15px}
.docs-toc-title{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#8a90a0;margin:0 0 14px}
.docs-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;border-left:2px solid var(--line)}
.docs-toc a{display:block;padding:7px 0 7px 16px;margin-left:-2px;border-left:2px solid transparent;color:var(--muted);font-weight:600;transition:color .2s,border-color .2s}
.docs-toc a:hover{color:var(--ink)}
.docs-toc a.is-current{color:var(--blue);border-left-color:var(--blue)}

.docs-body{min-width:0;max-width:800px;color:#2c3446;font-size:17px;line-height:1.7}
.docs-body h1{font-size:clamp(38px,4.6vw,58px);margin:0 0 26px;color:var(--ink)}
.docs-body h2{font-size:clamp(26px,2.6vw,34px);margin:70px 0 18px;color:var(--ink);scroll-margin-top:110px}
.docs-body h3{font-size:21px;margin:36px 0 12px;color:var(--ink);scroll-margin-top:110px}
.docs-body p{margin:0 0 16px}
.docs-body p:has(> code:only-child){margin:6px 0 16px}
.docs-body ul,.docs-body ol{margin:0 0 18px;padding-left:22px}
.docs-body li{margin:0 0 10px}
.docs-body a{color:var(--blue);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.docs-body strong{color:var(--ink)}
.docs-body p code,.docs-body li code{overflow-wrap:anywhere}

.docs-body pre{position:relative;margin:0 0 22px;background:#0b1226;color:#dbe3f7;border-radius:18px;padding:20px 22px;overflow-x:auto;font:14px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;box-shadow:0 20px 50px #0b122626}
.docs-body pre code{background:none;padding:0;border-radius:0;font-size:inherit;white-space:pre;color:inherit}
.docs-body pre[data-lang]:not([data-lang=""]):before{content:attr(data-lang);position:absolute;top:10px;right:84px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6f7ea6}
.pre-copy{position:absolute;top:10px;right:10px;font:700 13px/1 Assistant,system-ui,sans-serif;color:#c9d4f0;background:#ffffff12;border:1px solid #ffffff22;border-radius:999px;padding:7px 12px;cursor:pointer;transition:background .2s}
.pre-copy:hover{background:#ffffff22}

.docs-body .tbl{overflow-x:auto;margin:0 0 24px;background:#fff;border:1px solid var(--line);border-radius:16px}
.docs-body table{width:100%;border-collapse:collapse;font-size:15px}
.docs-body th{text-align:left;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#8a90a0;padding:12px 16px;border-bottom:1px solid var(--line);background:#f7f8fb}
.docs-body td{padding:12px 16px;border-bottom:1px solid #eceef2;vertical-align:top}
.docs-body tr:last-child td{border-bottom:0}
.docs-body td:first-child{white-space:nowrap}
.docs-body td code{white-space:normal}

.docs-cta{margin-top:80px;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;padding:40px;border-radius:var(--r-md);background:radial-gradient(ellipse 70% 90% at 100% 120%,#2f7bff 0,transparent 70%),var(--navy);color:#f6f7fa}
.docs-cta .docs-cta-title{margin:0 0 8px;font-size:28px;color:#fff}
.docs-cta p{margin:0;color:#c6cde0;max-width:460px}

.docs-foot{display:flex;gap:24px;flex-wrap:wrap;padding:30px 0 50px;border-top:1px solid var(--line);color:var(--muted);font-size:15px}
.docs-foot a:hover{color:var(--ink)}

@media (max-width:1000px){
  .docs{grid-template-columns:minmax(0,1fr);gap:34px;padding-top:120px}
  .docs-toc{position:static}
  .docs-toc ol{flex-direction:row;flex-wrap:wrap;gap:8px;border-left:0}
  .docs-toc a{margin:0;padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px}
  .docs-toc a.is-current{border-color:var(--blue)}
}
@media (max-width:640px){
  .docs-body{font-size:16px}
  .docs-body pre{border-radius:14px;padding:18px 16px;margin-inline:-4px}
  .docs-body pre[data-lang]:before{display:none}
  .docs-cta{padding:28px 22px}
  .docs-cta .btn{width:100%}
}
