.api-docs {
  max-width: 1400px;
  margin: 0 auto;
  color: var(--text);
}

.api-docs-hero {
  padding: clamp(24px, 4vw, 48px);
  border: 1px solid #334155;
  border-radius: 20px;
  background: linear-gradient(135deg, #111827 0%, #142338 70%, #0f172a 100%);
  color: #e5e7eb;
}

.api-docs-eyebrow {
  color: #a5b4fc;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.api-docs h1 {
  max-width: 750px;
  margin: 12px 0;
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.12;
  font-weight: 800;
}

.api-docs-hero > p:not(.api-docs-eyebrow) {
  max-width: 760px;
  color: #cbd5e1;
  font-size: 16px;
  line-height: 1.6;
}

.api-docs-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}

.api-docs-nav a {
  padding: 9px 14px;
  border: 1px solid #475569;
  border-radius: 999px;
  color: #e0e7ff;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
}

.api-docs-nav a:hover,
.api-docs-nav a:focus-visible {
  border-color: #a5b4fc;
  background: #312e81;
}

.api-docs-section {
  margin-top: 44px;
}

.api-docs-section-heading {
  display: flex;
  align-items: start;
  gap: 18px;
  margin-bottom: 18px;
}

.api-docs-step {
  flex: none;
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid #6366f1;
  border-radius: 10px;
  color: #c7d2fe;
  font-size: 13px;
  font-weight: 700;
}

.api-docs h2 {
  margin: 0 0 8px;
  font-size: clamp(23px, 3vw, 30px);
  font-weight: 750;
}

.api-docs h3 {
  margin: 0 0 12px;
  font-size: 17px;
  font-weight: 700;
}

.api-docs-section-heading p,
.api-docs-panel p,
.api-docs-flow p,
.api-docs-callout {
  color: #cbd5e1;
  line-height: 1.6;
}

.api-docs a:not(.api-docs-nav a) {
  color: #a5b4fc;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.api-docs-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.api-docs-panel,
.api-docs-flow li,
.api-docs-callout,
.api-docs-reference {
  min-width: 0;
  border: 1px solid #334155;
  border-radius: 14px;
  background: #101827;
  color: #e5e7eb;
}

.api-docs-panel,
.api-docs-flow li {
  padding: 22px;
}

.api-docs pre {
  max-width: 100%;
  overflow-x: auto;
  padding: 18px;
  border: 1px solid #334155;
  border-radius: 10px;
  background: #0b1220;
  color: #e0e7ff;
  font-size: 13px;
  line-height: 1.55;
  white-space: pre;
}

.api-docs code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.api-docs-flow {
  display: grid;
  gap: 14px;
  padding: 0;
  list-style: none;
}

.api-docs-flow li {
  position: relative;
}

.api-docs-flow li::before {
  content: counter(list-item, decimal-leading-zero);
  position: absolute;
  top: 20px;
  right: 22px;
  color: #818cf8;
  font-size: 13px;
  font-weight: 700;
}

.api-docs-flow li h3 {
  padding-right: 32px;
}

.api-docs-callout {
  padding: 16px 20px;
  border-color: #6366f1;
}

.api-docs-reference {
  min-height: 620px;
  overflow: hidden;
  background: #fff;
}

.api-docs-reference > p {
  padding: 24px;
}

@media (max-width: 780px) {
  .api-docs-grid {
    grid-template-columns: 1fr;
  }

  .api-docs-section-heading {
    gap: 12px;
  }

  .api-docs-panel,
  .api-docs-flow li {
    padding: 16px;
  }
}
