/* Generated from products/design-system/shared/developer-api by Navorina/scripts/sync-ds-invoice-document.mjs. Do not edit. */
/* Settings → API (shared/developer-api.js). Cards, rows, pills and buttons are DS primitives; this adds the list
   rhythm, the one-time secret box, the code block, the checkbox list and the muted red of Revoke and Remove.
   Copied to the product as Navorina/css/components/nv-developer-api.css. */
.nv-dev-card + .nv-dev-card, .nv-dev-card + .nv-m-gate, .nv-m-gate + .nv-dev-card { margin-block-start: 16px; }
.nv-dev-list { display: grid; gap: 2px; }
.nv-dev-row { grid-template-columns: 36px minmax(0, 1fr) auto; }
.nv-dev-row .nv-o-list-row__title { display: flex; min-width: 0; align-items: center; gap: 8px; }
.nv-dev-row .nv-o-list-row__sub { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.nv-dev-row__end { display: inline-flex; align-items: center; gap: 8px; }
.nv-dev-row-button { display: block; width: 100%; padding: 0; border: 0; border-radius: 1.5rem; background: transparent; color: inherit; font: inherit; text-align: start; cursor: pointer; }
.nv-dev-row-button:hover .nv-dev-row { background: var(--nv-table-well-hover, rgb(136 136 136 / .12)); }
.nv-dev-row-button:focus-visible { outline: 2px solid var(--nv-table-focus, currentColor); outline-offset: 2px; }
.nv-dev-chevron { display: inline-flex; color: var(--nv-table-head, rgb(238 238 238 / .5)); }
.nv-dev-mono { font-family: var(--lib-font-mono, ui-monospace, SFMono-Regular, Menlo, monospace); font-size: .92em; letter-spacing: 0; }
.nv-dev-url { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.nv-dev-empty { padding-block: 20px; }
.nv-dev-empty .product-button { margin-block-start: 12px; }

.nv-dev-secret, .nv-dev-code { position: relative; display: flex; min-width: 0; align-items: center; gap: 8px; padding: 10px 8px 10px 14px; border-radius: 12px; background: var(--nv-table-well, rgb(136 136 136 / .1)); }
.nv-dev-secret code { min-width: 0; flex: 1; overflow-wrap: anywhere; color: var(--nv-table-text, inherit); }
.nv-dev-code { align-items: flex-start; margin-block-start: 8px; }
.nv-dev-code pre { min-width: 0; flex: 1; margin: 0; overflow-x: auto; color: var(--nv-table-text, inherit); font-family: var(--lib-font-mono, ui-monospace, SFMono-Regular, Menlo, monospace); font-size: 13px; line-height: 1.6; white-space: pre; }
.nv-dev-copy { display: inline-flex; flex: none; width: 28px; height: 28px; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 8px; background: transparent; color: var(--nv-table-head, rgb(238 238 238 / .6)); cursor: pointer; }
.nv-dev-copy:hover { background: var(--nv-table-well-hover, rgb(136 136 136 / .16)); color: var(--nv-table-text, inherit); }
.nv-dev-copy:focus-visible { outline: 2px solid var(--nv-table-focus, currentColor); outline-offset: 1px; }

.nv-dev-reveal { display: grid; gap: 6px; }
.nv-dev-reveal__title { margin: 0; color: var(--nv-table-text, inherit); font-weight: var(--nv-type-weight-semibold, 600); }
.nv-dev-reveal__copy { margin: 0 0 6px; color: var(--nv-table-head, rgb(238 238 238 / .6)); font-size: var(--nv-type-callout-size, 14px); line-height: var(--nv-type-callout-line, 1.45); }

.nv-dev-field { display: grid; gap: 6px; }
.nv-dev-checks { display: grid; gap: 2px; min-width: 0; margin: 16px 0 0; padding: 0; border: 0; }
.nv-dev-checks legend { margin-block-end: 6px; padding: 0; }
.nv-dev-check { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; align-items: center; gap: 10px; min-height: 40px; padding: 0 10px; border-radius: 10px; color: var(--nv-table-text, inherit); cursor: pointer; }
.nv-dev-check:hover { background: var(--nv-table-well-hover, rgb(136 136 136 / .12)); }
.nv-dev-check input { width: 16px; height: 16px; margin: 0; accent-color: var(--product-button-primary, currentColor); }
.nv-dev-check code { color: var(--nv-table-head, rgb(238 238 238 / .5)); }
.nv-dev-error { margin: 12px 0 0; color: var(--nv-feedback-error, #ff6b6b); font-size: var(--nv-type-footnote-size, 13px); }

.nv-dev-endpoint { display: grid; gap: 12px; }
.nv-dev-endpoint__events { margin: 0; color: var(--nv-table-head, rgb(238 238 238 / .6)); font-size: var(--nv-type-callout-size, 14px); }
.nv-dev-endpoint__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.nv-dev-endpoint__actions svg { margin-inline-end: 6px; }
.nv-dev-subhead { margin: 24px 0 8px; color: var(--nv-table-text, inherit); font-size: var(--nv-type-subhead-size, 15px); font-weight: var(--nv-type-weight-semibold, 600); }

.nv-dev-skeleton { display: grid; gap: 10px; padding-block: 6px; }
.nv-dev-skeleton span { display: block; height: 48px; border-radius: 14px; background: var(--nv-table-bone, rgb(136 136 136 / .12)); animation: nv-dev-pulse 1.4s ease-in-out infinite; }
@keyframes nv-dev-pulse { 50% { opacity: .55; } }
@media (prefers-reduced-motion: reduce) { .nv-dev-skeleton span { animation: none; } }

/* Revoke, Remove: the product's muted red, a faint red fill and red text, no outline. */
:is(.nv-dev-card, .nv-dev-endpoint, .nv-dev-confirm) .product-button-danger { border-color: transparent; background: var(--product-button-danger-bg); color: var(--product-button-danger); }
:is(.nv-dev-card, .nv-dev-endpoint, .nv-dev-confirm) .product-button-danger:hover:not(:disabled) { border-color: transparent; background: color-mix(in srgb, var(--product-button-danger-bg) 100%, var(--product-button-danger) 10%); }

@media (max-width: 560px) {
  .nv-dev-row { grid-template-columns: 36px minmax(0, 1fr); }
  .nv-dev-row__end { grid-column: 2; justify-self: start; }
  .nv-dev-check { grid-template-columns: 18px minmax(0, 1fr); }
  .nv-dev-check code { display: none; }
}

/* API docs (shared/developer-docs.js): guide islands with code blocks and two small tables. */
.nv-dev-docs__section > * + * { margin-block-start: 12px; }
.nv-dev-docs__section p { margin-block-end: 0; }
.nv-dev-docs__line { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.nv-dev-docs__table { overflow-x: auto; }
.nv-dev-docs__table table { width: 100%; border-collapse: collapse; font-size: var(--nv-type-callout-size, 14px); }
.nv-dev-docs__table th { padding: 8px 12px 8px 0; color: var(--nv-table-head, rgb(238 238 238 / .6)); font-weight: var(--nv-type-weight-medium, 500); text-align: start; }
.nv-dev-docs__table td { padding: 10px 12px 10px 0; border-top: 1px solid var(--nv-table-well, rgb(136 136 136 / .14)); color: var(--nv-table-text, inherit); vertical-align: top; }
.nv-dev-docs p code { overflow-wrap: anywhere; }
.nv-dev-card .nv-dev-code pre { white-space: pre-wrap; overflow-wrap: anywhere; }
