/*
 * SPDX-FileCopyrightText: 2026 o6 Automation GmbH
 * SPDX-License-Identifier: LicenseRef-o6-Commercial
 */

@font-face {
  font-family: "ABC Diatype Docs";
  src: url("../fonts/abc-diatype/ABCDiatype-Regular.woff2") format("woff2"),
    local("ABC Diatype"), local("ABCDiatype-Regular");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: "ABC Diatype Docs";
  src: url("../fonts/abc-diatype/ABCDiatype-RegularItalic.woff2") format("woff2"),
    local("ABC Diatype Italic"), local("ABCDiatype-RegularItalic");
  font-display: swap;
  font-style: italic;
  font-weight: 400;
}

@font-face {
  font-family: "ABC Diatype Docs";
  src: url("../fonts/abc-diatype/ABCDiatype-Medium.woff2") format("woff2"),
    local("ABC Diatype Medium"), local("ABCDiatype-Medium");
  font-display: swap;
  font-style: normal;
  font-weight: 500;
}

@font-face {
  font-family: "ABC Diatype Docs";
  src: url("../fonts/abc-diatype/ABCDiatype-MediumItalic.woff2") format("woff2"),
    local("ABC Diatype Medium Italic"), local("ABCDiatype-MediumItalic");
  font-display: swap;
  font-style: italic;
  font-weight: 500;
}

@font-face {
  font-family: "ABC Diatype Docs";
  src: url("../fonts/abc-diatype/ABCDiatype-Bold.woff2") format("woff2"),
    local("ABC Diatype Bold"), local("ABCDiatype-Bold");
  font-display: swap;
  font-style: normal;
  font-weight: 700;
}

@font-face {
  font-family: "ABC Diatype Docs";
  src: url("../fonts/abc-diatype/ABCDiatype-BoldItalic.woff2") format("woff2"),
    local("ABC Diatype Bold Italic"), local("ABCDiatype-BoldItalic");
  font-display: swap;
  font-style: italic;
  font-weight: 700;
}

@font-face {
  font-family: "ABC Diatype Mono Docs";
  src: url("../fonts/abc-diatype/ABCDiatypeMono-Regular.woff2") format("woff2"),
    local("ABC Diatype Mono"), local("ABCDiatypeMono-Regular");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: "ABC Diatype Mono Docs";
  src: url("../fonts/abc-diatype/ABCDiatypeMono-RegularItalic.woff2") format("woff2"),
    local("ABC Diatype Mono Italic"), local("ABCDiatypeMono-RegularItalic");
  font-display: swap;
  font-style: italic;
  font-weight: 400;
}

@font-face {
  font-family: "ABC Diatype Mono Docs";
  src: url("../fonts/abc-diatype/ABCDiatypeMono-Medium.woff2") format("woff2"),
    local("ABC Diatype Mono Medium"), local("ABCDiatypeMono-Medium");
  font-display: swap;
  font-style: normal;
  font-weight: 500;
}

@font-face {
  font-family: "ABC Diatype Mono Docs";
  src: url("../fonts/abc-diatype/ABCDiatypeMono-Bold.woff2") format("woff2"),
    local("ABC Diatype Mono Bold"), local("ABCDiatypeMono-Bold");
  font-display: swap;
  font-style: normal;
  font-weight: 700;
}

:root {
  --md-text-font: "ABC Diatype Docs", sans-serif;
  --md-code-font: "ABC Diatype Mono Docs", monospace;
}

.md-header .md-logo img {
  filter: brightness(0) invert(1);
}

/* Generated from the configured o6 color tokens; do not edit directly. */
/* See the project color-system documentation for usage rules. */
/* WCAG checks: body text: 18.62:1; code text: 17.06:1; links: 18.62:1; header text (corporate large-text pairing): 15.79:1; focus indicators: 15.79:1; danger indicators: 5.49:1; warning indicators: 4.80:1; success indicators: 5.89:1; inactive text: 5.01:1. */
:root {
  --o6-color-black-ink: #111315;
  --o6-color-full-white: #ffffff;
  --o6-color-warm-chrome: #f4f5f6;
  --o6-color-dark-steel: #142433;
  --o6-color-alarm-red: #b6404c;
  --o6-color-warning-amber: #a86100;
  --o6-color-normal-green: #257153;
  --o6-color-inactive-gray: #697078;

  --o6-primary: var(--o6-color-dark-steel);
  --o6-ink: var(--o6-color-black-ink);
  --o6-white: var(--o6-color-full-white);
  --o6-neutral: var(--o6-color-warm-chrome);
  --o6-alarm: var(--o6-color-alarm-red);
  --o6-warning: var(--o6-color-warning-amber);
  --o6-normal: var(--o6-color-normal-green);
  --o6-inactive: var(--o6-color-inactive-gray);
  --o6-secondary: var(--o6-inactive);
  --o6-graphic: var(--o6-inactive);
  --o6-interactive: var(--o6-ink);
  --o6-accent: var(--o6-primary);
  --o6-border: color-mix(in srgb, var(--o6-inactive) 28%, transparent);
  --o6-navigation-hover: color-mix(in srgb, var(--o6-white) 10%, var(--o6-primary));
  --o6-layout-content-start: 0rem;

  --o6-color-text: var(--o6-color-black-ink);
  --o6-color-surface: var(--o6-color-full-white);
  --o6-color-surface-muted: var(--o6-color-warm-chrome);
  --o6-color-brand: var(--o6-color-dark-steel);
  --o6-color-brand-surface: var(--o6-color-black-ink);
  --o6-color-brand-active: var(--o6-color-dark-steel);
  --o6-color-danger: var(--o6-color-alarm-red);
  --o6-color-warning: var(--o6-color-warning-amber);
  --o6-color-success: var(--o6-color-normal-green);
  --o6-color-inactive: var(--o6-color-inactive-gray);
}

[data-md-color-scheme="default"] {
  --md-default-fg-color: var(--o6-color-text);
  --md-default-bg-color: var(--o6-color-surface);
  --md-code-fg-color: var(--o6-color-text);
  --md-code-bg-color: var(--o6-color-surface-muted);
  --md-typeset-a-color: var(--o6-color-brand-surface);
  --md-accent-fg-color: var(--o6-color-brand-surface);
  --md-accent-fg-color--transparent: color-mix(in srgb, var(--o6-accent) 10%, transparent);
  --md-code-hl-color: color-mix(in srgb, var(--o6-inactive) 12%, transparent);
  --md-typeset-table-color: var(--o6-border);
}

[data-md-color-primary="indigo"] {
  --md-primary-fg-color: var(--o6-color-brand);
  --md-primary-fg-color--light: var(--o6-color-brand);
  --md-primary-fg-color--dark: var(--o6-color-brand-active);
  --md-primary-fg-color--transparent: color-mix(in srgb, var(--o6-primary) 10%, transparent);
  --md-primary-bg-color: var(--o6-color-surface);
}

::selection {
  color: var(--o6-white);
  background: var(--o6-primary);
}

.md-header ::selection,
.md-tabs ::selection,
.md-footer ::selection,
.highlight ::selection {
  color: var(--o6-primary);
  background: var(--o6-white);
}

.md-header,
.md-tabs,
.md-footer {
  color: var(--o6-white);
  background-color: var(--o6-primary);
}

.md-header {
  border-bottom: 1px solid color-mix(in srgb, var(--o6-neutral) 60%, transparent);
}

.md-tabs__link,
.md-header__button {
  color: var(--o6-white);
}

.md-header__source {
  display: none;
}

.md-header__topic:first-child {
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.5;
}

.md-header__topic:first-child > .md-ellipsis {
  font-weight: 700;
}

.md-tabs__item {
  height: auto;
  padding: 0;
}

.md-tabs__item--active {
  border-bottom: 0;
}

.md-tabs__link {
  margin: 0;
  padding: 0.4rem 0.8rem;
  border: 0;
  border-radius: 0.4rem;
  box-sizing: border-box;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.5;
  opacity: 1;
  transition: color 0.15s, background-color 0.15s;
}

.md-header__button[for="__drawer"] {
  background-color: color-mix(in srgb, var(--o6-white) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--o6-white) 20%, transparent);
}

.md-tabs__link:hover,
.md-tabs__link:focus-visible,
.md-header__button:hover,
.md-header__button:focus-visible {
  color: var(--o6-white);
  background-color: color-mix(in srgb, var(--o6-white) 10%, transparent);
}

.md-tabs__item--active .md-tabs__link {
  color: var(--o6-primary);
  background-color: var(--o6-neutral);
  border-color: var(--o6-neutral);
  opacity: 1;
}

.md-typeset a {
  text-decoration-color: var(--o6-inactive);
  text-underline-offset: 0.12em;
}

.md-typeset a:hover,
.md-typeset a:focus-visible {
  color: var(--o6-primary);
}

.md-typeset .md-button--primary {
  color: var(--o6-white);
  background-color: var(--o6-primary);
  border-color: var(--o6-primary);
}

.md-typeset .md-button--primary:hover,
.md-typeset .md-button--primary:focus-visible {
  color: var(--o6-primary);
  background-color: var(--o6-white);
}

.md-typeset table:not([class]) th,
.md-typeset table:not([class]) td,
.md-typeset hr {
  border-color: var(--o6-border);
}

.md-typeset .admonition,
.md-typeset details {
  border-color: var(--o6-inactive);
  box-shadow: none;
}

.md-typeset .admonition-title,
.md-typeset summary {
  background-color: color-mix(in srgb, var(--o6-inactive) 12%, transparent);
}

.md-typeset .admonition-title::before,
.md-typeset summary::before {
  background-color: var(--o6-inactive);
}

.md-typeset :focus-visible {
  outline-color: var(--o6-accent);
}

.md-typeset .admonition.warning,
.md-typeset details.warning {
  border-color: var(--o6-color-warning);
}

.md-typeset .warning > .admonition-title,
.md-typeset .warning > summary {
  background-color: color-mix(in srgb, var(--o6-warning) 12%, transparent);
}

.md-typeset .warning > .admonition-title::before,
.md-typeset .warning > summary::before {
  background-color: var(--o6-warning);
}

.md-typeset .admonition.danger,
.md-typeset .admonition.error,
.md-typeset details.danger,
.md-typeset details.error {
  border-color: var(--o6-color-danger);
}

.md-typeset .danger > .admonition-title,
.md-typeset .error > .admonition-title,
.md-typeset .danger > summary,
.md-typeset .error > summary {
  background-color: color-mix(in srgb, var(--o6-alarm) 12%, transparent);
}

.md-typeset .danger > .admonition-title::before,
.md-typeset .error > .admonition-title::before,
.md-typeset .danger > summary::before,
.md-typeset .error > summary::before {
  background-color: var(--o6-alarm);
}

.md-typeset .admonition.success,
.md-typeset details.success {
  border-color: var(--o6-color-success);
}

.md-typeset .success > .admonition-title,
.md-typeset .success > summary {
  background-color: color-mix(in srgb, var(--o6-normal) 12%, transparent);
}

.md-typeset .success > .admonition-title::before,
.md-typeset .success > summary::before {
  background-color: var(--o6-normal);
}

.md-typeset del {
  text-decoration-color: var(--o6-color-danger);
}

.md-typeset ins {
  text-decoration-color: var(--o6-color-success);
}

.md-typeset :disabled,
.md-typeset [aria-disabled="true"] {
  color: var(--o6-color-inactive);
}

@media screen and (min-width: 64em) {
  /* Native modern Zensical nests the tabs inside the header, after the header
     controls. Overlay both layers into the single o6 menu row and reserve the
     row's height for page content. */
  .md-container {
    padding-top: 3.65rem;
  }

  .md-tabs,
  .md-tabs[hidden] {
    display: block;
    height: 3.65rem;
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: auto;
  }

  .md-tabs[hidden] .md-tabs__link {
    opacity: 1;
    transform: none;
    transition: color 0.15s, background-color 0.15s;
  }

  .md-tabs[hidden] .md-tabs__item--active .md-tabs__link,
  .md-tabs[hidden] .md-tabs__link:hover,
  .md-tabs[hidden] .md-tabs__link:focus-visible {
    opacity: 1;
  }

  .md-header {
    position: absolute;
    height: 3.65rem;
    background: transparent;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    border: 0;
    box-shadow: none;
    pointer-events: none;
  }

  .md-header__inner {
    height: 3.65rem;
    position: relative;
    z-index: 3;
    pointer-events: none;
  }

  .md-header .md-logo,
  .md-header__button[for="__search"],
  .md-header .md-search {
    pointer-events: auto;
  }

  .md-header .md-logo {
    display: none;
  }

  .md-header__title {
    flex: 0 0 9rem;
    width: 9rem;
    margin: 0 0.5rem 0 0.8rem;
    padding: 0;
    color: var(--o6-white);
  }

  .md-header__ellipsis {
    display: block;
    overflow: visible;
  }

  .md-header__topic:first-child {
    max-width: none;
    top: calc(50% - 0.025rem);
    opacity: 1;
    pointer-events: auto;
    transform: translateY(-50%);
    z-index: 0;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.5;
    cursor: text;
    user-select: text;
    white-space: nowrap;
  }

  .md-header__topic:first-child > .md-ellipsis {
    overflow: visible;
  }

  .md-header__title--active .md-header__topic:first-child {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(-50%);
    z-index: 0;
  }

  .md-header__topic + .md-header__topic {
    display: none;
  }

  .md-header__button[for="__drawer"] {
    display: none;
    order: 3;
  }

  .md-header__button[for="__drawer"] + .md-header__title {
    order: 1;
  }

  .md-header__source {
    display: none;
  }

  .md-tabs__list {
    align-items: center;
    gap: 0.2rem;
    min-height: 3.65rem;
    padding-right: 9.8rem;
    padding-left: 9.8rem;
  }
}

@media screen and (min-width: 76.25em) {
  .md-tabs__list {
    padding-left: 13.3rem;
  }
}

@media screen and (min-width: 60em) {
  .md-header__button[for="__search"] {
    display: none;
  }

  .md-header .md-search {
    display: block;
    order: 4;
    margin-left: auto;
    margin-right: 2.8rem;
  }

  .md-header .md-search__button {
    width: 8.9rem;
    height: 1.6rem;
    color: var(--o6-white);
    background: color-mix(in srgb, var(--o6-white) 10%, transparent);
    border: 1px solid color-mix(in srgb, var(--o6-white) 20%, transparent);
    border-radius: 999px;
  }

  .md-header .md-search__button::before {
    background-color: var(--o6-white);
  }

  .md-header .md-search__button::after {
    color: var(--o6-primary);
    background: var(--o6-neutral);
  }
}

@media screen and (max-width: 63.984375em) {
  .md-header__topic:first-child {
    top: 50%;
    font-size: 0.75rem;
    transform: translateY(-50%);
  }

  .md-header__title--active .md-header__topic:first-child {
    transform: translateY(-50%);
  }

}

@media screen and (max-width: 59.984375em) {
  .md-header .md-search {
    display: none;
  }

  .md-header__button[for="__search"] {
    display: inline-flex;
    margin-left: auto;
  }
}

@media screen and (max-width: 76.234375em) {
  .md-sidebar--primary,
  .md-sidebar--primary .md-sidebar__scrollwrap,
  .md-sidebar--primary .md-sidebar__inner,
  .md-nav--primary,
  .md-nav--primary .md-nav {
    color: var(--o6-white);
    background-color: var(--o6-primary);
  }

  .md-sidebar--primary {
    border-right: 1px solid color-mix(in srgb, var(--o6-white) 20%, transparent);
  }

  .md-nav--primary .md-nav__title,
  .md-nav--primary .md-nav__link {
    color: var(--o6-white);
    background-color: transparent;
  }

  .md-nav .md-nav__title[for="__drawer"] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 3.2rem;
    padding: 0.65rem 0.8rem;
    color: var(--o6-white);
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
  }

  .md-nav .md-nav__title[for="__drawer"] .md-logo {
    display: none;
  }

  .md-nav--primary .md-nav__link {
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
    border: 0;
    border-radius: 0.4rem;
    font-size: 0.75rem;
    font-weight: 700;
  }

  .md-nav--primary .md-nav__link:is([for], [href]):is(:focus, :hover):not(.md-nav__link--active) {
    color: var(--o6-white);
    background-color: var(--o6-navigation-hover);
  }

  .md-nav--primary .md-nav--secondary .md-nav__link[href]:is(:focus, :hover) {
    color: var(--o6-white);
    background-color: var(--o6-navigation-hover);
  }

  .md-nav--primary .md-nav__item .md-nav__link--active {
    color: var(--o6-primary);
    background: var(--o6-neutral);
    border-color: var(--o6-neutral);
  }
}

@media screen and (min-width: 64em) and (max-width: 76.234375em) {
  .md-sidebar--primary {
    left: auto;
    right: auto;
    position: sticky;
    top: 2.4rem;
    height: 0;
    padding: 1.1rem 0;
    transform: none;
    transition: none;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    z-index: auto;
  }

  [data-md-toggle="drawer"]:checked ~ .md-container .md-sidebar--primary {
    transform: none;
  }

  .md-sidebar--primary .md-sidebar__scrollwrap {
    position: static;
    margin: 0;
    overscroll-behavior-y: auto;
  }

  .md-sidebar--primary,
  .md-sidebar--primary .md-sidebar__scrollwrap,
  .md-sidebar--primary .md-sidebar__inner,
  .md-nav--primary,
  .md-nav--primary .md-nav {
    color: var(--o6-ink);
    background: transparent;
  }

  .md-sidebar--primary .md-sidebar__inner {
    padding-right: 0.6rem;
  }

  .md-nav--primary .md-nav__title,
  .md-nav--primary .md-nav__link {
    color: var(--o6-ink);
  }

  .md-nav--primary {
    margin: 0.1rem 0;
  }

  .md-nav .md-nav__title[for="__drawer"],
  .md-nav__source {
    display: none;
  }

  .md-nav--primary .md-nav__link {
    padding: 0.35rem 0.8rem;
    border-radius: 0.4rem;
    font-size: 0.7rem;
    font-weight: 400;
  }

  .md-nav--primary .md-nav__link:hover,
  .md-nav--primary .md-nav__link:focus-visible {
    color: var(--o6-primary);
    background-color: transparent;
  }

  .md-nav--primary .md-nav__item .md-nav__link--active {
    color: var(--o6-primary);
    background: transparent;
    border-color: transparent;
    font-weight: 500;
  }

  .md-nav__item--section > .md-nav__container > :nth-child(2) {
    display: none;
  }

  [dir="ltr"] .md-nav__list .md-nav__item--section > .md-nav > .md-nav__list {
    margin-left: 0;
  }

  [dir="rtl"] .md-nav__list .md-nav__item--section > .md-nav > .md-nav__list {
    margin-right: 0;
  }

  .md-nav__item--section > .md-nav__link {
    font-weight: 700;
  }

  .md-nav__item--section > .md-nav__link:not(.md-nav__container) {
    pointer-events: none;
  }

  .md-nav__item--section > .md-nav {
    display: block;
    opacity: 1;
    visibility: visible;
  }

  .md-nav--lifted > .md-nav__list > .md-nav__item {
    display: none;
  }

  .md-nav--lifted > .md-nav__list > .md-nav__item--active {
    display: block;
  }

  .md-nav--lifted > .md-nav__list > .md-nav__item--active > .md-nav {
    margin-top: 0.1rem;
  }

  .md-nav--lifted > .md-nav__list > .md-nav__item--active > .md-nav > .md-nav__list::before,
  .md-nav--lifted > .md-nav__list > .md-nav__item--active > .md-nav__link {
    display: none;
  }

  .md-nav--lifted > .md-nav__list > .md-nav__item--active.md-nav__item--section {
    margin: 0;
  }

  .md-nav--lifted .md-nav[data-md-level="1"] {
    grid-template-rows: minmax(0.4rem, 1fr);
    opacity: 1;
    visibility: visible;
  }

  .md-overlay {
    display: none;
  }
}

.md-footer .md-copyright,
.md-footer .md-copyright__highlight {
  color: var(--o6-white);
  opacity: 1;
}

@media screen and (min-width: 64em) and (max-width: 76.234375em) {
  :root {
    --o6-layout-content-start: 12.7rem;
  }

  .md-footer .md-copyright {
    margin-inline-start: var(--o6-layout-content-start);
  }
}

@media screen and (min-width: 76.25em) {
  :root {
    --o6-layout-content-start: 13.1rem;
  }

  .md-footer .md-copyright {
    margin-inline-start: var(--o6-layout-content-start);
  }
}
