/* Paleta de planos e WhatsApp aplicada somente à página de API. */
body.api-page {
  --purple: #660099;
  --purple-dark: #490071;
  --pink: #b0008d;
  --ink: #2f1041;
  --muted: #71617d;
  --soft: #f3e5ff;
  --soft2: #fbeaf7;
  --line: #e5d4ef;
  --api-purple: var(--purple);
  --api-purple-dark: var(--purple-dark);
  --api-violet: #a467c4;
  --api-ink: var(--ink);
  --api-muted: var(--muted);
  --api-line: var(--line);
  --api-soft: var(--soft);
  --api-brand-gradient: linear-gradient(110deg, #660099, #97089d);
  --api-on-purple: #f2dffa;
}

.api-page ::selection { background: var(--soft); color: var(--purple-dark); }
.api-page :is(.nav-cta, .button-primary, .api-mobile-menu .api-mobile-cta) { background: var(--purple); color: #fff; box-shadow: 0 12px 28px #66009920; }
.api-page :is(.nav-cta, .button-primary, .api-mobile-menu .api-mobile-cta):hover { background: #510078; }
.api-page .api-nav a { color: var(--ink); }
.api-page .api-nav a:hover { color: var(--purple); }
.api-page :is(a, button, [tabindex]):focus-visible { outline: 3px solid var(--purple); outline-offset: 4px; }

/* Hero com o degradê roxo e magenta das demais LPs. */
.api-page .api-hero { background: var(--api-brand-gradient); }
.api-page .api-hero::before {
  background-image: linear-gradient(#ffffff08 1px, transparent 1px), linear-gradient(90deg, #ffffff08 1px, transparent 1px);
}
.api-page .api-hero__glow--one { background: #f7cef030; }
.api-page .api-hero__glow--two { background: #49007160; }
.api-page .api-hero h1 { color: #fff; }
.api-page .api-hero h1 em { background: none; color: #f7cef0; -webkit-text-fill-color: currentColor; }
.api-page .api-hero :is(.api-eyebrow, .api-accent, .api-hero__lead, .api-hero__trust) { color: var(--api-on-purple); }
.api-page .api-eyebrow span:first-child { background: #f7cef0; }
.api-page .api-logo-strip__inner > span { color: var(--muted); }
.api-page .api-hero__badges span { background: #fff; border-color: var(--line); color: var(--ink); }
.api-page .api-btn-link { color: var(--purple); }
.api-page .api-btn-link:hover { color: var(--pink); }
.api-page .api-hero .api-btn-primary { background: #fff; color: var(--purple); box-shadow: 0 12px 28px #49007125; }
.api-page .api-hero .api-btn-primary:hover { background: var(--soft); }
.api-page .api-hero .api-btn-link { color: #fff; }
.api-page .api-hero .api-btn-link:hover { color: #f7cef0; }
.api-page .api-hero a:focus-visible { outline-color: #f7cef0; }
.api-page .api-trust-dot { background: #f7cef0; box-shadow: 0 0 0 5px #f7cef018; }
.api-page .api-logo-strip { border-color: var(--line); }

/* Painéis de código: roxo escuro, preservando cores semânticas de dados/status. */
.api-page .api-console { background: #210b35; border-color: #6d328a; box-shadow: 0 32px 70px #49007126, 0 4px 14px #49007114; }
.api-page .api-console__topbar { background: #35004f; }
.api-page :is(.api-console__title, .api-console__tabs button, .api-console__footer, .api-code-card__header) { color: #d5c4e0; }
.api-page .api-console__tabs button.is-active { background: var(--purple); color: #fff; }
.api-page :is(.api-console__code, .api-code-card, .api-inline-code) { color: var(--api-on-purple); }
.api-page :is(.api-console__code, .api-code-card) .k { color: #d6afe8; }
.api-page :is(.api-code-card, .api-inline-code) { background: #210b35; }
.api-page :is(.api-console, .api-code-card) button:focus-visible { outline-color: #f7cef0; }

/* Possibilidades e jornadas. */
.api-page :is(.api-section-heading p, .api-position-copy > p, .api-feature-card p, .api-journey-copy > p, .api-auth-card p) { color: var(--muted); }
.api-page .api-feature-card { background: linear-gradient(180deg, #fff, #faf5fd); }
.api-page .api-feature-card--featured { background: linear-gradient(135deg, #f3e5ff, #fff 75%); }
.api-page .api-feature-card:nth-child(even) { background: var(--soft2); }
.api-page .api-feature-card:hover { border-color: #d6afe8; box-shadow: 0 20px 46px #66009914; }
.api-page .api-feature-icon { background: var(--soft); }
.api-page .api-feature-card:nth-child(even) .api-feature-icon { background: #f6d7ee; color: var(--pink); }
.api-page .api-mini-flow { color: var(--muted); }
.api-page .api-mini-flow strong { background: var(--purple); }
.api-page .api-section--journeys { background: linear-gradient(180deg, #fff, #ebebeb 140px, #ebebeb calc(100% - 140px), #fff); }
.api-page .api-journey-tabs button { border-color: var(--line); color: var(--muted); }
.api-page .api-journey-tabs button span { background: var(--soft); color: var(--purple); }
.api-page .api-journey-tabs button:hover { border-color: #d6afe8; }
.api-page .api-journey-tabs button.is-active { background: var(--purple); border-color: var(--purple); color: #fff; }
.api-page .api-journey-tabs button.is-active span { background: #ffffff20; color: #fff; }
.api-page .api-journey-panel { border-color: var(--line); box-shadow: 0 18px 50px #49007112; }
.api-page .api-journey-copy code { background: var(--soft); color: var(--purple); }
.api-page .api-journey-point { color: var(--ink); }
.api-page .api-journey-point i { color: var(--purple); }

/* Documento, posições de assinatura e processo híbrido. */
.api-page .api-position-rules div { border-color: var(--line); background: #faf5fd; color: var(--muted); }
.api-page .api-position-rules i { color: var(--pink); }
.api-page .api-position-rules strong { color: var(--ink); }
.api-page .api-doc-paper { border-color: var(--line); box-shadow: 0 30px 70px #49007120; }
.api-page .api-doc-paper::before { color: var(--muted); }
.api-page .api-doc-title span:first-child { background: var(--api-brand-gradient); }
.api-page .api-doc-title span:last-child { background: var(--ink); }
.api-page .api-sign-marker { border-color: #a467c4; background: var(--soft); color: var(--purple); }
.api-page .api-sign-marker--two { border-color: #c465b1; background: var(--soft2); color: var(--pink); }
.api-page .api-sign-marker b { color: var(--muted); }
.api-page .api-doc-map { background: var(--purple-dark); box-shadow: 0 16px 35px #49007126; }
.api-page .api-doc-map__item > span { background: var(--purple); }
.api-page .api-doc-map__item small { color: var(--api-on-purple); }
.api-page .api-doc-map__connector { background: #a467c4; }
.api-page .api-hybrid-card { background: var(--api-brand-gradient); }
.api-page :is(.api-hybrid-copy p, .api-kicker--light, .api-hybrid-order > i, .api-order-step span, .api-order-step i) { color: var(--api-on-purple); }
.api-page :is(.api-hybrid-copy h2 em, .api-docs-copy h2 em) { color: #f7cef0; }
.api-page .api-order-step--final { color: var(--ink); }
.api-page .api-order-step--final :is(i, span) { color: var(--purple); }

/* Ciclo do documento e endpoints. As etiquetas GET/POST mantêm suas cores. */
.api-page .api-section--lifecycle { background: linear-gradient(180deg, #fff, #faf5fd); }
.api-page .api-life-step { border-color: var(--line); }
.api-page .api-life-step:nth-of-type(4n + 3) { background: var(--soft2); }
.api-page .api-life-step > i { color: var(--purple); }
.api-page .api-life-step:nth-of-type(4n + 3) > i { color: var(--pink); }
.api-page :is(.api-life-step > span, .api-life-step small, .api-endpoint em) { color: var(--muted); }
.api-page .api-life-line { background: #d6afe8; }
.api-page :is(.api-endpoint-list, .api-endpoint) { border-color: var(--line); }
.api-page .api-endpoint code { color: var(--ink); }

/* Autenticação, documentação e chamada final. */
.api-page .api-section--auth { background: linear-gradient(180deg, #fff, #fbeaf7 140px); }
.api-page .api-auth-card { border-color: var(--line); }
.api-page .api-auth-card--purple { background: linear-gradient(145deg, #f3e5ff, #fff); }
.api-page .api-auth-head > i { background: var(--soft); color: var(--purple); }
.api-page .api-auth-card--purple .api-auth-head > i { background: #f6d7ee; color: var(--pink); }
.api-page .api-auth-head span { color: var(--muted); }
.api-page .api-inline-code i { color: #d6afe8; }
.api-page .api-security-note { border-color: var(--line); color: var(--muted); }
.api-page .api-security-note i { color: var(--purple); }
.api-page .api-section--docs { background: linear-gradient(135deg, #35004f, #490071); }
.api-page :is(.api-docs-copy p, .api-doc-link small) { color: var(--api-on-purple); }
.api-page .api-doc-link--primary { background: var(--pink); border-color: #ca55b3; }
.api-page .api-doc-link--primary:hover { background: #85006d; }
.api-page .api-doc-link:focus-visible { outline-color: #f7cef0; }
.api-page .api-section--start { background: var(--api-brand-gradient); }
.api-page .api-section--start .api-start-card {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: #fff;
}
.api-page .api-start-card h2 em { color: #f7cef0; }
.api-page :is(.api-start-card p, .api-start-card .api-kicker, .api-start-actions > span) { color: var(--api-on-purple); }
.api-page .api-start-card .api-btn-primary { background: #fff; color: var(--purple); box-shadow: 0 12px 28px #49007125; }
.api-page .api-start-card .api-btn-primary:hover { background: var(--soft); }
.api-page .api-start-card .api-btn-primary:focus-visible { outline-color: #fff; }
.api-page .api-start-actions > code { color: var(--ink); border-color: var(--line); }
.api-page .site-footer { background: linear-gradient(135deg, #210b35, #35004f); }
.api-page .footer-glow { background: radial-gradient(circle, #b0008d30, transparent 65%); }
.api-page .footer-ecosystem { color: var(--api-on-purple); }
.api-page .footer-column a:hover { color: #f7cef0; }
.api-page .site-footer a:focus-visible { outline-color: #f7cef0; }
.api-page .contact-chat { --chat-purple: #660099; }
.api-page .contact-chat__continue:hover { background: #510078; }
.api-page .floating-contact.contact-chat-launcher.is-chat-open { background: var(--purple); box-shadow: 0 7px 22px #66009933; }

@media (max-width: 700px) {
  .api-page .api-hero__copy { background: transparent; border-color: #ffffff30; box-shadow: none; }
  .api-page :is(.api-eyebrow, .api-hero__trust) { background: #ffffff12; }
  .api-page .api-kicker { background: var(--soft); }
  .api-page .api-kicker--light,
  .api-page .api-start-card .api-kicker { background: #ffffff18; }
  .api-page .api-hero__actions .api-btn-link { background: #ffffff12; border-color: #ffffff50; }
  .api-page .api-section--positions .api-position-rules div { background: var(--soft); }
  .api-page .api-section--positions .api-document-demo { background: linear-gradient(180deg, #fff, #f3e5ff); }
}
