:root {
  color-scheme: dark;
  --page: #0b100f; --panel: #101715; --hover: #18231e; --text: #e8eeea;
  --muted: #a1ada6; --subtle: #7e8e84; --line: #243029; --accent: #8cdeb0;
  --tint: #172b20; --code: #0a0e0d; --header-height: 112px;
  --scalar-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --scalar-font-code: ui-monospace, SFMono-Regular, Consolas, monospace;
  --scalar-custom-header-height: var(--header-height);
  font-family: var(--scalar-font); font-size: 15px;
}
:root[data-theme="light"] {
  color-scheme: light; --page: #fff; --panel: #f8faf9; --hover: #edf4ef; --text: #18251d;
  --muted: #54675a; --subtle: #687d6f; --line: #e1e9e4; --accent: #197549;
  --tint: #e9f5ed; --code: #f6f8f7;
}
* { box-sizing: border-box; }
html { scroll-padding-top: 0; }
body { margin: 0; background: var(--page); color: var(--text); line-height: 1.65; }
body.guide-page::before { content: ''; z-index: -1; pointer-events: none; position: absolute; inset: 0 0 auto; height: 480px; background: radial-gradient(ellipse at 58% 0, #4b9e6820, transparent 65%); }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { cursor: pointer; color: inherit; }
svg { width: 19px; height: 19px; flex-shrink: 0; }
button:focus-visible, a:focus-visible, input:focus-visible, summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 4px; }
.skip-link { position: fixed; top: -60px; left: 24px; padding: 8px 16px; background: var(--accent); color: var(--page); z-index: 2000; }
.skip-link:focus { top: 10px; }
.portal-header { position: sticky; top: 0; height: var(--header-height); z-index: 50; border-bottom: 1px solid var(--line); background: var(--page); }
.header-inner { max-width: 1536px; margin: auto; padding: 0 36px; }
.header-top { height: 67px; display: grid; grid-template-columns: 1fr minmax(200px, 384px) 1fr; gap: 30px; align-items: center; }
.brand { display: inline-flex; width: fit-content; gap: 11px; align-items: center; line-height: 1.1; }
.brand-mark { width: 31px; height: 34px; display: grid; place-items: center; color: var(--accent); font-size: 32px; font-weight: 700; letter-spacing: -.15em; transform: skew(-8deg); padding-right: 5px; }
.brand-text { font-size: 18px; letter-spacing: -.035em; font-weight: 650; }
.brand-text small { display: block; font-size: 10px; font-weight: 500; letter-spacing: .13em; color: var(--accent); text-transform: uppercase; margin-top: 5px; }
.global-search { display: flex; align-items: center; gap: 10px; background: var(--code); color: var(--muted); border: 1px solid var(--line); border-radius: 10px; height: 36px; padding: 0 12px; font-size: 13px; width: 100%; }
.global-search:hover { border-color: var(--subtle); }
.global-search kbd { margin-left: auto; font-size: 11px; font-family: inherit; opacity: .8; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: 22px; font-size: 13px; color: var(--muted); }
.header-actions a { display: flex; align-items: center; gap: 5px; white-space: nowrap; }
.header-actions a svg { width: 14px; height: 14px; }
.header-actions a:hover { color: var(--text); }
.icon-button { border: 0; background: transparent; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 7px; }
.icon-button:hover { background: var(--hover); }
.top-nav { height: 45px; display: flex; align-items: stretch; gap: 28px; }
.top-nav a { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--muted); border-bottom: 2px solid transparent; }
.top-nav a[aria-current="page"] { border-color: var(--accent); color: var(--text); }
.top-nav a svg { width: 16px; height: 16px; }
.top-nav .nav-spec { margin-left: auto; font-size: 12px; color: var(--subtle); }
.docs-layout { display: grid; grid-template-columns: 234px minmax(0, 720px) 180px; gap: 48px; padding: 0 36px; margin: auto; max-width: 1440px; align-items: start; }
.docs-sidebar { position: sticky; top: var(--header-height); height: calc(100dvh - var(--header-height)); overflow-y: auto; padding: 30px 10px 28px 0; font-size: 13px; }
.nav-group { margin-bottom: 25px; }
.nav-group h2 { margin: 0 0 9px 12px; font-size: 12px; font-weight: 650; color: var(--text); }
.nav-group a { display: flex; align-items: center; gap: 10px; padding: 7px 12px; margin: 3px 0; border-radius: 7px; line-height: 1.5; color: var(--muted); }
.nav-group a svg { width: 16px; height: 16px; color: var(--subtle); }
.nav-group a:hover { color: var(--text); background: var(--hover); }
.nav-group a[aria-current="page"] { background: var(--tint); color: var(--accent); }
.nav-group a[aria-current="page"] svg { color: var(--accent); }
.sidebar-foot { border-top: 1px solid var(--line); margin: 30px 12px 0; padding: 18px 0; color: var(--subtle); font-size: 11px; }
.sidebar-foot span { display: flex; align-items: center; gap: 7px; margin-bottom: 6px; color: var(--muted); }
.sidebar-foot svg { width: 13px; height: 13px; }
.article { min-width: 0; padding: 48px 0 36px; }
.eyebrow { color: var(--accent); font-size: 13px; font-weight: 600; margin: 0 0 12px; }
.article-tools { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 0 0 18px; }
.article-tools .eyebrow { margin: 0; }
.article-tools > div { display: flex; gap: 12px; align-items: center; font-size: 11px; color: var(--subtle); }
.copy-page { padding: 5px 9px; border: 1px solid var(--line); border-radius: 6px; background: var(--panel); color: var(--muted); font-size: 11px; }
.copy-page:hover { border-color: var(--subtle); }
.code-block[data-language="Agent setup prompt"] pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 360px; overflow-y: auto; color: var(--muted); }
.article h1 { font-size: clamp(30px, 3.1vw, 39px); letter-spacing: -.045em; line-height: 1.15; font-weight: 650; margin: 0 0 20px; }
.article .lead { color: var(--muted); font-size: 16px; line-height: 1.75; margin-bottom: 28px; }
.article p, .article li { color: var(--muted); }
.article p { margin: 12px 0 20px; }
.article h2 { font-size: 22px; font-weight: 600; line-height: 1.4; letter-spacing: -.02em; margin: 38px 0 16px; scroll-margin-top: 140px; }
.article h2 a:hover::after { content: ' #'; color: var(--accent); }
.article p a, .article li a { color: var(--text); text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--accent); }
.article ul, .article ol { padding-left: 22px; }
.article li { margin-bottom: 10px; }
.article strong { color: var(--text); font-weight: 600; }
.hero-meta { display: flex; flex-wrap: wrap; gap: 9px; margin: -4px 0 28px; }
.hero-meta span { color: var(--subtle); font-size: 11px; padding-right: 11px; border-right: 1px solid var(--line); }
.hero-meta span:last-child { border: 0; }
.cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin: 24px 0 32px; }
.doc-card { border: 1px solid var(--line); border-radius: 12px; padding: 23px; background: var(--panel); transition: border-color .15s, background .15s; }
.doc-card:hover { border-color: var(--accent); background: var(--hover); }
.card-icon { color: var(--accent); display: block; margin-bottom: 18px; }
.card-icon svg { width: 23px; height: 23px; }
.doc-card strong { font-size: 15px; display: flex; gap: 8px; align-items: center; justify-content: space-between; }
.doc-card strong svg { width: 15px; height: 15px; color: var(--subtle); }
.doc-card p { font-size: 13px; line-height: 1.65; margin: 10px 0 0; }
.compact .doc-card { padding: 19px; }
.compact .card-icon { margin-bottom: 12px; }
.toc { position: sticky; top: 153px; font-size: 12px; padding-top: 2px; }
.toc strong { font-weight: 500; font-size: 13px; }
.toc nav { margin-top: 13px; border-left: 1px solid var(--line); }
.toc a { display: block; padding: 6px 0 6px 14px; color: var(--subtle); line-height: 1.5; border-left: 1px solid transparent; margin-left: -1px; }
.toc a:hover, .toc a[aria-current="location"] { color: var(--accent); border-color: var(--accent); }
.code-block { background: var(--code); border: 1px solid var(--line); border-radius: 10px; overflow: hidden; margin: 20px 0; }
.code-label { display: flex; justify-content: space-between; align-items: center; padding: 9px 14px; font-size: 11px; border-bottom: 1px solid var(--line); color: var(--muted); background: var(--panel); }
.copy-code { font-size: 11px; padding: 2px 8px; color: var(--muted); border: 0; background: transparent; border-radius: 4px; }
.copy-code:hover { background: var(--hover); color: var(--text); }
pre { margin: 0; padding: 18px; overflow-x: auto; font-size: 12px; line-height: 1.8; color: var(--accent); }
code { font-family: var(--scalar-font-code); }
p code, li code, td code { font-size: .84em; color: var(--text); background: var(--hover); padding: 2px 4px; border-radius: 4px; overflow-wrap: anywhere; }
.callout { display: flex; align-items: flex-start; gap: 13px; background: var(--tint); border: 1px solid var(--line); border-radius: 10px; padding: 18px; margin: 26px 0; font-size: 13px; }
.callout > svg { margin-top: 2px; color: var(--accent); }
.callout p { margin: 6px 0 0; }
.table-scroll { overflow: auto; border: 1px solid var(--line); border-radius: 9px; margin: 20px 0; }
table { width: 100%; border-collapse: collapse; font-size: 13px; text-align: left; }
th { background: var(--panel); font-weight: 600; }
th, td { padding: 13px; border-bottom: 1px solid var(--line); vertical-align: top; }
td { color: var(--muted); min-width: 110px; }
tr:last-child td { border: 0; }
.endpoint-link { display: flex; align-items: center; gap: 12px; border: 1px solid var(--line); border-radius: 9px; padding: 13px; margin: 13px 0; font-size: 13px; }
.endpoint-link > span:nth-child(2) { overflow-wrap: anywhere; }
.endpoint-link:hover { border-color: var(--subtle); background: var(--panel); }
.endpoint-link > svg { margin-left: auto; width: 15px; }
.method { font: 600 10px var(--scalar-font-code); border-radius: 4px; padding: 3px 5px; background: var(--tint); color: var(--accent); }
.method-post { color: #7faeee; background: #243e6329; }
.method-delete { color: #e9a1ac; background: #65283735; }
[data-theme="light"] .method-post { color: #285ba3; }
[data-theme="light"] .method-delete { color: #a03949; }
.steps { list-style: none; counter-reset: steps; padding: 0 !important; }
.steps li { position: relative; padding: 0 0 16px 48px; margin: 0; }
.steps li::before { counter-increment: steps; content: counter(steps); position: absolute; top: 0; left: 0; width: 29px; height: 29px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; font-size: 12px; color: var(--accent); background: var(--panel); }
.steps p { font-size: 14px; margin-top: 5px; }
.page-navigation { border-top: 1px solid var(--line); margin-top: 46px; padding-top: 24px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.page-navigation a { padding: 13px 16px; border: 1px solid var(--line); border-radius: 9px; font-size: 13px; }
.page-navigation a:hover { border-color: var(--subtle); }
.page-navigation a:last-child { text-align: right; }
.page-navigation small { display: block; font-size: 11px; color: var(--subtle); margin-bottom: 5px; }
.article-footer { display: flex; justify-content: space-between; gap: 18px; color: var(--subtle); font-size: 11px; margin-top: 28px; }
.download-link { display: inline-flex; gap: 12px; align-items: center; color: var(--accent); font-size: 14px; }
.mobile-nav-button { display: none; }
.nav-backdrop { display: none; }
.search-dialog { width: min(620px, calc(100vw - 28px)); padding: 0; margin: 14vh auto 0; background: var(--panel); color: var(--text); border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 28px 120px #0008; }
.search-dialog::backdrop { background: #0009; backdrop-filter: blur(4px); }
.search-input-row { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-bottom: 1px solid var(--line); }
.search-input-row svg { color: var(--subtle); }
.search-input-row input { flex: 1; width: 0; background: transparent; border: 0; outline: 0; padding: 4px 0; color: var(--text); font-size: 15px; }
.search-close { border: 1px solid var(--line); background: transparent; border-radius: 5px; color: var(--muted); font-size: 10px; padding: 3px 6px; }
.search-results { max-height: min(55vh, 480px); overflow: auto; padding: 8px; }
.search-result { display: block; border: 1px solid transparent; padding: 12px; border-radius: 8px; }
.search-result:hover, .search-result:focus { background: var(--hover); border-color: var(--line); outline: 0; }
.search-result strong { font-size: 14px; font-weight: 550; }
.search-result .method { margin-right: 9px; }
.search-result small { display: block; color: var(--subtle); margin-top: 3px; font-size: 11px; overflow-wrap: anywhere; }
.search-status { padding: 9px 18px; border-top: 1px solid var(--line); color: var(--subtle); font-size: 11px; }
.no-results { padding: 26px 18px; color: var(--muted); font-size: 14px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.reference-fallback { padding: 48px; max-width: 800px; margin: auto; }
/* Scalar owns schema rendering and the request editor. Share only design tokens. */
.dark-mode { --scalar-color-1: #e8eeea; --scalar-color-2: #a1ada6; --scalar-color-3: #7e8e84; --scalar-color-accent: #8cdeb0; --scalar-background-1: #0b100f; --scalar-background-2: #101715; --scalar-background-3: #18231e; --scalar-background-accent: #172b20; --scalar-border-color: #243029; --scalar-color-green: #8cdeb0; }
.light-mode { --scalar-color-1: #18251d; --scalar-color-2: #54675a; --scalar-color-3: #687d6f; --scalar-color-accent: #197549; --scalar-background-1: #fff; --scalar-background-2: #f8faf9; --scalar-background-3: #edf4ef; --scalar-background-accent: #e9f5ed; --scalar-border-color: #e1e9e4; }
.scalar-api-reference { --scalar-sidebar-width: 270px; --scalar-radius-lg: 10px; --scalar-radius: 7px; --scalar-font-size-1: 13px; }
@media(min-width: 1600px) { .docs-layout { gap: 58px; } }
@media(max-width: 1150px) { .docs-layout { grid-template-columns: 220px minmax(0,720px); gap: 38px; } .toc { display: none; } .header-actions { gap: 14px; } .header-top { gap: 20px; } }
@media(max-width: 800px) {
  :root { --header-height: 105px; }
  .header-inner { padding: 0 20px; } .header-top { height: 61px; grid-template-columns: auto minmax(40px, 1fr) auto; gap: 15px; }
  .header-actions a { display: none; } .header-actions { gap: 3px; } .global-search { justify-self: end; max-width: 290px; }
  .global-search kbd { display: none; } .top-nav { gap: 23px; height: 44px; } .top-nav .nav-spec { display: none; }
  .docs-layout { display: block; padding: 0 24px; } .article { max-width: 720px; margin: auto; padding-top: 34px; }
  .mobile-nav-button { display: grid; }
  .docs-sidebar { display: none; position: fixed; left: 0; width: min(310px,85vw); background: var(--page); z-index: 60; padding: 24px 18px; border-right: 1px solid var(--line); }
  body.nav-open .docs-sidebar { display: block; }
  body.nav-open .nav-backdrop { display: block; position: fixed; inset: var(--header-height) 0 0; background: #0008; z-index: 55; border: 0; }
}
@media(max-width: 500px) {
  .header-inner { padding: 0 15px; } .header-top { gap: 9px; } .brand-text { font-size: 16px; } .brand-mark { width: 25px; font-size: 29px; }
  .global-search { border: 0; background: transparent; width: 34px; padding: 6px; } .global-search > span { display: none; }
  .top-nav { gap: 22px; } .top-nav a { font-size: 12px; } .top-nav a svg { width: 14px; }
  .top-nav a svg { display: none; } .top-nav a { white-space: nowrap; }
  .article-tools { align-items: flex-start; } .article-tools > div { gap: 8px; } .article-tools .eyebrow { padding-top: 5px; }
  .docs-layout { padding: 0 20px; } .cards { grid-template-columns: 1fr; gap: 12px; } .doc-card { padding: 20px; }
  .article h1 { font-size: 32px; } .article h2 { font-size: 21px; } .page-navigation { gap: 10px; } .page-navigation a { padding: 11px; }
  .article-footer { display: block; } .article-footer a { display: block; margin-top: 9px; }
}
@media(prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
