/*fern-site-stylesheet*/:root {
  --header-height: 64px;
  --header-height-real: 64px;
  --mobile-header-height-real: 64px;
  --content-width: 640px;
  --sidebar-width: 288px;
  --page-width: 1792px;
  --logo-height: 28px;
  --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: #fcfdfe;
  --accent-2: #f7f9ff;
  --accent-3: #ecf2ff;
  --accent-4: #dfeaff;
  --accent-5: #cfdfff;
  --accent-6: #bcd1ff;
  --accent-7: #a5bffd;
  --accent-8: #85a5f5;
  --accent-9: #466ff6;
  --accent-10: #3a61e8;
  --accent-11: #375bd3;
  --accent-12: #1c2d61;

  --accent-a1: #0055aa03;
  --accent-a2: #0040ff08;
  --accent-a3: #0051ff13;
  --accent-a4: #0058ff20;
  --accent-a5: #0055ff30;
  --accent-a6: #0050ff43;
  --accent-a7: #014afa5a;
  --accent-a8: #0143eb7a;
  --accent-a9: #0039f3b9;
  --accent-a10: #0033e1c5;
  --accent-a11: #002ec7c8;
  --accent-a12: #00134ee3;

  --accent-contrast: #fff;
  --accent-surface: #f5f8ffcc;
  --accent-indicator: #466ff6;
  --accent-track: #466ff6;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --accent-1: oklch(99.4% 0.0018 267);
      --accent-2: oklch(98.3% 0.0088 267);
      --accent-3: oklch(96.1% 0.0187 267);
      --accent-4: oklch(93.6% 0.0366 267);
      --accent-5: oklch(90.4% 0.0551 267);
      --accent-6: oklch(86.3% 0.076 267);
      --accent-7: oklch(80.7% 0.0933 267);
      --accent-8: oklch(73.1% 0.1225 267);
      --accent-9: oklch(58.9% 0.2072 267);
      --accent-10: oklch(54.6% 0.2089 267);
      --accent-11: oklch(51.7% 0.1896 267);
      --accent-12: oklch(31.4% 0.0946 267);

      --accent-a1: color(display-p3 0.0235 0.349 0.6745 / 0.012);
      --accent-a2: color(display-p3 0.0196 0.2667 0.8784 / 0.032);
      --accent-a3: color(display-p3 0.0078 0.2824 0.9451 / 0.071);
      --accent-a4: color(display-p3 0.0039 0.3059 0.9373 / 0.118);
      --accent-a5: color(display-p3 0.0039 0.2706 0.9373 / 0.177);
      --accent-a6: color(display-p3 0.0039 0.2588 0.9373 / 0.248);
      --accent-a7: color(display-p3 0.0039 0.2392 0.9216 / 0.334);
      --accent-a8: color(display-p3 0.0039 0.2196 0.8627 / 0.455);
      --accent-a9: color(display-p3 0 0.1765 0.902 / 0.691);
      --accent-a10: color(display-p3 0 0.1529 0.8353 / 0.738);
      --accent-a11: color(display-p3 0 0.1412 0.7333 / 0.753);
      --accent-a12: color(display-p3 0 0.0588 0.2784 / 0.875);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.9608 0.9725 1 / 0.8);
      --accent-indicator: oklch(58.9% 0.2072 267);
      --accent-track: oklch(58.9% 0.2072 267);
    }
  }
}


.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: #080e1b;
  --accent-2: #101627;
  --accent-3: #14234e;
  --accent-4: #192c69;
  --accent-5: #20367d;
  --accent-6: #29418e;
  --accent-7: #324ea3;
  --accent-8: #3a5bbf;
  --accent-9: #466ff6;
  --accent-10: #3b61e7;
  --accent-11: #90b3ff;
  --accent-12: #d3e1ff;

  --accent-a1: #000ef90b;
  --accent-a2: #2d64fb18;
  --accent-a3: #2860fd42;
  --accent-a4: #2e5ffd5f;
  --accent-a5: #3766ff74;
  --accent-a6: #436fff86;
  --accent-a7: #4976fe9d;
  --accent-a8: #4b77febb;
  --accent-a9: #4973fef6;
  --accent-a10: #406afee6;
  --accent-a11: #90b3ff;
  --accent-a12: #d3e1ff;

  --accent-contrast: #fff;
  --accent-surface: #131e3d80;
  --accent-indicator: #466ff6;
  --accent-track: #466ff6;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --accent-1: oklch(16.4% 0.0291 267);
      --accent-2: oklch(20.4% 0.0356 267);
      --accent-3: oklch(27% 0.0817 267);
      --accent-4: oklch(31.8% 0.1099 267);
      --accent-5: oklch(36.1% 0.1232 267);
      --accent-6: oklch(40.3% 0.1304 267);
      --accent-7: oklch(45% 0.1418 267);
      --accent-8: oklch(50.3% 0.1618 267);
      --accent-9: oklch(58.9% 0.2072 267);
      --accent-10: oklch(54.6% 0.2072 267);
      --accent-11: oklch(77.7% 0.1454 267);
      --accent-12: oklch(91.1% 0.0505 267);

      --accent-a1: color(display-p3 0 0.0588 0.9961 / 0.038);
      --accent-a2: color(display-p3 0.2275 0.4078 0.9922 / 0.089);
      --accent-a3: color(display-p3 0.2118 0.3922 1 / 0.244);
      --accent-a4: color(display-p3 0.2314 0.3882 1 / 0.353);
      --accent-a5: color(display-p3 0.2667 0.4078 1 / 0.437);
      --accent-a6: color(display-p3 0.3098 0.4431 1 / 0.505);
      --accent-a7: color(display-p3 0.3373 0.4706 1 / 0.593);
      --accent-a8: color(display-p3 0.3412 0.4784 1 / 0.706);
      --accent-a9: color(display-p3 0.3294 0.4588 1 / 0.929);
      --accent-a10: color(display-p3 0.298 0.4275 1 / 0.866);
      --accent-a11: color(display-p3 0.6078 0.7176 1 / 0.975);
      --accent-a12: color(display-p3 0.851 0.8941 1 / 0.988);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.0784 0.1176 0.2275 / 0.5);
      --accent-indicator: oklch(58.9% 0.2072 267);
      --accent-track: oklch(58.9% 0.2072 267);
    }
  }
}


.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(70, 111, 246, 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(70, 111, 246, 1);
  --background: rgba(13, 14, 17, 1);
  --border: initial;
  --sidebar-background: initial;
  --header-background: color-mix(in srgb, var(--background), transparent 30%);
  --card-background: initial;
  --theme-color: #0d0e11;
}

.fixed-table {

  display: block;
  font-size: 14px;
  line-height: 20px;
  overflow-x: auto;

  tbody {
    display: block;
  }

  tr {
    display: flex;
  }

  td {
    flex-wrap: wrap;
    flex-grow: 1;
    flex-shrink: 0;
    box-sizing: border-box;
    text-align: left;
  }

  a {
    align-self: flex-end;
  }

  code .scroll-auto {
    display: inline-block;
    overflow: auto;
    max-width: 100%;
  }

  img {
    max-width: 100%;
  }

}

.cdn-operation-sample {

  width: auto;
  margin: 1em 0;
  font-size: 14px;
  display: block;
  overflow-x: auto;

  code {
    font-size: 12px;
  }

  span {
    font-size: 14px;
    color: rgb(89, 101, 112);
  }

  tr {
    border: none;
  }

  td {
    padding: 0 5px 0 0;

    vertical-align: top;
  }

  td:last-child {
    padding-right: 0;
  }

  img,
  video {
    width: 220px;
    max-width: none;
    padding: 0;
    margin-bottom: 0;
  }

  p {
    margin-top: 0px;
  }

  &.cdn-operation-sample-4cols {

    img,
    video {
      width: 160px;
    }
  
}

  &.cdn-operation-sample-2cols {

    img,
    video {
      width: 330px;
    }
  
}

}

.integration-link {
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Hide line numbers in MDX code blocks */
td.code-block-line-gutter {
  display: none;
}

/* Keep blank lines visible in MDX code blocks after line numbers are hidden */
.code-block-line-content .line:empty::before {
  content: " ";
  white-space: pre;
}

/*
 * `layout.show-nav-availability-badges` puts availability badges in the sidebar,
 * but Fern inherits a section's availability down to each of its pages, so one
 * `beta` section badges all nine of its children as well. Keep the badge on the
 * section entry and drop the inherited copies.
 *
 * Sections render as <button> with no href and children as <a href>, so matching
 * the href leaves the section's own badge untouched. Substring match because the
 * dev server emits `/docs/ai-image-editor` and production `/docs/ai-image-editor/`.
 *
 * Restricted to the Guides tab: the Integrations tab lists this same page under
 * `slug: ai-image-editor`, i.e. the identical URL, with its own deliberate
 * `availability: beta`. The active tab link is the only thing that separates the
 * two contexts, since href cannot. Match the Guides tab href both with and
 * without the trailing slash — the dev server emits `/docs`, production `/docs/`.
 */
body:has(a[data-state='active']:is([href='/docs'], [href='/docs/']))
  .fern-sidebar-link[href*='ai-image-editor']
  .fern-docs-badge {
  display: none;
}

/*
 * For AI Image Editor, availability belongs in the nav — where it labels the whole
 * area once — rather than repeated above all nine page titles. The section badge is
 * the single source of truth, so drop the inherited page-header copy.
 *
 * Scoped via the breadcrumb, which is the only per-page signal available: nothing
 * on <body>/<main>/<article> carries the slug. Other areas keep their header
 * badges, including the beta File Uploader plugin page, whose breadcrumb points at
 * File Uploader rather than here.
 */
header:has(a[href*='/ai-image-editor']) [data-badge-type='availability'] {
  display: none;
}

/*
 * Rates section (billing.mdx) — Resolution multiplier and Codec multiplier
 * tables sit side by side but Fern's default table-layout: auto sizes each
 * table's columns independently based on its own content, so adjacent
 * tables with different text lengths end up with mismatched widths and
 * (0 default margin) almost no visual separation. Both tables opt in via
 * className="fern-table rates-multiplier-table".
 */
.rates-multiplier-table {
  table-layout: fixed;
}

.rates-multiplier-table th:first-child,
.rates-multiplier-table td:first-child {
  width: 60%;
}

.rates-multiplier-table th:last-child,
.rates-multiplier-table td:last-child {
  width: 40%;
}

/*
 * Fern's .fern-scroll-area-viewport wrapper sets overflow-x: scroll
 * unconditionally (confirmed site-wide, not specific to these tables),
 * which forces a persistent scrollbar track even when content never
 * overflows. On systems that always render scrollbar tracks, that track
 * sits in the margin-bottom gap above, making it look like there's no
 * space between the two tables. Scoped to just these two tables' wrappers
 * since neither ever needs horizontal scroll.
 */
.fern-scroll-area-viewport:has(table.rates-multiplier-table) {
  /* important required: Fern sets overflow via an inline style attribute
   * on this element (style="overflow: scroll"), which otherwise always
   * wins over an external stylesheet rule regardless of specificity. */
  overflow-x: auto !important;
}

/*
 * Gap between the two multiplier tables, matching Alex's ask: same
 * spacing as between two paragraphs. Fern's natural inter-block rhythm
 * measured at 20px elsewhere on this page (paragraph-to-table and
 * table-to-paragraph, both 20px), not an arbitrary value.
 *
 * Applied as margin-top on the second table's wrapper rather than
 * margin-bottom on the first, using a plain adjacent-sibling
 * combinator with a single (non-nested) :has() per compound selector.
 * A nested :has(+ selector:has(...)) is invalid in this environment
 * (CSS.supports('selector(:has(+ div:has(span)))') === false) and
 * gets silently dropped by the parser rather than just not matching.
 * Margin must live on .fern-table-root itself, not any descendant:
 * it has overflow: hidden, which clips a child's margin instead of
 * letting it produce space.
 */
.fern-table-root:has(table.rates-multiplier-table)
  + .fern-table-root:has(table.rates-multiplier-table) {
  margin-top: 20px;
}

@tailwind base;@tailwind components;@tailwind utilities;.custom-panel-container{margin-top:10px}.custom-panel-container .uploadcare--panel,.custom-panel-container .uploadcare--menu__item,.custom-panel-container .uploadcare--menu__items{background-color:transparent;border:0}.custom-panel-container .uploadcare--panel{flex-direction:column}.custom-panel-container .uploadcare--menu{width:100%;height:60px;min-height:60px}.custom-panel-container .uploadcare--menu__items{padding-right:0;flex-direction:row}.custom-panel-container .uploadcare--menu__item_tab_favorites.uploadcare--menu__item_current{color:#f0cb3c}.custom-panel-container .uploadcare--tab_name_favorites{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;overflow:auto}.custom-panel-container .favorite-files-image{width:140px;height:140px;margin:10px;padding:5px;color:#0006;box-shadow:0 6px 20px -3px;cursor:pointer}.custom-panel-container .favorite-files-image:hover{color:#0064c880}
.custom-panel-container .favorite-files-image:focus-visible {color:#0064c880}.custom-panel-styling .uploadcare--panel,.custom-panel-styling .uploadcare--menu__item,.custom-panel-styling .uploadcare--menu__items{background-color:transparent;border:0}.custom-panel-styling .uploadcare--panel{flex-direction:column}.custom-panel-styling .uploadcare--menu{width:100%;height:60px;min-height:60px}.custom-panel-styling .uploadcare--menu__items{padding-right:0;flex-direction:row}#integrately-embed .itlIntegrationWidget *{color:var(--body-text);background-color:transparent}#integrately-embed .itlIntegrationWidget .iltIntegrationListItem{border:1px solid #e2dcea}.itlAppSearchContainer #searchConnectionAppInput:hover,.itlAppSearchContainer #searchConnectionAppInput:active,.itlAppSearchContainer #searchConnectionAppInput:focus,.itlAppSearchContainer #searchConnectionAppInput:focus-visible{outline:none;border:none;box-shadow:none}#integrately-embed #appConnectionDropdownList{background-color:var(--grayscale-2)}#integrately-embed #appConnectionDropdownList a:hover,#integrately-embed #appConnectionDropdownList a:focus{color:var(--accent-9);transition:color .2s ease-in-out}
#integrately-embed #appConnectionDropdownList a:focus-visible {color:var(--accent-9);transition:color .2s ease-in-out}#searchConnectionAppInput:active{outline:none}
