/* API documentation page (uses the tokens from style.css). */
.nav-inner.wide { max-width: 1240px; }
a.badge { text-decoration: none; }
.docs { max-width: 1240px; margin: 0 auto; padding: 0 24px 60px; display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 36px; }
.docs-side { position: sticky; top: 72px; align-self: start; max-height: calc(100vh - 90px); overflow-y: auto; padding: 28px 0 20px; }
.side-tag { margin: 18px 0 6px; font-size: .74rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--c-text-light); }
.side-link { display: flex; align-items: center; gap: 8px; padding: 5px 10px; border-radius: 10px; color: var(--c-text); text-decoration: none; font-size: .88rem; font-weight: 500; }
.side-link:hover { background: var(--gradient-subtle); color: var(--c-primary); }
.mini { font-size: .62rem; font-weight: 800; padding: 1px 5px; border-radius: 5px; min-width: 42px; text-align: center; }
.docs-main { min-width: 0; }
.docs-hero { padding: 40px 0 10px; }
.docs-hero h1 { font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 900; letter-spacing: -.03em; margin: 14px 0 8px; }
.docs-hero .hero-sub { margin: 0; text-align: left; max-width: none; }
.keytest { margin-top: 22px; padding: 18px 20px; }
.keytest .field-label { margin-top: 0; }
.keytest-row { display: flex; gap: 10px; }
.keytest-row .input { flex: 1; }

.md { color: var(--c-text); }
.md h3 { font-size: 1.5rem; margin: 40px 0 10px; letter-spacing: -.02em; color: var(--c-ink); scroll-margin-top: 80px; }
.md h4 { font-size: 1.1rem; margin: 26px 0 8px; color: var(--c-ink); scroll-margin-top: 80px; }
.md p, .md li { line-height: 1.7; }
.md code, .tbl code, .keytest code { font-family: ui-monospace, 'SF Mono', Menlo, monospace; font-size: .85em; padding: 1px 6px; border-radius: 6px; background: var(--c-bg-soft); border: 1px solid var(--c-border); color: var(--c-secondary); }
.md a { color: var(--c-primary); }

.codeblock { position: relative; margin: 12px 0; }
.codeblock pre { margin: 0; padding: 16px 18px; border-radius: 14px; background: var(--c-dark); color: #e5e7f0; overflow-x: auto; font-size: .82rem; line-height: 1.6; }
.codeblock code { font-family: ui-monospace, 'SF Mono', Menlo, monospace; background: none; border: none; padding: 0; color: inherit; }
.codeblock .copy { position: absolute; top: 8px; right: 8px; padding: 4px 10px; border-radius: 8px; border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.06); color: #c4b5fd; font: inherit; font-size: .75rem; font-weight: 600; cursor: pointer; }
.codeblock .copy:hover { background: rgba(255,255,255,.12); }

.tbl { width: 100%; border-collapse: collapse; margin: 10px 0 6px; font-size: .9rem; }
.tbl th { text-align: left; font-size: .76rem; text-transform: uppercase; letter-spacing: .05em; color: var(--c-text-light); padding: 8px 10px; border-bottom: 1.5px solid var(--c-border); }
.tbl td { padding: 9px 10px; border-bottom: 1px solid var(--c-border); vertical-align: top; }
.tbl td.type { color: var(--c-secondary); font-family: ui-monospace, 'SF Mono', Menlo, monospace; font-size: .8rem; overflow-wrap: anywhere; }
.tbl.fields { table-layout: fixed; }
.tbl.fields th:first-child { width: 24%; }
.tbl.fields th:nth-child(2) { width: 24%; }
.tbl.fields td { overflow-wrap: anywhere; }
.tbl.fields thead tr th:nth-last-child(4) { width: 20%; } /* parameters: Name */
.tbl.fields thead tr th:nth-last-child(3):nth-child(2) { width: 10%; } /* parameters: In */
.req { font-size: .68rem; font-weight: 800; color: #be123c; text-transform: uppercase; letter-spacing: .04em; }

.tag-section > h2 { font-size: 1.6rem; margin: 56px 0 4px; letter-spacing: -.02em; scroll-margin-top: 80px; }
.op { margin: 18px 0; scroll-margin-top: 80px; }
.op h3 { font-size: 1.15rem; margin: 12px 0 6px; }
.op h4 { font-size: .82rem; text-transform: uppercase; letter-spacing: .06em; color: var(--c-text-light); margin: 22px 0 4px; }
.op-head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.method { font-size: .78rem; font-weight: 800; padding: 4px 10px; border-radius: 8px; letter-spacing: .03em; }
.m-get { background: rgba(16,185,129,.12); color: #059669; }
.m-post { background: rgba(102,126,234,.14); color: #4f46e5; }
.m-delete { background: rgba(244,63,94,.12); color: #be123c; }
.path { font-family: ui-monospace, 'SF Mono', Menlo, monospace; font-size: 1rem; font-weight: 700; color: var(--c-ink); }
.scope { margin-left: auto; font-size: .75rem; font-weight: 700; padding: 4px 12px; border-radius: 999px; background: var(--gradient-subtle); color: var(--c-primary); border: 1px solid rgba(102,126,234,.2); }
.scope.public { background: rgba(16,185,129,.08); color: #059669; border-color: rgba(16,185,129,.25); }
.ctype { font-size: .72rem; font-weight: 600; padding: 1px 7px; border-radius: 6px; background: var(--c-bg-soft); border: 1px solid var(--c-border); color: var(--c-text-light); text-transform: none; letter-spacing: 0; margin-left: 4px; }
.status { font-family: ui-monospace, 'SF Mono', Menlo, monospace; font-weight: 800; font-size: .8rem; padding: 2px 8px; border-radius: 6px; }
.s2 { background: rgba(16,185,129,.12); color: #059669; }
.s4 { background: rgba(245,158,11,.12); color: #b45309; }
.s5 { background: rgba(244,63,94,.12); color: #be123c; }
.responses td:first-child { width: 70px; }
.ex { margin-top: 10px; }
.ex summary { cursor: pointer; font-size: .85rem; font-weight: 600; color: var(--c-text-light); }
.samples { margin-top: 18px; }
.sample-tabs { display: flex; gap: 4px; margin-bottom: -4px; }
.sample-tab { padding: 6px 14px; border-radius: 10px 10px 0 0; border: none; background: var(--c-bg-soft); color: var(--c-text-light); font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; }
.sample-tab.active { background: var(--c-dark); color: #fff; }
.sample .codeblock { margin-top: 0; }
.sample .codeblock pre { border-top-left-radius: 0; }
.schema h3 { font-family: ui-monospace, 'SF Mono', Menlo, monospace; font-size: 1rem; }

@media (max-width: 900px) {
  .docs { grid-template-columns: 1fr; }
  .docs-side { display: none; }
}
