@charset "UTF-8";
/* Monaco */
@font-face {
  font-family: "Monaco";
  font-style: normal;
  font-weight: 400;
  src: url(../font/Monaco.woff2) format("woff2"), url(../font/Monaco.ttf) format("truetype");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
  font-display: swap;
}
@font-face {
  font-family: "Darkmode";
  font-style: normal;
  font-weight: 200;
  src: url(../font/DarkmodeOn_Trial_Th.ttf) format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Darkmode";
  font-style: italic;
  font-weight: 200;
  src: url(../font/DarkmodeOn_Trial_ThIt.ttf) format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Darkmode";
  font-style: normal;
  font-weight: 300;
  src: url(../font/DarkmodeOn_Trial_Lt.ttf) format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Darkmode";
  font-style: normal;
  font-weight: 400;
  src: url(../font/DarkmodeOn_Trial_Rg.ttf) format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Darkmode";
  font-style: italic;
  font-weight: 400;
  src: url(../font/DarkmodeOn_Trial_It.ttf) format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Darkmode";
  font-style: normal;
  font-weight: 500;
  src: url(../font/DarkmodeOn_Trial_Md.ttf) format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Darkmode";
  font-style: normal;
  font-weight: 600;
  src: url(../font/DarkmodeOn_Trial_SBd.ttf) format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Darkmode";
  font-style: normal;
  font-weight: 700;
  src: url(../font/DarkmodeOn_Trial_Bd.ttf) format("truetype");
  font-display: swap;
}
:root {
  /* colors */
  --color-white: #f3f3f3;
  --color-grey: #d7d4e5;
  --color-light-purple: #2d2a46;
  --color-purple: #1a182a;
  --color-deep-purple: #151322;
  --color-black-purple: #0e0d17;
  --color-black: #0e0e0e;
  --color-green: #02dac9;
  --color-red: #e96464;
  --color-secondary-extra-light-grey: #c4c4c4;
  --color-secondary-light-grey: #958fa8;
  --color-secondary-grey: #63607c;
  --color-secondary-mid-deep-grey: #4e4b63;
  --color-secondary-deep-grey: #383649;
  --color-secondary-purple: #232135;
  --color-secondary-yellow: #ffe49e;
  --color-secondary-pink: #ff87dc;
  --color-secondary-blue: #7ba0ff;
  --content-border-color: var(--color-light-purple);
  --body-background: var(--color-black);
  --body-font-color: var(--color-secondary-extra-light-grey);
  --body-heading-color: var(--color-white);
  --code-background: var(--color-deep-purple);
  --code-font-color: var(--color-secondary-pink);
  --pre-font-color: #ece0ff;
  --table-header-background: var(--color-deep-purple);
  --table-body-background: var(--color-purple);
  --table-footer-background: var(--color-purple);
  /* sizes */
  --border-radius: 16px;
  --border-radius-small: 8px;
  --section-page-margin: 20px;
  --section-width: 1536px;
  --section-max-width: calc(100vw - 24px);
  --blog-post-width: 700px;
  --blog-post-max-width: calc(var(--section-max-width) - 125px - 208px);
  --section-margin: 180px;
  --first-section-margin: 128px;
  --subsection-margin: 64px;
  --subtitle-margin-l: 32px;
  --subtitle-margin: 24px;
  --blog-landing-strip-margin: 64px;
  --section-padding: 20px;
  --text-margin-s: 16px;
  --font-weight-bold: 700;
  --font-weight-semi-bold: 600;
  --font-weight-medium: 500;
  --font-weight-regular: 400;
  --font-weight-light: 300;
  --font-weight-thin: 200;
  --topbar-height: 72px;
  --banner-height: 30px;
  --scroll-padding: 112px;
  /* typography */
  --font-size-base: var(--font-size-p2);
  --font-weight-base: var(--font-weight-regular);
  --body-letter-spacing: 0.02em;
  --font-family-default: Darkmode, sans-serif;
  --font-family-code: Monaco, monospace;
  --font-size-h1: 64px;
  --line-height-h1: 1.1875;
  --font-size-h2: 40px;
  --line-height-h2: 1.25;
  --font-size-h3: 24px;
  --line-height-h3: 1.4166666667;
  --font-size-h4: 20px;
  --line-height-h4: 1.5;
  --font-size-h5: 16px;
  --line-height-h5: 1.625;
  --font-size-p1: 20px;
  --line-height-p1: 1.5;
  --font-size-p2: 16px;
  --line-height-p2: 1.625;
  --font-size-blog: 18px;
  --line-height-blog: 1.5555555556;
  --font-size-aside: 14px;
  --line-height-aside: 1.5714285714;
  --font-size-code: 12px;
  --line-height-code: 1.8333333333;
  --card-padding: 24px;
  --scroll-shadow-size: 20px;
}
@media (max-width: 1199px) {
  :root {
    --section-width: 1016px;
    --section-page-margin: 32px;
    --first-section-margin: 64px;
    --section-padding: 20px;
    --subsection-margin: 56px;
    --card-padding: 24px;
  }
}
@media (max-width: 767px) {
  :root {
    --body-font-color: var(--color-white);
    --section-width: 100vw;
    --section-page-margin: 0;
    --blog-post-max-width: var(--section-max-width);
    --section-max-width: calc(100vw - 16px);
    --section-margin: 80px;
    --first-section-margin: 20px;
    --subsection-margin: 40px;
    --subtitle-margin-l: 16px;
    --subtitle-margin: 16px;
    --blog-landing-strip-margin: 24px;
    --section-padding: 12px;
    --topbar-height: 72px;
    --banner-height: 26px;
    --scroll-padding: 64px;
    --font-size-h1: 30px;
    --line-height-h1: 1.3333333333;
    --font-size-h2: 26px;
    --line-height-h2: 1.3846153846;
    --font-size-h3: 20px;
    --line-height-h3: 1.5;
    --font-size-h4: 16px;
    --line-height-h4: 1.625;
    --font-size-h5: 14px;
    --line-height-h5: 1.7142857143;
    --font-size-p1: 16px;
    --line-height-p1: 1.5;
    --font-size-p2: 14px;
    --line-height-p2: 1.7142857143;
    --font-size-blog: 16px;
    --line-height-blog: 1.625;
    --font-size-aside: 12px;
    --line-height-aside: 1.5;
    --font-size-code: 12px;
    --line-height-code: 1.8333333333;
    --card-padding: 12px;
  }
}

h1, h2, h3, h4, h5, h6, p, ul, ol, dl, dt, dd, pre, figure {
  margin: 0;
  padding: 0;
}

html, body {
  color-scheme: dark;
  background-color: var(--body-background);
  color: var(--color-secondary-extra-light-grey);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-base);
  line-height: var(--line-height-p2);
  letter-spacing: var(--body-letter-spacing);
  font-family: var(--font-family-default);
  margin: 0;
  scroll-padding-top: var(--scroll-padding);
}

*, *::before, *::after {
  box-sizing: border-box;
}

code, kbd, pre {
  font-family: var(--font-family-code);
}

h1, .text-h1 {
  font-size: var(--font-size-h1);
  line-height: var(--line-height-h1);
}

h1 code {
  font-size: 75%;
}

h2, .text-h2 {
  font-size: var(--font-size-h2);
  line-height: var(--line-height-h2);
}

h2 code {
  font-size: 75%;
}

h3, .text-h3 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-h3);
}

h3 code {
  font-size: 75%;
}

h4, .text-h4 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
}

h4 code {
  font-size: 75%;
}

h5, .text-h5 {
  font-size: var(--font-size-h5);
  line-height: var(--line-height-h5);
}

h5 code {
  font-size: 75%;
}

h6, .text-h6 {
  font-size: var(--font-size-h6);
  line-height: var(--line-height-h6);
}

h6 code {
  font-size: 75%;
}

.text-p1, .text-p1 p {
  font-size: var(--font-size-p1);
  line-height: var(--line-height-p1);
}

p, .text-p2 {
  font-size: var(--font-size-p2);
  line-height: var(--line-height-p2);
}

.text-blog, .text-blog p {
  font-size: var(--font-size-blog);
  line-height: var(--line-height-blog);
}

.text-blog p code, .text-blog li code, .text-blog table code {
  font-size: 75%;
}

aside, .text-aside {
  font-size: var(--font-size-aside);
  line-height: var(--line-height-aside);
}

pre, code, .text-code {
  font-size: var(--font-size-code);
  line-height: var(--line-height-code);
}

.text-important {
  color: var(--color-white);
  font-weight: 600;
}

.text-quiet {
  color: var(--color-secondary-light-grey);
}

button {
  font-family: var(--font-family-default);
}

input, select, textarea {
  font-family: var(--font-family-default);
}
input::placeholder, select::placeholder, textarea::placeholder {
  color: rgba(149, 143, 168, 0.8);
  font-style: italic;
}

hr {
  border: 0;
  border-top: 1px solid #2d2a46;
}

h1, h2, h3, h4, h5, h6, th {
  color: var(--body-heading-color);
}

aside h1, aside h2, aside h3, aside h4 {
  color: var(--body-font-color);
}

h1 {
  font-weight: var(--font-weight-medium);
}

h2 {
  font-weight: var(--font-weight-medium);
}

h3, h4 {
  font-weight: var(--font-weight-regular);
}

h5, h6 {
  font-weight: var(--font-weight-regular);
}

h1, h2, h3, h4, h5, h6 {
  text-wrap-style: balance;
}

dd {
  font-weight: var(--font-weight-light);
}

b, dt, strong, th {
  font-weight: var(--font-weight-semi-bold);
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

em em {
  font-style: normal;
}

strong strong {
  font-weight: normal;
}

summary {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  outline: none;
}

a {
  cursor: pointer;
  color: var(--color-white);
  text-decoration: none;
}
a p {
  color: var(--body-font-color);
}

p a, p a:visited, aside a, aside a:visited {
  color: var(--color-green);
}
p a:hover, p a:focus, p a:visited:hover, p a:visited:focus, aside a:hover, aside a:focus, aside a:visited:hover, aside a:visited:focus {
  text-decoration: underline;
}

address {
  font-style: normal;
}

code {
  hyphens: none;
  color: var(--code-font-color);
  background: var(--code-background);
  border-radius: var(--border-radius);
  border: 1px solid #2d2a46;
  padding: 6px 6px 3px;
}

pre code {
  color: var(--pre-font-color);
  background: none;
  border-radius: 0;
  border: none;
  padding: 0;
}

form,
.form {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

button, td-button {
  font-weight: var(--font-weight-regular);
}

::file-selector-button {
  border-radius: 4px;
  font-family: inherit;
  border-color: var(--color-green);
  background: transparent;
  color: var(--color-green);
  box-shadow: 0 0 6px 3px rgba(123, 160, 255, 0.25);
}
::file-selector-button:not(.td-button-disabled):hover, ::file-selector-button:not(.td-button-disabled).container-hover {
  border-color: #81EDE4;
  color: #9feae4;
  box-shadow: 0 0 6px 3px rgba(123, 160, 255, 0.35);
}

[hidden] {
  display: none !important;
}

@media (max-width: 767px) {
  .hide-mobile {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .hide-gt-mobile {
    display: none !important;
  }
}

@media (max-width: 1199px) {
  .hide-lt-desktop {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hide-desktop {
    display: none !important;
  }
}

.flex {
  flex: 1;
}

.card {
  border-radius: var(--border-radius);
  background-color: var(--color-deep-purple);
  border: 1px solid #2d2a46;
  padding: var(--card-padding);
  transition: border-color 100ms;
}

.card-appearance {
  border-radius: var(--border-radius);
  background-color: var(--color-deep-purple);
  border: 1px solid #2d2a46;
}

.card-padding {
  padding: var(--card-padding);
}

.button-greenHollow {
  display: flex;
  border-width: 1px;
  border-style: solid;
  border-radius: 20px;
  justify-content: center;
  align-items: center;
  font-weight: var(--font-weight-regular);
  font-size: inherit;
  font-family: inherit;
  cursor: pointer;
  transition-property: background-color, border, box-shadow, opacity;
  transition-duration: 100ms;
  transition-timing-function: ease;
  text-decoration: none !important;
  padding: 6px 18px;
  height: 40px;
  text-wrap: nowrap;
  border-color: var(--color-green);
  background: transparent;
  color: var(--color-green);
  box-shadow: 0 0 6px 3px rgba(123, 160, 255, 0.25);
}
.button-greenHollow span {
  position: relative;
}
.button-greenHollow span::after {
  margin-left: 6px;
  content: "\f105";
  font-family: "Font Awesome 6 Pro";
  font-size: 90%;
  -webkit-user-select: none;
  user-select: none;
  display: inline-block;
}
.button-greenHollow.td-button-disabled {
  opacity: 50%;
  cursor: default;
}
.button-greenHollow.td-button-size-s {
  height: 40px;
}
.button-greenHollow.td-button-size-xs {
  height: 36px;
}
@media (max-width: 767px) {
  .button-greenHollow {
    padding: 6px 14px;
  }
}
.button-greenHollow:not(.td-button-disabled):hover, .button-greenHollow:not(.td-button-disabled).container-hover {
  border-color: #81EDE4;
  color: #9feae4;
  box-shadow: 0 0 6px 3px rgba(123, 160, 255, 0.35);
}

.button-water {
  display: flex;
  border-width: 1px;
  border-style: solid;
  border-radius: 20px;
  justify-content: center;
  align-items: center;
  font-weight: var(--font-weight-regular);
  font-size: inherit;
  font-family: inherit;
  cursor: pointer;
  transition-property: background-color, border, box-shadow, opacity;
  transition-duration: 100ms;
  transition-timing-function: ease;
  text-decoration: none !important;
  padding: 6px 18px;
  height: 40px;
  text-wrap: nowrap;
  animation: gradient-button-bg-rotate 2.5s infinite linear paused;
  background: linear-gradient(to bottom, var(--body-background), var(--body-background)) padding-box, conic-gradient(from var(--gradient-button-bg-angle), #03D0BF, #AC79EE, #03D0BF) border-box;
  border: 1px solid transparent;
}
.button-water span {
  position: relative;
}
.button-water span::after {
  margin-left: 6px;
  content: "\f105";
  font-family: "Font Awesome 6 Pro";
  font-size: 90%;
  -webkit-user-select: none;
  user-select: none;
  display: inline-block;
}
.button-water.td-button-disabled {
  opacity: 50%;
  cursor: default;
}
.button-water.td-button-size-s {
  height: 40px;
}
.button-water.td-button-size-xs {
  height: 36px;
}
@media (max-width: 767px) {
  .button-water {
    padding: 6px 14px;
  }
}
.button-water:hover {
  animation-play-state: running;
  color: var(--color-white);
}
@supports (font: -apple-system-body) and (-webkit-appearance: none) {
  .button-water {
    /* Variable angle in gradient doesn't work in Safari (Dec 2024) - results in empty background */
    background: linear-gradient(to bottom, var(--body-background), var(--body-background)) padding-box, conic-gradient(from 120deg, #03D0BF, #AC79EE, #03D0BF) border-box;
  }
}

.button-fire {
  display: flex;
  border-width: 1px;
  border-style: solid;
  border-radius: 20px;
  justify-content: center;
  align-items: center;
  font-weight: var(--font-weight-regular);
  font-size: inherit;
  font-family: inherit;
  cursor: pointer;
  transition-property: background-color, border, box-shadow, opacity;
  transition-duration: 100ms;
  transition-timing-function: ease;
  text-decoration: none !important;
  padding: 6px 18px;
  height: 40px;
  text-wrap: nowrap;
  animation: gradient-button-bg-rotate 2.5s infinite linear paused;
  background: linear-gradient(to bottom, var(--body-background), var(--body-background)) padding-box, conic-gradient(from var(--gradient-button-bg-angle), #FDD257, #F96480, #FDD257) border-box;
  border: 1px solid transparent;
}
.button-fire span {
  position: relative;
}
.button-fire span::after {
  margin-left: 6px;
  content: "\f105";
  font-family: "Font Awesome 6 Pro";
  font-size: 90%;
  -webkit-user-select: none;
  user-select: none;
  display: inline-block;
}
.button-fire.td-button-disabled {
  opacity: 50%;
  cursor: default;
}
.button-fire.td-button-size-s {
  height: 40px;
}
.button-fire.td-button-size-xs {
  height: 36px;
}
@media (max-width: 767px) {
  .button-fire {
    padding: 6px 14px;
  }
}
.button-fire:hover {
  animation-play-state: running;
  color: var(--color-white);
}
@supports (font: -apple-system-body) and (-webkit-appearance: none) {
  .button-fire {
    /* Variable angle in gradient doesn't work in Safari (Dec 2024) - results in empty background */
    background: linear-gradient(to bottom, var(--body-background), var(--body-background)) padding-box, conic-gradient(from 120deg, #FDD257, #F96480, #FDD257) border-box;
  }
}
.button-fire:not(.td-button-disabled):hover, .button-fire:not(.td-button-disabled).container-hover {
  box-shadow: 0 0 6px 3px rgba(233, 100, 100, 0.25);
  color: #FDD257;
}

.button-frameless {
  display: flex;
  border-width: 1px;
  border-style: solid;
  border-radius: 20px;
  justify-content: center;
  align-items: center;
  font-weight: var(--font-weight-regular);
  font-size: inherit;
  font-family: inherit;
  cursor: pointer;
  transition-property: background-color, border, box-shadow, opacity;
  transition-duration: 100ms;
  transition-timing-function: ease;
  text-decoration: none !important;
  padding: 6px 18px;
  height: 40px;
  text-wrap: nowrap;
  border-color: transparent;
  background: transparent;
  color: var(--color-secondary-blue);
}
.button-frameless span {
  position: relative;
}
.button-frameless span::after {
  margin-left: 6px;
  content: "\f105";
  font-family: "Font Awesome 6 Pro";
  font-size: 90%;
  -webkit-user-select: none;
  user-select: none;
  display: inline-block;
}
.button-frameless.td-button-disabled {
  opacity: 50%;
  cursor: default;
}
.button-frameless.td-button-size-s {
  height: 40px;
}
.button-frameless.td-button-size-xs {
  height: 36px;
}
@media (max-width: 767px) {
  .button-frameless {
    padding: 6px 14px;
  }
}
.button-frameless:not(.td-button-disabled):hover, .button-frameless:not(.td-button-disabled).container-hover {
  color: var(--color-white);
}

td-form-actions, .td-form-actions {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end;
  width: 100%;
  column-gap: 14px;
  row-gap: 8px;
  margin-top: 20px;
}

.td-feedback-button {
  position: fixed;
  top: 50%;
  right: 0;
  transform: rotate(-90deg) translate(50%, -100%);
  transform-origin: right top;
  padding: 0 24px;
  z-index: 200;
}
.td-feedback-button > * {
  display: block;
  border: none;
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-aside);
  transition: background-color 200ms ease-out, transform 200ms ease-out, box-shadow 200ms ease-out;
  transform: translateY(3px);
  outline: none;
  cursor: pointer;
  padding: 9px 26px;
  background-color: var(--color-deep-purple);
  color: var(--body-font-color);
  border-top-left-radius: var(--border-radius);
  border-top-right-radius: var(--border-radius);
  border: 1px solid #2d2a46;
  box-shadow: 0 3px 26px 0 rgba(26, 24, 42, 0.4);
}
.td-feedback-button > *:hover {
  transform: translateY(0);
  background-color: var(--color-light-purple);
  box-shadow: 0 3px 26px 0 rgba(149, 143, 168, 0.2);
}
@media (max-width: 767px) {
  .td-feedback-button {
    display: none;
  }
}

td-form .form-row {
  display: flex;
  gap: 16px;
}
td-form .form-row > * {
  flex: 1;
}
@media (max-width: 767px) {
  td-form .form-row {
    flex-direction: column;
  }
}

.admonitionblock {
  --important-color: #ffe49e;
  --important-background: rgba(255, 228, 158, 0.12);
  --note-color: #7ba0ff;
  --note-background: rgba(123, 160, 255, 0.12);
  --tip-color: #02dac9;
  --tip-background: rgba(2, 218, 201, 0.12);
  --warning-color: #e96464;
  --warning-background: rgba(233, 100, 100, 0.12);
  position: relative;
  margin: 0.5rem 0 1.5rem;
  padding: 16px;
  border-radius: var(--border-radius);
  color: var(--color-white);
  width: 100%;
}
@media (max-width: 767px) {
  .admonitionblock {
    padding: var(--card-padding);
  }
}
.admonitionblock > table,
.admonitionblock > table > tbody,
.admonitionblock > table > tbody > tr,
.admonitionblock > table > tbody > tr > td {
  display: block;
  padding: 0;
}
.admonitionblock.note {
  background: var(--note-background);
}
.admonitionblock.note .icon::after {
  content: "Note";
}
.admonitionblock.important, .admonitionblock.attention {
  border-color: var(--important-color);
  background: var(--important-background);
}
.admonitionblock.important::before, .admonitionblock.attention::before {
  background: var(--important-color);
}
.admonitionblock.important .icon::after {
  content: "Important";
}
.admonitionblock.attention .icon::after {
  content: "Attention";
}
.admonitionblock.tip {
  background: var(--tip-background);
}
.admonitionblock.tip .icon::after {
  content: "Advanced";
}
.admonitionblock.warning {
  background: var(--warning-background);
}
.admonitionblock.warning .icon::after {
  content: "Warning";
}
.admonitionblock .icon {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  margin-bottom: 8px;
}
.admonitionblock .icon::after {
  font-weight: var(--font-weight-medium);
  font-size: 14px;
  letter-spacing: 0.5px;
}
.admonitionblock .content {
  margin-top: -0.5rem;
}

.admonitionblock.attention i {
  color: #ffe49e;
}

td-feedback-dialog .hs-form-field > label {
  margin-bottom: 8px;
  display: inline-block;
}
td-feedback-dialog aside {
  margin-top: 32px;
}

body .mat-icon {
  width: 1em;
  height: 1em;
}
body .mat-icon svg {
  display: block;
}
body .mat-mdc-icon-button {
  padding: 0.25em;
  margin: -0.25em;
  width: 1.5em;
  height: 1.5em;
}
body .mat-mdc-icon-button .mat-icon {
  display: block;
  font-size: inherit;
}
body .mat-mdc-icon-button svg {
  width: auto;
  height: auto;
}
body .mat-icon,
body .mat-mdc-icon-button {
  font-size: 24px;
}
body .mat-icon.td-icon-small,
body .mat-mdc-icon-button.td-icon-small {
  font-size: 20px;
}
body .mat-icon.td-icon-large,
body .mat-mdc-icon-button.td-icon-large {
  font-size: 32px;
}
body .mat-icon.td-icon-xl,
body .mat-mdc-icon-button.td-icon-xl {
  font-size: 40px;
}

/* angular material styles */
.mat-icon {
  -webkit-user-select: none;
  user-select: none;
  background-repeat: no-repeat;
  display: inline-block;
  fill: currentColor;
  height: 24px;
  width: 24px;
  overflow: hidden;
}

.mdc-icon-button {
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  border: none;
  outline: none;
  background-color: rgba(0, 0, 0, 0);
  fill: currentColor;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  z-index: 0;
  overflow: visible;
}

.mdc-icon-button .mdc-icon-button__touch {
  position: absolute;
  top: 50%;
  height: 48px;
  left: 50%;
  width: 48px;
  transform: translate(-50%, -50%);
}

@media screen and (forced-colors: active) {
  .mdc-icon-button.mdc-ripple-upgraded--background-focused .mdc-icon-button__focus-ring,
  .mdc-icon-button:not(.mdc-ripple-upgraded):focus .mdc-icon-button__focus-ring {
    display: block;
  }
}
.mdc-icon-button:disabled {
  cursor: default;
  pointer-events: none;
}

.mdc-icon-button[hidden] {
  display: none;
}

.mdc-icon-button--display-flex {
  align-items: center;
  display: inline-flex;
  justify-content: center;
}

.mdc-icon-button__focus-ring {
  pointer-events: none;
  border: 2px solid rgba(0, 0, 0, 0);
  border-radius: 6px;
  box-sizing: content-box;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
  width: 100%;
  display: none;
}

@media screen and (forced-colors: active) {
  .mdc-icon-button__focus-ring {
    border-color: CanvasText;
  }
}
.mdc-icon-button__focus-ring::after {
  content: "";
  border: 2px solid rgba(0, 0, 0, 0);
  border-radius: 8px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: calc(100% + 4px);
  width: calc(100% + 4px);
}

@media screen and (forced-colors: active) {
  .mdc-icon-button__focus-ring::after {
    border-color: CanvasText;
  }
}
.mdc-icon-button__icon {
  display: inline-block;
}

.mdc-icon-button__icon.mdc-icon-button__icon--on {
  display: none;
}

.mdc-icon-button--on .mdc-icon-button__icon {
  display: none;
}

.mdc-icon-button--on .mdc-icon-button__icon.mdc-icon-button__icon--on {
  display: inline-block;
}

.mdc-icon-button__link {
  height: 100%;
  left: 0;
  outline: none;
  position: absolute;
  top: 0;
  width: 100%;
}

.mat-mdc-icon-button {
  height: var(--mdc-icon-button-state-layer-size);
  width: var(--mdc-icon-button-state-layer-size);
  color: var(--mdc-icon-button-icon-color);
  --mdc-icon-button-state-layer-size: 48px;
  --mdc-icon-button-icon-size: 24px;
  --mdc-icon-button-disabled-icon-color: black;
  --mdc-icon-button-disabled-icon-opacity: 0.38;
}

.mat-mdc-icon-button .mdc-button__icon {
  font-size: var(--mdc-icon-button-icon-size);
}

.mat-mdc-icon-button svg,
.mat-mdc-icon-button img {
  width: var(--mdc-icon-button-icon-size);
  height: var(--mdc-icon-button-icon-size);
}

.mat-mdc-icon-button:disabled {
  opacity: var(--mdc-icon-button-disabled-icon-opacity);
}

.mat-mdc-icon-button:disabled {
  color: var(--mdc-icon-button-disabled-icon-color);
}

.mat-mdc-icon-button {
  padding: 12px;
  font-size: var(--mdc-icon-button-icon-size);
  border-radius: 50%;
  flex-shrink: 0;
  text-align: center;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.mat-mdc-icon-button svg {
  vertical-align: baseline;
}

.mat-mdc-icon-button[disabled] {
  cursor: default;
  pointer-events: none;
  opacity: 1;
}

.mat-mdc-icon-button .mat-mdc-button-ripple,
.mat-mdc-icon-button .mat-mdc-button-persistent-ripple,
.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
  pointer-events: none;
  border-radius: inherit;
}

.mat-mdc-icon-button .mat-mdc-button-ripple {
  overflow: hidden;
}

.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before {
  content: "";
  opacity: 0;
  background-color: var(--mat-mdc-button-persistent-ripple-color);
}

.mat-mdc-icon-button .mat-ripple-element {
  background-color: var(--mat-mdc-button-ripple-color);
}

.mat-mdc-icon-button .mdc-button__label {
  z-index: 1;
}

.mat-mdc-icon-button .mat-mdc-focus-indicator {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
}

.mat-mdc-icon-button:focus .mat-mdc-focus-indicator::before {
  content: "";
}

.mat-mdc-icon-button .mat-mdc-button-touch-target {
  position: absolute;
  top: 50%;
  height: 48px;
  left: 50%;
  width: 48px;
  transform: translate(-50%, -50%);
}

.mat-mdc-icon-button._mat-animation-noopable {
  transition: none !important;
  animation: none !important;
}

.mat-mdc-icon-button .mat-mdc-button-persistent-ripple {
  border-radius: 50%;
}

.mat-mdc-icon-button.mat-unthemed:not(.mdc-ripple-upgraded):focus::before,
.mat-mdc-icon-button.mat-primary:not(.mdc-ripple-upgraded):focus::before,
.mat-mdc-icon-button.mat-accent:not(.mdc-ripple-upgraded):focus::before,
.mat-mdc-icon-button.mat-warn:not(.mdc-ripple-upgraded):focus::before {
  background: rgba(0, 0, 0, 0);
  opacity: 1;
}

.td-topbar {
  font-size: 14px;
  position: relative;
}
.td-topbar nav {
  height: var(--topbar-height);
  margin: 0 auto;
  padding: 0 8px;
  display: flex;
  justify-content: space-between;
  position: relative;
  max-width: 1536px;
}
.td-topbar li {
  list-style: none;
  display: flex;
}

.td-topbar-content {
  flex: 1;
  display: flex;
  justify-content: space-between;
}

.td-topbar-logo-container, .td-topbar-panel-header, .td-topbar-link, .td-topbar-link:visited {
  display: flex;
  align-items: center;
  padding: 0 20px;
  color: var(--color-white);
  cursor: pointer;
  transition: color 100ms;
  font-weight: var(--font-weight-regular);
}
.td-topbar-logo-container svg path, .td-topbar-panel-header svg path, .td-topbar-link svg path, .td-topbar-link:visited svg path {
  transition: fill 100ms;
}
.td-topbar-logo-container:hover, .td-topbar-panel-header:hover, .td-topbar-link:hover, .td-topbar-link:visited:hover {
  color: var(--color-secondary-light-grey);
}
.td-topbar-logo-container:hover svg path, .td-topbar-panel-header:hover svg path, .td-topbar-link:hover svg path, .td-topbar-link:visited:hover svg path {
  fill: var(--color-secondary-light-grey);
}

.td-topbar-logo-container svg {
  margin-bottom: 2px;
  height: 42px;
}
.td-topbar-logo-container svg .tp-right-eye {
  animation: 90s linear 0s infinite winkWink;
  transform-origin: center;
}

@keyframes winkWink {
  0% {
    transform: scaleY(1);
  }
  99.8% {
    transform: scaleY(1);
  }
  99.9% {
    transform: translateY(20px) scaleY(0.01);
  }
  100% {
    transform: scaleY(1);
  }
}
.td-topbar-main-area, .td-topbar-secondary-area {
  display: flex;
}

.td-topbar-button {
  margin: 0 20px;
  align-self: center;
  width: unset !important; /* overrides media query */
  padding: 0 12px;
}

.td-topbar-menu-panel {
  position: absolute;
  top: 64px;
  z-index: 700;
  border: 1px solid var(--content-border-color);
  background-color: var(--color-deep-purple);
  border-radius: var(--border-radius);
  display: none;
  flex-direction: row;
  overflow: hidden;
  margin-left: -64px;
}
.td-topbar-menu-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}
.td-topbar-menu-panel dt {
  font-weight: var(--font-weight-regular);
  font-size: 14px;
  display: flex;
  align-items: center;
}
.td-topbar-menu-panel dd {
  font-size: 12px;
  margin-top: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 1000px) and (max-width: 1039px) {
  .td-topbar-menu-panel {
    margin-left: -164px;
  }
}
@media (min-width: 1040px) and (max-width: 1120px) {
  .td-topbar-menu-panel {
    margin-left: -112px;
  }
}
@media (max-width: 999px) {
  .td-topbar-menu-panel {
    margin-left: 0;
  }
}

.td-topbar-chevron {
  margin: 0 -8px 0 8px;
  font-size: 12px;
  transition: transform 100ms;
}

@media (min-width: 1000px) {
  .td-topbar-panel-opened .td-topbar-chevron {
    transform: rotate(180deg);
  }
  .td-topbar-panel-opened .td-topbar-menu-panel, .td-topbar-panel-opened.td-topbar-menu-panel {
    display: flex;
  }
}

.td-topbar-columns {
  display: flex;
  padding: 16px;
}

.td-topbar-panel-item-group {
  padding: 8px 12px;
}
.td-topbar-panel-item-group dl {
  margin: 8px 0 !important;
  display: grid;
  grid-auto-flow: dense;
  gap: 6px;
}
.td-topbar-panel-item-group a {
  color: var(--color-white);
  font-weight: var(--font-weight-light);
  display: flex;
  gap: 16px;
  padding: 6px 14px;
  margin-left: -12px;
  border-radius: var(--border-radius);
  transition: background-color 100ms;
}
.td-topbar-panel-item-group a .td-icon-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  flex: 0 0 32px;
}
.td-topbar-panel-item-group a .td-icon-container i {
  font-size: 24px;
}
.td-topbar-panel-item-group a:hover, .td-topbar-panel-item-group a:focus {
  background: var(--color-light-purple);
}

.td-topbar-column-title {
  color: var(--color-white);
  padding-bottom: 0 !important;
  font-weight: var(--font-weight-regular);
  font-size: 12px;
  line-height: 22px;
  text-transform: uppercase;
  letter-spacing: 0.035em;
}

.td-topbar-bottom-links {
  border-top: 1px solid var(--color-light-purple);
  display: flex;
}
.td-topbar-bottom-links a {
  flex: 1;
  display: block;
  padding: 12px 28px;
  transition: background-color 100ms;
}
.td-topbar-bottom-links a:hover, .td-topbar-bottom-links a:focus {
  background: var(--color-light-purple);
}
.td-topbar-bottom-links a + a {
  border-left: 1px solid var(--color-light-purple);
}
.td-topbar-bottom-links dt::after {
  margin-left: 6px;
  content: "\f178";
  font-family: "Font Awesome 6 Pro";
  font-size: 90%;
  -webkit-user-select: none;
  user-select: none;
  display: inline-block;
}

.td-topbar-menu-panel-ctas {
  width: 212px;
  border-left: 1px solid var(--color-light-purple);
  display: flex;
  flex-direction: column;
}
.td-topbar-menu-panel-ctas li {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 24px;
}
.td-topbar-menu-panel-ctas li h5 {
  font-weight: var(--font-weight-regular);
  font-size: 14px;
  display: flex;
  align-items: center;
}
.td-topbar-menu-panel-ctas li a {
  font-size: 12px;
  margin-top: 4px;
}
.td-topbar-menu-panel-ctas li + li {
  border-top: 1px solid var(--color-light-purple);
}

.td-topbar-external-icon {
  text-indent: 100%;
  background: currentColor;
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%221em%22 height%3D%221em%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E  %3Cpath d%3D%22M16.6707 8.97635L6.64706 19L5 17.353L15.0237 7.3293H6.1889V5H19V17.8111H16.6707V8.97635Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%221em%22 height%3D%221em%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E  %3Cpath d%3D%22M16.6707 8.97635L6.64706 19L5 17.353L15.0237 7.3293H6.1889V5H19V17.8111H16.6707V8.97635Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
  width: 16px;
  height: 16px;
  margin-left: 4px;
  margin-right: -24px;
  opacity: 0;
  transition: opacity 100ms;
}
a:hover .td-topbar-external-icon, a:focus .td-topbar-external-icon {
  opacity: 1;
}

.td-topbar-menu-button {
  appearance: none;
  background: none;
  border: none;
  outline: none;
  font-size: 24px;
  padding: 0.25em;
  margin: -0.25em;
  margin-right: 16px;
  align-self: center;
  cursor: pointer;
  display: none;
  --menu-icon-url: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M0 4.5C0 4.22386 0.282768 4 0.631579 4H23.3684C23.7172 4 24 4.22386 24 4.5C24 4.77614 23.7172 5 23.3684 5H0.631579C0.282768 5 0 4.77614 0 4.5Z%22 %2F%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M0 9.5C0 9.22386 0.282768 9 0.631579 9H23.3684C23.7172 9 24 9.22386 24 9.5C24 9.77614 23.7172 10 23.3684 10H0.631579C0.282768 10 0 9.77614 0 9.5Z%22 %2F%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M0 14.5C0 14.2239 0.282768 14 0.631579 14H23.3684C23.7172 14 24 14.2239 24 14.5C24 14.7761 23.7172 15 23.3684 15H0.631579C0.282768 15 0 14.7761 0 14.5Z%22 %2F%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M0 19.5C0 19.2239 0.282768 19 0.631579 19H23.3684C23.7172 19 24 19.2239 24 19.5C24 19.7761 23.7172 20 23.3684 20H0.631579C0.282768 20 0 19.7761 0 19.5Z%22 %2F%3E%3C%2Fsvg%3E");
}
.td-topbar-menu-button::before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: var(--color-white);
  mask-image: var(--menu-icon-url);
  -webkit-mask-image: var(--menu-icon-url);
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-topbar-github-logo {
  width: 88px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.td-topbar-github-logo svg {
  width: 24px;
  height: 24px;
}

.td-topbar-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--banner-height);
  border-bottom: 1px solid var(--content-border-color);
  box-shadow: 2px 2px 1px -1px rgba(0, 0, 0, 0.2), 2px 2px 3px 0px rgba(0, 0, 0, 0.14), 2px 1px 5px 0px rgba(0, 0, 0, 0.12);
  background-color: var(--color-secondary-blue);
  text-align: center;
}
.td-topbar-banner p {
  font-size: 12px;
  line-height: 18px;
  color: var(--color-black);
  font-family: var(--font-family-code);
}
@media (max-width: 767px) {
  .td-topbar-banner p {
    font-size: 10px;
  }
}
.td-topbar-banner strong {
  font-weight: inherit;
}

@media (max-width: 999px) {
  .td-topbar:not(.td-topbar-open) .td-topbar-content {
    display: none;
  }
  .td-topbar-open nav {
    background: var(--body-background);
  }
  .td-topbar-logo-container {
    padding: 0 12px;
  }
  .td-topbar-menu-button {
    display: initial;
    --menu-icon-url: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M3 4.5C3 4.22386 3.21208 4 3.47368 4H20.5263C20.7879 4 21 4.22386 21 4.5C21 4.77614 20.7879 5 20.5263 5H3.47368C3.21208 5 3 4.77614 3 4.5Z%22 %2F%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M3 9.5C3 9.22386 3.21208 9 3.47368 9H20.5263C20.7879 9 21 9.22386 21 9.5C21 9.77614 20.7879 10 20.5263 10H3.47368C3.21208 10 3 9.77614 3 9.5Z%22 %2F%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M3 14.5C3 14.2239 3.21208 14 3.47368 14H20.5263C20.7879 14 21 14.2239 21 14.5C21 14.7761 20.7879 15 20.5263 15H3.47368C3.21208 15 3 14.7761 3 14.5Z%22 %2F%3E%3Cpath fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M3 19.5C3 19.2239 3.21208 19 3.47368 19H20.5263C20.7879 19 21 19.2239 21 19.5C21 19.7761 20.7879 20 20.5263 20H3.47368C3.21208 20 3 19.7761 3 19.5Z%22 %2F%3E%3C%2Fsvg%3E");
    margin-right: 12px;
  }
  .td-topbar.td-topbar-open .td-topbar-menu-button {
    --menu-icon-url: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M6.36131 5.23356L12 10.8723L17.6387 5.23356C17.9501 4.92215 18.455 4.92215 18.7664 5.23356C19.0779 5.54498 19.0779 6.04989 18.7664 6.3613L13.1277 12L18.7664 17.6387C19.0779 17.9501 19.0779 18.455 18.7664 18.7664C18.455 19.0779 17.9501 19.0779 17.6387 18.7664L12 13.1277L6.3613 18.7664C6.04989 19.0779 5.54498 19.0779 5.23356 18.7664C4.92215 18.455 4.92215 17.9501 5.23356 17.6387L10.8723 12L5.23357 6.3613C4.92215 6.04989 4.92215 5.54498 5.23357 5.23356C5.54498 4.92215 6.04989 4.92215 6.36131 5.23356Z%22 %2F%3E%3C%2Fsvg%3E");
  }
  .td-topbar-content {
    position: absolute;
    inset: var(--topbar-height) 0 auto 0;
    height: calc(100vh - 84px);
    z-index: 700;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    background-color: var(--body-background);
    width: 100%;
    padding: 0 20px;
    overflow-y: auto;
    border: none;
    border-top: 1px solid var(--color-light-purple);
  }
  .td-topbar-chevron {
    display: none;
  }
  .td-topbar-main-area {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 16px 0;
    overflow-y: visible;
    gap: 24px;
  }
  .td-topbar-main-area li {
    display: block;
  }
  .td-topbar-panel-header, .td-topbar-link, .td-topbar-link:visited {
    font-size: 16px;
    box-sizing: content-box;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: var(--color-white);
    cursor: pointer;
    margin: 0;
    padding: 0;
    gap: 16px;
  }
  .td-topbar-panel-header:hover, .td-topbar-panel-header:focus, .td-topbar-link:hover, .td-topbar-link:focus, .td-topbar-link:visited:hover, .td-topbar-link:visited:focus {
    color: var(--color-secondary-light-grey);
    text-decoration: none;
  }
  .td-topbar-panel-header.td-topbar-github-logo, .td-topbar-link.td-topbar-github-logo, .td-topbar-link:visited.td-topbar-github-logo {
    display: none;
  }
  li.td-topbar-panel-expanded .td-topbar-panel-header, li.td-topbar-panel-expanded .td-topbar-link, li.td-topbar-panel-expanded .td-topbar-link:visited {
    text-decoration: initial;
  }
  li.td-topbar-panel-expanded .td-topbar-panel-header, li.td-topbar-panel-expanded .td-topbar-link, li.td-topbar-panel-expanded .td-topbar-link:visited {
    color: var(--color-white);
  }
  li.td-topbar-panel-expanded .td-topbar-panel-header::after, li.td-topbar-panel-expanded .td-topbar-link::after, li.td-topbar-panel-expanded .td-topbar-link:visited::after {
    transform: rotate(180deg);
  }
  .td-topbar-panel-header::after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: var(--color-white);
    mask-image: url("data:image/svg+xml,%3Csvg width%3D%2220%22 height%3D%2220%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M12 13.1671L17.4447 7.72237L19 9.27768L12 16.2777L5 9.27768L6.55531 7.72237L12 13.1671Z%22%2F%3E%3C%2Fsvg%3E");
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2220%22 height%3D%2220%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M12 13.1671L17.4447 7.72237L19 9.27768L12 16.2777L5 9.27768L6.55531 7.72237L12 13.1671Z%22%2F%3E%3C%2Fsvg%3E");
    mask-size: 100%;
    -webkit-mask-size: 100%;
  }
  .td-topbar-menu-panel {
    position: relative;
    top: initial;
    left: initial;
    right: initial;
    z-index: initial;
    border: 0;
    background-color: initial;
    box-shadow: initial;
    margin-top: 16px;
  }
  .td-topbar-menu-panel::before {
    content: none;
  }
  .td-topbar-menu-panel, li:not(.td-topbar-panel-opened) .td-topbar-menu-panel {
    display: block;
  }
  li:not(.td-topbar-panel-expanded) .td-topbar-menu-panel {
    display: none;
  }
  .td-topbar-secondary-area {
    border: 0;
    display: flex;
    flex-direction: column;
    padding: 8px 0 24px;
    gap: 24px;
    flex: 1;
  }
  .td-topbar-secondary-area li:last-of-type {
    position: fixed;
    inset: auto 0 0 0;
    height: 84px;
    border-top: 1px solid var(--color-light-purple);
    justify-content: center;
    align-items: center;
    background: var(--body-background);
  }
  .td-topbar-button {
    margin: 0 auto;
    align-self: unset;
  }
  .td-topbar-link {
    padding: 0;
  }
  .td-topbar-columns {
    flex-direction: column;
    padding: 0;
  }
  .td-topbar-panel-item-group {
    flex-direction: column;
    margin-top: 24px;
    padding: 0;
  }
  .td-topbar-panel-item-group:first-of-type {
    padding-top: 0;
    border-top: none;
  }
  .td-topbar-panel-item-group:last-of-type {
    padding-bottom: 0;
  }
  .td-topbar-panel-item-group:not(:first-of-type) {
    border-left: 0;
  }
  .td-topbar-panel-item-group dl {
    margin: 20px 0 0;
    gap: 16px;
    grid-auto-columns: initial;
  }
  .td-topbar-panel-item-group dd {
    white-space: initial;
  }
  .td-topbar-panel-item-group a {
    margin-left: 0;
    padding: 0;
  }
  .td-topbar-column-title {
    padding-bottom: 0;
    font-weight: var(--font-weight-semi-bold);
  }
  .td-topbar-bottom-links {
    display: none;
    margin-top: 16px;
    border: 0;
  }
  .td-topbar-bottom-links a {
    padding: 12px 0;
  }
  .td-topbar-menu-panel-ctas {
    width: unset;
    border: 0;
    margin-top: 24px;
  }
  .td-topbar-menu-panel-ctas li {
    display: flex;
    flex-direction: column;
    align-items: baseline;
    padding: 16px 0;
    border-top: 1px solid var(--content-border-color);
  }
}
.td-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.td-footer-section {
  width: var(--section-width);
  max-width: var(--section-max-width);
  padding: 40px 12px;
}
@media (max-width: 767px) {
  .td-footer-section {
    padding: 18px 12px;
  }
}

.td-footer-section-social {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  border-top: 1px solid #2d2a46;
}
@media (max-width: 767px) {
  .td-footer-section-social {
    flex-direction: column;
    gap: 24px;
  }
  .td-footer-section-social a {
    width: 100%;
  }
}

.td-footer-social-links {
  display: flex;
  flex-direction: row;
  gap: 24px;
  height: 48px;
}
@media (max-width: 767px) {
  .td-footer-social-links {
    align-self: center;
    justify-content: center;
    height: 32px;
  }
}
.td-footer-social-links .td-footer-icon {
  width: 48px;
  height: 48px;
}
@media (max-width: 767px) {
  .td-footer-social-links .td-footer-icon {
    width: 32px;
    height: 32px;
  }
}

.td-footer-section-copyright {
  border-top: 1px solid #2d2a46;
}

.td-footer-section-nav {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  gap: 32px;
}
.td-footer-section-nav ul, .td-footer-section-nav li {
  list-style: none;
}
.td-footer-section-nav a, .td-footer-section-nav a:visited, .td-footer-section-nav a p {
  color: var(--color-secondary-light-grey);
}
.td-footer-section-nav a:hover, .td-footer-section-nav a:focus, .td-footer-section-nav a:visited:hover, .td-footer-section-nav a:visited:focus, .td-footer-section-nav a p:hover, .td-footer-section-nav a p:focus {
  color: var(--color-white);
}
.td-footer-section-nav a:hover p, .td-footer-section-nav a:focus p {
  color: var(--color-white);
}

.td-footer-contact ul {
  margin-top: 32px;
}
.td-footer-contact li:not(:first-child) {
  margin-top: 12px;
}
.td-footer-contact a {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 32px;
}
.td-footer-contact .td-footer-icon {
  width: 32px;
  height: 32px;
}

.td-footer-sitemap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 104px;
}
@media (max-width: 1199px) {
  .td-footer-sitemap {
    gap: 72px;
  }
}
@media (max-width: 767px) {
  .td-footer-sitemap {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 32px 24px;
  }
}
.td-footer-sitemap ul {
  margin-top: 34px;
}
@media (max-width: 1199px) {
  .td-footer-sitemap ul {
    margin-top: 32px;
  }
}
@media (max-width: 767px) {
  .td-footer-sitemap ul {
    margin-top: 16px;
    width: 144px;
  }
}
.td-footer-sitemap li:not(:first-child) {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .td-footer-sitemap li:not(:first-child) {
    margin-top: 12px;
  }
}

.td-footer-credits {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
  line-height: 22px;
}
.td-footer-credits .td-footer-icon {
  width: 16px;
  height: 16px;
}
.td-footer-credits img {
  width: 52px;
  height: unset;
}

.td-footer-icon {
  display: inline-block;
  overflow: hidden;
  text-indent: 100%;
}

.td-footer-icon-discord {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M7.60325 12.6489C7.60325 13.5972 8.30134 14.3695 9.14856 14.3695C10.0093 14.3695 10.6939 13.5972 10.6939 12.6488C10.7074 11.7072 10.0161 10.9282 9.14856 10.9282C8.2878 10.9282 7.60325 11.7005 7.60325 12.6489Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M13.3168 12.6489C13.3168 13.5972 14.0149 14.3695 14.8621 14.3695C15.7296 14.3695 16.4074 13.5972 16.4074 12.6488C16.4209 11.7072 15.7296 10.9282 14.8621 10.9282C14.0013 10.9282 13.3168 11.7005 13.3168 12.6489Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.57143 0H21.4286C22.8482 0 24 1.15179 24 2.57143V21.4286C24 22.8482 22.8482 24 21.4286 24H2.57143C1.15179 24 0 22.8482 0 21.4286V2.57143C0 1.15179 1.15179 0 2.57143 0ZM17.9588 6.57242C17.9684 6.57634 17.9763 6.58355 17.9811 6.59275C19.9229 9.42842 20.882 12.6272 20.5233 16.3096C20.5226 16.3174 20.5203 16.3249 20.5164 16.3317C20.5126 16.3384 20.5073 16.3443 20.501 16.3489C19.2013 17.3049 17.7469 18.0336 16.2004 18.5037C16.1895 18.507 16.1778 18.5068 16.167 18.5032C16.1561 18.4995 16.1467 18.4926 16.1401 18.4833C15.813 18.0327 15.5197 17.5588 15.2624 17.0655C15.2589 17.0587 15.2568 17.0512 15.2564 17.0435C15.256 17.0359 15.2572 17.0282 15.2599 17.0211C15.2627 17.0139 15.2669 17.0074 15.2724 17.002C15.2779 16.9966 15.2844 16.9924 15.2916 16.9896C15.7561 16.8162 16.205 16.6041 16.6336 16.3556C16.6414 16.351 16.6479 16.3445 16.6525 16.3368C16.6572 16.3291 16.6599 16.3204 16.6604 16.3114C16.6608 16.3025 16.6591 16.2935 16.6552 16.2854C16.6514 16.2772 16.6456 16.2702 16.6383 16.2648C16.5475 16.1977 16.4574 16.1273 16.3713 16.0568C16.3635 16.0505 16.3541 16.0465 16.3441 16.0453C16.3342 16.0441 16.3241 16.0458 16.315 16.05C13.5343 17.3256 10.4877 17.3256 7.67372 16.05C7.66468 16.046 7.65469 16.0446 7.64488 16.0459C7.63506 16.0472 7.62581 16.0512 7.61816 16.0575C7.5321 16.1279 7.44191 16.1977 7.35179 16.2648C7.34458 16.2702 7.33883 16.2773 7.33505 16.2855C7.33127 16.2937 7.32957 16.3026 7.33011 16.3116C7.33064 16.3206 7.33339 16.3293 7.33812 16.337C7.34284 16.3446 7.34939 16.351 7.3572 16.3556C7.78673 16.602 8.23523 16.8142 8.69851 16.9903C8.70573 16.9929 8.7123 16.997 8.7178 17.0024C8.7233 17.0077 8.7276 17.0141 8.73042 17.0212C8.73323 17.0283 8.7345 17.036 8.73414 17.0436C8.73377 17.0512 8.73179 17.0587 8.72831 17.0655C8.47529 17.5615 8.1815 18.036 7.84994 18.4841C7.84311 18.4931 7.83366 18.4998 7.82288 18.5033C7.81209 18.5068 7.80048 18.507 7.78961 18.5037C6.24589 18.0321 4.79403 17.3035 3.49601 16.3489C3.48978 16.3441 3.48458 16.338 3.48074 16.3312C3.4769 16.3243 3.47448 16.3168 3.47364 16.309C3.17408 13.1237 3.78473 9.89855 6.01389 6.59208C6.01934 6.58333 6.02739 6.57647 6.03693 6.57245C7.15163 6.06397 8.32817 5.70166 9.53697 5.49466C9.54793 5.49294 9.55917 5.49455 9.5692 5.49926C9.57924 5.50398 9.58761 5.51158 9.59323 5.52109C9.75711 5.80904 9.90487 6.10576 10.0358 6.40988C11.3387 6.21344 12.664 6.21344 13.9668 6.40988C14.0969 6.10653 14.2424 5.80989 14.4026 5.52109C14.4079 5.51137 14.4163 5.50359 14.4264 5.49884C14.4365 5.4941 14.4478 5.49263 14.4588 5.49466C15.6675 5.7021 16.8439 6.06438 17.9588 6.57242Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M7.60325 12.6489C7.60325 13.5972 8.30134 14.3695 9.14856 14.3695C10.0093 14.3695 10.6939 13.5972 10.6939 12.6488C10.7074 11.7072 10.0161 10.9282 9.14856 10.9282C8.2878 10.9282 7.60325 11.7005 7.60325 12.6489Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M13.3168 12.6489C13.3168 13.5972 14.0149 14.3695 14.8621 14.3695C15.7296 14.3695 16.4074 13.5972 16.4074 12.6488C16.4209 11.7072 15.7296 10.9282 14.8621 10.9282C14.0013 10.9282 13.3168 11.7005 13.3168 12.6489Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.57143 0H21.4286C22.8482 0 24 1.15179 24 2.57143V21.4286C24 22.8482 22.8482 24 21.4286 24H2.57143C1.15179 24 0 22.8482 0 21.4286V2.57143C0 1.15179 1.15179 0 2.57143 0ZM17.9588 6.57242C17.9684 6.57634 17.9763 6.58355 17.9811 6.59275C19.9229 9.42842 20.882 12.6272 20.5233 16.3096C20.5226 16.3174 20.5203 16.3249 20.5164 16.3317C20.5126 16.3384 20.5073 16.3443 20.501 16.3489C19.2013 17.3049 17.7469 18.0336 16.2004 18.5037C16.1895 18.507 16.1778 18.5068 16.167 18.5032C16.1561 18.4995 16.1467 18.4926 16.1401 18.4833C15.813 18.0327 15.5197 17.5588 15.2624 17.0655C15.2589 17.0587 15.2568 17.0512 15.2564 17.0435C15.256 17.0359 15.2572 17.0282 15.2599 17.0211C15.2627 17.0139 15.2669 17.0074 15.2724 17.002C15.2779 16.9966 15.2844 16.9924 15.2916 16.9896C15.7561 16.8162 16.205 16.6041 16.6336 16.3556C16.6414 16.351 16.6479 16.3445 16.6525 16.3368C16.6572 16.3291 16.6599 16.3204 16.6604 16.3114C16.6608 16.3025 16.6591 16.2935 16.6552 16.2854C16.6514 16.2772 16.6456 16.2702 16.6383 16.2648C16.5475 16.1977 16.4574 16.1273 16.3713 16.0568C16.3635 16.0505 16.3541 16.0465 16.3441 16.0453C16.3342 16.0441 16.3241 16.0458 16.315 16.05C13.5343 17.3256 10.4877 17.3256 7.67372 16.05C7.66468 16.046 7.65469 16.0446 7.64488 16.0459C7.63506 16.0472 7.62581 16.0512 7.61816 16.0575C7.5321 16.1279 7.44191 16.1977 7.35179 16.2648C7.34458 16.2702 7.33883 16.2773 7.33505 16.2855C7.33127 16.2937 7.32957 16.3026 7.33011 16.3116C7.33064 16.3206 7.33339 16.3293 7.33812 16.337C7.34284 16.3446 7.34939 16.351 7.3572 16.3556C7.78673 16.602 8.23523 16.8142 8.69851 16.9903C8.70573 16.9929 8.7123 16.997 8.7178 17.0024C8.7233 17.0077 8.7276 17.0141 8.73042 17.0212C8.73323 17.0283 8.7345 17.036 8.73414 17.0436C8.73377 17.0512 8.73179 17.0587 8.72831 17.0655C8.47529 17.5615 8.1815 18.036 7.84994 18.4841C7.84311 18.4931 7.83366 18.4998 7.82288 18.5033C7.81209 18.5068 7.80048 18.507 7.78961 18.5037C6.24589 18.0321 4.79403 17.3035 3.49601 16.3489C3.48978 16.3441 3.48458 16.338 3.48074 16.3312C3.4769 16.3243 3.47448 16.3168 3.47364 16.309C3.17408 13.1237 3.78473 9.89855 6.01389 6.59208C6.01934 6.58333 6.02739 6.57647 6.03693 6.57245C7.15163 6.06397 8.32817 5.70166 9.53697 5.49466C9.54793 5.49294 9.55917 5.49455 9.5692 5.49926C9.57924 5.50398 9.58761 5.51158 9.59323 5.52109C9.75711 5.80904 9.90487 6.10576 10.0358 6.40988C11.3387 6.21344 12.664 6.21344 13.9668 6.40988C14.0969 6.10653 14.2424 5.80989 14.4026 5.52109C14.4079 5.51137 14.4163 5.50359 14.4264 5.49884C14.4365 5.4941 14.4478 5.49263 14.4588 5.49466C15.6675 5.7021 16.8439 6.06438 17.9588 6.57242Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-footer-icon-meetup {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.57143 0H21.4286C22.8482 0 24 1.15179 24 2.57143V21.4286C24 22.8482 22.8482 24 21.4286 24H2.57143C1.15179 24 0 22.8482 0 21.4286V2.57143C0 1.15179 1.15179 0 2.57143 0ZM15.4008 17.1462C15.6913 18.6259 17.1741 19.5237 18.6077 19.7691L18.6122 19.7593C19.5687 19.9461 21.0347 19.907 21.4615 18.8713C21.4096 17.8832 20.2087 17.7134 19.387 17.5972C19.36 17.5933 19.3334 17.5896 19.3072 17.5858C18.2781 17.5446 17.992 16.4188 18.2043 15.61C18.4599 14.2915 19.0544 13.0903 19.6497 11.8879C20.1087 10.9606 20.5681 10.0325 20.8727 9.04933C21.1855 8.02012 21.4828 6.66957 20.5777 5.84012C19.562 5.06931 18.1351 5.24301 16.9864 5.61214C16.4718 5.71293 16.0772 5.42623 15.6769 5.1353C15.3096 4.86844 14.9375 4.59803 14.4633 4.61985C13.8366 4.57007 13.3895 4.94545 12.9447 5.31889C12.4777 5.71105 12.0132 6.10106 11.3458 5.99429C10.9597 5.88457 10.5893 5.70789 10.2185 5.53102C9.53996 5.20734 8.86006 4.88301 8.0797 4.96726C6.72654 4.94663 5.88739 6.19513 5.35886 7.24279C4.65491 8.83002 4.05822 10.4661 3.5554 12.1239C3.44333 12.584 3.29742 13.0409 3.15126 13.4985C2.81212 14.5604 2.47166 15.6265 2.54975 16.7455C2.50505 17.8518 3.53082 18.6845 4.59457 18.8235C5.57787 18.9375 6.87963 18.8116 7.38804 17.8518C7.65484 17.2544 7.82967 16.623 8.00502 15.9896C8.18658 15.3339 8.3687 14.6761 8.65404 14.052L10.5759 9.62038C11.0721 8.69215 12.5135 9.38588 12.1559 10.3369C12.0139 11.4234 11.5747 12.4255 11.1357 13.4272C10.9049 13.9539 10.6741 14.4806 10.4866 15.0194C10.167 15.7055 9.90775 16.815 10.8855 17.106C11.766 17.4132 12.5213 16.7 12.9549 16.0344C13.5551 15.1127 14.017 14.1166 14.4785 13.1213C14.6949 12.6547 14.9112 12.1883 15.1416 11.7298C15.2977 11.4383 15.4373 11.1347 15.5772 10.8305C15.935 10.0526 16.2946 9.27055 16.9372 8.67586C17.6479 8.06355 18.563 8.97985 18.1686 9.73112L16.1551 13.4082C15.4924 14.5373 15.2377 15.8586 15.4008 17.1462Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.57143 0H21.4286C22.8482 0 24 1.15179 24 2.57143V21.4286C24 22.8482 22.8482 24 21.4286 24H2.57143C1.15179 24 0 22.8482 0 21.4286V2.57143C0 1.15179 1.15179 0 2.57143 0ZM15.4008 17.1462C15.6913 18.6259 17.1741 19.5237 18.6077 19.7691L18.6122 19.7593C19.5687 19.9461 21.0347 19.907 21.4615 18.8713C21.4096 17.8832 20.2087 17.7134 19.387 17.5972C19.36 17.5933 19.3334 17.5896 19.3072 17.5858C18.2781 17.5446 17.992 16.4188 18.2043 15.61C18.4599 14.2915 19.0544 13.0903 19.6497 11.8879C20.1087 10.9606 20.5681 10.0325 20.8727 9.04933C21.1855 8.02012 21.4828 6.66957 20.5777 5.84012C19.562 5.06931 18.1351 5.24301 16.9864 5.61214C16.4718 5.71293 16.0772 5.42623 15.6769 5.1353C15.3096 4.86844 14.9375 4.59803 14.4633 4.61985C13.8366 4.57007 13.3895 4.94545 12.9447 5.31889C12.4777 5.71105 12.0132 6.10106 11.3458 5.99429C10.9597 5.88457 10.5893 5.70789 10.2185 5.53102C9.53996 5.20734 8.86006 4.88301 8.0797 4.96726C6.72654 4.94663 5.88739 6.19513 5.35886 7.24279C4.65491 8.83002 4.05822 10.4661 3.5554 12.1239C3.44333 12.584 3.29742 13.0409 3.15126 13.4985C2.81212 14.5604 2.47166 15.6265 2.54975 16.7455C2.50505 17.8518 3.53082 18.6845 4.59457 18.8235C5.57787 18.9375 6.87963 18.8116 7.38804 17.8518C7.65484 17.2544 7.82967 16.623 8.00502 15.9896C8.18658 15.3339 8.3687 14.6761 8.65404 14.052L10.5759 9.62038C11.0721 8.69215 12.5135 9.38588 12.1559 10.3369C12.0139 11.4234 11.5747 12.4255 11.1357 13.4272C10.9049 13.9539 10.6741 14.4806 10.4866 15.0194C10.167 15.7055 9.90775 16.815 10.8855 17.106C11.766 17.4132 12.5213 16.7 12.9549 16.0344C13.5551 15.1127 14.017 14.1166 14.4785 13.1213C14.6949 12.6547 14.9112 12.1883 15.1416 11.7298C15.2977 11.4383 15.4373 11.1347 15.5772 10.8305C15.935 10.0526 16.2946 9.27055 16.9372 8.67586C17.6479 8.06355 18.563 8.97985 18.1686 9.73112L16.1551 13.4082C15.4924 14.5373 15.2377 15.8586 15.4008 17.1462Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-footer-icon-twitter {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.57143 0H21.4286C22.8482 0 24 1.15179 24 2.57143V21.4286C24 22.8482 22.8482 24 21.4286 24H2.57143C1.15179 24 0 22.8482 0 21.4286V2.57143C0 1.15179 1.15179 0 2.57143 0ZM18.8196 8.9625C18.8196 8.8125 18.8196 8.65714 18.8089 8.50714C19.4946 8.00893 20.0946 7.3875 20.5714 6.68572C19.9393 6.95893 19.2536 7.15714 18.5464 7.23214C19.275 6.79822 19.8268 6.1125 20.0893 5.29821C19.4143 5.7 18.6536 5.99464 17.8607 6.14464C17.2178 5.45893 16.3071 5.03572 15.2946 5.03572C13.1518 5.03572 11.3678 6.96964 11.8661 9.35357C8.95177 9.20357 6.35356 7.81072 4.6232 5.67857C4.31784 6.19822 4.14641 6.79822 4.14641 7.45179C4.14449 8.62738 4.73187 9.7257 5.7107 10.3768C5.13748 10.3554 4.59105 10.1946 4.12498 9.93214V9.975C4.12498 11.6839 5.33034 13.0982 6.93748 13.425C6.38034 13.5696 5.89284 13.5696 5.35177 13.4893C5.79641 14.8821 7.09284 15.8946 8.6357 15.9268C7.43034 16.8696 5.91963 17.4268 4.27498 17.4268C3.9857 17.4268 3.71248 17.4161 3.42855 17.3839C4.98213 18.3804 6.83034 18.9589 8.8232 18.9589C15.2839 18.9589 18.8196 13.6071 18.8196 8.9625Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.57143 0H21.4286C22.8482 0 24 1.15179 24 2.57143V21.4286C24 22.8482 22.8482 24 21.4286 24H2.57143C1.15179 24 0 22.8482 0 21.4286V2.57143C0 1.15179 1.15179 0 2.57143 0ZM18.8196 8.9625C18.8196 8.8125 18.8196 8.65714 18.8089 8.50714C19.4946 8.00893 20.0946 7.3875 20.5714 6.68572C19.9393 6.95893 19.2536 7.15714 18.5464 7.23214C19.275 6.79822 19.8268 6.1125 20.0893 5.29821C19.4143 5.7 18.6536 5.99464 17.8607 6.14464C17.2178 5.45893 16.3071 5.03572 15.2946 5.03572C13.1518 5.03572 11.3678 6.96964 11.8661 9.35357C8.95177 9.20357 6.35356 7.81072 4.6232 5.67857C4.31784 6.19822 4.14641 6.79822 4.14641 7.45179C4.14449 8.62738 4.73187 9.7257 5.7107 10.3768C5.13748 10.3554 4.59105 10.1946 4.12498 9.93214V9.975C4.12498 11.6839 5.33034 13.0982 6.93748 13.425C6.38034 13.5696 5.89284 13.5696 5.35177 13.4893C5.79641 14.8821 7.09284 15.8946 8.6357 15.9268C7.43034 16.8696 5.91963 17.4268 4.27498 17.4268C3.9857 17.4268 3.71248 17.4161 3.42855 17.3839C4.98213 18.3804 6.83034 18.9589 8.8232 18.9589C15.2839 18.9589 18.8196 13.6071 18.8196 8.9625Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-footer-icon-youtube {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M15.3231 12L10.3385 14.8269V9.17308L15.3231 12Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M3.6 0H20.4C22.3882 0 24 1.61177 24 3.6V20.4C24 22.3882 22.3882 24 20.4 24H3.6C1.61177 24 0 22.3882 0 20.4V3.6C0 1.61177 1.61177 0 3.6 0ZM20.3077 12C20.3077 12 20.3077 8.99538 19.928 7.55608C19.7195 6.76292 19.1031 6.13777 18.318 5.92292C16.8982 5.53846 12 5.53846 12 5.53846C12 5.53846 7.10428 5.53846 5.682 5.92292C4.90025 6.13454 4.28298 6.7605 4.07197 7.55608C3.69231 8.99538 3.69231 12 3.69231 12C3.69231 12 3.69231 15.0046 4.07197 16.4439C4.28049 17.2371 4.89692 17.8622 5.682 18.0771C7.10428 18.4615 12 18.4615 12 18.4615C12 18.4615 16.8982 18.4615 18.318 18.0771C19.0998 17.8655 19.717 17.2395 19.928 16.4439C20.3077 15.0046 20.3077 12 20.3077 12Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M15.3231 12L10.3385 14.8269V9.17308L15.3231 12Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M3.6 0H20.4C22.3882 0 24 1.61177 24 3.6V20.4C24 22.3882 22.3882 24 20.4 24H3.6C1.61177 24 0 22.3882 0 20.4V3.6C0 1.61177 1.61177 0 3.6 0ZM20.3077 12C20.3077 12 20.3077 8.99538 19.928 7.55608C19.7195 6.76292 19.1031 6.13777 18.318 5.92292C16.8982 5.53846 12 5.53846 12 5.53846C12 5.53846 7.10428 5.53846 5.682 5.92292C4.90025 6.13454 4.28298 6.7605 4.07197 7.55608C3.69231 8.99538 3.69231 12 3.69231 12C3.69231 12 3.69231 15.0046 4.07197 16.4439C4.28049 17.2371 4.89692 17.8622 5.682 18.0771C7.10428 18.4615 12 18.4615 12 18.4615C12 18.4615 16.8982 18.4615 18.318 18.0771C19.0998 17.8655 19.717 17.2395 19.928 16.4439C20.3077 15.0046 20.3077 12 20.3077 12Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-footer-icon-linkedin {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.72727 0C1.22104 0 0 1.22104 0 2.72727V21.2727C0 22.779 1.22104 24 2.72727 24H21.2727C22.779 24 24 22.779 24 21.2727V2.72727C24 1.22104 22.779 0 21.2727 0H2.72727ZM4.00004 5.91715C4.00004 6.9755 4.85884 7.85212 5.91719 7.85212C6.97554 7.85212 7.83434 6.9755 7.83434 5.91715C7.83434 4.8588 6.97554 4 5.91719 4C4.85884 4 4.00004 4.8588 4.00004 5.91715ZM4.26367 19.9644H7.57414V9.30602H4.26367V19.9644ZM16.661 19.9644V14.776C16.661 13.5394 16.636 11.9537 14.9398 11.9537C13.2187 11.9537 12.955 13.2971 12.955 14.6869V19.9644H9.64805V9.30602H12.8231V10.7599H12.8694C13.3113 9.9225 14.391 9.03876 16.0017 9.03876C19.3514 9.03876 19.9679 11.2446 19.9679 14.1096V19.9644H16.661Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.72727 0C1.22104 0 0 1.22104 0 2.72727V21.2727C0 22.779 1.22104 24 2.72727 24H21.2727C22.779 24 24 22.779 24 21.2727V2.72727C24 1.22104 22.779 0 21.2727 0H2.72727ZM4.00004 5.91715C4.00004 6.9755 4.85884 7.85212 5.91719 7.85212C6.97554 7.85212 7.83434 6.9755 7.83434 5.91715C7.83434 4.8588 6.97554 4 5.91719 4C4.85884 4 4.00004 4.8588 4.00004 5.91715ZM4.26367 19.9644H7.57414V9.30602H4.26367V19.9644ZM16.661 19.9644V14.776C16.661 13.5394 16.636 11.9537 14.9398 11.9537C13.2187 11.9537 12.955 13.2971 12.955 14.6869V19.9644H9.64805V9.30602H12.8231V10.7599H12.8694C13.3113 9.9225 14.391 9.03876 16.0017 9.03876C19.3514 9.03876 19.9679 11.2446 19.9679 14.1096V19.9644H16.661Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-footer-icon-forum {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M21.4286 0H2.57143C1.15179 0 0 1.15179 0 2.57143V21.4286C0 22.8482 1.15179 24 2.57143 24H21.4286C22.8482 24 24 22.8482 24 21.4286V2.57143C24 1.15179 22.8482 0 21.4286 0ZM8.58128 5.51505C9.69157 4.88956 10.9447 4.5616 12.219 4.56299L12.227 4.56399C13.6938 4.56139 15.1281 4.99624 16.3465 5.81296C17.5649 6.62969 18.5121 7.79119 19.067 9.14899C19.6156 10.502 19.7434 11.989 19.4335 13.4157C19.1236 14.8425 18.3905 16.1425 17.33 17.146C16.2636 18.1568 14.9213 18.8284 13.473 19.0759C12.0247 19.3233 10.5355 19.1354 9.19403 18.536L4.40002 19.61L5.73402 15.353C5.12534 14.2416 4.81868 12.9901 4.84465 11.7232C4.87062 10.4564 5.2283 9.21847 5.88202 8.13299C6.54117 7.04235 7.47099 6.14054 8.58128 5.51505Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M21.4286 0H2.57143C1.15179 0 0 1.15179 0 2.57143V21.4286C0 22.8482 1.15179 24 2.57143 24H21.4286C22.8482 24 24 22.8482 24 21.4286V2.57143C24 1.15179 22.8482 0 21.4286 0ZM8.58128 5.51505C9.69157 4.88956 10.9447 4.5616 12.219 4.56299L12.227 4.56399C13.6938 4.56139 15.1281 4.99624 16.3465 5.81296C17.5649 6.62969 18.5121 7.79119 19.067 9.14899C19.6156 10.502 19.7434 11.989 19.4335 13.4157C19.1236 14.8425 18.3905 16.1425 17.33 17.146C16.2636 18.1568 14.9213 18.8284 13.473 19.0759C12.0247 19.3233 10.5355 19.1354 9.19403 18.536L4.40002 19.61L5.73402 15.353C5.12534 14.2416 4.81868 12.9901 4.84465 11.7232C4.87062 10.4564 5.2283 9.21847 5.88202 8.13299C6.54117 7.04235 7.47099 6.14054 8.58128 5.51505Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-footer-icon-discord {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M7.60325 12.6489C7.60325 13.5972 8.30134 14.3695 9.14856 14.3695C10.0093 14.3695 10.6939 13.5972 10.6939 12.6488C10.7074 11.7072 10.0161 10.9282 9.14856 10.9282C8.2878 10.9282 7.60325 11.7005 7.60325 12.6489Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M13.3168 12.6489C13.3168 13.5972 14.0149 14.3695 14.8621 14.3695C15.7296 14.3695 16.4074 13.5972 16.4074 12.6488C16.4209 11.7072 15.7296 10.9282 14.8621 10.9282C14.0013 10.9282 13.3168 11.7005 13.3168 12.6489Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.57143 0H21.4286C22.8482 0 24 1.15179 24 2.57143V21.4286C24 22.8482 22.8482 24 21.4286 24H2.57143C1.15179 24 0 22.8482 0 21.4286V2.57143C0 1.15179 1.15179 0 2.57143 0ZM17.9588 6.57242C17.9684 6.57634 17.9763 6.58355 17.9811 6.59275C19.9229 9.42842 20.882 12.6272 20.5233 16.3096C20.5226 16.3174 20.5203 16.3249 20.5164 16.3317C20.5126 16.3384 20.5073 16.3443 20.501 16.3489C19.2013 17.3049 17.7469 18.0336 16.2004 18.5037C16.1895 18.507 16.1778 18.5068 16.167 18.5032C16.1561 18.4995 16.1467 18.4926 16.1401 18.4833C15.813 18.0327 15.5197 17.5588 15.2624 17.0655C15.2589 17.0587 15.2568 17.0512 15.2564 17.0435C15.256 17.0359 15.2572 17.0282 15.2599 17.0211C15.2627 17.0139 15.2669 17.0074 15.2724 17.002C15.2779 16.9966 15.2844 16.9924 15.2916 16.9896C15.7561 16.8162 16.205 16.6041 16.6336 16.3556C16.6414 16.351 16.6479 16.3445 16.6525 16.3368C16.6572 16.3291 16.6599 16.3204 16.6604 16.3114C16.6608 16.3025 16.6591 16.2935 16.6552 16.2854C16.6514 16.2772 16.6456 16.2702 16.6383 16.2648C16.5475 16.1977 16.4574 16.1273 16.3713 16.0568C16.3635 16.0505 16.3541 16.0465 16.3441 16.0453C16.3342 16.0441 16.3241 16.0458 16.315 16.05C13.5343 17.3256 10.4877 17.3256 7.67372 16.05C7.66468 16.046 7.65469 16.0446 7.64488 16.0459C7.63506 16.0472 7.62581 16.0512 7.61816 16.0575C7.5321 16.1279 7.44191 16.1977 7.35179 16.2648C7.34458 16.2702 7.33883 16.2773 7.33505 16.2855C7.33127 16.2937 7.32957 16.3026 7.33011 16.3116C7.33064 16.3206 7.33339 16.3293 7.33812 16.337C7.34284 16.3446 7.34939 16.351 7.3572 16.3556C7.78673 16.602 8.23523 16.8142 8.69851 16.9903C8.70573 16.9929 8.7123 16.997 8.7178 17.0024C8.7233 17.0077 8.7276 17.0141 8.73042 17.0212C8.73323 17.0283 8.7345 17.036 8.73414 17.0436C8.73377 17.0512 8.73179 17.0587 8.72831 17.0655C8.47529 17.5615 8.1815 18.036 7.84994 18.4841C7.84311 18.4931 7.83366 18.4998 7.82288 18.5033C7.81209 18.5068 7.80048 18.507 7.78961 18.5037C6.24589 18.0321 4.79403 17.3035 3.49601 16.3489C3.48978 16.3441 3.48458 16.338 3.48074 16.3312C3.4769 16.3243 3.47448 16.3168 3.47364 16.309C3.17408 13.1237 3.78473 9.89855 6.01389 6.59208C6.01934 6.58333 6.02739 6.57647 6.03693 6.57245C7.15163 6.06397 8.32817 5.70166 9.53697 5.49466C9.54793 5.49294 9.55917 5.49455 9.5692 5.49926C9.57924 5.50398 9.58761 5.51158 9.59323 5.52109C9.75711 5.80904 9.90487 6.10576 10.0358 6.40988C11.3387 6.21344 12.664 6.21344 13.9668 6.40988C14.0969 6.10653 14.2424 5.80989 14.4026 5.52109C14.4079 5.51137 14.4163 5.50359 14.4264 5.49884C14.4365 5.4941 14.4478 5.49263 14.4588 5.49466C15.6675 5.7021 16.8439 6.06438 17.9588 6.57242Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M7.60325 12.6489C7.60325 13.5972 8.30134 14.3695 9.14856 14.3695C10.0093 14.3695 10.6939 13.5972 10.6939 12.6488C10.7074 11.7072 10.0161 10.9282 9.14856 10.9282C8.2878 10.9282 7.60325 11.7005 7.60325 12.6489Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 d%3D%22M13.3168 12.6489C13.3168 13.5972 14.0149 14.3695 14.8621 14.3695C15.7296 14.3695 16.4074 13.5972 16.4074 12.6488C16.4209 11.7072 15.7296 10.9282 14.8621 10.9282C14.0013 10.9282 13.3168 11.7005 13.3168 12.6489Z%22 %2F%3E%3Cpath fill%3D%22%23fff%22 fill-rule%3D%22evenodd%22 clip-rule%3D%22evenodd%22 d%3D%22M2.57143 0H21.4286C22.8482 0 24 1.15179 24 2.57143V21.4286C24 22.8482 22.8482 24 21.4286 24H2.57143C1.15179 24 0 22.8482 0 21.4286V2.57143C0 1.15179 1.15179 0 2.57143 0ZM17.9588 6.57242C17.9684 6.57634 17.9763 6.58355 17.9811 6.59275C19.9229 9.42842 20.882 12.6272 20.5233 16.3096C20.5226 16.3174 20.5203 16.3249 20.5164 16.3317C20.5126 16.3384 20.5073 16.3443 20.501 16.3489C19.2013 17.3049 17.7469 18.0336 16.2004 18.5037C16.1895 18.507 16.1778 18.5068 16.167 18.5032C16.1561 18.4995 16.1467 18.4926 16.1401 18.4833C15.813 18.0327 15.5197 17.5588 15.2624 17.0655C15.2589 17.0587 15.2568 17.0512 15.2564 17.0435C15.256 17.0359 15.2572 17.0282 15.2599 17.0211C15.2627 17.0139 15.2669 17.0074 15.2724 17.002C15.2779 16.9966 15.2844 16.9924 15.2916 16.9896C15.7561 16.8162 16.205 16.6041 16.6336 16.3556C16.6414 16.351 16.6479 16.3445 16.6525 16.3368C16.6572 16.3291 16.6599 16.3204 16.6604 16.3114C16.6608 16.3025 16.6591 16.2935 16.6552 16.2854C16.6514 16.2772 16.6456 16.2702 16.6383 16.2648C16.5475 16.1977 16.4574 16.1273 16.3713 16.0568C16.3635 16.0505 16.3541 16.0465 16.3441 16.0453C16.3342 16.0441 16.3241 16.0458 16.315 16.05C13.5343 17.3256 10.4877 17.3256 7.67372 16.05C7.66468 16.046 7.65469 16.0446 7.64488 16.0459C7.63506 16.0472 7.62581 16.0512 7.61816 16.0575C7.5321 16.1279 7.44191 16.1977 7.35179 16.2648C7.34458 16.2702 7.33883 16.2773 7.33505 16.2855C7.33127 16.2937 7.32957 16.3026 7.33011 16.3116C7.33064 16.3206 7.33339 16.3293 7.33812 16.337C7.34284 16.3446 7.34939 16.351 7.3572 16.3556C7.78673 16.602 8.23523 16.8142 8.69851 16.9903C8.70573 16.9929 8.7123 16.997 8.7178 17.0024C8.7233 17.0077 8.7276 17.0141 8.73042 17.0212C8.73323 17.0283 8.7345 17.036 8.73414 17.0436C8.73377 17.0512 8.73179 17.0587 8.72831 17.0655C8.47529 17.5615 8.1815 18.036 7.84994 18.4841C7.84311 18.4931 7.83366 18.4998 7.82288 18.5033C7.81209 18.5068 7.80048 18.507 7.78961 18.5037C6.24589 18.0321 4.79403 17.3035 3.49601 16.3489C3.48978 16.3441 3.48458 16.338 3.48074 16.3312C3.4769 16.3243 3.47448 16.3168 3.47364 16.309C3.17408 13.1237 3.78473 9.89855 6.01389 6.59208C6.01934 6.58333 6.02739 6.57647 6.03693 6.57245C7.15163 6.06397 8.32817 5.70166 9.53697 5.49466C9.54793 5.49294 9.55917 5.49455 9.5692 5.49926C9.57924 5.50398 9.58761 5.51158 9.59323 5.52109C9.75711 5.80904 9.90487 6.10576 10.0358 6.40988C11.3387 6.21344 12.664 6.21344 13.9668 6.40988C14.0969 6.10653 14.2424 5.80989 14.4026 5.52109C14.4079 5.51137 14.4163 5.50359 14.4264 5.49884C14.4365 5.4941 14.4478 5.49263 14.4588 5.49466C15.6675 5.7021 16.8439 6.06438 17.9588 6.57242Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-footer-icon-contactForm {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill-rule%3D%22evenodd%22 d%3D%22M2.5 0C1.11929 0 0 1.11929 0 2.5V21.5C0 22.8807 1.11929 24 2.5 24H21.5C22.8807 24 24 22.8807 24 21.5V2.5C24 1.11929 22.8807 0 21.5 0H2.5ZM12.0014 12.5489L4.82822 6H19.1722L12.0014 12.5489ZM14.0728 12L20 6.58675V17.4133L14.0728 12ZM12.0015 13.7355C11.8941 13.7355 11.7867 13.6956 11.6992 13.6157L10.6648 12.6713L4.82822 18H19.1722L13.3376 12.6714L12.3038 13.6156C12.2162 13.6956 12.1089 13.7355 12.0015 13.7355ZM9.9295 12L4 17.4135V6.58651L9.9295 12Z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath fill-rule%3D%22evenodd%22 d%3D%22M2.5 0C1.11929 0 0 1.11929 0 2.5V21.5C0 22.8807 1.11929 24 2.5 24H21.5C22.8807 24 24 22.8807 24 21.5V2.5C24 1.11929 22.8807 0 21.5 0H2.5ZM12.0014 12.5489L4.82822 6H19.1722L12.0014 12.5489ZM14.0728 12L20 6.58675V17.4133L14.0728 12ZM12.0015 13.7355C11.8941 13.7355 11.7867 13.6956 11.6992 13.6157L10.6648 12.6713L4.82822 18H19.1722L13.3376 12.6714L12.3038 13.6156C12.2162 13.6956 12.1089 13.7355 12.0015 13.7355ZM9.9295 12L4 17.4135V6.58651L9.9295 12Z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

.td-footer-icon-feedbackForm {
  background: var(--color-secondary-light-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%221.5em%22 height%3D%221.5em%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M21.4286 0H2.57143C1.15179 0 0 1.15179 0 2.57143V21.4286C0 22.8482 1.15179 24 2.57143 24H21.4286C22.8482 24 24 22.8482 24 21.4286V2.57143C24 1.15179 22.8482 0 21.4286 0ZM19.5 12C19.5 16.1421 16.1421 19.5 12 19.5C10.7231 19.5 9.5208 19.1809 8.46837 18.6181L4.5 19.5L5.5 16L5.54913 15.828C4.88272 14.7074 4.5 13.3984 4.5 12C4.5 7.85786 7.85786 4.5 12 4.5C16.1421 4.5 19.5 7.85786 19.5 12Z%22%2F%3E%3Cpath d%3D%22M11.6621 8.10078C11.7637 8.0349 11.8809 8 12.0005 8C12.1201 8 12.2373 8.0349 12.3389 8.10078C12.4406 8.16665 12.5227 8.26089 12.5759 8.37289L13.4644 10.2496L15.4504 10.5508C15.5687 10.5687 15.6801 10.6208 15.7716 10.7012C15.8631 10.7817 15.9313 10.8874 15.9684 11.0063C16.0055 11.1253 16.01 11.2527 15.9815 11.3742C15.953 11.4957 15.8925 11.6064 15.807 11.6938L14.3696 13.1546L14.708 15.2155C14.7284 15.339 14.7153 15.466 14.6702 15.5822C14.6251 15.6983 14.5497 15.7988 14.4527 15.8724C14.3556 15.946 14.2408 15.9896 14.1213 15.9984C14.002 16.0071 13.8829 15.9808 13.7772 15.9224L12.0005 14.9487L10.2234 15.9226C10.1177 15.9801 9.99814 16.0062 9.87933 15.9972C9.76053 15.9881 9.64647 15.9447 9.54989 15.8718C9.4533 15.7988 9.378 15.6993 9.33238 15.5842C9.28676 15.4691 9.27262 15.343 9.29155 15.22L9.29206 15.2166L9.63141 13.1545L8.19516 11.6949C8.10901 11.6077 8.04777 11.4967 8.01887 11.375C7.98994 11.2532 7.99435 11.1253 8.03157 11.006C8.0688 10.8867 8.13735 10.7807 8.2294 10.7001C8.32117 10.6199 8.43262 10.5681 8.55109 10.5507L10.5366 10.2496L11.4249 8.37335C11.4781 8.26135 11.5604 8.16665 11.6621 8.10078Z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%221.5em%22 height%3D%221.5em%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M21.4286 0H2.57143C1.15179 0 0 1.15179 0 2.57143V21.4286C0 22.8482 1.15179 24 2.57143 24H21.4286C22.8482 24 24 22.8482 24 21.4286V2.57143C24 1.15179 22.8482 0 21.4286 0ZM19.5 12C19.5 16.1421 16.1421 19.5 12 19.5C10.7231 19.5 9.5208 19.1809 8.46837 18.6181L4.5 19.5L5.5 16L5.54913 15.828C4.88272 14.7074 4.5 13.3984 4.5 12C4.5 7.85786 7.85786 4.5 12 4.5C16.1421 4.5 19.5 7.85786 19.5 12Z%22%2F%3E%3Cpath d%3D%22M11.6621 8.10078C11.7637 8.0349 11.8809 8 12.0005 8C12.1201 8 12.2373 8.0349 12.3389 8.10078C12.4406 8.16665 12.5227 8.26089 12.5759 8.37289L13.4644 10.2496L15.4504 10.5508C15.5687 10.5687 15.6801 10.6208 15.7716 10.7012C15.8631 10.7817 15.9313 10.8874 15.9684 11.0063C16.0055 11.1253 16.01 11.2527 15.9815 11.3742C15.953 11.4957 15.8925 11.6064 15.807 11.6938L14.3696 13.1546L14.708 15.2155C14.7284 15.339 14.7153 15.466 14.6702 15.5822C14.6251 15.6983 14.5497 15.7988 14.4527 15.8724C14.3556 15.946 14.2408 15.9896 14.1213 15.9984C14.002 16.0071 13.8829 15.9808 13.7772 15.9224L12.0005 14.9487L10.2234 15.9226C10.1177 15.9801 9.99814 16.0062 9.87933 15.9972C9.76053 15.9881 9.64647 15.9447 9.54989 15.8718C9.4533 15.7988 9.378 15.6993 9.33238 15.5842C9.28676 15.4691 9.27262 15.343 9.29155 15.22L9.29206 15.2166L9.63141 13.1545L8.19516 11.6949C8.10901 11.6077 8.04777 11.4967 8.01887 11.375C7.98994 11.2532 7.99435 11.1253 8.03157 11.006C8.0688 10.8867 8.13735 10.7807 8.2294 10.7001C8.32117 10.6199 8.43262 10.5681 8.55109 10.5507L10.5366 10.2496L11.4249 8.37335C11.4781 8.26135 11.5604 8.16665 11.6621 8.10078Z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}

:root {
  --doc-padding-sides: 15px;
  --doc-tooltip-width: 150px;
  --body-width: 1440px;
  --body-padding-sides: 20px;
  --body-padding-bottom: 40px;
  --body-gap: 32px;
  /* toolbar */
  --toolbar-height: 57px;
  /* nav */
  --nav-width: 316px;
  /* search */
  --search-result-background: rgba(21, 19, 34, 0.5);
  --search-result-hover-color: rgba(45, 42, 70, 0.5);
  --search-shadow-color: rgba(0, 0, 0, 0.5);
  --search-height: 38px;
  --search-highlight-color: rgba(246, 201, 76, 0.25);
}
@media (max-width: 1199px) {
  :root {
    --doc-padding-sides: 10px;
  }
}
@media (max-width: 767px) {
  :root {
    --doc-padding-sides: 5px;
    --search-height: 34px;
  }
}

:root {
  --doc-padding-sides: 15px;
  --doc-tooltip-width: 150px;
  --body-width: 1440px;
  --body-padding-sides: 20px;
  --body-padding-bottom: 40px;
  --body-gap: 32px;
  /* toolbar */
  --toolbar-height: 57px;
  /* nav */
  --nav-width: 316px;
  /* search */
  --search-result-background: rgba(21, 19, 34, 0.5);
  --search-result-hover-color: rgba(45, 42, 70, 0.5);
  --search-shadow-color: rgba(0, 0, 0, 0.5);
  --search-height: 38px;
  --search-highlight-color: rgba(246, 201, 76, 0.25);
}

@media (max-width: 1199px) {
  :root {
    --doc-padding-sides: 10px;
  }
}
@media (max-width: 767px) {
  :root {
    --doc-padding-sides: 5px;
    --search-height: 34px;
  }
}
html, body {
  scroll-padding-top: calc(var(--toolbar-height) + 1rem);
}

body.-toc h2 {
  text-transform: uppercase;
  font-size: 19px;
  font-weight: 400;
  color: var(--color-green);
  font-family: "Ubuntu Mono", monospace;
}
@media (max-width: 767px) {
  body.-toc h2 {
    font-size: 17px;
  }
}

body {
  --font-size-h1: 38px;
  --line-height-h1: 1.2631578947;
  --font-size-h2: 24px;
  --line-height-h2: 1.4166666667;
  --font-size-h3: 20px;
  --line-height-h3: 1.5;
  --font-size-h5: 18px;
  --line-height-h5: 1.5555555556;
  /* base */
  --panel-background: var(--color-deep-purple);
  --panel-border-color: var(--color-light-purple);
  --main-offset: 171px;
  /* admonitions */
  --important-color: var(--color-secondary-yellow);
  --important-background: rgba(255, 228, 158, 0.1);
  --note-color: var(--color-secondary-blue);
  --note-background: rgba(123, 160, 255, 0.1);
  --tip-color: var(--color-green);
  --tip-background: rgba(2, 218, 201, 0.1);
  --warning-color: var(--color-red);
  --warning-background: rgba(233, 100, 100, 0.1);
  /* doc */
  --doc-font-size: var(--font-size-p2);
  --doc-line-height: var(--line-height-p2);
  --section-divider-color: var(--panel-border-color);
  --link-font-color: var(--color-green);
  --link_hover-font-color: var(--color-green);
  --link_unresolved-font-color: var(--important-color);
  --abstract-background: var(--color-black-purple);
  --abstract-font-color: var(--color-grey);
  --abstract-border-color: var(--panel-border-color);
  --caption-font-color: var(--color-secondary-light-grey);
  --caption-font-style: italic;
  --caption-font-weight: var(--font-weight-regular);
  --example-background: var(--panel-background);
  --example-border-color: var(--panel-border-color);
  --kbd-background: var(--panel-background);
  --kbd-border-color: var(--color-grey);
  --pre-background: var(--color-black-purple);
  --quote-background: rgb(48, 45, 67);
  --quote-border-color: var(--color-secondary-light-grey);
  --quote-font-color: var(--color-grey);
  --quote-attribution-font-color: var(--default-text-color);
  --table-border-color: var(--panel-border-color);
  --table-header-background: var(--color-black-purple);
  --table-body-background: var(--color-deep-purple);
  --table-footer-background: var(--panel-background);
  --doc-max-width: calc(var(--body-width) - var(--nav-width) - var(--toc-width) - 2*var(--body-padding-sides));
  /* toc */
  --toc-width: 236px;
  --toc-line-height: 1.25;
  /* ai ✨ */
  --ask-ai-width: 156px;
}
@media (max-width: 1199px) {
  body {
    --body-padding-bottom: var(--section-page-margin);
    --body-padding-sides: var(--section-page-margin);
    --body-gap: 16px;
    --search-result-width: calc(100vw - 64px - var(--body-gap) - var(--nav-width));
  }
}
@media (max-width: 767px) {
  body {
    --font-size-h1: 30px;
    --line-height-h1: 1.3333333333;
    --font-size-h2: 24px;
    --line-height-h2: 1.4166666667;
    --font-size-h4: 18px;
    --line-height-h4: 1.5555555556;
    --font-size-h5: 18px;
    --line-height-h5: 1.5555555556;
    --font-size-h6: 14px;
    --line-height-h6: 1.7142857143;
    --search-result-width: calc(100vw - 24px);
    --main-offset: 121px;
  }
}

.body {
  margin: 0 auto;
  min-height: calc(100vh - var(--topbar-height) - var(--banner-height) - var(--toolbar-height));
  padding: 0 var(--body-padding-sides) var(--body-padding-bottom);
  max-width: var(--body-width);
}
.body .body-main {
  display: flex;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .body .body-main {
    gap: var(--body-gap);
  }
}
@media (max-width: 767px) {
  .body .body-main {
    flex-direction: column;
    align-items: stretch;
  }
}
.body p {
  font-size: inherit;
  line-height: inherit;
}
.body button {
  cursor: pointer;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}
.body button::-moz-focus-inner {
  border: none;
  padding: 0;
}
.body table {
  border-collapse: collapse;
  word-wrap: normal; /* table widths aren't computed as expected when word-wrap is enabled */
}

.td-topbar {
  border-bottom: 1px solid var(--content-border-color);
}
.td-topbar nav {
  max-width: 1466px;
}

.doc {
  font-size: var(--doc-font-size);
  font-weight: var(--font-weight-base);
  hyphens: auto;
  line-height: var(--doc-line-height);
  letter-spacing: var(--body-letter-spacing);
  tab-size: 4;
  word-wrap: anywhere;
  max-width: var(--doc-max-width);
  padding: 16px var(--doc-padding-sides) 0;
}
.doc .sect1, .doc #preamble {
  overflow: visible;
  padding: 0;
}
.doc .sect1 {
  margin-top: 48px;
}
.doc .sect1:first-of-type {
  margin-top: 32px;
}
@media (max-width: 1199px) {
  .doc .sect1:first-of-type {
    margin-top: 24px;
  }
}
.doc .sect2, .doc .sect3, .doc .sect4, .doc .sect5, .doc .sect6 {
  margin-top: 40px;
}
@media (max-width: 1199px) {
  .doc .sect2, .doc .sect3, .doc .sect4, .doc .sect5, .doc .sect6 {
    margin-top: 32px;
  }
}
.doc h1, .doc h2, .doc h3, .doc h4, .doc h5, .doc h6 {
  margin-left: -1rem;
  position: relative;
  padding-left: 1rem;
  color: var(--color-white);
}
.doc h1 .anchor, .doc h2 .anchor, .doc h3 .anchor, .doc h4 .anchor, .doc h5 .anchor, .doc h6 .anchor {
  position: absolute;
  visibility: hidden;
  left: 0;
  font-size: 0.8em;
  font-weight: var(--font-weight-medium);
  line-height: normal;
  padding-top: 0.05em;
}
.doc h1 .anchor::before, .doc h2 .anchor::before, .doc h3 .anchor::before, .doc h4 .anchor::before, .doc h5 .anchor::before, .doc h6 .anchor::before {
  content: "§";
}
.doc h1:hover .anchor, .doc h2:hover .anchor, .doc h3:hover .anchor, .doc h4:hover .anchor, .doc h5:hover .anchor, .doc h6:hover .anchor {
  visibility: visible;
}
.doc h1 {
  margin-top: 1rem;
  margin-bottom: 1.5rem;
}
.doc h2, .doc h3, .doc h4, .doc h5, .doc h6 {
  margin-top: 2em;
  margin-bottom: 1em;
}
.doc h3, .doc h4 {
  font-weight: var(--font-weight-medium);
}
.doc > h1.page:first-child {
  margin-top: 0;
  padding-left: 1rem;
}
.doc b, .doc strong {
  color: white;
  font-weight: var(--font-weight-semi-bold);
}
.doc dl {
  margin: 0;
}
.doc a {
  color: var(--link-font-color);
}
.doc a:hover {
  color: var(--link_hover-font-color);
}
.doc a.unresolved {
  color: var(--link_unresolved-font-color);
}
.doc i.fa {
  hyphens: none;
  font-style: normal;
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
}
.doc i.fa.icon-important {
  background: var(--color-secondary-yellow);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M11.99 2C6.47 2 2 6.48 2 12C2 17.52 6.47 22 11.99 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 11.99 2ZM16.23 18L12 15.45L7.77 18L8.89 13.19L5.16 9.96L10.08 9.54L12 5L13.92 9.53L18.84 9.95L15.11 13.18L16.23 18Z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M11.99 2C6.47 2 2 6.48 2 12C2 17.52 6.47 22 11.99 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 11.99 2ZM16.23 18L12 15.45L7.77 18L8.89 13.19L5.16 9.96L10.08 9.54L12 5L13.92 9.53L18.84 9.95L15.11 13.18L16.23 18Z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}
.doc i.fa.icon-note {
  background: var(--color-secondary-blue);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%221.5em%22 height%3D%221.5em%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 17C11.45 17 11 16.55 11 16V12C11 11.45 11.45 11 12 11C12.55 11 13 11.45 13 12V16C13 16.55 12.55 17 12 17ZM13 9H11V7H13V9Z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%221.5em%22 height%3D%221.5em%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 17C11.45 17 11 16.55 11 16V12C11 11.45 11.45 11 12 11C12.55 11 13 11.45 13 12V16C13 16.55 12.55 17 12 17ZM13 9H11V7H13V9Z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}
.doc i.fa.icon-tip {
  background: var(--color-green);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M9 21C9 21.5 9.4 22 10 22H14C14.6 22 15 21.5 15 21V20H9V21ZM12 2C8.1 2 5 5.1 5 9C5 11.4 6.2 13.5 8 14.7V17C8 17.5 8.4 18 9 18H15C15.6 18 16 17.5 16 17V14.7C17.8 13.4 19 11.3 19 9C19 5.1 15.9 2 12 2Z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M9 21C9 21.5 9.4 22 10 22H14C14.6 22 15 21.5 15 21V20H9V21ZM12 2C8.1 2 5 5.1 5 9C5 11.4 6.2 13.5 8 14.7V17C8 17.5 8.4 18 9 18H15C15.6 18 16 17.5 16 17V14.7C17.8 13.4 19 11.3 19 9C19 5.1 15.9 2 12 2Z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}
.doc i.fa.icon-warning {
  background: var(--color-red);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M4.09977 22H19.9002C21.5159 22 22.5231 20.1344 21.7153 18.6485L13.8151 4.11436C13.0072 2.62855 10.9928 2.62855 10.1849 4.11436L2.28471 18.6485C1.47686 20.1344 2.48406 22 4.09977 22ZM12 14.1799C11.423 14.1799 10.9508 13.6772 10.9508 13.0628V10.8285C10.9508 10.214 11.423 9.7113 12 9.7113C12.577 9.7113 13.0492 10.214 13.0492 10.8285V13.0628C13.0492 13.6772 12.577 14.1799 12 14.1799ZM13.0492 18.6485H10.9508V16.4142H13.0492V18.6485Z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M4.09977 22H19.9002C21.5159 22 22.5231 20.1344 21.7153 18.6485L13.8151 4.11436C13.0072 2.62855 10.9928 2.62855 10.1849 4.11436L2.28471 18.6485C1.47686 20.1344 2.48406 22 4.09977 22ZM12 14.1799C11.423 14.1799 10.9508 13.6772 10.9508 13.0628V10.8285C10.9508 10.214 11.423 9.7113 12 9.7113C12.577 9.7113 13.0492 10.214 13.0492 10.8285V13.0628C13.0492 13.6772 12.577 14.1799 12 14.1799ZM13.0492 18.6485H10.9508V16.4142H13.0492V18.6485Z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}
.doc p code,
.doc thead code,
.doc .colist > table code {
  color: var(--code-font-color);
  background: var(--code-background);
  border-radius: var(--border-radius-small);
  border: 1px solid var(--content-border-color);
  font-size: var(--font-size-code);
  padding: 6px 6px 3px 6px;
}
.doc table.tableblock p code,
.doc table.tableblock thead code,
.doc table.tableblock .colist > table code {
  background: var(--color-black-purple);
}
.doc code,
.doc pre {
  hyphens: none;
}
.doc pre {
  font-size: var(--font-size-code);
  line-height: 21px;
  margin: 0;
}
.doc blockquote {
  margin: 0;
}
.doc .paragraph.lead > p {
  font-size: 1.125rem;
}
.doc .right {
  float: right;
}
.doc .left {
  float: left;
}
.doc .float-gap.right {
  margin: 0 1rem 1rem 0;
}
.doc .float-gap.left {
  margin: 0 0 1rem 1rem;
}
.doc .float-group::after {
  content: "";
  display: table;
  clear: both;
}
.doc .stretch {
  width: calc(100% - 2px);
  margin-left: 1px;
}
.doc .underline {
  text-decoration: underline;
}
.doc .line-through {
  text-decoration: line-through;
}
.doc .paragraph, .doc .dlist, .doc .hdlist, .doc .olist, .doc .ulist, .doc details {
  margin: 0 0 1.25rem;
}
.doc .exampleblock, .doc .imageblock, .doc .listingblock, .doc .literalblock, .doc .verseblock, .doc .videoblock, .doc .openblock, .doc .quoteblock,
.doc .partintro, .doc hr {
  margin: 1.5rem 0;
}
.doc .tablecontainer,
.doc .tablecontainer + *,
.doc :not(.tablecontainer) > table.tableblock,
.doc :not(.tablecontainer) > table.tableblock + * {
  margin-top: 0.5rem;
  margin-bottom: 1.5rem;
}
.doc p.tableblock + p.tableblock {
  margin-top: 0.5rem;
}
.doc td.tableblock > .content > :first-child {
  margin-top: 0;
}
.doc td.tableblock .listingblock > .content {
  display: flex;
}
.doc td.tableblock .listingblock > .content > pre {
  width: 0;
}
.doc .table_wrapper {
  display: block;
  max-width: calc(100% - 2px);
  overflow-x: auto;
}
.doc table.tableblock {
  background: var(--table-body-background);
  border-radius: var(--border-radius);
  box-shadow: 0 0 0 1px var(--content-border-color);
  overflow: hidden;
}
.doc table.tableblock > * > tr {
  border-bottom: 1px solid #2d2a46;
}
.doc table.tableblock > * > tr > * {
  padding: 0.75rem 1.25rem;
  color: var(--color-white);
  font-size: 1rem;
  line-height: 1.75;
}
.doc table.tableblock > * > tr > th {
  font-weight: var(--font-weight-regular);
}
.doc table.tableblock > * > tr > td {
  font-weight: normal;
}
.doc table.tableblock > thead > tr > * {
  background: var(--table-header-background);
}
.doc table.tableblock > thead > tr > *:first-child {
  border-top-left-radius: var(--border-radius);
}
.doc table.tableblock > thead > tr > *:last-child {
  border-top-right-radius: var(--border-radius);
}
.doc table.tableblock > colgroup col:not(:first-of-type) {
  border-left: 1px solid #2d2a46;
}
.doc table.tableblock > tfoot {
  background: var(--table-footer-background);
}
.doc table.tableblock > * > tr > td {
  font-weight: var(--font-weight-light);
}
.doc table.tableblock > * > tr > * {
  font-size: var(--font-size-aside);
}
.doc .halign-left {
  text-align: left;
}
.doc .halign-right {
  text-align: right;
}
.doc .halign-center {
  text-align: center;
}
.doc .valign-top {
  vertical-align: top;
}
.doc .valign-bottom {
  vertical-align: bottom;
}
.doc .valign-middle {
  vertical-align: middle;
}
.doc .admonitionblock td.content > :last-child {
  margin-bottom: 0;
}
.doc .admonitionblock > table {
  table-layout: fixed;
  position: relative;
  width: 100%;
}
.doc .admonitionblock td.content {
  padding: 0.5rem 0 0;
  background: var(--admonition-background);
  width: 100%;
  word-wrap: anywhere;
}
.doc .imageblock,
.doc .videoblock {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: 1rem 0rem 1rem;
}
.doc .imageblock.text-left,
.doc .videoblock.text-left {
  align-items: flex-start;
}
.doc .imageblock.text-right,
.doc .videoblock.text-right {
  align-items: flex-end;
}
.doc .imageblock.left,
.doc .videoblock.left {
  float: none;
  display: block;
}
.doc .imageblock.left .image > img,
.doc .videoblock.left .image > img {
  float: left;
  margin: 1rem 1rem 1rem 0;
}
.doc .imageblock.right,
.doc .videoblock.right {
  float: none;
  display: block;
}
.doc .imageblock.right .image > img,
.doc .videoblock.right .image > img {
  float: right;
  margin: 1rem 0 1rem 1rem;
}
.doc .videoblock {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}
.doc .videoblock iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.doc .imageblock img,
.doc .imageblock object,
.doc .imageblock svg,
.doc .image > object,
.doc .image > svg,
.doc .image > img {
  display: inline-block;
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}
.doc :not(.imageblock) :not(.tableblock) .image > img {
  vertical-align: middle;
}
.doc .imageblock.framed img,
.doc .imageblock.framed object,
.doc .imageblock.framed svg,
.doc .image.framed > img,
.doc .image.framed > object,
.doc .image.framed > svg,
.doc .videoblock.framed iframe {
  border-radius: var(--border-radius);
  border: 1px solid var(--color-light-purple);
}
.doc .videoblock iframe {
  max-width: 100%;
  vertical-align: middle;
}
.doc #preamble .abstract blockquote {
  background: var(--abstract-background);
  border-left: 5px solid var(--abstract-border-color);
  color: var(--abstract-font-color);
  font-size: inherit;
  padding: 1rem 1.25rem;
}
.doc .quoteblock,
.doc .verseblock {
  background: var(--quote-background);
  border-left: 2px solid var(--quote-border-color);
  color: var(--quote-font-color);
}
.doc .quoteblock {
  padding: 1rem 1.25rem;
}
.doc .quoteblock .attribution {
  color: var(--quote-attribution-font-color);
  font-size: var(--font-size-aside);
  margin-top: 0.75rem;
}
.doc .quoteblock blockquote {
  margin-top: 0.25rem;
}
.doc .quoteblock blockquote .paragraph {
  margin-top: 0px;
}
.doc .quoteblock blockquote .paragraph em {
  font-weight: var(--font-weight-light);
  font-size: var(--font-size-p1);
  color: var(--color-grey);
  opacity: 0.9;
}
.doc .quoteblock .paragraph {
  font-style: italic;
}
.doc .quoteblock cite {
  padding-left: 1em;
}
.doc .verseblock {
  font-size: 1.15em;
  padding: 1rem 2rem;
}
.doc .verseblock pre {
  font-family: inherit;
  font-size: inherit;
}
.doc ol,
.doc ul {
  margin: 0;
  padding: 0 0 0 2rem;
}
.doc ul.checklist,
.doc ul.none,
.doc ol.none,
.doc ul.no-bullet,
.doc ol.unnumbered,
.doc ul.unstyled,
.doc ol.unstyled {
  list-style-type: none;
}
.doc ul.no-bullet,
.doc ol.unnumbered {
  padding-left: 1.25rem;
}
.doc ul.unstyled,
.doc ol.unstyled {
  padding-left: 0;
}
.doc ul.circle {
  list-style-type: circle;
}
.doc ul.disc {
  list-style-type: disc;
}
.doc ul.square {
  list-style-type: square;
}
.doc ul.circle ul:not([class]), .doc ul.disc ul:not([class]), .doc ul.square ul:not([class]) {
  list-style: inherit;
}
.doc ol.arabic {
  list-style-type: decimal;
}
.doc ol.decimal {
  list-style-type: decimal-leading-zero;
}
.doc ol.loweralpha {
  list-style-type: lower-alpha;
}
.doc ol.upperalpha {
  list-style-type: upper-alpha;
}
.doc ol.lowerroman {
  list-style-type: lower-roman;
}
.doc ol.upperroman {
  list-style-type: upper-roman;
}
.doc ol.lowergreek {
  list-style-type: lower-greek;
}
.doc ul.checklist {
  padding-left: 1.75rem;
}
.doc ul.checklist p > i.fa-check-square-o:first-child,
.doc ul.checklist p > i.fa-square-o:first-child {
  display: inline-flex;
  justify-content: center;
  width: 1.25rem;
  margin-left: -1.25rem;
}
.doc ul.checklist i.fa-check-square-o::before {
  content: "✓";
}
.doc ul.checklist i.fa-square-o::before {
  content: "❏";
}
.doc .olist ol {
  padding: 0.25rem 0rem 0.5rem 2rem;
}
.doc .ulist ul {
  padding: 0.25rem 0rem 0.5rem 1rem;
  list-style: none;
}
.doc .tablist ul {
  padding: 0px;
}
.doc .ulist li {
  padding-left: 1rem;
  position: relative;
}
.doc .olist li + li,
.doc .ulist li + li {
  margin-top: 0.5rem;
}
.doc .ulist li::before {
  content: "";
  display: block;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 50%;
  position: absolute;
  top: 0.5625rem;
  left: 0;
  background: currentColor;
}
.doc .dlist .dlist,
.doc .dlist .olist,
.doc .dlist .ulist,
.doc .olist .dlist,
.doc .olist .olist,
.doc .olist .ulist,
.doc .ulist .dlist,
.doc .ulist .olist,
.doc .ulist .ulist {
  margin-top: 0.75rem;
}
.doc .ulist .ulist li::before {
  background: none;
  box-shadow: inset 0 0 0 1px currentColor;
}
.doc .admonitionblock .title,
.doc .exampleblock .title,
.doc .imageblock .title,
.doc .literalblock .title,
.doc .listingblock .title,
.doc .openblock .title,
.doc .videoblock .title,
.doc .tableblock caption {
  color: var(--caption-font-color);
  font-size: var(--font-size-p2);
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  hyphens: none;
}
.doc .tableblock caption {
  caption-side: bottom;
  margin-top: 8px;
  letter-spacing: inherit;
  padding-bottom: 0;
}
.doc .ulist .title,
.doc .olist .title {
  font-style: var(--caption-font-style);
  font-weight: var(--caption-font-weight);
  margin-bottom: 0.25rem;
}
.doc .imageblock .title {
  margin-top: 0.5rem;
  padding-bottom: 0;
}
.doc details > summary {
  display: flex;
  align-items: center;
  position: relative;
  line-height: var(--doc-line-height);
  margin-bottom: 0.5rem;
  color: var(--color-green);
}
.doc details > summary:hover {
  text-decoration: underline;
}
.doc details > summary::-webkit-details-marker {
  display: none;
}
.doc details > summary::before {
  flex-shrink: 0;
  content: "";
  width: 20px;
  height: 20px;
  margin-right: 4px;
  background: var(--color-grey);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2220%22 height%3D%2220%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M12 13.1671L17.4447 7.72237L19 9.27768L12 16.2777L5 9.27768L6.55531 7.72237L12 13.1671Z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2220%22 height%3D%2220%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M12 13.1671L17.4447 7.72237L19 9.27768L12 16.2777L5 9.27768L6.55531 7.72237L12 13.1671Z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
  transform: rotate(-90deg);
}
.doc details > .content {
  margin-left: 1rem;
}
.doc details[open] > summary::before {
  transform: rotate(0deg);
}
.doc details.result {
  margin-top: 0.25rem;
}
.doc details.result > summary {
  color: var(--caption-font-color);
  font-style: italic;
  margin-bottom: 0;
}
.doc details.result > .content {
  margin-left: -1rem;
}
.doc .exampleblock > .content,
.doc details.result > .content {
  background: var(--example-background);
  border: 1px solid var(--example-border-color);
  border-radius: var(--border-radius);
  padding: 1rem;
}
.doc .exampleblock > .content::after,
.doc details.result > .content::after {
  content: "";
  display: table;
  clear: both;
}
.doc .exampleblock > .content > :first-child,
.doc details.result > .content > :first-child {
  margin-top: 0;
}
.doc .listingblock .content {
  background: var(--pre-background);
  border-radius: var(--border-radius);
  border: 1px solid var(--panel-border-color);
  position: relative;
}
.doc .listingblock .content pre {
  flex: 1;
  min-width: 0;
  overflow: auto;
  padding: 1.25rem;
  padding-right: 3rem; /* padding + icon + gap */
  display: flex;
  max-height: 500px;
}
.doc pre.highlight code,
.doc .listingblock pre:not(.highlight),
.doc .literalblock pre {
  display: block;
}
.doc pre.highlight code .hidden-line,
.doc .listingblock pre:not(.highlight) .hidden-line,
.doc .literalblock pre .hidden-line {
  opacity: 0.66;
}
.doc .source-toolbox {
  visibility: hidden;
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  background: var(--color-black-purple);
  box-shadow: 0 0 0.25rem 0.25rem var(--color-black-purple);
  display: flex;
  gap: 0.5rem;
  margin-top: 0rem;
}
.doc .source-toolbox .source-lang {
  display: none;
}
.doc .source-toolbox .copy-button {
  background: none;
  border: none;
  outline: none;
  padding: 0;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.doc .source-toolbox .copy-button.clicked .copy-toast {
  opacity: 1;
  transition: none;
}
.doc .source-toolbox .copy-icon {
  width: 1.5rem;
  height: 1.5rem;
  background: url('data:image/svg+xml,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill="%23ffffff"><path d="M9.33333 14.6667H6.37333C5.74461 14.6643 5.1423 14.4135 4.69772 13.9689C4.25314 13.5244 4.00234 12.9221 4 12.2933V6.37333C4.00234 5.74461 4.25314 5.1423 4.69772 4.69772C5.1423 4.25314 5.74461 4.00234 6.37333 4H12.2933C12.9221 4.00234 13.5244 4.25314 13.9689 4.69772C14.4135 5.1423 14.6643 5.74461 14.6667 6.37333V9.33333H17.3333C18.0406 9.33333 18.7189 9.61428 19.219 10.1144C19.719 10.6145 20 11.2928 20 12V17.3333C20 18.0406 19.719 18.7189 19.219 19.219C18.7189 19.719 18.0406 20 17.3333 20H12C11.2928 20 10.6145 19.719 10.1144 19.219C9.61428 18.7189 9.33333 18.0406 9.33333 17.3333V14.6667ZM9.33333 12.8889V12C9.33333 11.2928 9.61428 10.6145 10.1144 10.1144C10.6145 9.61428 11.2928 9.33333 12 9.33333H12.8889V6.37333C12.8889 6.21538 12.8261 6.0639 12.7145 5.95221C12.6028 5.84052 12.4513 5.77778 12.2933 5.77778H6.37333C6.21538 5.77778 6.0639 5.84052 5.95221 5.95221C5.84052 6.0639 5.77778 6.21538 5.77778 6.37333V12.2933C5.77778 12.4513 5.84052 12.6028 5.95221 12.7145C6.0639 12.8261 6.21538 12.8889 6.37333 12.8889H9.33333ZM11.3715 11.3715C11.5382 11.2048 11.7643 11.1111 12 11.1111H17.3333C17.5691 11.1111 17.7952 11.2048 17.9619 11.3715C18.1286 11.5382 18.2222 11.7643 18.2222 12V17.3333C18.2222 17.5691 18.1286 17.7952 17.9619 17.9619C17.7952 18.1286 17.5691 18.2222 17.3333 18.2222H12C11.7643 18.2222 11.5382 18.1286 11.3715 17.9619C11.2048 17.7952 11.1111 17.5691 11.1111 17.3333V12C11.1111 11.7643 11.2048 11.5382 11.3715 11.3715Z"/></svg>');
}
.doc .source-toolbox .copy-toast {
  white-space: nowrap;
  opacity: 0;
  transition: opacity 0.5s ease 0.5s;
  background: var(--color-light-purple);
  border-radius: var(--border-radius-small);
  padding: 0.25rem 0.5rem;
  position: absolute;
  top: 100%;
  margin-top: 0.5rem;
  font-family: var(--default-font-family);
  font-size: 0.875rem;
  line-height: 1.5;
  font-weight: var(--font-weight-medium);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.doc .source-toolbox .copy-toast::after {
  content: "";
  position: absolute;
  top: 0;
  border: 0.55em solid transparent;
  border-left-color: var(--color-light-purple);
  transform: rotate(-90deg) translateX(50%) translateY(50%);
  transform-origin: left;
}
.doc .source-toolbox .toggle-hidden-button {
  background: none;
  border: none;
  outline: none;
  padding: 0;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.doc .source-toolbox .toggle-hidden-icon {
  width: 1.5rem;
  height: 1.5rem;
  background-size: contain;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23ffffff"><path d="M12 4.5C7.305 4.5 3.135 7.364 1.5 12c1.635 4.636 5.805 7.5 10.5 7.5s8.865-2.864 10.5-7.5c-1.635-4.636-5.805-7.5-10.5-7.5zm0 13c-3.038 0-5.5-2.462-5.5-5.5S8.962 6.5 12 6.5s5.5 2.462 5.5 5.5-2.462 5.5-5.5 5.5z"/></svg>') no-repeat center;
}
.doc .source-toolbox .toggle-hidden-button.active .toggle-hidden-icon {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23ffffff"> <defs id="defs1"/> <path id="eye" d="M 12 4.5 C 7.305 4.5 3.135 7.364 1.5 12 C 2.2096407 14.012168 3.398041 15.69006 4.8984375 16.945312 L 7.1914062 14.666016 C 6.7523807 13.8759 6.5 12.968147 6.5 12 C 6.5 8.962 8.962 6.5 12 6.5 C 12.979747 6.5 13.896684 6.7601248 14.693359 7.2089844 L 16.482422 5.4316406 C 15.098496 4.825141 13.579212 4.5 12 4.5 z M 19.101562 7.0546875 L 16.808594 9.3339844 C 17.247619 10.1241 17.5 11.031853 17.5 12 C 17.5 15.038 15.038 17.5 12 17.5 C 11.020253 17.5 10.103316 17.239875 9.3066406 16.791016 L 7.5175781 18.568359 C 8.9015036 19.174859 10.420788 19.5 12 19.5 C 16.695 19.5 20.865 16.636 22.5 12 C 21.790359 9.9878322 20.601959 8.3099399 19.101562 7.0546875 z "/> <path id="slash" d="M 19.234375,3.4003906 3.3554688,19.181641 4.765625,20.599609 20.644531,4.8183594 Z"/></svg>') no-repeat center;
  background-size: contain;
}
.doc .listingblock:hover .source-toolbox {
  visibility: visible;
}
.doc .language-console .hljs-meta {
  -webkit-user-select: none;
  user-select: none;
}
.doc .dlist dt {
  font-style: italic;
  color: white;
  margin: 1rem 0rem 0.25rem;
  font-weight: var(--font-weight-medium);
}
.doc .dlist dd {
  margin: 0 0 0.25rem 1.5rem;
}
.doc .dlist dd:last-of-type {
  margin-bottom: 0;
}
.doc td.hdlist1,
.doc td.hdlist2 {
  padding: 0.5rem 0 0;
  vertical-align: top;
}
.doc tr:first-child > .hdlist1,
.doc tr:first-child > .hdlist2 {
  padding-top: 0;
}
.doc td.hdlist1 {
  font-weight: var(--font-weight-medium);
  padding-right: 0.25rem;
}
.doc td.hdlist2 {
  padding-left: 0.25rem;
}
.doc .colist {
  font-size: var(--font-size-p2);
  margin: 0.25rem 0 -0.25rem;
}
.doc .colist > table > tr > :first-child,
.doc .colist > table > tbody > tr > :first-child {
  padding: 0.25em 0.5rem 0;
  vertical-align: top;
}
.doc .colist > table > tr > :last-child,
.doc .colist > table > tbody > tr > :last-child {
  padding: 0.25rem 0;
}
.doc .conum[data-value] {
  border: 1px solid currentColor;
  border-radius: 100%;
  display: inline-block;
  font-family: var(--default-font-family);
  font-size: 13.5px;
  font-style: normal;
  line-height: 1.2;
  text-align: center;
  width: 1.25em;
  height: 1.25em;
  letter-spacing: -0.25ex;
  text-indent: -0.25ex;
}
.doc .conum[data-value]::after {
  content: attr(data-value);
}
.doc .conum[data-value] + b {
  display: none;
}
.doc hr {
  border: solid var(--section-divider-color);
  border-width: 2px 0 0;
  height: 0;
}
.doc .doc b.button {
  white-space: nowrap; /* effectively ignores hyphens setting */
}
.doc .doc b.button::before {
  content: "[ ";
}
.doc .doc b.button::after {
  content: " ]";
}
.doc kbd {
  display: inline-block;
  font-size: 12px;
  background: var(--kbd-background);
  border: 1px solid var(--kbd-border-color);
  border-radius: var(--border-radius-small);
  box-shadow: 0 1px 0 var(--kbd-border-color), 0 0 0 0.1em var(--body-background) inset;
  padding: 0.25em 0.5em;
  vertical-align: text-bottom;
  white-space: nowrap; /* effectively ignores hyphens setting */
}
.doc kbd,
.doc .keyseq {
  line-height: 1;
}
.doc .keyseq {
  font-size: 16px;
}
.doc .keyseq kbd {
  margin: 0 0.125em;
}
.doc .keyseq kbd:first-child {
  margin-left: 0;
}
.doc .keyseq kbd:last-child {
  margin-right: 0;
}
.doc .menuseq,
.doc .path {
  hyphens: none;
}
.doc .menuseq i.caret::before {
  content: "›";
  font-size: 1.1em;
  font-weight: var(--font-weight-medium);
  line-height: 0.9090909091;
}
.doc :not(pre).nowrap {
  white-space: nowrap;
}
.doc .nobreak {
  hyphens: none;
  word-wrap: normal;
}
.doc td.tableblock > .content #footnotes {
  margin: 2rem 0 0;
}
.doc #footnotes {
  font-size: 0.85em;
  line-height: 1.5;
  margin: 2rem 0 0;
}
.doc #footnotes hr {
  border-top-width: 1px;
  margin-top: 0;
  width: 20%;
}
.doc #footnotes .footnote {
  margin: 0.5em 0 0 1em;
}
.doc #footnotes .footnote + .footnote {
  margin-top: 0.25em;
}
.doc #footnotes .footnote > a:first-of-type {
  display: inline-block;
  margin-left: -2em;
  text-align: right;
  width: 1.5em;
}
.doc .openblock.link-panel,
.doc .sidebarblock.clickable {
  padding: var(--card-padding);
  border-radius: var(--border-radius);
  background-color: var(--color-purple);
  border: 1px solid var(--content-border-color);
  cursor: pointer;
  hyphens: none;
  transition: all 100ms;
}
.doc .openblock.link-panel:hover,
.doc .sidebarblock.clickable:hover {
  border-color: var(--content-border-color);
  background-color: var(--color-light-purple);
}
.doc .openblock.cols-2 > .content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
.doc .openblock.cols-3 > .content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
@media (max-width: 665px) {
  .doc .openblock.cols-2 > .content {
    grid-template-columns: repeat(1, 1fr);
  }
  .doc .openblock.cols-3 > .content {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media (min-width: 666px) and (max-width: 1379px) {
  .doc .openblock.cols-2 > .content {
    grid-template-columns: repeat(2, 1fr);
  }
  .doc .openblock.cols-3 > .content {
    grid-template-columns: repeat(2, 1fr);
  }
}
.doc .openblock.link-panel {
  margin: 24px 0 0;
}
.doc .openblock.link-panel + .link-panel {
  margin-top: 24px;
}
@media (max-width: 767px) {
  .doc .openblock.link-panel + .link-panel {
    margin-top: 1rem;
  }
}
@media (min-width: 768px) {
  .doc .openblock.link-panel > .content {
    display: grid;
    grid-template: "icon title" 41px "icon body" 1fr/72px 1fr;
    gap: 0 28px;
  }
}
@media (max-width: 767px) {
  .doc .openblock.link-panel > .content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px 0;
  }
}
.doc .openblock.link-panel > .content :last-child {
  margin-bottom: 0;
}
.doc .openblock.link-panel .paragraph {
  margin-top: 0;
}
.doc .openblock.link-panel .imageblock {
  grid-area: icon;
  margin: 0;
}
.doc .openblock.link-panel .imageblock + .paragraph, .doc .openblock.link-panel .imageblock + .paragraph a {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-h4);
  font-weight: var(--font-weight-semi-bold);
  color: var(--color-grey);
  hyphens: none;
}
.doc .openblock.link-panel .imageblock + .paragraph:hover, .doc .openblock.link-panel .imageblock + .paragraph a:hover {
  text-decoration: none;
}
@media (max-width: 767px) {
  .doc .openblock.link-panel .imageblock {
    transform: scale(0.66);
    transform-origin: 0 0;
    margin-bottom: -12px;
  }
}
.doc .sidebarblock > .content > :first-child {
  margin-top: 0;
  margin-bottom: 1rem;
}
.doc .sidebarblock > .content > :last-child {
  margin-bottom: 0;
}
.doc .sidebarblock a {
  color: var(--color-white);
  font-style: normal;
  font-size: var(--font-size-h5);
  font-weight: var(--font-weight-semi-bold);
}
.doc .sidebarblock a:hover {
  text-decoration: none;
}

.doc-404 {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.doc-404 h1.page {
  font-size: 144px;
}
.doc-404 .paragraph {
  max-width: 600px;
  text-align: center;
}

.doc-preamble-card #preamble {
  border-radius: var(--border-radius);
  background-color: var(--color-deep-purple);
  border: 1px solid #2d2a46;
  padding: var(--card-padding);
  margin-top: 24px;
}
@media (max-width: 1199px) {
  .doc-preamble-card #preamble {
    margin-top: 16px;
  }
}
.doc-preamble-card #preamble > .sectionbody > :first-child {
  margin-top: 0;
}
.doc-preamble-card #preamble .imageblock {
  margin-top: 0;
  margin-bottom: calc(var(--font-size-p2) * -2);
}

main.article {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-flow: row wrap;
  align-items: flex-start;
  gap: var(--body-gap);
}
main.article > .content {
  flex: 1;
  overflow: hidden;
  padding-top: 12px;
}

@media (max-width: 767px) {
  html.is-clipped--navbar {
    overflow-y: hidden;
  }
}
.nav-container {
  display: block;
  position: sticky;
  top: var(--toolbar-height);
  max-height: calc(100vh - var(--main-offset));
  flex: 0 0 var(--nav-width);
  z-index: 2;
  overflow-y: auto;
  scrollbar-width: thin;
  color-scheme: dark;
}
@media (max-width: 767px) {
  .nav-container {
    height: auto;
    flex-basis: auto;
    box-shadow: 0 -24px 12px 18px var(--body-background);
    background: var(--body-background);
  }
}

.nav {
  display: flex;
  flex-direction: column;
  height: 100%;
  line-height: inherit;
  font-weight: inherit;
}
.nav .panels-container {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.nav .panels {
  display: flex;
  flex-direction: column;
  overflow: hidden auto;
}
.nav .panels::before {
  content: "";
  position: sticky;
  top: 0;
  box-shadow: 0 0 0.5rem 0.5rem var(--body-background);
  z-index: 1;
}
@media (max-width: 767px) {
  .nav:not(.nav-opened) .panels {
    display: none;
  }
  .nav .panels {
    position: fixed;
    inset: 134px 0 0;
    padding: 12px;
    background: var(--body-background);
    z-index: 2;
  }
}

.nav-toggle-button {
  display: none;
  appearance: none;
  outline: none;
  padding: 0;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  border-radius: var(--border-radius-small);
  height: var(--search-height);
  width: var(--search-height);
  cursor: pointer;
}
.nav-toggle-button::after {
  content: "";
  width: 24px;
  height: 22px;
}
.nav-toggle-button.nav-opened::after {
  background: var(--color-white);
  mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M6.36131 5.23356L12 10.8723L17.6387 5.23356C17.9501 4.92215 18.455 4.92215 18.7664 5.23356C19.0779 5.54498 19.0779 6.04989 18.7664 6.3613L13.1277 12L18.7664 17.6387C19.0779 17.9501 19.0779 18.455 18.7664 18.7664C18.455 19.0779 17.9501 19.0779 17.6387 18.7664L12 13.1277L6.3613 18.7664C6.04989 19.0779 5.54498 19.0779 5.23356 18.7664C4.92215 18.455 4.92215 17.9501 5.23356 17.6387L10.8723 12L5.23357 6.3613C4.92215 6.04989 4.92215 5.54498 5.23357 5.23356C5.54498 4.92215 6.04989 4.92215 6.36131 5.23356Z%22 %2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width%3D%2224%22 height%3D%2224%22 viewBox%3D%220 0 24 24%22 fill%3D%22currentColor%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M6.36131 5.23356L12 10.8723L17.6387 5.23356C17.9501 4.92215 18.455 4.92215 18.7664 5.23356C19.0779 5.54498 19.0779 6.04989 18.7664 6.3613L13.1277 12L18.7664 17.6387C19.0779 17.9501 19.0779 18.455 18.7664 18.7664C18.455 19.0779 17.9501 19.0779 17.6387 18.7664L12 13.1277L6.3613 18.7664C6.04989 19.0779 5.54498 19.0779 5.23356 18.7664C4.92215 18.455 4.92215 17.9501 5.23356 17.6387L10.8723 12L5.23357 6.3613C4.92215 6.04989 4.92215 5.54498 5.23357 5.23356C5.54498 4.92215 6.04989 4.92215 6.36131 5.23356Z%22 %2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}
.nav-toggle-button:not(.nav-opened)::after {
  background: var(--color-white);
  mask-image: url("data:image/svg+xml,%3Csvg height%3D%2224%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 576 512%22 fill%3D%22currentColor%22%3E%3C!--!Font Awesome Pro 6.7.1 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense (Commercial License) Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M320 64c8.8 0 16 7.2 16 16l0 64c0 8.8-7.2 16-16 16l-16 0-32 0-16 0c-8.8 0-16-7.2-16-16l0-64c0-8.8 7.2-16 16-16l64 0zM256 192l16 0 0 48-160 0c-26.5 0-48 21.5-48 48l0 32-16 0c-26.5 0-48 21.5-48 48l0 64c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-64c0-26.5-21.5-48-48-48l-16 0 0-32c0-8.8 7.2-16 16-16l160 0 0 48-16 0c-26.5 0-48 21.5-48 48l0 64c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-64c0-26.5-21.5-48-48-48l-16 0 0-48 160 0c8.8 0 16 7.2 16 16l0 32-16 0c-26.5 0-48 21.5-48 48l0 64c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-64c0-26.5-21.5-48-48-48l-16 0 0-32c0-26.5-21.5-48-48-48l-160 0 0-48 16 0c26.5 0 48-21.5 48-48l0-64c0-26.5-21.5-48-48-48l-64 0c-26.5 0-48 21.5-48 48l0 64c0 26.5 21.5 48 48 48zM48 352l64 0c8.8 0 16 7.2 16 16l0 64c0 8.8-7.2 16-16 16l-64 0c-8.8 0-16-7.2-16-16l0-64c0-8.8 7.2-16 16-16zm208 0l64 0c8.8 0 16 7.2 16 16l0 64c0 8.8-7.2 16-16 16l-64 0c-8.8 0-16-7.2-16-16l0-64c0-8.8 7.2-16 16-16zm208 0l64 0c8.8 0 16 7.2 16 16l0 64c0 8.8-7.2 16-16 16l-64 0c-8.8 0-16-7.2-16-16l0-64c0-8.8 7.2-16 16-16z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg height%3D%2224%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 576 512%22 fill%3D%22currentColor%22%3E%3C!--!Font Awesome Pro 6.7.1 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense (Commercial License) Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M320 64c8.8 0 16 7.2 16 16l0 64c0 8.8-7.2 16-16 16l-16 0-32 0-16 0c-8.8 0-16-7.2-16-16l0-64c0-8.8 7.2-16 16-16l64 0zM256 192l16 0 0 48-160 0c-26.5 0-48 21.5-48 48l0 32-16 0c-26.5 0-48 21.5-48 48l0 64c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-64c0-26.5-21.5-48-48-48l-16 0 0-32c0-8.8 7.2-16 16-16l160 0 0 48-16 0c-26.5 0-48 21.5-48 48l0 64c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-64c0-26.5-21.5-48-48-48l-16 0 0-48 160 0c8.8 0 16 7.2 16 16l0 32-16 0c-26.5 0-48 21.5-48 48l0 64c0 26.5 21.5 48 48 48l64 0c26.5 0 48-21.5 48-48l0-64c0-26.5-21.5-48-48-48l-16 0 0-32c0-26.5-21.5-48-48-48l-160 0 0-48 16 0c26.5 0 48-21.5 48-48l0-64c0-26.5-21.5-48-48-48l-64 0c-26.5 0-48 21.5-48 48l0 64c0 26.5 21.5 48 48 48zM48 352l64 0c8.8 0 16 7.2 16 16l0 64c0 8.8-7.2 16-16 16l-64 0c-8.8 0-16-7.2-16-16l0-64c0-8.8 7.2-16 16-16zm208 0l64 0c8.8 0 16 7.2 16 16l0 64c0 8.8-7.2 16-16 16l-64 0c-8.8 0-16-7.2-16-16l0-64c0-8.8 7.2-16 16-16zm208 0l64 0c8.8 0 16 7.2 16 16l0 64c0 8.8-7.2 16-16 16l-64 0c-8.8 0-16-7.2-16-16l0-64c0-8.8 7.2-16 16-16z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
}
@media (max-width: 767px) {
  .nav-toggle-button {
    display: flex;
  }
}

.nav-list {
  list-style: none;
}

.nav-item:not(.is-active) .nav-list {
  display: none;
}

.nav-item {
  color: var(--color-white);
  font-weight: var(--font-weight-light);
}
.nav-item:not(:hover) > * > .nav-link svg {
  opacity: 0;
}
.nav-item:not(.is-active) > * > .nav-text-toggle-button {
  transform: rotate(-90deg);
}
.nav-item .nav-item.is-current-page > .nav-text-container > .nav-text::before,
.nav-item .nav-item.is-current-path:not(.is-active) > .nav-text-container > .nav-text::before {
  background: var(--color-green);
}
.nav-item[data-depth="0"] {
  padding-top: 1.25rem;
  margin-left: 16px;
}
.nav-item[data-depth="0"] > .nav-text-container {
  margin-left: -12px;
}
.nav-item[data-depth="0"] > .nav-text-container > .nav-text {
  font-size: 13px;
  line-height: 32px;
  font-weight: var(--font-weight-medium);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--body-font-color);
}
@media (max-width: 767px) {
  .nav-item[data-depth="0"] > .nav-text-container > .nav-text {
    font-size: 12px;
  }
}
.nav-item[data-depth="0"] > .nav-text-container > .nav-text-toggle-button {
  margin-left: 3px;
}
.nav-item[data-depth="1"] .nav-text-toggle-button {
  margin: 2px 4px 0;
  color: var(--body-font-color);
}
.nav-item[data-depth="2"] > .nav-text-container::before {
  background: var(--color-black-purple);
}
.nav-item[data-depth="1"] {
  text-transform: none;
  font-size: var(--font-size-aside);
  margin-left: 14px;
}
.nav-item[data-depth="1"] > .nav-text-container > .nav-text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 2px;
  height: 34px;
}
.nav-item[data-depth="2"] {
  text-transform: none;
  font-size: var(--font-size-aside);
  margin-left: 14px;
}
.nav-item[data-depth="2"] > .nav-text-container > .nav-text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 2px;
  height: 34px;
}
.nav-item[data-depth="3"] {
  text-transform: none;
  font-size: var(--font-size-aside);
  margin-left: 14px;
}
.nav-item[data-depth="3"] > .nav-text-container > .nav-text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 2px;
  height: 34px;
}

.nav-text-container {
  position: relative;
  align-items: center;
}

.nav-text-toggle-button {
  position: absolute;
  width: 28px;
  height: 28px;
  padding: 4px;
  margin: 1px -6px 0;
  background: none;
  border: none;
  color: var(--color-white);
}
@media (max-width: 767px) {
  .nav-text-toggle-button {
    padding: 6px;
  }
}
.nav-text-toggle-button + .nav-text {
  cursor: pointer;
}

.nav-text {
  width: 100%;
  padding: 6px 32px;
  border-radius: var(--border-radius-small);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

[data-depth="0"] > .nav-text-container > .nav-text {
  padding: 0 10px 0 30px;
}

.nav-text-toggle {
  background: none;
  border: none;
  text-align: left;
}

aside .nav-link, aside .nav-link:visited {
  color: inherit;
}

.nav-link:hover {
  text-decoration: none;
}

.nav-link svg {
  flex-shrink: 0;
  height: 20px;
  width: 20px;
}

a.nav-text:hover,
button.nav-text:hover,
.nav-item.is-current-page > * > .nav-text,
.nav-item.is-current-path:not(.is-active) > * > .nav-text {
  background: var(--color-purple);
}

.nav-panel-ai {
  color: var(--color-white);
  line-height: 1.25;
  font-weight: var(--font-weight-light);
  font-size: var(--font-size-aside);
}
.nav-panel-ai .context-container {
  border-radius: var(--border-radius-small);
  display: flex;
  cursor: pointer;
  align-items: center;
  transition: all 100ms;
  height: 34px;
}
.nav-panel-ai .context-container:hover {
  border-color: var(--color-secondary-grey);
}
@media (min-width: 768px) {
  .nav-panel-ai .context-container {
    border: 1px solid var(--color-light-purple);
    background: var(--color-purple);
    height: 38px;
  }
}
.nav-panel-ai .context {
  flex-grow: 1;
  padding: 0 14px;
}
@media (max-width: 767px) {
  .nav-panel-ai .context {
    font-size: 18px;
    padding: 0 2px;
  }
}
@media (max-width: 767px) {
  .nav-panel-ai .context .title {
    display: none;
  }
}
.nav-panel-ai .context .suffix::after {
  content: "\e2ca";
  margin-left: 6px;
  font-family: "Font Awesome 6 Pro";
  background: linear-gradient(105deg, #F96480 0%, #FDD257 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.nav-panel-explore {
  position: relative;
  color: var(--color-white);
  line-height: 1.25;
  font-weight: var(--font-weight-light);
  font-size: var(--font-size-aside);
  pointer-events: all;
}
@media (max-width: 767px) {
  .nav-panel-explore {
    margin-top: 1rem;
  }
}
.nav-panel-explore .context-container {
  border-radius: var(--border-radius-small);
  border: 1px solid var(--color-light-purple);
  background: var(--color-purple);
  display: flex;
  cursor: pointer;
}
.nav-panel-explore .context-container:hover {
  border-color: var(--color-secondary-grey);
}
.nav-panel-explore .context {
  flex-grow: 1;
  padding: 0 14px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.nav-panel-explore .context-divider {
  flex-shrink: 0;
  width: 1px;
  background: var(--panel-border-color);
}
.nav-panel-explore .context-arrow {
  flex-shrink: 0;
  margin: 8px 12px;
  width: 20px;
  height: 20px;
  background: url('data:image/svg+xml,<svg viewBox="0 0 24 24" fill="%23fff" xmlns="http://www.w3.org/2000/svg"><path d="M12 12.9821L16.6669 8.39999L18 9.70892L12 15.6L6 9.70892L7.33312 8.39999L12 12.9821Z"/></svg>');
}
.nav-panel-explore.is-active .context-arrow {
  transform: rotate(180deg);
}
.nav-panel-explore:not(.is-active) .components {
  display: none;
}
.nav-panel-explore .components {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  margin-top: 0.25rem;
  z-index: 1;
  padding: 0;
  background: var(--color-secondary-purple);
  border: 1px solid var(--color-light-purple);
  border-radius: var(--border-radius-small);
  box-shadow: 0px 8px 30px 0px rgba(6, 4, 20, 0.58);
  list-style: none;
  overscroll-behavior: none;
}
.nav-panel-explore .component {
  padding: 0.5rem 0.875rem;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.nav-panel-explore .component.is-current {
  background: var(--panel-border-color);
}
.nav-panel-explore .component .title {
  position: absolute;
  inset: 0;
  padding: 0.5rem 0.875rem;
}
.nav-panel-explore .component .version a {
  display: block;
  border: 1px solid var(--color-grey);
  border-radius: var(--border-radius-small);
  white-space: nowrap;
  padding: 0.125rem 0.25rem;
  color: var(--color-grey);
}
.nav-panel-explore .component .version.is-current a {
  color: var(--color-green);
  border-color: currentColor;
  font-weight: var(--font-weight-semi-bold);
}
.nav-panel-explore .versions {
  position: relative;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  line-height: 1;
  margin-top: 4px;
}

nav.pagination {
  display: flex;
  border-top: 1px solid var(--panel-border-color);
  line-height: 1;
  margin: 2rem 0 0;
  padding: 1rem 1.5rem 0;
}
nav.pagination span {
  display: flex;
  flex: 50%;
  flex-direction: column;
}
nav.pagination span::before {
  color: var(--color-secondary-light-grey);
  font-size: 0.75em;
  padding-bottom: 0.2em;
}
nav.pagination .prev {
  padding-right: 0.5rem;
}
nav.pagination .prev::before {
  content: "Prev";
}
nav.pagination .next {
  margin-left: auto;
  padding-left: 0.5rem;
  text-align: right;
}
nav.pagination .next::before {
  content: "Next";
}
nav.pagination a {
  font-weight: var(--font-weight-regular);
  line-height: 1.4;
  position: relative;
}
nav.pagination a::before, nav.pagination a::after {
  color: var(--color-secondary-light-grey);
  font-weight: var(--font-weight-regular);
  font-size: 1.5em;
  line-height: 0.75;
  position: absolute;
  top: 0;
  width: 1rem;
}
nav.pagination .prev a::before {
  content: "‹";
  transform: translateX(-100%);
}
nav.pagination .next a::after {
  content: "›";
}

.search {
  position: sticky;
  top: 0;
  z-index: 1;
  height: var(--search-height);
  flex-grow: 1;
  border-radius: var(--border-radius-small);
  box-shadow: inset 0 0 0 1px var(--color-light-purple);
  background: var(--color-deep-purple);
  cursor: text;
  padding: 0 0.625rem;
  display: flex;
  align-items: center;
  gap: 0.625rem;
  transition: box-shadow 100ms;
  font-size: var(--font-size-aside);
  line-height: 1.5;
}
.search:focus-within, .search:hover {
  box-shadow: inset 0 0 0 1px var(--color-secondary-grey);
}
.search svg {
  color: var(--color-secondary-light-grey);
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.search input {
  border: none;
  background: none;
  box-shadow: none;
  outline: none;
  padding: 0;
  flex-grow: 1;
  width: 0;
  font-size: inherit;
  font-weight: var(--font-weight-regular);
}
.search input::placeholder {
  font-style: normal;
  color: var(--color-secondary-grey);
  opacity: 1;
}

.search-result-dropdown-menu {
  --full-width: calc(min(var(--body-width), 100vw) - var(--section-page-margin) * 2);
  position: absolute;
  z-index: 100;
  display: block;
  left: -1px;
  width: calc(var(--full-width) - var(--toc-width) - var(--body-gap) - var(--nav-width));
  max-width: var(--full-width);
  top: 100%;
  margin-top: 0.5rem;
}
@media (max-width: 1199px) {
  .search-result-dropdown-menu {
    width: calc(var(--full-width) - var(--body-gap) - var(--nav-width));
  }
}
@media (max-width: 767px) {
  .search-result-dropdown-menu {
    width: var(--full-width);
    left: auto;
    right: -1px;
  }
}

.search-result-dataset {
  position: relative;
  border: 1px solid var(--panel-border-color);
  background: var(--search-result-background);
  border-radius: var(--border-radius);
  overflow: auto;
  overscroll-behavior: none;
  padding: 1rem;
  max-height: calc(100vh - var(--main-offset) - var(--search-height) - 1rem);
  box-shadow: 0 4px 8px 4px var(--search-shadow-color);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}

.search-result-item {
  display: flex;
}
.search-result-item:nth-child(n+2) {
  margin-top: 0.5rem;
}

.search-result-component-header {
  color: var(--color-white);
  border-bottom: 1px solid var(--panel-border-color);
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.search-result-document-title {
  width: 33%;
  border-right: 1px solid var(--panel-border-color);
  color: var(--color-white);
  font-weight: var(--font-weight-semi-bold);
  font-size: 0.875rem;
  padding: 1rem 1rem 1rem 0;
  text-align: right;
  position: relative;
  word-wrap: break-word;
}

.search-result-document-hit {
  flex: 1;
  font-size: 0.875rem;
  color: var(--default-text-color);
}
.search-result-document-hit > a {
  color: inherit;
  display: block;
  padding: 1rem 0.25rem 1rem 1rem;
}
.search-result-document-hit > a:hover {
  background: var(--search-result-hover-color);
  text-decoration: inherit;
}
.search-result-document-hit .search-result-highlight {
  background: var(--search-highlight-color);
  padding: 0 0.1em;
  font-weight: var(--font-weight-semi-bold);
}
.search-result-document-hit .search-result-section-title {
  color: var(--default-text-color);
  font-weight: var(--font-weight-semi-bold);
  font-size: 1.05em;
  margin-bottom: 0.25em;
}

.toc {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}
.toc.embedded {
  display: none;
}
@media (max-width: 1199px) {
  .toc.embedded {
    display: block;
    position: relative;
    margin: 1rem 0;
    padding: 0.75rem;
    border-radius: var(--border-radius);
    color: var(--color-white);
    background: var(--color-deep-purple);
  }
}
@media (max-width: 1199px) and (max-width: 767px) {
  .toc.embedded {
    padding: 0.5rem;
  }
}
@media (max-width: 1199px) {
  .toc.embedded::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--color-green);
  }
}
.toc.embedded .toc-menu {
  padding-left: var(--doc-padding-sides);
}
.toc.sidebar {
  display: block;
  position: sticky;
  margin-left: calc(0px - var(--doc-tooltip-width));
  padding-left: var(--doc-tooltip-width);
  pointer-events: none;
  padding-top: 12px;
  padding-bottom: 0.5rem;
  top: var(--toolbar-height);
  flex: 0 0 calc(var(--toc-width) + var(--doc-tooltip-width));
  max-height: calc(100vh - var(--toolbar-height));
  overflow-y: auto;
}
@media (max-width: 1199px) {
  .toc.sidebar {
    display: none;
  }
}
.toc .toc-menu {
  pointer-events: all;
}
.toc .no-toc {
  display: none;
}
.toc .toc-menu h3 {
  font-size: var(--font-size-aside);
  line-height: var(--line-height-aside);
  font-weight: var(--font-weight-semi-bold);
  margin: 0;
  padding: 0.25rem 0 0.25rem 0.75rem;
}
.toc .toc-menu ul {
  font-size: var(--font-size-aside);
  line-height: var(--toc-line-height);
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  letter-spacing: var(--body-letter-spacing);
}
.toc.sidebar .toc-menu ul {
  overflow-y: auto;
  overscroll-behavior: none;
}
@supports (scrollbar-width: none) {
  .toc.sidebar .toc-menu ul {
    scrollbar-width: none;
  }
}
.toc .toc-menu ul::-webkit-scrollbar {
  width: 0;
  height: 0;
}
.toc .toc-menu li {
  margin: 0;
}
.toc .toc-menu li[data-level="2"] a {
  padding-left: 1.25rem;
}
.toc .toc-menu li[data-level="3"] a {
  padding-left: 2rem;
}
.toc .toc-menu a {
  color: inherit;
  display: inline-block;
  padding: 0.25rem 0 0.25rem 0.75rem;
  text-decoration: none;
}
@media (min-width: 768px) {
  .toc .toc-menu a {
    border-left: 2px solid var(--color-light-purple);
  }
}
.toc.sidebar .toc-menu a {
  display: block;
  outline: none;
}
.toc .toc-menu a:hover {
  color: var(--link-font-color);
}
.toc .toc-menu a.is-active {
  border-left-color: var(--link-font-color);
  color: var(--link-font-color);
}
.toc.sidebar .toc-menu a:focus {
  background: var(--panel-background);
}
.toc .toc-menu .is-hidden-toc {
  display: none !important;
}
.toc .toc-links {
  margin-left: calc(0.5rem + 2px);
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--panel-border-color);
  pointer-events: all;
  line-height: var(--toc-line-height);
}
.toc .toc-links ul {
  list-style: none;
}
.toc .toc-links a {
  letter-spacing: var(--body-letter-spacing);
  margin-top: 10px;
  padding-left: 30px;
  color: inherit;
  text-decoration: none;
}
.toc .toc-links a:hover {
  color: var(--link-font-color);
}
.toc .toc-links .toc-academy {
  pointer-events: all;
  letter-spacing: var(--body-letter-spacing);
  padding: 4px 0;
}
.toc .toc-links .toc-academy a {
  padding: 0;
}
.toc .toc-links .toc-academy a svg {
  text-decoration: none;
  height: 17px;
  margin-bottom: -3px;
}
.toc .toc-links .toc-academy .toc-link-button-academy {
  color: var(--link-font-color);
}

.toc-link-button {
  position: absolute;
  width: 20px;
  height: 20px;
  padding: 2px 2px 0px 2px;
  margin: 0px 0px -10px;
  background: none;
  border: none;
}

.toc-link-container {
  position: relative;
  padding: 4px 0 3px;
}
.toc-link-container .toc-link-tooltip {
  visibility: hidden;
  width: calc(var(--doc-tooltip-width) - 9px);
  position: absolute;
  z-index: 1;
  bottom: 0px;
  right: 100%;
  margin-right: 9px;
  padding: 4px 9px 6px;
  font-size: var(--font-size-code);
  font-style: italic;
  color: inherit;
  background-color: var(--panel-background);
  border-radius: var(--border-radius);
  border: 1px solid var(--panel-border-color);
  line-height: 18px;
}
.toc-link-container:hover .toc-link-tooltip {
  visibility: visible;
}

.toolbar-area {
  width: 100%;
  background: var(--body-background);
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 1px solid var(--color-light-purple);
}

.toolbar {
  display: flex;
  align-items: center;
  margin: 0 auto;
  padding: 12px var(--body-padding-sides);
  max-width: var(--body-width);
}
@media (min-width: 768px) {
  .toolbar {
    gap: var(--body-gap);
  }
}
@media (max-width: 767px) {
  .toolbar {
    padding-top: 6px;
    padding-bottom: 6px;
    gap: 12px;
  }
  .toolbar .nav-item .docs-home-text {
    display: none;
  }
}
.toolbar .nav-item {
  width: var(--nav-width);
  font-size: inherit;
}
@media (max-width: 767px) {
  .toolbar .nav-item {
    width: 34px;
  }
}
.toolbar .nav-item .nav-link:hover {
  background: var(--color-deep-purple);
}
.toolbar .nav-item .nav-link svg {
  width: 16px;
  height: 16px;
  color: var(--color-white);
}
.toolbar .nav-item span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
}
.toolbar .nav-item .nav-text {
  color: var(--color-white);
  font-weight: var(--font-weight-light);
  padding-left: 0;
}
@media (max-width: 767px) {
  .toolbar .nav-item .nav-text {
    padding: 6px 4px;
  }
}
.toolbar .nav-item .docs-home-icon {
  background: var(--color-white);
  mask-image: url("data:image/svg+xml,%3Csvg height%3D%221em%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 576 512%22 fill%3D%22currentColor%22%3E%3C!--!Font Awesome Pro 6.7.1 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense (Commercial License) Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M298.6 4c-6-5.3-15.1-5.3-21.2 0L5.4 244c-6.6 5.8-7.3 16-1.4 22.6s16 7.3 22.6 1.4L64 235l0 197c0 44.2 35.8 80 80 80l288 0c44.2 0 80-35.8 80-80l0-197 37.4 33c6.6 5.8 16.7 5.2 22.6-1.4s5.2-16.7-1.4-22.6L298.6 4zM96 432l0-225.3L288 37.3 480 206.7 480 432c0 26.5-21.5 48-48 48l-64 0 0-160c0-17.7-14.3-32-32-32l-96 0c-17.7 0-32 14.3-32 32l0 160-64 0c-26.5 0-48-21.5-48-48zm144 48l0-160 96 0 0 160-96 0z%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg height%3D%221em%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 576 512%22 fill%3D%22currentColor%22%3E%3C!--!Font Awesome Pro 6.7.1 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense (Commercial License) Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M298.6 4c-6-5.3-15.1-5.3-21.2 0L5.4 244c-6.6 5.8-7.3 16-1.4 22.6s16 7.3 22.6 1.4L64 235l0 197c0 44.2 35.8 80 80 80l288 0c44.2 0 80-35.8 80-80l0-197 37.4 33c6.6 5.8 16.7 5.2 22.6-1.4s5.2-16.7-1.4-22.6L298.6 4zM96 432l0-225.3L288 37.3 480 206.7 480 432c0 26.5-21.5 48-48 48l-64 0 0-160c0-17.7-14.3-32-32-32l-96 0c-17.7 0-32 14.3-32 32l0 160-64 0c-26.5 0-48-21.5-48-48zm144 48l0-160 96 0 0 160-96 0z%22%2F%3E%3C%2Fsvg%3E");
  mask-size: 100%;
  -webkit-mask-size: 100%;
  width: 20px;
  height: 18px;
}
.toolbar .toolbar-over-article {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--body-gap);
  padding: 0 var(--doc-padding-sides);
}
@media (max-width: 1199px) {
  .toolbar .toolbar-over-article {
    width: 100%;
    padding: 0;
  }
}
@media (max-width: 767px) {
  .toolbar .toolbar-over-article {
    display: flex;
    gap: 0.5em;
  }
}
.toolbar .toolbar-over-article .toolbar-search {
  flex: 1 1 570px;
}
.toolbar .toolbar-over-article .toolbar-ai {
  flex: 0 0 var(--ask-ai-width);
}
@media (max-width: 767px) {
  .toolbar .toolbar-over-article .toolbar-ai {
    flex-basis: 30px;
  }
}
.toolbar .toolbar-over-article .toolbar-explore {
  flex: 0 0 var(--toc-width);
}
@media (max-width: 767px) {
  .toolbar .toolbar-over-article .toolbar-explore {
    display: none;
  }
}

@page {
  margin: 0.5in;
}
@media print {
  .hide-for-print {
    display: none !important;
  }
  a {
    color: inherit !important;
    text-decoration: underline;
  }
  a.bare,
  a[href^="#"],
  a[href^="mailto:"] {
    text-decoration: none;
  }
  tr,
  img,
  object,
  svg {
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  pre {
    hyphens: none;
    white-space: pre-wrap;
  }
  body {
    padding-top: 2rem;
  }
  .navbar {
    background: none;
    color: inherit;
    position: absolute;
  }
  .navbar * {
    color: inherit !important;
  }
  .navbar > :not(.navbar-brand),
  .nav-container,
  .toolbar,
  aside.toc,
  nav.pagination {
    display: none;
  }
  .doc {
    color: inherit;
    margin: auto;
    max-width: none;
    padding-bottom: 2rem;
  }
  .doc .admonitionblock td.icon {
    print-color-adjust: exact;
  }
  .doc .listingblock code[data-lang]::before {
    display: block;
  }
}
code[class*=language-],
pre[class*=language-] {
  color: #ece0ff;
}

.token.argument {
  color: #ece0ff;
  font-style: italic;
}

.token.comment {
  color: #999999;
  font-style: italic;
}

.token.super,
.token.type {
  color: #55eae2;
  font-style: italic;
}

.token.variable {
  color: #55eae2;
}

.token.modifier {
  color: #82b6ff;
  font-style: italic;
}

.token.class-name,
.token.number,
.token.datetime,
.token.constant {
  color: #82b6ff;
}

.token.function {
  color: #02dac9;
}

.token.string {
  color: #ffe4a7;
}

.token.operator,
.token.keyword,
.token.punctuation,
.token.special {
  color: #ff7abd;
}

.token.constraint {
  color: #c099f3;
}

.token.object_label {
  color: #c69ec3;
}

.token.irrelevant {
  color: #999999;
}

.token.annotation {
  color: #ffa187;
}

.token.command {
  color: #ffc980;
}

.token.intention {
  color: #ffa187;
  font-style: italic;
}

.token.console {
  color: #ffc980;
  font-style: italic;
}

.token.error {
  color: #ff8080;
}

.td-scrollbar-container {
  scrollbar-width: none;
}
.td-scrollbar-container::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.td-scrollbar {
  position: absolute;
}
.td-scrollbar.td-scrollbar-x {
  left: 6px;
  bottom: 3px;
  right: 6px;
  height: 8px;
}
.td-scrollbar.td-scrollbar-x .td-scrollbar-thumb {
  min-width: 16px;
}
.td-scrollbar.td-scrollbar-y {
  top: 6px;
  right: 3px;
  bottom: 6px;
  width: 8px;
}
.td-scrollbar.td-scrollbar-y .td-scrollbar-thumb {
  min-height: 16px;
}

.td-scrollbar-thumb {
  position: relative;
  width: 100%;
  height: 100%;
  background: var(--color-secondary-deep-grey);
  opacity: 0;
  border-radius: 4px;
  transition: opacity 200ms;
}
.td-scrollbar-container:hover .td-scrollbar-thumb {
  opacity: 0.5;
}
.td-scrollbar:hover .td-scrollbar-thumb, .td-scrollbar-thumb.td-active, .td-scrollbar-container:hover .td-scrollbar-thumb.td-active {
  opacity: 1;
}

/*! Asciidoctor Tabs | Copyright (c) 2018-present Dan Allen | MIT License */
/* Modified by Vaticle */
.doc .tabs {
  margin: 1.5rem 0;
}
.doc .tabs > .content {
  border-radius: var(--border-radius);
  border: 1px solid var(--panel-border-color);
  background: var(--panel-background);
  overflow: hidden;
}
.doc .tablist.ulist,
.doc .tablist.ulist > ul li {
  margin: 0;
}
.doc .tablist > ul {
  display: flex;
  border-bottom: 1px solid var(--panel-border-color);
  height: 3.25rem;
  overflow: auto;
  white-space: nowrap;
}
.doc .tablist > ul li {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 0 0.75rem;
  cursor: pointer;
  font-size: 1rem;
  line-height: 2rem;
  font-weight: var(--font-weight-regular);
  color: var(--default-text-color);
}
.doc .tablist > ul li + li {
  border-left: 1px solid var(--panel-border-color);
}
.doc .tabs.is-loading .tablist li:first-child,
.doc .tabs:not(.is-loading) .tablist li.is-selected {
  background: var(--color-secondary-purple);
  color: var(--color-green);
}
.doc .tabs:not(.is-loading) .tablist li:hover {
  color: var(--color-green);
  text-decoration: underline;
}
.doc .tablist.ulist > ul li::before {
  content: none;
}
.doc .tabpanel {
  background-color: var(--color-deep-purple);
  padding: var(--card-padding);
}
.doc .tabpanel > :first-child {
  margin-top: 0;
}
.doc .tabpanel > :last-child {
  margin-bottom: 0;
}