@font-face {
  font-family: "Albert Sans";
  src: url("../fonts/AlbertSans.woff2") format("woff2");
  font-display: swap;
}


html.cs-light {
  color-scheme: light;
}
html.cs-dark {
  color-scheme: dark;
}

html {
  --rgb-base: 247, 249, 251;
  --rgb-base-dark: 241, 243, 245;
  --rgb-base-darker: 235, 237, 239;
  --rgb-base-darkest: 229, 231, 233;
  --rgb-black: 0, 0, 0;
  --rgb-white: 255, 255, 255;
  --rgb-gray: 40, 50, 60;
  --rgb-gray-light: 105, 115, 125;
  --rgb-gray-lighter: 170, 180, 190;

  --rgb-accent: 55, 113, 200;

  --color-base: rgb(var(--rgb-base));
  --color-base-dark: rgb(var(--rgb-base-dark));
  --color-base-darker: rgb(var(--rgb-base-darker));
  --color-base-darkest: rgb(var(--rgb-base-darkest));
  --color-black: rgb(var(--rgb-black));
  --color-white: rgb(var(--rgb-white));
  --color-gray: rgb(var(--rgb-gray));
  --color-gray-light: rgb(var(--rgb-gray-light));
  --color-gray-lighter: rgb(var(--rgb-gray-lighter));

  --color-accent: rgb(var(--rgb-accent));

  --font-family: "Albert Sans", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --font-family-mono: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;
  --font-size: min(calc(1.6em + 1vw), 2.3rem);
  --space-small: 0.5em;
  --space-medium: 1em;
  --space-large: 2em;
  --space-x-large: 3em;
  --space-xx-large: 4em;
  --transition: 0.15s ease;
}

@media (prefers-color-scheme: dark) {
  html:not(.cs-light) {
    --rgb-base: 4, 5, 6;
    --rgb-base-dark: 28, 28, 28;
    --rgb-base-darker: 49, 49, 49;
    --rgb-base-darkest: var(--rgb-base-darker);
    --rgb-gray: 236, 239, 244;
    --rgb-gray-light: 241, 244, 249;
    --color-base-dark: var(--color-base);
    --rgb-white: var(--rgb-base-dark);
    --rgb-black: 255, 255, 255;
    --rgb-accent: 107, 163, 240;
  }
}
html.cs-dark {
  --rgb-base: 4, 5, 6;
  --rgb-base-dark: 28, 28, 28;
  --rgb-base-darker: 49, 49, 49;
  --rgb-base-darkest: var(--rgb-base-darker);
  --rgb-gray: 236, 239, 244;
  --rgb-gray-light: 241, 244, 249;
  --color-base-dark: var(--color-base);
  --rgb-white: var(--rgb-base-dark);
  --rgb-black: 255, 255, 255;
  --rgb-accent: 104, 167, 249;
}

html {
  --font-size-xx-small: 0.5rem;
  --font-size-x-small: 0.6rem;
  --font-size-small: 0.75rem;
  --font-size-medium: 1rem;
  --font-size-large: 1.3rem;
  --font-size-x-large: 1.5rem;
  --font-size-xx-large: 1.8rem;
  --font-size-xxx-large: 3rem;
}

/******* RESET *******/

*, *::before, *::after {
  box-sizing: border-box
}
html, body, div, span, applet, button, input, select, textarea, object, iframe, h1, h2, h3, h4, h5, h6, hr, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, main, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  background: transparent;
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  min-width: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section {
  display: block
}
body {
  line-height: 1
}
ol, ul, menu {
  list-style: none
}
blockquote, q {
  quotes: none
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: none
}
table {
  border-collapse: collapse;
  border-spacing: 0
}

/******* BASE *******/

html {
  scroll-padding-top: 4rem;
  scroll-behavior: smooth;
  font-size: 16px;
}

body {
  background: var(--color-white);
  color: var(--color-gray);
  -webkit-tap-highlight-color: rgba(var(--rgb-black), 0);
  accent-color: var(--color-accent);

  font-family: var(--font-family);

  line-height: 1;
  font-style: normal;
  font-weight: 400;
  font-synthesis: style;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;

  margin: 0;
  width: 100%;
  min-width: 320px;
  min-height: 100vh;
}

@supports (-webkit-touch-callout: none) {
  body {
    min-height: -webkit-fill-available
  }
}

::selection {
  background: rgba(var(--rgb-accent), 0.5);
  color: var(--color-white)
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.3;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: inherit;
  font-weight: inherit;
  text-decoration: none
}

h1 {
  font-size: var(--font-size-xxx-large);
  letter-spacing: -0.03em;
  line-height: 1.2
}

h2 {
  font-size: var(--font-size-xx-large);
  letter-spacing: -0.015em
}

h3 {
  font-size: var(--font-size-x-large)
}

h4 {
  font-size: var(--font-size-large)
}

h5, h6 {
  font-size: var(--font-size-medium)
}

ol, ul {
  padding-left: 2em
}

:is(ol,ul) li+li {
  margin-top: 0.5em;
}

:is(ol,ul) :is(ol,ul) {
  margin-top: 0.5em;
}

:is(ol,ul) ul {
  list-style: circle;
}
:is(ol,ul) :is(ol,ul) ul {
  list-style: square;
}
li [type="checkbox"] {
  margin-right: 0.5em;
}

ul {
  list-style: disc
}
ol {
  list-style: decimal
}
ol.fancylists-lower-alpha {
  list-style-type: lower-alpha;
}
ol.fancylists-upper-alpha {
  list-style-type: upper-alpha;
}
ol.fancylists-lower-roman {
  list-style-type: lower-roman;
}
ol.fancylists-upper-roman {
  list-style-type: upper-roman;
}
ol ::marker {
  font-weight: 500;
}

a {
  color: var(--color-accent);
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 0.1em;
  transition: color var(--transition), text-decoration-color var(--transition)
}
strong a {
  font-weight: inherit
}

em, i {
  font-style: italic
}

strong, b {
  font-weight: 700
}

img, source, video {
  max-width: 100%;
}

video::cue {
  font-family: var(--font-family);
  font-size: 0.9em;
  font-weight: 500;
  line-height: 1
}

@media (hover: hover) {
  a:focus,
  a:hover {
    color: var(--color-gray)
  }
}

/******* UTILS *******/

@media (prefers-color-scheme: light) {
  html:not(.cs-dark) .only-dark {
    display: none !important;
  }
}
@media (prefers-color-scheme: dark) {
  html:not(.cs-light) .only-light {
    display: none !important;
  }
}
html.cs-dark .only-light,
html.cs-light .only-dark {
  display: none !important;
}

.hidden {
  display: none !important;
}
.invisible {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

small {
  font-size: 0.75em;
  opacity: 0.8;
}

/******* BUTTONS *******/

.btn {
  --btn-fg: #090909;
  --btn-bg: #f5f5f5;
  --btn-shadow: 1px 1px 2px 2px rgba(0, 0, 0, 0.1);
  --btn-outline: color-mix(in srgb, #a4a4a4 80%, transparent);
  --btn-outline-focus: color-mix(in srgb, var(--color-accent) 25%, transparent);
  --btn-bg-hover: color-mix(in srgb, var(--btn-bg), #000 4%);
  --btn-bg-active: color-mix(in srgb, var(--btn-bg), #000 7%);
  --btn-border-active: color-mix(in srgb, var(--btn-bg), #000 14%);
  --btn-shadow-active: inset 1px 2px 4px rgba(30, 30, 30, 0.2), 1px 1px 2px rgba(0, 0, 0, 0.05);
}
.btn {
  align-items: center;
  appearance: button;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-flex;
  gap: 0.5em;
  flex-shrink: 0;
  flex-wrap: nowrap;
  font-family: inherit;
  justify-content: center;
  line-height: 1;
  min-inline-size: min-content;
  overflow: hidden;
  pointer-events: auto;
  position: relative;
  text-align: center;
  text-decoration: none !important;
  touch-action: manipulation;
  user-select: none;
  transition-duration: 100ms;
  transition-property: color, background-color, box-shadow, outline;
  transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
  vertical-align: middle;
  white-space: nowrap;
  font-weight: 600;
  border-radius: 0.5rem;
  color: var(--btn-fg) !important;
  background-color: var(--btn-bg);
  border: none;
  outline-width: 1px;
  outline-style: solid;
  outline-color: var(--btn-outline);
  outline-offset: 0;
  box-shadow: var(--btn-shadow);
  padding: 0.5em 0.75em;
  font-size: 0.9em;
}
.btn:is(:hover,:focus-visible):not([disabled],[data-disabled]) {
  background-color: var(--btn-bg-hover, var(--btn-bg));
  outline-color: var(--btn-outline-hover, var(--btn-outline));
  box-shadow: var(--btn-shadow-hover, var(--btn-shadow));
  text-decoration: none;
}
.btn:focus-visible:not([disabled],[data-disabled]) {
  isolation: isolate;
  outline-color: var(--btn-outline-focus, var(--btn-outline));
  outline-width: 4px;
}
.btn:is(:active,[data-active]):not([disabled],[data-disabled]) {
  background-color: var(--btn-bg-active, var(--btn-bg));
  outline-color: var(--btn-border-active, var(--btn-border));
  box-shadow: var(--btn-shadow-active, var(--btn-shadow));
  translate: 0 1px;
  text-decoration: none;
  outline-width: 1px;
}
.btn.btn--primary {
  --btn-fg: #fff;
  --btn-bg: var(--color-accent);
  --btn-outline: color-mix(in srgb, var(--color-accent) 50%, transparent);
}
.btn.btn--icon {
  padding: 0.3em;
}

/******* Autodoc *******/

.autodoc > *,
.autodoc-short-description > *,
.autodoc-long-description > *,
.autodoc-methods > *,
.autodoc-properties > * {
  margin-top: var(--flow-space, 1.4em);
}

.autodoc-symbol {
  border-radius: 0.1rem;
  padding: 0 0.3em;
  font-weight: bold;
}

.autodoc-symbol-attr {
  color: var(--doc-symbol-attribute-fg-color, #ffa657) !important;
  background-color: var(--doc-symbol-attribute-bg-color, #ffa6571a) !important;
}
.autodoc-symbol-function {
  color: var(--doc-symbol-function-fg-color, #d2a8ff) !important;
  background-color: var(--doc-symbol-function-bg-color, #d2a8ff1a) !important;
}
.autodoc-symbol-method {
  color: var(--doc-symbol-method-fg-color, #d2a8ff) !important;
  background-color: var(--doc-symbol-method-bg-color, #d2a8ff1a) !important;
}
.autodoc-symbol-class {
  color: var(--doc-symbol-class-fg-color, #79c0ff) !important;
  background-color: var(--doc-symbol-class-bg-color, #79c0ff1a) !important;
}
.autodoc-symbol-module {
  color: var(--doc-symbol-module-fg-color, #baff79) !important;
  background-color: var(--doc-symbol-module-bg-color, #baff791a) !important;
}

.autodoc-name {
  font-weight: normal;
}
.autodoc-label {
  font-size: 0.6em !important;
  color: var(--doc-label-fg-color, #79c0ff) !important;
  font-weight: 400;
  padding: 0.1rem 0.4rem !important;
}

.autodoc-table {
  width: 100%;
  overflow-x: auto;
}

/*******  *******/


/******* PAGE_CONTENT *******/

.page_content {
  --flow-space: 1.4rem;
  line-height: 1.5;
}

.page_content > *+*,
.page_content blockquote> *+* {
  margin-top: var(--flow-space);
}

.page_content sup {
  vertical-align: super;
  font-size: smaller;
}

.page_content sub {
  vertical-align: sub;
  font-size: smaller;
}

.page_content del {
  background: rgba(250, 0, 0, 0.2);
  text-decoration: line-through;
}

.page_content ins {
  background: rgba(0, 250, 0, 0.2);
  text-decoration: underline;
}

.page_content mark {
  background: rgba(255, 228, 109, 0.9);
  color: black;
}

.page_content hr {
  --flow-space: 0;
}
.page_content hr+* {
  --flow-space: 0;
}

.page_content hr {
  display: flex;
  flex-direction: column;
  height: auto;
  margin-bottom: 2.4em;
  margin-top: 2.4em;
}

.page_content hr:before {
  color: var(--color-base-darkest);
  content: '-+-+-+-+-';
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1;
  width: 100%;
  text-align: center;
}

.page_content blockquote {
  display: block;
  background-color: var(--color-base);
  border-inline-start: 4px solid var(--color-gray-lighter);
  line-height: 1.5;
  padding: 1.2em;
}

.page_content blockquote p {
  font-style: italic;
  color: var(--color-gray);
}


/******* Page - Headers *******/

.page_content > * + h1,
.page_content > * + h2,
.page_content > * + h3,
.page_content > * + h4,
.page_content > * + h5,
.page_content > * + h6 {
  --flow-space: 2.4rem;
}

.page_content h1 {
  padding-top: 0.08em;
  color: var(--color-accent);
  text-shadow: 1px 1px 0 rgb(255 255 255 / 50%);
}

.page_content h1 + * {
  --flow-space: 1.4rem;
}

.page_content h2 + *,
.page_content h3 + * {
  --flow-space: 0.9rem;
}

.page_content h2 {
  padding-top: 0.1em;
}

.page_content h2 {
  color: var(--color-accent);
}

.page_content h3 {
  color: var(--color-gray);
  padding-top: 0.125em;
}

.page_content h4,
.page_content h5,
.page_content h6 {
  padding-top: 0.175em;
}

.page_content h4+*,
.page_content h5+*,
.page_content h6+* {
  --flow-space: 0.4rem;
}

.page_content h1 .headerlink,
.page_content h2 .headerlink,
.page_content h3 .headerlink,
.page_content h4 .headerlink,
.page_content h5 .headerlink,
.page_content h6 .headerlink {
  opacity: 0.05;
  font-size: 0.9em;
  margin-left: 0.4em;
  transition: opacity var(--transition);
}

.page_content h1:hover .headerlink,
.page_content h1:focus .headerlink,
.page_content h2:hover .headerlink,
.page_content h2:focus .headerlink,
.page_content h3:hover .headerlink,
.page_content h3:focus .headerlink,
.page_content h4:hover .headerlink,
.page_content h4:focus .headerlink,
.page_content h5:hover .headerlink,
.page_content h5:focus .headerlink,
.page_content h6:hover .headerlink,
.page_content h6:focus .headerlink {
  opacity: 0.8;
}

.page_content .text-center {
  text-align: center;
}
.page_content .text-right {
  text-align: right;
}
.page_content .text-left {
  text-align: left;
}

/******* Page - Images *******/

@media screen and (min-width: 60em) {
  .page_content img.left:only-child,
  .page_content img.right:only-child,
  .page_content img.center:only-child {
    margin-top: 0;
  }
  .page_content img.left {
    float: left;
    margin: 0 1em 1em 0;
    max-width: 40%;
  }
  .page_content img.right {
    float: right;
    margin: 0 0 1em 1em;
    max-width: 40%;
  }
}
.page_content img.center {
  display: block;
  margin: 1em auto;
}

@media (prefers-color-scheme: dark) {
  html:not(.cs-light) img.invert {
    filter: invert(100%);
  }
}
html.cs-dark img.invert {
  filter: invert(100%);
}

.page_content figure {
  border-radius: 0.2em;
  overflow: hidden;
  display: flow-root;
  margin: 1em auto;
  max-width: 100%;
  text-align: center;
  width: fit-content;
}
.page_content figcaption {
  font-style: italic;
  font-size: 0.8em;
  margin: var(--space-small) auto var(--space-medium);
  max-width: 24rem;
  color: rgb(var(--rgb-gray));
}


/******* Page - Tables *******/

.page_content .table-container {
  overflow-x: auto;
  width: 100%;
}
.page_content table {
  display: table;
  border-radius: 0.4rem;
  text-align: left;
  width: 100%;
  position: relative;
}
.page_content table :where(thead,tfoot) {
  color: var(--color-gray-light);
  font-weight: 600;
  white-space: nowrap;
  background-color: rgba(var(--rgb-base-darkest), 0.4);
  font-size: 0.9em;
}
.page_content table thead {
  border-radius: 0.3em 0.3em 0 0;
  border-bottom: 1px solid var(--color-base-darkest);
}
.page_content table tfoot {
  border-radius: 0 0 0.3em 0.3em;
  border-top: 1px solid var(--color-base-darkest);
}
.page_content table tr:not(:last-child) {
  border-bottom: 1px solid var(--color-base-darkest);
}
.page_content table :where(th,td) {
  vertical-align: middle;
  padding-block: 0.75rem;
  padding-inline: 1rem;
}

.page_content table tbody tr:nth-child(even) {
  background-color: rgba(var(--rgb-base-darkest), 0.1);
}


/******* Page - Admonitions *******/

.page_content .admonition {
  --admonition-rgb: 255, 214, 0;
  --admonition-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" stroke-width="2"><path d="m19,0H5C2.243,0,0,2.243,0,5v14c0,2.757,2.243,5,5,5h11.646c1.287,0,2.497-.501,3.407-1.411l2.536-2.536c.897-.896,1.411-2.139,1.411-3.407V5c0-2.757-2.243-5-5-5ZM2,19V5c0-1.654,1.346-3,3-3h14c1.654,0,3,1.346,3,3v10h-4c-1.654,0-3,1.346-3,3v4H5c-1.654,0-3-1.346-3-3Zm16.639,2.175c-.448.448-1.02.725-1.639.802v-3.977c0-.552.449-1,1-1h3.976c-.079.615-.361,1.198-.802,1.639l-2.536,2.536ZM5,6.5c0-.828.672-1.5,1.5-1.5s1.5.672,1.5,1.5-.672,1.5-1.5,1.5-1.5-.672-1.5-1.5Zm3,5.5c0,.828-.672,1.5-1.5,1.5s-1.5-.672-1.5-1.5.672-1.5,1.5-1.5,1.5.672,1.5,1.5Zm0,5.5c0,.828-.672,1.5-1.5,1.5s-1.5-.672-1.5-1.5.672-1.5,1.5-1.5,1.5.672,1.5,1.5Z"/></svg>');

  border-radius: 0.4rem;
  border: 2px solid rgb(var(--admonition-rgb));
  background: rgba(var(--admonition-rgb), 0.15);
  box-shadow: 0 0 0 1px rgba(var(--rgb-gray), 0.1);
  display: flow-root;
  margin: var(--flow-space, 1.4em) 0;
  padding: 0 1em;
  page-break-inside: avoid;
  min-height: 4rem;
}


@media print {
  .page_content .admonition {
    box-shadow: none;
  }
}

.page_content .admonition > * {
  margin-top: 1em;
  margin-bottom: 1em;
}

.page_content .admonition .admonition {
  margin-bottom: 1em;
  margin-top: 1em;
}

.page_content .admonition-title {
  border: none;
  font-weight: 600;
  margin: 0 -1em -1em;
  position: relative;
  padding: 0.8em 1em 0.8em 3em;
}

.page_content .admonition-title:before {
  content: "";
  background-color: rgb(var(--admonition-rgb));
  mask-image: var(--admonition-icon);
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
  position: absolute;
  top: 0;
  left: 1em;
  width: 1.5em;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.page_content .admonition ::marker {
  display: none;
}
.page_content .admonition summary {
  list-style: none
}

.page_content .admonition > summary:after {
  content: "";
  background-color: rgb(var(--admonition-rgb));
  mask-image: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M8.59 16.58 13.17 12 8.59 7.41 10 6l6 6-6 6z"/></svg>');
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
  position: absolute;
  top: 0;
  right: 1em;
  width: 2em;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(0deg);
  transition: transform var(--transition);
}

.page_content .admonition[open] > summary:after {
  transform: rotate(90deg);
}

.page_content .admonition.tip {
  --admonition-rgb: 0, 195, 255;
  --admonition-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m17.994 2.286a9 9 0 0 0 -14.919 5.536 8.938 8.938 0 0 0 2.793 7.761 6.263 6.263 0 0 1 2.132 4.566v.161a3.694 3.694 0 0 0 3.69 3.69h.62a3.694 3.694 0 0 0 3.69-3.69v-.549a5.323 5.323 0 0 1 1.932-4 8.994 8.994 0 0 0 .062-13.477zm-5.684 19.714h-.62a1.692 1.692 0 0 1 -1.69-1.69s-.007-.26-.008-.31h4.008v.31a1.692 1.692 0 0 1 -1.69 1.69zm4.3-7.741a7.667 7.667 0 0 0 -2.364 3.741h-1.246v-7.184a3 3 0 0 0 2-2.816 1 1 0 0 0 -2 0 1 1 0 0 1 -2 0 1 1 0 0 0 -2 0 3 3 0 0 0 2 2.816v7.184h-1.322a8.634 8.634 0 0 0 -2.448-3.881 7 7 0 0 1 3.951-12.073 7.452 7.452 0 0 1 .828-.046 6.921 6.921 0 0 1 4.652 1.778 6.993 6.993 0 0 1 -.048 10.481z"/></svg>');
}

.page_content .admonition.warning {
  --admonition-rgb: 255, 145, 0;
  --admonition-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M11,13V7c0-.55,.45-1,1-1s1,.45,1,1v6c0,.55-.45,1-1,1s-1-.45-1-1Zm1,2c-.83,0-1.5,.67-1.5,1.5s.67,1.5,1.5,1.5,1.5-.67,1.5-1.5-.67-1.5-1.5-1.5Zm11.58,4.88c-.7,1.35-2.17,2.12-4.01,2.12H4.44c-1.85,0-3.31-.77-4.01-2.12-.71-1.36-.51-3.1,.5-4.56L8.97,2.6c.71-1.02,1.83-1.6,3.03-1.6s2.32,.58,3,1.57l8.08,12.77c1.01,1.46,1.2,3.19,.49,4.54Zm-2.15-3.42s-.02-.02-.02-.04L13.34,3.67c-.29-.41-.79-.67-1.34-.67s-1.05,.26-1.36,.71L2.59,16.42c-.62,.88-.76,1.84-.4,2.53,.35,.68,1.15,1.05,2.24,1.05h15.12c1.09,0,1.89-.37,2.24-1.05,.36-.69,.22-1.65-.37-2.49Z"/></svg>');
}

.page_content .admonition.error {
  --admonition-rgb: 255, 23, 68;
  --admonition-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m23.121,6.151L17.849.878c-.567-.566-1.321-.878-2.121-.878h-7.456c-.801,0-1.554.312-2.121.879L.879,6.151c-.567.567-.879,1.32-.879,2.121v7.456c0,.801.312,1.554.879,2.121l5.272,5.272c.567.567,1.32.879,2.121.879h7.456c.8,0,1.554-.312,2.122-.879l5.271-5.272c.566-.567.879-1.32.879-2.121v-7.456c0-.801-.313-1.554-.879-2.121Zm-1.121,9.577c0,.263-.106.521-.293.707l-5.271,5.271c-.19.189-.442.294-.709.294h-7.456c-.263,0-.521-.107-.707-.293l-5.272-5.272c-.186-.187-.293-.444-.293-.707v-7.456c0-.263.107-.521.293-.707L7.565,2.293c.187-.186.444-.293.707-.293h7.456c.267,0,.519.104.708.293l5.271,5.272c.187.187.293.444.293.707v7.456Zm-5.561-6.753l-3.043,3.043,3.043,3.043-1.414,1.414-3.043-3.043-3.043,3.043-1.414-1.414,3.043-3.043-3.043-3.043,1.414-1.414,3.043,3.043,3.043-3.043,1.414,1.414Z"/></svg>');
}

.page_content .admonition.wip {
  --admonition-rgb: 233, 194, 0;
  --admonition-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34 34" fill="none" fill-rule="evenodd" stroke="currentColor" stroke-linecap="round" stroke-width="2"><path d="m1.42875 6.42937h29.28938s1.4287 0 1.4287 1.42875v12.14442s0 1.4287-1.4287 1.4287h-29.28938s-1.42875 0-1.42875-1.4287v-12.14442s0-1.42875 1.42875-1.42875z"/><path d="m4.286 21.431v10.716"/><path d="m27.861 21.431v10.716"/><path d="m5.35779 2.14312c0 .28144.05544.56013.16314.82014.1077.26002.26556.49628.46457.69528.19901.19901.43526.35687.69528.46457.26002.10771.5387.16314.82014.16314s.56012-.05543.82011-.16314c.26-.1077.4963-.26556.6953-.46457.199-.199.3569-.43526.4646-.69528.1077-.26001.1631-.5387.1631-.82014 0-.56839-.2258-1.1135-.6277-1.51541-.4019-.40192-.94702-.62771-1.51541-.62771s-1.11351.22579-1.51542.62771c-.40191.40191-.62771.94702-.62771 1.51541zm17.14504 0c0 .5684.2258 1.11351.6277 1.51542.4019.40192.947.62771 1.5154.62771s1.1135-.22579 1.5154-.62771c.4019-.40191.6277-.94702.6277-1.51542 0-.56839-.2258-1.1135-.6277-1.51541-.4019-.40192-.947-.62771-1.5154-.62771s-1.1135.22579-1.5154.62771c-.4019.40191-.6277.94702-.6277 1.51541z"/><path d="m10.716 6.429-10.716 10.716"/><path d="m19.288 6.429-15.002 15.002"/><path d="m27.861 6.429-15.002 15.002"/><path d="m32.147 10.716-10.716 10.715"/></svg>');
}

.page_content .admonition.new {
  --admonition-rgb: 255, 214, 0;
  --admonition-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m21,5h-2.435c.201-.358.342-.75.401-1.169.127-.888-.1-1.771-.637-2.488-.538-.718-1.323-1.183-2.211-1.31-.885-.125-1.771.1-2.488.637-.696.522-1.226,1.196-1.63,1.882-.404-.685-.934-1.36-1.63-1.881C9.653.133,8.769-.091,7.882.034c-.888.127-1.673.592-2.21,1.309-.538.717-.765,1.601-.638,2.488.06.419.2.813.399,1.169h-2.433c-1.654,0-3,1.346-3,3v5h2v11h9.34l.681-2H4v-9h10.998l.589-2H2v-3c0-.551.448-1,1-1h18c.552,0,1,.449,1,1v3h-1.56l.588,2h2.972v-5c0-1.654-1.346-3-3-3Zm-6.171-2.729c.289-.217.648-.31,1.006-.257.358.051.676.239.894.529.218.29.309.647.258,1.005-.051.359-.239.676-.561.918-.037.029-.37.278-1.018.533h-2.308c.222-.757.75-1.994,1.73-2.729Zm-7.287,2.171c-.289-.218-.478-.535-.528-.894-.051-.358.04-.715.259-1.006.217-.29.534-.478.893-.529.354-.052.716.04,1.006.258.98.735,1.507,1.971,1.73,2.729h-2.308c-.648-.255-.984-.506-1.05-.558Zm12.132,11.558h4.326v.917l-3.3,1.909,1.326,4.029-.75.523-3.261-2.521-3.275,2.532-.721-.543,1.304-4.076-3.323-1.848v-.922h4.35l1.178-4.5h.97l1.176,4.5Z"/></svg>');
}

/******* Search form  *******/

form.search {
  align-items: center;
  background: var(--color-base);
  border-radius: 0.4rem;
  box-shadow: 0 0 0 1px rgba(var(--rgb-gray), 0.2);
  display: flex;
  letter-spacing: -0.01em;
  transition: background var(--transition), box-shadow var(--transition)
}
form.search input {
  appearance: none;
  border: none;
  color: var(--color-gray);
  flex-grow: 0;
  line-height: 1.4;
  padding: 0.6em 0.8em 0.5em 0.8em;
  vertical-align: middle
}
form.search input::placeholder {
  color: rgba(var(--rgb-gray), 0.6)
}
form.search input::-webkit-search-cancel-button {
  -webkit-appearance: none
}
form.search button {
  align-items: center;
  color: rgba(var(--rgb-gray), 0.5);
  cursor: pointer;
  display: flex;
  height: 2.4em;
  justify-content: center;
  transition: color var(--transition);
  width: 2.4em;
}
form.search button svg {
  height: 0.9em;
  width: 0.9em;
}

/******* Tabs  *******/


.tabbed-set {
  display: flex;
  position: relative;
  border-radius: 0.1rem;
  flex-flow: column wrap;
  margin: 1em 0px;
}
.tabbed-set > input {
  height: 0px;
  opacity: 0;
  position: absolute;
  width: 0px;
}

.tabbed-labels {
  display: flex;
  max-width: 100%;
  scrollbar-width: none;
  overflow: auto;
  border-bottom: 1px solid var(--color-base-darkest);
}
.tabbed-labels > label {
  color: var(--color-gray-light);
  cursor: pointer;
  font-size: 0.85rem;
  font-weight: 600;
  scroll-margin-inline-start: 1rem;
  width: 100%;
  border-radius: 0.1rem 0.1rem 0px 0px;
  padding: 0.9rem 1.6em;
  transition: background-color 0.25s, color 0.25s;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
@media (min-width: 48rem) {
  .tabbed-labels > label {
    width: auto;
  }
}
.tabbed-labels > label:focus {
  outline: 1px dotted var(--color-accent);
}
.tabbed-set > input:first-child:checked ~ .tabbed-labels > :first-child,
.tabbed-set > input:nth-child(2):checked ~ .tabbed-labels > :nth-child(2),
.tabbed-set > input:nth-child(3):checked ~ .tabbed-labels > :nth-child(3),
.tabbed-set > input:nth-child(4):checked ~ .tabbed-labels > :nth-child(4),
.tabbed-set > input:nth-child(5):checked ~ .tabbed-labels > :nth-child(5),
.tabbed-set > input:nth-child(6):checked ~ .tabbed-labels > :nth-child(6),
.tabbed-set > input:nth-child(7):checked ~ .tabbed-labels > :nth-child(7),
.tabbed-set > input:nth-child(8):checked ~ .tabbed-labels > :nth-child(8),
.tabbed-set > input:nth-child(9):checked ~ .tabbed-labels > :nth-child(9),
.tabbed-set > input:nth-child(10):checked ~ .tabbed-labels > :nth-child(10),
.tabbed-set > input:nth-child(11):checked ~ .tabbed-labels > :nth-child(11),
.tabbed-set > input:nth-child(12):checked ~ .tabbed-labels > :nth-child(12),
.tabbed-set > input:nth-child(13):checked ~ .tabbed-labels > :nth-child(13),
.tabbed-set > input:nth-child(14):checked ~ .tabbed-labels > :nth-child(14),
.tabbed-set > input:nth-child(15):checked ~ .tabbed-labels > :nth-child(15),
.tabbed-set > input:nth-child(16):checked ~ .tabbed-labels > :nth-child(16),
.tabbed-set > input:nth-child(17):checked ~ .tabbed-labels > :nth-child(17),
.tabbed-set > input:nth-child(18):checked ~ .tabbed-labels > :nth-child(18),
.tabbed-set > input:nth-child(19):checked ~ .tabbed-labels > :nth-child(19),
.tabbed-set > input:nth-child(20):checked ~ .tabbed-labels > :nth-child(20) {
  color: var(--color-black);
  box-shadow: 0 -4px var(--color-accent) inset;
}
.tabbed-labels > label > [href]:first-child {
  color: inherit;
}

.tabbed-panels {
  width: 100%;
}
.tabbed-panel {
  display: none;
  padding-top: 0.75rem;
}
.tabbed-set > input:first-child:checked ~ .tabbed-panels > :first-child,
.tabbed-set > input:nth-child(2):checked ~ .tabbed-panels > :nth-child(2),
.tabbed-set > input:nth-child(3):checked ~ .tabbed-panels > :nth-child(3),
.tabbed-set > input:nth-child(4):checked ~ .tabbed-panels > :nth-child(4),
.tabbed-set > input:nth-child(5):checked ~ .tabbed-panels > :nth-child(5),
.tabbed-set > input:nth-child(6):checked ~ .tabbed-panels > :nth-child(6),
.tabbed-set > input:nth-child(7):checked ~ .tabbed-panels > :nth-child(7),
.tabbed-set > input:nth-child(8):checked ~ .tabbed-panels > :nth-child(8),
.tabbed-set > input:nth-child(9):checked ~ .tabbed-panels > :nth-child(9),
.tabbed-set > input:nth-child(10):checked ~ .tabbed-panels > :nth-child(10),
.tabbed-set > input:nth-child(11):checked ~ .tabbed-panels > :nth-child(11),
.tabbed-set > input:nth-child(12):checked ~ .tabbed-panels > :nth-child(12),
.tabbed-set > input:nth-child(13):checked ~ .tabbed-panels > :nth-child(13),
.tabbed-set > input:nth-child(14):checked ~ .tabbed-panels > :nth-child(14),
.tabbed-set > input:nth-child(15):checked ~ .tabbed-panels > :nth-child(15),
.tabbed-set > input:nth-child(16):checked ~ .tabbed-panels > :nth-child(16),
.tabbed-set > input:nth-child(17):checked ~ .tabbed-panels > :nth-child(17),
.tabbed-set > input:nth-child(18):checked ~ .tabbed-panels > :nth-child(18),
.tabbed-set > input:nth-child(19):checked ~ .tabbed-panels > :nth-child(19),
.tabbed-set > input:nth-child(20):checked ~ .tabbed-panels > :nth-child(20) {
  display: block;
}

/******* Columns  *******/

.columns {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 1em;
}
@media (min-width: 48rem) {
  .columns {
    flex-direction: row;
    justify-content: stretch;
  }
}
.columns > * {
  width: 100%;
}

/******* Stack  *******/

.stacked > p {
  display: flex;
  flex-direction: column;
}
@media (min-width: 48rem) {
  .stacked > p {
    flex-direction: row;
  }
  .stacked > p > * {
    transform: scale(0.95);
    transition: all var(--transition);
    width: 100%;
    height: fit-content;
  }
  .stacked > p :nth-child(2) { margin: 10% 0 0 -40%; }
  .stacked > p :nth-child(3) { margin: 20% 0 0 -40%; }
  .stacked > p :nth-child(4) { margin: 30% 0 0 -40%; }
  .stacked > p :nth-child(5) { margin: 40% 0 0 -40%; }
  .stacked > p > *:hover {
    z-index: 20;
    transform: scale(1);
  }
}

/******* Example  *******/

.page_content .example {
  border-radius: 0 0.3rem 0.3rem 0;
  border: 0;
  box-shadow: 0 0 0 1px rgba(var(--rgb-gray), 0.1);
  display: flow-root;
  margin: var(--flow-space, 1.4em) 0;
  padding: 0 1em;
  page-break-inside: avoid;
}
.page_content .example > * {
  margin-top: 1em;
  margin-bottom: 1em;
}
