/* Paridity docs-site theme - GENERATED by scripts/gen_brand_theme.py from
 * docs/governance/brand/tokens/paridity_tokens.json. Do not hand-edit: edit the
 * token file and run `python scripts/gen_brand_theme.py` (#3024 part C).
 *
 * Two renderings of the Evil Genius theme: dark (the default scheme,
 * `paridity-dark`) and light (Material's `default` scheme). The header
 * carries the Paridity logo (white-on-transparent artwork, so the bar is the dark
 * ground in both schemes); the maker is a text line in the footer. No Evil Genius
 * logo is placed anywhere on this site (brand kit section 1, rule 2).
 *
 * Fonts: Plus Jakarta Sans and JetBrains Mono, SIL Open Font License 1.1
 * (fonts/OFL-LICENSE.txt), copied from frontend/public/fonts/evil-genius/ at
 * build time. General Sans is never shipped; the body stack falls back to Calibri.
 */

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/PlusJakartaSans-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("fonts/PlusJakartaSans-ExtraBold.ttf") format("truetype");
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/JetBrainsMono-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/JetBrainsMono-Bold.ttf") format("truetype");
}

:root {
  --da-bg: #080C14;
  --da-page: #080C14;
  --da-card: #111827;
  --da-surface: #111827;
  --da-surface-raised: #172033;
  --da-field: #0B1220;
  --da-line: #1E293B;
  --da-line-strong: #2A3750;
  --da-line-input: #2A3750;
  --da-line-on-surface: #1E293B;
  --da-text: #E2E8F0;
  --da-text-muted: #8694A8;
  --da-text-muted-large: #8694A8;
  --da-overline: #B8964E;
  --da-link: #30CECF;
  --da-accent: #F37020;
  --da-interactive: #30CECF;
  --da-text-on-interactive: #080C14;
  --da-text-on-fill: #FFFFFF;
  --da-success-text: #34D399;
  --da-success-fill: #047857;
  --da-success-tint: rgba(52, 211, 153, 0.12);
  --da-success-on-tint: #6EE7B7;
  --da-warning-text: #FBBF24;
  --da-warning-fill: #B45309;
  --da-warning-tint: rgba(251, 191, 36, 0.12);
  --da-warning-on-tint: #FCD34D;
  --da-error-text: #F87171;
  --da-error-fill: #B91C1C;
  --da-error-tint: rgba(248, 113, 113, 0.12);
  --da-error-on-tint: #FCA5A5;
  --da-info-text: #60A5FA;
  --da-info-fill: #1D4ED8;
  --da-info-tint: rgba(96, 165, 250, 0.12);
  --da-info-on-tint: #93C5FD;
  --da-font-display: "Plus Jakarta Sans", "Trebuchet MS", system-ui, sans-serif;
  --da-font-body: "General Sans", Calibri, "Segoe UI", system-ui, -apple-system, sans-serif;
  --da-font-mono: "JetBrains Mono", Consolas, "Courier New", monospace;
  --da-chrome-bg: #080C14;
  --da-chrome-text: #E2E8F0;
  --da-chrome-text-muted: #8694A8;
}
[data-md-color-scheme="paridity-dark"] {
  --da-bg: #080C14;
  --da-page: #080C14;
  --da-card: #111827;
  --da-surface: #111827;
  --da-surface-raised: #172033;
  --da-field: #0B1220;
  --da-line: #1E293B;
  --da-line-strong: #2A3750;
  --da-line-input: #2A3750;
  --da-line-on-surface: #1E293B;
  --da-text: #E2E8F0;
  --da-text-muted: #8694A8;
  --da-text-muted-large: #8694A8;
  --da-overline: #B8964E;
  --da-link: #30CECF;
  --da-accent: #F37020;
  --da-interactive: #30CECF;
  --da-text-on-interactive: #080C14;
  --da-text-on-fill: #FFFFFF;
  --da-success-text: #34D399;
  --da-success-fill: #047857;
  --da-success-tint: rgba(52, 211, 153, 0.12);
  --da-success-on-tint: #6EE7B7;
  --da-warning-text: #FBBF24;
  --da-warning-fill: #B45309;
  --da-warning-tint: rgba(251, 191, 36, 0.12);
  --da-warning-on-tint: #FCD34D;
  --da-error-text: #F87171;
  --da-error-fill: #B91C1C;
  --da-error-tint: rgba(248, 113, 113, 0.12);
  --da-error-on-tint: #FCA5A5;
  --da-info-text: #60A5FA;
  --da-info-fill: #1D4ED8;
  --da-info-tint: rgba(96, 165, 250, 0.12);
  --da-info-on-tint: #93C5FD;
  --da-font-display: "Plus Jakarta Sans", "Trebuchet MS", system-ui, sans-serif;
  --da-font-body: "General Sans", Calibri, "Segoe UI", system-ui, -apple-system, sans-serif;
  --da-font-mono: "JetBrains Mono", Consolas, "Courier New", monospace;
  --da-chrome-bg: #080C14;
  --da-chrome-text: #E2E8F0;
  --da-chrome-text-muted: #8694A8;
}
[data-md-color-scheme="default"] {
  --da-bg: #FFFFFF;
  --da-page: #F1F5F9;
  --da-card: #FFFFFF;
  --da-surface: #F1F5F9;
  --da-surface-raised: #F1F5F9;
  --da-field: #FFFFFF;
  --da-line: #E2E8F0;
  --da-line-strong: #E2E8F0;
  --da-line-input: #6B8AAE;
  --da-line-on-surface: #E2E8F0;
  --da-text: #0F172A;
  --da-text-muted: #0F172A;
  --da-text-muted-large: #6B8AAE;
  --da-overline: #0F172A;
  --da-link: #0F172A;
  --da-accent: #F37020;
  --da-interactive: #28ADAE;
  --da-text-on-interactive: #0F172A;
  --da-text-on-fill: #FFFFFF;
  --da-success-text: #047857;
  --da-success-fill: #047857;
  --da-success-tint: rgba(52, 211, 153, 0.12);
  --da-success-on-tint: #047857;
  --da-warning-text: #B45309;
  --da-warning-fill: #B45309;
  --da-warning-tint: rgba(251, 191, 36, 0.12);
  --da-warning-on-tint: #0F172A;
  --da-error-text: #B91C1C;
  --da-error-fill: #B91C1C;
  --da-error-tint: rgba(248, 113, 113, 0.12);
  --da-error-on-tint: #B91C1C;
  --da-info-text: #1D4ED8;
  --da-info-fill: #1D4ED8;
  --da-info-tint: rgba(96, 165, 250, 0.12);
  --da-info-on-tint: #1D4ED8;
  --da-font-display: "Plus Jakarta Sans", "Trebuchet MS", system-ui, sans-serif;
  --da-font-body: "General Sans", Calibri, "Segoe UI", system-ui, -apple-system, sans-serif;
  --da-font-mono: "JetBrains Mono", Consolas, "Courier New", monospace;
  --da-chrome-bg: #080C14;
  --da-chrome-text: #E2E8F0;
  --da-chrome-text-muted: #8694A8;
}

[data-md-color-scheme="paridity-dark"] {
  --md-default-bg-color: var(--da-bg);
  --md-default-fg-color: var(--da-text);
  --md-default-fg-color--light: var(--da-text-muted);
  --md-default-fg-color--lighter: var(--da-line-strong);
  --md-default-fg-color--lightest: var(--da-line);
  --md-typeset-color: var(--da-text);
  --md-typeset-a-color: var(--da-link);
  --md-accent-fg-color: var(--da-interactive);
  --md-code-bg-color: var(--da-surface);
  --md-code-fg-color: var(--da-text);
  --md-typeset-table-color: var(--da-line-strong);
  --md-admonition-fg-color: var(--da-text);
  --md-admonition-bg-color: var(--da-bg);
  --md-code-hl-keyword-color: var(--da-interactive);
  --md-code-hl-string-color: var(--da-success-text);
  --md-code-hl-number-color: var(--da-warning-text);
  --md-code-hl-special-color: var(--da-error-text);
  --md-code-hl-function-color: var(--da-info-text);
  --md-code-hl-constant-color: var(--da-overline);
  --md-code-hl-name-color: var(--da-text);
  --md-code-hl-operator-color: var(--da-text-muted);
  --md-code-hl-punctuation-color: var(--da-text-muted);
  --md-code-hl-comment-color: var(--da-text-muted);
  --md-code-hl-generic-color: var(--da-text-muted);
  --md-code-hl-variable-color: var(--da-text-muted);
  --md-primary-fg-color: var(--da-chrome-bg);
  --md-primary-fg-color--light: var(--da-chrome-bg);
  --md-primary-fg-color--dark: var(--da-chrome-bg);
  --md-primary-bg-color: var(--da-chrome-text);
  --md-primary-bg-color--light: var(--da-chrome-text-muted);
  --md-footer-bg-color: var(--da-chrome-bg);
  --md-footer-bg-color--dark: var(--da-chrome-bg);
  --md-footer-fg-color: var(--da-chrome-text);
  --md-footer-fg-color--light: var(--da-chrome-text-muted);
  --md-footer-fg-color--lighter: var(--da-chrome-text-muted);
  --md-text-font: "General Sans", Calibri, "Segoe UI", system-ui, -apple-system, sans-serif;
  --md-code-font: "JetBrains Mono", Consolas, "Courier New", monospace;
}
[data-md-color-scheme="default"] {
  --md-default-bg-color: var(--da-bg);
  --md-default-fg-color: var(--da-text);
  --md-default-fg-color--light: var(--da-text-muted);
  --md-default-fg-color--lighter: var(--da-line-strong);
  --md-default-fg-color--lightest: var(--da-line);
  --md-typeset-color: var(--da-text);
  --md-typeset-a-color: var(--da-link);
  --md-accent-fg-color: var(--da-link);
  --md-code-bg-color: var(--da-surface);
  --md-code-fg-color: var(--da-text);
  --md-typeset-table-color: var(--da-line-strong);
  --md-admonition-fg-color: var(--da-text);
  --md-admonition-bg-color: var(--da-bg);
  --md-code-hl-keyword-color: var(--da-info-text);
  --md-code-hl-string-color: var(--da-success-text);
  --md-code-hl-number-color: var(--da-warning-text);
  --md-code-hl-special-color: var(--da-error-text);
  --md-code-hl-function-color: var(--da-info-text);
  --md-code-hl-constant-color: var(--da-warning-text);
  --md-code-hl-name-color: var(--da-text);
  --md-code-hl-operator-color: var(--da-text-muted);
  --md-code-hl-punctuation-color: var(--da-text-muted);
  --md-code-hl-comment-color: var(--da-text-muted);
  --md-code-hl-generic-color: var(--da-text-muted);
  --md-code-hl-variable-color: var(--da-text-muted);
  --md-primary-fg-color: var(--da-chrome-bg);
  --md-primary-fg-color--light: var(--da-chrome-bg);
  --md-primary-fg-color--dark: var(--da-chrome-bg);
  --md-primary-bg-color: var(--da-chrome-text);
  --md-primary-bg-color--light: var(--da-chrome-text-muted);
  --md-footer-bg-color: var(--da-chrome-bg);
  --md-footer-bg-color--dark: var(--da-chrome-bg);
  --md-footer-fg-color: var(--da-chrome-text);
  --md-footer-fg-color--light: var(--da-chrome-text-muted);
  --md-footer-fg-color--lighter: var(--da-chrome-text-muted);
  --md-text-font: "General Sans", Calibri, "Segoe UI", system-ui, -apple-system, sans-serif;
  --md-code-font: "JetBrains Mono", Consolas, "Courier New", monospace;
}

/* Type: Plus Jakarta Sans (Bold / ExtraBold) for titles and names, never body. */
.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-header__title {
  font-family: var(--da-font-display);
  font-weight: 700;
}
.md-typeset h1 {
  color: var(--da-text);
  font-weight: 800;
}

/* Header: the dark ground behind the Paridity logo, with the screen's ONE orange
   element as the rule beneath it. Nothing else on the site is orange. */
.md-header,
.md-tabs {
  background-color: var(--da-chrome-bg);
  color: var(--da-chrome-text);
}
.md-header {
  border-bottom: 3px solid var(--da-accent);
}
.md-header__button.md-logo img,
.md-header__button.md-logo svg {
  height: 1.6rem;
  width: auto;
}

/* Suppress Material's front-matter status badges: `status:` is internal
   documentation governance, not something a customer should read. */
.md-status {
  display: none !important;
}

/* Navigation: the active item is the link color; light adds weight, because
   teal is never text on white and Ink alone would not mark it. */
.md-nav__link--active,
.md-nav__link:focus,
.md-nav__link:hover {
  color: var(--da-link);
}
[data-md-color-scheme="default"] .md-nav__link--active {
  font-weight: 700;
}

/* Links in running text: underlined in the light rendering (token note). */
[data-md-color-scheme="default"] .md-typeset a {
  text-decoration: underline;
}

/* Tables: header band on the raised tile, zebra rows on the tile, hairlines. */
.md-typeset table:not([class]) {
  background-color: var(--da-bg);
}
.md-typeset table:not([class]) th {
  background-color: var(--da-surface-raised);
  color: var(--da-text);
  font-weight: 700;
}
.md-typeset table:not([class]) tr:nth-child(even) {
  background-color: var(--da-surface);
}
.md-typeset table:not([class]) td,
.md-typeset table:not([class]) th {
  border-color: var(--da-line);
}

/* Inline code: the tile ground. */
.md-typeset code {
  background-color: var(--da-surface);
  color: var(--da-text);
}

/* Admonitions: the semantic status set. The title always carries the type's
   label and icon beside the color (color is never the only signal). */
.md-typeset .admonition.note,
.md-typeset details.note,
.md-typeset .admonition.info,
.md-typeset details.info,
.md-typeset .admonition.abstract,
.md-typeset details.abstract,
.md-typeset .admonition.important,
.md-typeset details.important {
  border-color: var(--da-info-text);
}
.md-typeset .admonition.note > .admonition-title,
.md-typeset details.note > .admonition-title,
.md-typeset .admonition.info > .admonition-title,
.md-typeset details.info > .admonition-title,
.md-typeset .admonition.abstract > .admonition-title,
.md-typeset details.abstract > .admonition-title,
.md-typeset .admonition.important > .admonition-title,
.md-typeset details.important > .admonition-title,
.md-typeset .admonition.note > summary,
.md-typeset details.note > summary,
.md-typeset .admonition.info > summary,
.md-typeset details.info > summary,
.md-typeset .admonition.abstract > summary,
.md-typeset details.abstract > summary,
.md-typeset .admonition.important > summary,
.md-typeset details.important > summary {
  background-color: var(--da-info-tint);
}
.md-typeset .admonition.note > .admonition-title::before,
.md-typeset details.note > .admonition-title::before,
.md-typeset .admonition.info > .admonition-title::before,
.md-typeset details.info > .admonition-title::before,
.md-typeset .admonition.abstract > .admonition-title::before,
.md-typeset details.abstract > .admonition-title::before,
.md-typeset .admonition.important > .admonition-title::before,
.md-typeset details.important > .admonition-title::before,
.md-typeset .admonition.note > summary::before,
.md-typeset details.note > summary::before,
.md-typeset .admonition.info > summary::before,
.md-typeset details.info > summary::before,
.md-typeset .admonition.abstract > summary::before,
.md-typeset details.abstract > summary::before,
.md-typeset .admonition.important > summary::before,
.md-typeset details.important > summary::before {
  background-color: var(--da-info-text);
}
.md-typeset .admonition.tip,
.md-typeset details.tip,
.md-typeset .admonition.success,
.md-typeset details.success,
.md-typeset .admonition.question,
.md-typeset details.question {
  border-color: var(--da-success-text);
}
.md-typeset .admonition.tip > .admonition-title,
.md-typeset details.tip > .admonition-title,
.md-typeset .admonition.success > .admonition-title,
.md-typeset details.success > .admonition-title,
.md-typeset .admonition.question > .admonition-title,
.md-typeset details.question > .admonition-title,
.md-typeset .admonition.tip > summary,
.md-typeset details.tip > summary,
.md-typeset .admonition.success > summary,
.md-typeset details.success > summary,
.md-typeset .admonition.question > summary,
.md-typeset details.question > summary {
  background-color: var(--da-success-tint);
}
.md-typeset .admonition.tip > .admonition-title::before,
.md-typeset details.tip > .admonition-title::before,
.md-typeset .admonition.success > .admonition-title::before,
.md-typeset details.success > .admonition-title::before,
.md-typeset .admonition.question > .admonition-title::before,
.md-typeset details.question > .admonition-title::before,
.md-typeset .admonition.tip > summary::before,
.md-typeset details.tip > summary::before,
.md-typeset .admonition.success > summary::before,
.md-typeset details.success > summary::before,
.md-typeset .admonition.question > summary::before,
.md-typeset details.question > summary::before {
  background-color: var(--da-success-text);
}
.md-typeset .admonition.warning,
.md-typeset details.warning,
.md-typeset .admonition.example,
.md-typeset details.example,
.md-typeset .admonition.quote,
.md-typeset details.quote {
  border-color: var(--da-warning-text);
}
.md-typeset .admonition.warning > .admonition-title,
.md-typeset details.warning > .admonition-title,
.md-typeset .admonition.example > .admonition-title,
.md-typeset details.example > .admonition-title,
.md-typeset .admonition.quote > .admonition-title,
.md-typeset details.quote > .admonition-title,
.md-typeset .admonition.warning > summary,
.md-typeset details.warning > summary,
.md-typeset .admonition.example > summary,
.md-typeset details.example > summary,
.md-typeset .admonition.quote > summary,
.md-typeset details.quote > summary {
  background-color: var(--da-warning-tint);
}
.md-typeset .admonition.warning > .admonition-title::before,
.md-typeset details.warning > .admonition-title::before,
.md-typeset .admonition.example > .admonition-title::before,
.md-typeset details.example > .admonition-title::before,
.md-typeset .admonition.quote > .admonition-title::before,
.md-typeset details.quote > .admonition-title::before,
.md-typeset .admonition.warning > summary::before,
.md-typeset details.warning > summary::before,
.md-typeset .admonition.example > summary::before,
.md-typeset details.example > summary::before,
.md-typeset .admonition.quote > summary::before,
.md-typeset details.quote > summary::before {
  background-color: var(--da-warning-text);
}
.md-typeset .admonition.danger,
.md-typeset details.danger,
.md-typeset .admonition.failure,
.md-typeset details.failure,
.md-typeset .admonition.error,
.md-typeset details.error,
.md-typeset .admonition.bug,
.md-typeset details.bug {
  border-color: var(--da-error-text);
}
.md-typeset .admonition.danger > .admonition-title,
.md-typeset details.danger > .admonition-title,
.md-typeset .admonition.failure > .admonition-title,
.md-typeset details.failure > .admonition-title,
.md-typeset .admonition.error > .admonition-title,
.md-typeset details.error > .admonition-title,
.md-typeset .admonition.bug > .admonition-title,
.md-typeset details.bug > .admonition-title,
.md-typeset .admonition.danger > summary,
.md-typeset details.danger > summary,
.md-typeset .admonition.failure > summary,
.md-typeset details.failure > summary,
.md-typeset .admonition.error > summary,
.md-typeset details.error > summary,
.md-typeset .admonition.bug > summary,
.md-typeset details.bug > summary {
  background-color: var(--da-error-tint);
}
.md-typeset .admonition.danger > .admonition-title::before,
.md-typeset details.danger > .admonition-title::before,
.md-typeset .admonition.failure > .admonition-title::before,
.md-typeset details.failure > .admonition-title::before,
.md-typeset .admonition.error > .admonition-title::before,
.md-typeset details.error > .admonition-title::before,
.md-typeset .admonition.bug > .admonition-title::before,
.md-typeset details.bug > .admonition-title::before,
.md-typeset .admonition.danger > summary::before,
.md-typeset details.danger > summary::before,
.md-typeset .admonition.failure > summary::before,
.md-typeset details.failure > summary::before,
.md-typeset .admonition.error > summary::before,
.md-typeset details.error > summary::before,
.md-typeset .admonition.bug > summary::before,
.md-typeset details.bug > summary::before {
  background-color: var(--da-error-text);
}

/* Focus rings and the search form: the interactive line color. */
.md-search__form:focus-within,
.md-typeset :target {
  outline-color: var(--da-interactive);
}

/* Footer: the same dark chrome as the header, so the page is bookended. The
   copyright line carries the maker text line and the legal entity. */
.md-footer,
.md-footer-meta {
  background-color: var(--da-chrome-bg);
}
.md-footer-meta,
.md-copyright {
  color: var(--da-chrome-text-muted);
}
