/*fern-site-stylesheet*/:root {
  --header-height: 64px;
  --header-height-real: 64px;
  --mobile-header-height-real: 64px;
  --content-width: 640px;
  --sidebar-width: 288px;
  --page-width: 100vw;
  --logo-height: 40px;
  --font-body: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  --font-heading: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  --font-code: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
}

:root {
  --typography-body-font-family: var(--font-body);
  --typography-heading-font-family: var(--font-heading);
  --typography-code-font-family: var(--font-code);
}


.light, :root {
  --accent-1: #fcfdff;
  --accent-2: #f6f8ff;
  --accent-3: #edf1ff;
  --accent-4: #e0e7ff;
  --accent-5: #d4dcff;
  --accent-6: #c3ceff;
  --accent-7: #adb9ff;
  --accent-8: #8f9bff;
  --accent-9: #4b21f5;
  --accent-10: #4100e2;
  --accent-11: #503cf3;
  --accent-12: #251f77;

  --accent-a1: #0055ff03;
  --accent-a2: #0039ff09;
  --accent-a3: #0039ff12;
  --accent-a4: #003aff1f;
  --accent-a5: #0130ff2b;
  --accent-a6: #002fff3c;
  --accent-a7: #0026ff52;
  --accent-a8: #001cff70;
  --accent-a9: #3000f4de;
  --accent-a10: #4100e2;
  --accent-a11: #1a00efc3;
  --accent-a12: #070064e0;

  --accent-contrast: #fff;
  --accent-surface: #f4f6ffcc;
  --accent-indicator: #4b21f5;
  --accent-track: #4b21f5;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --accent-1: oklch(99.4% 0.0035 277.2);
      --accent-2: oklch(98.2% 0.0133 277.2);
      --accent-3: oklch(96.1% 0.0257 277.2);
      --accent-4: oklch(93.5% 0.0516 277.2);
      --accent-5: oklch(90.4% 0.0772 277.2);
      --accent-6: oklch(86.4% 0.1034 277.2);
      --accent-7: oklch(80.8% 0.1303 277.2);
      --accent-8: oklch(72.9% 0.1733 277.2);
      --accent-9: oklch(48.4% 0.2778 277.2);
      --accent-10: oklch(43.2% 0.2778 277.2);
      --accent-11: oklch(51% 0.2558 277.2);
      --accent-12: oklch(31.4% 0.1421 277.2);

      --accent-a1: color(display-p3 0.0235 0.349 1 / 0.012);
      --accent-a2: color(display-p3 0.0235 0.2392 0.8941 / 0.036);
      --accent-a3: color(display-p3 0.0078 0.1843 0.9451 / 0.067);
      --accent-a4: color(display-p3 0.0039 0.2039 0.9373 / 0.118);
      --accent-a5: color(display-p3 0.0039 0.1686 0.9294 / 0.165);
      --accent-a6: color(display-p3 0.0039 0.1608 0.9333 / 0.228);
      --accent-a7: color(display-p3 0.0039 0.1294 0.9412 / 0.314);
      --accent-a8: color(display-p3 0.0039 0.0941 0.9373 / 0.432);
      --accent-a9: color(display-p3 0.1608 0 0.9098 / 0.863);
      --accent-a10: color(display-p3 0.2118 0 0.8471 / 0.977);
      --accent-a11: color(display-p3 0.0824 0 0.8902 / 0.761);
      --accent-a12: color(display-p3 0.0235 0 0.3686 / 0.879);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.9608 0.9686 1 / 0.8);
      --accent-indicator: oklch(48.4% 0.2778 277.2);
      --accent-track: oklch(48.4% 0.2778 277.2);
    }
  }
}


.light, :root {
  --grayscale-1: #fdfcfd;
  --grayscale-2: #faf9fb;
  --grayscale-3: #f2eff3;
  --grayscale-4: #eae7ec;
  --grayscale-5: #e3dfe6;
  --grayscale-6: #dbd8e0;
  --grayscale-7: #d0cdd7;
  --grayscale-8: #bcbac7;
  --grayscale-9: #8e8c99;
  --grayscale-10: #84828e;
  --grayscale-11: #65636d;
  --grayscale-12: #211f26;

  --grayscale-a1: #55005503;
  --grayscale-a2: #2b005506;
  --grayscale-a3: #30004010;
  --grayscale-a4: #20003618;
  --grayscale-a5: #20003820;
  --grayscale-a6: #14003527;
  --grayscale-a7: #10003332;
  --grayscale-a8: #08003145;
  --grayscale-a9: #05001d73;
  --grayscale-a10: #0500197d;
  --grayscale-a11: #0400119c;
  --grayscale-a12: #020008e0;

  --grayscale-contrast: #000;
  --grayscale-surface: #ffffffcc;
  --grayscale-indicator: #8e8c99;
  --grayscale-track: #8e8c99;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --grayscale-1: color(display-p3 0.991 0.988 0.992);
      --grayscale-2: color(display-p3 0.98 0.976 0.984);
      --grayscale-3: color(display-p3 0.946 0.938 0.952);
      --grayscale-4: color(display-p3 0.915 0.906 0.925);
      --grayscale-5: color(display-p3 0.886 0.876 0.901);
      --grayscale-6: color(display-p3 0.856 0.846 0.875);
      --grayscale-7: color(display-p3 0.814 0.804 0.84);
      --grayscale-8: color(display-p3 0.735 0.728 0.777);
      --grayscale-9: color(display-p3 0.555 0.549 0.596);
      --grayscale-10: color(display-p3 0.514 0.508 0.552);
      --grayscale-11: color(display-p3 0.395 0.388 0.424);
      --grayscale-12: color(display-p3 0.128 0.122 0.147);

      --grayscale-a1: #55005503;
      --grayscale-a2: #2b005506;
      --grayscale-a3: #30004010;
      --grayscale-a4: #20003618;
      --grayscale-a5: #20003820;
      --grayscale-a6: #14003527;
      --grayscale-a7: #10003332;
      --grayscale-a8: #08003145;
      --grayscale-a9: #05001d73;
      --grayscale-a10: #0500197d;
      --grayscale-a11: #0400119c;
      --grayscale-a12: #020008e0;

      --grayscale-contrast: #000;
      --grayscale-surface: color(display-p3 1 1 1 / 80%);
      --grayscale-indicator: color(display-p3 0.555 0.549 0.596);
      --grayscale-track: color(display-p3 0.555 0.549 0.596);
    }
  }
}


.dark {
  --accent-1: #0e0a19;
  --accent-2: #181427;
  --accent-3: #281c49;
  --accent-4: #352063;
  --accent-5: #3e2871;
  --accent-6: #493380;
  --accent-7: #584196;
  --accent-8: #6d50b9;
  --accent-9: #a78bff;
  --accent-10: #9c7ff2;
  --accent-11: #bba3ff;
  --accent-12: #e2dcff;

  --accent-a1: #6b00f208;
  --accent-a2: #9c5bfb17;
  --accent-a3: #874dfc3c;
  --accent-a4: #8544fd58;
  --accent-a5: #8950fd67;
  --accent-a6: #905ffd77;
  --accent-a7: #946afe8f;
  --accent-a8: #966cffb4;
  --accent-a9: #a78bff;
  --accent-a10: #a385fef2;
  --accent-a11: #bba3ff;
  --accent-a12: #e2dcff;

  --accent-contrast: #fff;
  --accent-surface: #251b3c80;
  --accent-indicator: #a78bff;
  --accent-track: #a78bff;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --accent-1: oklch(15.9% 0.0315 292.8);
      --accent-2: oklch(20.6% 0.0382 292.8);
      --accent-3: oklch(26.8% 0.0807 292.8);
      --accent-4: oklch(31.1% 0.1131 292.8);
      --accent-5: oklch(34.8% 0.1201 292.8);
      --accent-6: oklch(39% 0.1243 292.8);
      --accent-7: oklch(44.5% 0.1351 292.8);
      --accent-8: oklch(51.6% 0.1589 292.8);
      --accent-9: oklch(71.2% 0.1657 292.8);
      --accent-10: oklch(67.5% 0.1657 292.8);
      --accent-11: oklch(77.8% 0.1657 292.8);
      --accent-12: oklch(91.2% 0.0548 292.8);

      --accent-a1: color(display-p3 0.3451 0 0.9765 / 0.026);
      --accent-a2: color(display-p3 0.6 0.3765 0.9961 / 0.085);
      --accent-a3: color(display-p3 0.5255 0.3216 1 / 0.22);
      --accent-a4: color(display-p3 0.5137 0.2941 1 / 0.325);
      --accent-a5: color(display-p3 0.5333 0.3373 1 / 0.384);
      --accent-a6: color(display-p3 0.5608 0.3961 1 / 0.448);
      --accent-a7: color(display-p3 0.5804 0.4392 1 / 0.536);
      --accent-a8: color(display-p3 0.5843 0.4431 1 / 0.68);
      --accent-a9: color(display-p3 0.6549 0.5647 0.9961 / 0.971);
      --accent-a10: color(display-p3 0.6431 0.5451 0.9961 / 0.916);
      --accent-a11: color(display-p3 0.7373 0.6588 1 / 0.975);
      --accent-a12: color(display-p3 0.8941 0.8745 1 / 0.988);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.1333 0.102 0.2275 / 0.5);
      --accent-indicator: oklch(71.2% 0.1657 292.8);
      --accent-track: oklch(71.2% 0.1657 292.8);
    }
  }
}


.dark {
  --grayscale-1: #111113;
  --grayscale-2: #18191b;
  --grayscale-3: #212225;
  --grayscale-4: #272a2d;
  --grayscale-5: #2e3135;
  --grayscale-6: #363a3f;
  --grayscale-7: #43484e;
  --grayscale-8: #5a6169;
  --grayscale-9: #696e77;
  --grayscale-10: #777b84;
  --grayscale-11: #b0b4ba;
  --grayscale-12: #edeef0;

  --grayscale-a1: #00000000;
  --grayscale-a2: #d8f4f609;
  --grayscale-a3: #ddeaf814;
  --grayscale-a4: #d3edf81d;
  --grayscale-a5: #d9edfe25;
  --grayscale-a6: #d6ebfd30;
  --grayscale-a7: #d9edff40;
  --grayscale-a8: #d9edff5d;
  --grayscale-a9: #dfebfd6d;
  --grayscale-a10: #e5edfd7b;
  --grayscale-a11: #f1f7feb5;
  --grayscale-a12: #fcfdffef;

  --grayscale-contrast: #fff;
  --grayscale-surface: rgba(0, 0, 0, 0.05);
  --grayscale-indicator: #696e77;
  --grayscale-track: #696e77;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --grayscale-1: color(display-p3 0.067 0.067 0.074);
      --grayscale-2: color(display-p3 0.095 0.098 0.105);
      --grayscale-3: color(display-p3 0.13 0.135 0.145);
      --grayscale-4: color(display-p3 0.156 0.163 0.176);
      --grayscale-5: color(display-p3 0.183 0.191 0.206);
      --grayscale-6: color(display-p3 0.215 0.226 0.244);
      --grayscale-7: color(display-p3 0.265 0.28 0.302);
      --grayscale-8: color(display-p3 0.357 0.381 0.409);
      --grayscale-9: color(display-p3 0.415 0.431 0.463);
      --grayscale-10: color(display-p3 0.469 0.483 0.514);
      --grayscale-11: color(display-p3 0.692 0.704 0.728);
      --grayscale-12: color(display-p3 0.93 0.933 0.94);

      --grayscale-a1: #00000000;
      --grayscale-a2: #d8f4f609;
      --grayscale-a3: #ddeaf814;
      --grayscale-a4: #d3edf81d;
      --grayscale-a5: #d9edfe25;
      --grayscale-a6: #d6ebfd30;
      --grayscale-a7: #d9edff40;
      --grayscale-a8: #d9edff5d;
      --grayscale-a9: #dfebfd6d;
      --grayscale-a10: #e5edfd7b;
      --grayscale-a11: #f1f7feb5;
      --grayscale-a12: #fcfdffef;

      --grayscale-contrast: #fff;
      --grayscale-surface: color(display-p3 0 0 0 / 5%);
      --grayscale-indicator: color(display-p3 0.415 0.431 0.463);
      --grayscale-track: color(display-p3 0.415 0.431 0.463);
    }
  }
}

.light, :root {
  color-scheme: light;
  --accent: rgba(75, 33, 245, 1);
  --background: rgba(255, 255, 255, 1);
  --border: initial;
  --sidebar-background: initial;
  --header-background: color-mix(in srgb, var(--background), transparent 30%);
  --card-background: initial;
  --theme-color: #fff;
}

.dark {
  color-scheme: dark;
  --accent: rgba(167, 139, 255, 1);
  --background: rgba(11, 13, 18, 1);
  --border: initial;
  --sidebar-background: initial;
  --header-background: color-mix(in srgb, var(--background), transparent 30%);
  --card-background: initial;
  --theme-color: #0b0d12;
}

/* Bubble Tabs Theme */
:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item]::after {
  display: none;
}

:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item] {
  position: relative;
  isolation: isolate;
  transition: color 0.15s ease-in-out;
}

:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item]::before {
  content: "";
  position: absolute;
  inset: 6px 0;
  border-radius: 9999px;
  z-index: -1;
  transition: background-color 0.15s ease-in-out;
}

:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="active"] {
  color: var(--accent-a11);
}

:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="active"]::before {
  background-color: var(--accent-a3);
}

:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="active"] > span {
  -webkit-text-stroke: 0.5px currentcolor;
}

:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="inactive"]:hover::before {
  background-color: var(--grayscale-a3);
}
:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="inactive"]:focus-visible::before {
  background-color: var(--grayscale-a3);
}

.dark [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="active"] {
  color: var(--accent-a11);
}

.dark [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="active"]::before {
  background-color: var(--accent-a3);
}

.dark [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="inactive"]:hover::before {
  background-color: var(--grayscale-a3);
}
.dark [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="inactive"]:focus-visible::before {
  background-color: var(--grayscale-a3);
}

/* Bubble theme: reset parent bg on active+focus-visible to avoid stacked alpha with the ::before pill */
:root [data-tabs-theme="bubble"] #fern-header [data-radix-collection-item][data-state="active"]:focus-visible {
  background: transparent;
}

/* AEI-292: tarjeta de alta a los avisos de cambios de la API.
 *
 * Los colores se declaran acá y no se toman de las variables que genera Fern
 * (--accent, --grayscale-N) a proposito: su formato no esta documentado, y si
 * el valor fuese una terna RGB para componer con rgb() en vez de un color CSS,
 * cada `color: var(--accent)` seria una declaracion invalida y el navegador la
 * descartaria sin avisar. Los hex de abajo son los mismos de `colors:` en
 * docs.yml, asi que la tarjeta queda alineada con la marca igual.
 *
 * Se estila por #id y por [data-*] y no por clases porque el MDX se compila a
 * JSX, donde `class` no es un atributo valido: React lo ignora y avisa por
 * consola. Los data-* pasan tal cual.
 */

#changelog-subscribe {
  --cs-accent: #4b21f5;
  --cs-accent-hover: #3a17c9;
  --cs-text: #0b0d12;
  --cs-muted: #5b6070;
  --cs-border: #e3e5ea;
  --cs-surface: #fbfbfc;
  --cs-field: #ffffff;
  --cs-error: #b42318;
  --cs-success: #067647;

  margin: 2.5rem 0 0;
  padding: 1.25rem 1.35rem 1.35rem;
  border: 1px solid var(--cs-border);
  border-radius: 12px;
  background: var(--cs-surface);
}

/* Fern marca el tema oscuro con `.dark` en la raiz. */
.dark #changelog-subscribe {
  --cs-accent: #a78bff;
  --cs-accent-hover: #b9a2ff;
  --cs-text: #f4f5f7;
  --cs-muted: #9aa0b0;
  --cs-border: #23262e;
  --cs-surface: #12141a;
  --cs-field: #0b0d12;
  --cs-error: #f97066;
  --cs-success: #47cd89;
}

#changelog-subscribe [data-subscribe-title] {
  margin: 0;
  color: var(--cs-text);
  font-size: 0.975rem;
  font-weight: 600;
  line-height: 1.4;
}

#changelog-subscribe [data-subscribe-copy] {
  margin: 0.3rem 0 0;
  color: var(--cs-muted);
  font-size: 0.85rem;
  line-height: 1.5;
  max-width: 62ch;
}

#changelog-subscribe [data-subscribe-form] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0.95rem 0 0;
}

#changelog-subscribe input[type="email"] {
  flex: 1 1 15rem;
  min-width: 0;
  padding: 0.5rem 0.7rem;
  border: 1px solid var(--cs-border);
  border-radius: 8px;
  background: var(--cs-field);
  color: var(--cs-text);
  font: inherit;
  font-size: 0.875rem;
  line-height: 1.4;
}

#changelog-subscribe input[type="email"]::placeholder {
  color: var(--cs-muted);
  opacity: 1;
}

#changelog-subscribe input[type="email"]:focus-visible {
  outline: 2px solid var(--cs-accent);
  outline-offset: 1px;
  border-color: var(--cs-accent);
}

#changelog-subscribe button {
  flex: 0 0 auto;
  padding: 0.5rem 1.05rem;
  border: 0;
  border-radius: 8px;
  background: var(--cs-accent);
  color: #ffffff;
  font: inherit;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
  transition: background 120ms ease, opacity 120ms ease;
}

/* El violeta claro del tema oscuro no da contraste con texto blanco. */
.dark #changelog-subscribe button {
  color: #14101f;
}

#changelog-subscribe button:hover:not(:disabled) {
  background: var(--cs-accent-hover);
}
#changelog-subscribe button:focus-visible:not(:disabled) {
  background: var(--cs-accent-hover);
}

#changelog-subscribe button:focus-visible {
  outline: 2px solid var(--cs-accent);
  outline-offset: 2px;
}

#changelog-subscribe button:disabled {
  cursor: default;
  opacity: 0.6;
}

/* El honeypot. Va escondido por CSS y no con `tabindex="-1"`, que en JSX se
 * escribe `tabIndex` y no sobrevive al compilado. `display: none` ya lo saca
 * del orden de tabulacion y de los lectores de pantalla. */
#changelog-subscribe [data-honeypot] {
  display: none;
}

/* Sin `min-height`: reservar el alto dejaba una banda vacia visible al pie de
 * la tarjeta. El salto de una linea al aparecer el mensaje es preferible, y no
 * empuja nada interactivo. `:empty` evita incluso ese margen mientras no hay
 * nada que decir. */
#changelog-subscribe [data-subscribe-status] {
  margin: 0.7rem 0 0;
  font-size: 0.825rem;
  line-height: 1.5;
}

#changelog-subscribe [data-subscribe-status]:empty {
  margin: 0;
}

#changelog-subscribe [data-subscribe-status][data-state="error"] {
  color: var(--cs-error);
}

#changelog-subscribe [data-subscribe-status][data-state="ok"] {
  color: var(--cs-success);
  font-weight: 500;
}

#changelog-subscribe [data-subscribe-status][data-state="pending"] {
  color: var(--cs-muted);
}

/* En pantallas chicas el boton pasa a ocupar todo el ancho: partido en dos
 * columnas angostas el campo de correo queda inusable. */
@media (max-width: 30rem) {

  #changelog-subscribe button {
    flex: 1 1 100%;
  }

}
