/* app/styles/app.css */
*,
:after,
:before {
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width:0px;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgba(59,130,246,.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
::backdrop {
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width:0px;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgba(59,130,246,.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: ;
}
*,
:after,
:before {
  box-sizing: border-box;
  border: 0 solid #e5e7eb;
}
:after,
:before {
  --tw-content:"";
}
:host,
html {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  font-family:
    ui-sans-serif,
    system-ui,
    sans-serif,
    Apple Color Emoji,
    Segoe UI Emoji,
    Segoe UI Symbol,
    Noto Color Emoji;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
}
body {
  margin: 0;
  line-height: inherit;
}
hr {
  height: 0;
  color: inherit;
  border-top-width: 1px;
}
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
a {
  color: inherit;
  text-decoration: inherit;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
pre,
samp {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    Liberation Mono,
    Courier New,
    monospace;
  font-feature-settings: normal;
  font-variation-settings: normal;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -.25em;
}
sup {
  top: -.5em;
}
table {
  text-indent: 0;
  border-color: inherit;
  border-collapse: collapse;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
}
button,
select {
  text-transform: none;
}
button,
input:where([type=button]),
input:where([type=reset]),
input:where([type=submit]) {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
}
:-moz-focusring {
  outline: auto;
}
:-moz-ui-invalid {
  box-shadow: none;
}
progress {
  vertical-align: baseline;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
}
fieldset,
legend {
  padding: 0;
}
menu,
ol,
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
dialog {
  padding: 0;
}
textarea {
  resize: vertical;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 1;
  color: #9ca3af;
}
input::placeholder,
textarea::placeholder {
  opacity: 1;
  color: #9ca3af;
}
[role=button],
button {
  cursor: pointer;
}
:disabled {
  cursor: default;
}
audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
  display: block;
  vertical-align: middle;
}
img,
video {
  max-width: 100%;
  height: auto;
}
[hidden]:where(:not([hidden=until-found])) {
  display: none;
}
.prose table td,
.prose table th {
  padding: .25rem;
  vertical-align: top;
}
@media (min-width:640px) {
  .prose table td,
  .prose table th {
    padding: .5rem;
  }
}
.prose table li,
.prose table p {
  margin-top: 0;
  margin-bottom: 0;
}
.prose figure table {
  margin-top: 1.25rem;
  margin-bottom: 0;
}
.prose table ol > li,
.prose table ul > li {
  padding-left: 0;
}
.prose table tr:hover td {
  background-color: var(--myst-color-bg-secondary);
}
.prose table td dl {
  margin: 0;
}
.prose dt > strong {
  font-weight: 700;
  color: var(--myst-color-accent-text);
}
.prose dd {
  margin-left: 2rem;
}
.article dd > a img,
.article dd > img,
.article p > a img,
.article p > img,
.prose dd > a img,
.prose dd > img,
.prose p > a img,
.prose p > img {
  margin: 0;
  display: inline-block;
  max-height: 1.2em;
  vertical-align: text-bottom;
}
article.\!content {
  min-height: 100vh !important;
}
article.content {
  min-height: 100vh;
}
.article table td,
.article table th {
  padding: .25rem;
  vertical-align: top;
}
@media (min-width:640px) {
  .article table td,
  .article table th {
    padding: .5rem;
  }
}
.article table li,
.article table p {
  margin-top: 0;
  margin-bottom: 0;
}
.article figure table {
  margin-top: 1.25rem;
  margin-bottom: 0;
}
.article table ol > li,
.article table ul > li {
  padding-left: 0;
}
.article table tr:hover td {
  background-color: var(--myst-color-bg-secondary);
}
.article table td dl {
  margin: 0;
}
.article dt > strong {
  font-weight: 700;
  color: var(--myst-color-accent-text);
}
.article dd {
  margin-left: 2rem;
}
.article dd > a img,
.article dd > img,
.article p > a img,
.article p > img {
  margin: 0;
  display: inline-block;
  max-height: 1.2em;
  vertical-align: text-bottom;
}
.article .task-list-item > p {
  margin-top: 0;
  margin-bottom: 0;
  display: inline;
}
.article {
  color: var(--tw-prose-body);
  max-width: 65ch;
}
.article :where(p):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}
.article :where([class~=lead]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-lead);
  font-size: 1.25em;
  line-height: 1.6;
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}
.article :where(a):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--myst-color-link);
  text-decoration: underline;
  font-weight: 500;
  text-decoration-color: var(--myst-color-link-underline);
}
.article :where(a):not(:where([class~=not-prose], [class~=not-prose] *)):hover {
  color: var(--myst-color-link-hover);
  text-decoration-color: var(--myst-color-link-hover);
}
.article :where(strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-bold);
  font-weight: 600;
}
.article :where(a strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.article :where(blockquote strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.article :where(thead th strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.article :where(ol):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: decimal;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em;
}
.article :where(ol[type=A]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-alpha;
}
.article :where(ol[type=a]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-alpha;
}
.article :where(ol[type=A s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-alpha;
}
.article :where(ol[type=a s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-alpha;
}
.article :where(ol[type=I]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-roman;
}
.article :where(ol[type=i]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-roman;
}
.article :where(ol[type=I s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-roman;
}
.article :where(ol[type=i s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-roman;
}
.article :where(ol[type="1"]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: decimal;
}
.article :where(ul):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: disc;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em;
}
.article :where(ol>li):not(:where([class~=not-prose], [class~=not-prose] *))::marker {
  font-weight: 400;
  color: var(--tw-prose-counters);
}
.article :where(ul>li):not(:where([class~=not-prose], [class~=not-prose] *))::marker {
  color: var(--tw-prose-bullets);
}
.article :where(dt):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.25em;
}
.article :where(hr):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-color: var(--tw-prose-hr);
  border-top-width: 1px;
  margin-top: 3em;
  margin-bottom: 3em;
}
.article :where(blockquote):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 500;
  font-style: italic;
  color: var(--tw-prose-quotes);
  border-inline-start-width: .25rem;
  border-inline-start-color: var(--tw-prose-quote-borders);
  quotes: "\201c""\201d""\2018""\2019";
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  padding-inline-start: 1em;
}
.article :where(blockquote p:first-of-type):not(:where([class~=not-prose], [class~=not-prose] *)):before {
  content: none;
}
.article :where(blockquote p:last-of-type):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: close-quote;
}
.article :where(h1):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 800;
  font-size: 2.25em;
  margin-top: 0;
  margin-bottom: .8888889em;
  line-height: 1.1111111;
}
.article :where(h1 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 900;
  color: inherit;
}
.article :where(h2):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 700;
  font-size: 1.5em;
  margin-top: 2em;
  margin-bottom: 1em;
  line-height: 1.3333333;
}
.article :where(h2 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 800;
  color: inherit;
}
.article :where(h3):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  font-size: 1.25em;
  margin-top: 1.6em;
  margin-bottom: .6em;
  line-height: 1.6;
}
.article :where(h3 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 700;
  color: inherit;
}
.article :where(h4):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: .5em;
  line-height: 1.5;
}
.article :where(h4 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 700;
  color: inherit;
}
.article :where(img):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}
.article :where(picture):not(:where([class~=not-prose], [class~=not-prose] *)) {
  display: block;
  margin-top: 2em;
  margin-bottom: 2em;
}
.article :where(video):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}
.article :where(kbd):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 500;
  font-family: inherit;
  color: var(--tw-prose-kbd);
  box-shadow: 0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);
  font-size: .875em;
  border-radius: .3125rem;
  padding-top: .1875em;
  padding-inline-end: .375em;
  padding-bottom: .1875em;
  padding-inline-start: .375em;
}
.article :where(code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-code);
  font-weight: 400;
  font-size: .875em;
}
.article :where(a code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.article :where(h1 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.article :where(h2 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
  font-size: .875em;
}
.article :where(h3 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
  font-size: .9em;
}
.article :where(h4 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.article :where(blockquote code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.article :where(thead th code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.article :where(pre):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-pre-code);
  background-color: var(--tw-prose-pre-bg);
  overflow-x: auto;
  font-weight: 400;
  font-size: .875em;
  line-height: 1.7142857;
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
  border-radius: .375rem;
  padding-top: .8571429em;
  padding-inline-end: 1.1428571em;
  padding-bottom: .8571429em;
  padding-inline-start: 1.1428571em;
}
.article :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  background-color: transparent;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-weight: inherit;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit;
}
.article :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)):before {
  content: none;
}
.article :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: none;
}
.article :where(table):not(:where([class~=not-prose], [class~=not-prose] *)) {
  width: 100%;
  table-layout: auto;
  margin-top: 2em;
  margin-bottom: 2em;
  font-size: .875em;
  line-height: 1.7142857;
}
.article :where(thead):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-th-borders);
}
.article :where(thead th):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  vertical-align: bottom;
  padding-inline-end: .5714286em;
  padding-bottom: .5714286em;
  padding-inline-start: .5714286em;
}
.article :where(tbody tr):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-td-borders);
}
.article :where(tbody tr:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 0;
}
.article :where(tbody td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  vertical-align: baseline;
}
.article :where(tfoot):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-top-width: 1px;
  border-top-color: var(--tw-prose-th-borders);
}
.article :where(tfoot td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  vertical-align: top;
}
.article :where(th, td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  text-align: start;
}
.article :where(figure>*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
  margin-bottom: 0;
}
.article :where(figcaption):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-captions);
  font-size: .875em;
  line-height: 1.4285714;
  margin-top: .8571429em;
}
.article {
  --tw-prose-body:var(--myst-color-prose-body);
  --tw-prose-headings:var(--myst-color-text);
  --tw-prose-lead:var(--myst-color-text-secondary);
  --tw-prose-links:var(--myst-color-link);
  --tw-prose-bold:var(--myst-color-text);
  --tw-prose-counters:var(--myst-color-text-tertiary);
  --tw-prose-bullets:var(--myst-color-border-strong);
  --tw-prose-hr:var(--myst-color-border);
  --tw-prose-quotes:var(--myst-color-text);
  --tw-prose-quote-borders:var(--myst-color-border);
  --tw-prose-captions:var(--myst-color-text-tertiary);
  --tw-prose-kbd:var(--myst-color-text);
  --tw-prose-kbd-shadows:var(--myst-color-kbd-shadow);
  --tw-prose-code:var(--myst-color-code);
  --tw-prose-pre-code:#e5e7eb;
  --tw-prose-pre-bg:#1f2937;
  --tw-prose-th-borders:var(--myst-color-border-strong);
  --tw-prose-td-borders:var(--myst-color-border);
  --tw-prose-invert-body:#d1d5db;
  --tw-prose-invert-headings:#fff;
  --tw-prose-invert-lead:#9ca3af;
  --tw-prose-invert-links:#fff;
  --tw-prose-invert-bold:#fff;
  --tw-prose-invert-counters:#9ca3af;
  --tw-prose-invert-bullets:#4b5563;
  --tw-prose-invert-hr:#374151;
  --tw-prose-invert-quotes:#f3f4f6;
  --tw-prose-invert-quote-borders:#374151;
  --tw-prose-invert-captions:#9ca3af;
  --tw-prose-invert-kbd:#fff;
  --tw-prose-invert-kbd-shadows:hsla(0,0%,100%,.1);
  --tw-prose-invert-code:#fff;
  --tw-prose-invert-pre-code:#d1d5db;
  --tw-prose-invert-pre-bg:rgba(0,0,0,.5);
  --tw-prose-invert-th-borders:#4b5563;
  --tw-prose-invert-td-borders:#374151;
  font-size: 1rem;
  line-height: 1.75;
}
.article :where(picture>img):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
  margin-bottom: 0;
}
.article :where(li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .25rem;
  margin-bottom: .25rem;
}
.article :where(ol>li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: .375em;
}
.article :where(ul>li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: .375em;
}
.article :where(.prose>ul>li p):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .75em;
  margin-bottom: .75em;
}
.article :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
}
.article :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 1.25em;
}
.article :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
}
.article :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 1.25em;
}
.article :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .75em;
  margin-bottom: .75em;
}
.article :where(dl):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}
.article :where(dd):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .5em;
  padding-inline-start: 1.625em;
}
.article :where(hr+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.article :where(h2+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.article :where(h3+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.article :where(h4+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.article :where(thead th:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: 0;
}
.article :where(thead th:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-end: 0;
}
.article :where(tbody td, tfoot td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-top: .5714286em;
  padding-inline-end: .5714286em;
  padding-bottom: .5714286em;
  padding-inline-start: .5714286em;
}
.article :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: 0;
}
.article :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-end: 0;
}
.article :where(figure):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}
.article :where(.prose>:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.article :where(.prose>:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 0;
}
.article :where(blockquote p:first-of-type):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: none;
}
.article :where(li>p, dd>p, header>p, footer>p):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .25rem;
  margin-bottom: .25rem;
}
.article :where(h5, h6):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 500;
}
.article a:not(.button):not(:has(img, figure, picture, video)) > .link-icon {
  margin-left: .125rem;
  display: inline-block;
  height: .85em;
  width: .85em;
  vertical-align: baseline;
  opacity: .8;
}
.article {
  max-width: none;
  overflow-wrap: break-word;
}
:root {
  --myst-color-link:#1d4ed8;
  --myst-color-link-hover:#3b82f6;
  --myst-color-link-underline:#60a5fa;
  --myst-color-active:#2563eb;
  --myst-color-active-bg:rgba(147,197,253,.3);
  --myst-color-active-surface:#eff6ff;
  --myst-color-primary:#3b82f6;
  --myst-color-primary-hover:#1d4ed8;
  --myst-color-focus-ring:#3b82f6;
  --myst-color-focus-outline:#bfdbfe;
  --myst-color-accent-text:#1e3a8a;
  --myst-color-accent-surface:#eff6ff;
  --myst-color-accent-surface-border:#bfdbfe;
  --myst-color-accent-surface-text:#1e3a8a;
  --myst-color-bg:#fff;
  --myst-color-bg-secondary:#f9fafb;
  --myst-color-surface:#f3f4f6;
  --myst-color-surface-hover:#e5e7eb;
  --myst-color-text:#111827;
  --myst-color-text-secondary:#4b5563;
  --myst-color-text-tertiary:#6b7280;
  --myst-color-prose-body:#44403c;
  --myst-color-border:#e5e7eb;
  --myst-color-border-strong:#d1d5db;
  --myst-color-inverse-bg:#1e3a8a;
  --myst-color-inverse-text:#fff;
  --myst-color-code:#be185d;
  --myst-color-kbd-shadow:rgba(28,25,23,.1);
  --myst-color-info:#3b82f6;
  --myst-color-info-bg:#eff6ff;
  --myst-color-info-text:#2563eb;
  --myst-color-success:#16a34a;
  --myst-color-success-bg:#f0fdf4;
  --myst-color-success-text:#16a34a;
  --myst-color-tip:var(--myst-color-success);
  --myst-color-tip-bg:var(--myst-color-success-bg);
  --myst-color-tip-text:var(--myst-color-success-text);
  --myst-color-warning:#d97706;
  --myst-color-warning-bg:#fffbeb;
  --myst-color-warning-text:#d97706;
  --myst-color-danger:#dc2626;
  --myst-color-danger-bg:#fef2f2;
  --myst-color-danger-text:#dc2626;
  --myst-color-error:#ef4444;
  --myst-color-error-bg:#fee2e2;
  --myst-color-error-text:#b91c1c;
  --myst-color-theorem:#a855f7;
  --myst-color-theorem-bg:#faf5ff;
  --myst-color-theorem-text:#9333ea;
  --myst-color-example:#f97316;
  --myst-color-example-bg:#fff7ed;
  --myst-color-example-text:#ea580c;
  --myst-color-proof:#6b7280;
  --myst-color-proof-bg:#f9fafb;
  --myst-color-proof-text:#4b5563;
}
.dark {
  --myst-color-link:#60a5fa;
  --myst-color-link-hover:#93c5fd;
  --myst-color-link-underline:#3b82f6;
  --myst-color-active:#60a5fa;
  --myst-color-active-bg:rgba(59,130,246,.2);
  --myst-color-active-surface:#1e293b;
  --myst-color-focus-ring:#60a5fa;
  --myst-color-focus-outline:#60a5fa;
  --myst-color-accent-text:#dbeafe;
  --myst-color-accent-surface:#1e3a8a4d;
  --myst-color-accent-surface-border:#1e40af;
  --myst-color-accent-surface-text:#eff6ff;
  --myst-color-bg:#1c1917;
  --myst-color-bg-secondary:#292524;
  --myst-color-surface:#1e293b;
  --myst-color-surface-hover:#334155;
  --myst-color-text:#fff;
  --myst-color-text-secondary:#d1d5db;
  --myst-color-text-tertiary:#d1d5db;
  --myst-color-prose-body:#d6d3d1;
  --myst-color-border:#4b5563;
  --myst-color-border-strong:#6b7280;
  --myst-color-inverse-bg:#fff;
  --myst-color-inverse-text:#000;
  --myst-color-code:#f472b6;
  --myst-color-kbd-shadow:hsla(0,0%,100%,.1);
  --myst-color-info-bg:#0f172a;
  --myst-color-info-text:#60a5fa;
  --myst-color-success:#22c55e;
  --myst-color-success-bg:#0f172a;
  --myst-color-success-text:#4ade80;
  --myst-color-warning:#f59e0b;
  --myst-color-warning-bg:#0f172a;
  --myst-color-warning-text:#fbbf24;
  --myst-color-danger:#ef4444;
  --myst-color-danger-bg:#0f172a;
  --myst-color-danger-text:#f87171;
  --myst-color-error:#f87171;
  --myst-color-error-bg:#0f172a;
  --myst-color-error-text:#fca5a5;
  --myst-color-theorem-bg:#0f172a;
  --myst-color-theorem-text:#c084fc;
  --myst-color-example-bg:#0f172a;
  --myst-color-example-text:#fb923c;
  --myst-color-proof-bg:#0f172a;
  --myst-color-proof-text:#9ca3af;
}
.article-grid {
  display: grid;
  grid-template-columns: [screen-start screen-inset-start] .5rem [page-start page-inset-start body-outset-start body-start gutter-left-start body-inset-start middle-start] 1fr 1fr [gutter-left-end] 1fr 1fr [gutter-right-start] 1fr 1fr [middle-end body-inset-end body-end gutter-right-end body-outset-end page-inset-end page-end] .5rem [screen-inset-end screen-end];
  align-content: flex-start;
}
@media (min-width:768px) {
  .article-grid {
    grid-template-columns: [screen-start] .25rem [screen-inset-start page-start page-inset-start body-outset-start] 1fr [body-start gutter-left-start] 1rem [body-inset-start] minmax(2ch, 10ch) [middle-start] minmax(2ch, 10ch) [gutter-left-end] minmax(2ch, 10ch) minmax(2ch, 10ch) [gutter-right-start] minmax(2ch, 10ch) [middle-end] minmax(2ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 1fr [body-outset-end page-inset-end page-end screen-inset-end] .25rem [screen-end];
  }
}
@media (min-width:1024px) {
  .article-grid {
    grid-template-columns: [screen-start] .25rem [screen-inset-start page-start] 1rem [page-inset-start body-outset-start] 1fr [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(5rem, 13rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .25rem [screen-end];
  }
}
@media (min-width:1280px) {
  .article-grid {
    grid-template-columns: [screen-start] .25rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] minmax(4rem, 9rem) [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(5rem, 13rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .25rem [screen-end];
  }
}
@media (min-width:1536px) {
  .article-grid {
    grid-template-columns: [screen-start] .5rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] minmax(4rem, 9rem) [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(5rem, 13rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
  }
}
.article-left-grid {
  display: grid;
  grid-template-columns: [screen-start screen-inset-start] .5rem [page-start page-inset-start body-outset-start body-start gutter-left-start body-inset-start middle-start] 1fr 1fr [gutter-left-end] 1fr 1fr [gutter-right-start] 1fr 1fr [middle-end body-inset-end body-end gutter-right-end body-outset-end page-inset-end page-end] .5rem [screen-inset-end screen-end];
  align-content: flex-start;
}
@media (min-width:768px) {
  .article-left-grid {
    grid-template-columns: [screen-start] .5rem [screen-inset-start page-start page-inset-start body-outset-start] 1rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(5ch, 15ch) [middle-start] minmax(5ch, 15ch) [gutter-left-end] minmax(5ch, 15ch) minmax(5ch, 15ch) [gutter-right-start] minmax(5ch, 15ch) [middle-end] minmax(5ch, 15ch) [body-inset-end] 1rem [body-end gutter-right-end body-outset-end page-inset-end] 1rem [page-end screen-inset-end] .5rem [screen-end];
  }
}
@media (min-width:1024px) {
  .article-left-grid {
    grid-template-columns: [screen-start] .5rem [screen-inset-start page-start page-inset-start body-outset-start] 1rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(5ch, 12ch) [middle-start] minmax(5ch, 12ch) [gutter-left-end] minmax(5ch, 12ch) minmax(5ch, 12ch) [gutter-right-start] minmax(5ch, 12ch) [middle-end] minmax(5ch, 12ch) [body-inset-end] 1rem [body-end] 1fr [gutter-right-end] 1rem [body-outset-end] minmax(10rem, 18rem) [page-inset-end] 1rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
  }
}
@media (min-width:1280px) {
  .article-left-grid {
    grid-template-columns: [screen-start] .5rem [screen-inset-start page-start page-inset-start body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 12ch) [middle-start] minmax(8ch, 12ch) [gutter-left-end] minmax(8ch, 12ch) minmax(8ch, 12ch) [gutter-right-start] minmax(8ch, 12ch) [middle-end] minmax(8ch, 12ch) [body-inset-end] 1rem [body-end] 1fr [gutter-right-end] 1rem [body-outset-end] minmax(10rem, 18rem) [page-inset-end] 1rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
  }
}
@media (min-width:1536px) {
  .article-left-grid {
    grid-template-columns: [screen-start] .5rem [screen-inset-start] 1fr [page-start page-inset-start body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 12ch) [middle-start] minmax(8ch, 12ch) [gutter-left-end] minmax(8ch, 12ch) minmax(8ch, 12ch) [gutter-right-start] minmax(8ch, 12ch) [middle-end] minmax(8ch, 12ch) [body-inset-end] 1rem [body-end] 1fr [gutter-right-end] 1rem [body-outset-end] minmax(10rem, 18rem) [page-inset-end] 1rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
  }
}
.article-center-grid {
  display: grid;
  grid-template-columns: [screen-start screen-inset-start] .5rem [page-start page-inset-start body-outset-start body-start gutter-left-start body-inset-start middle-start] 1fr 1fr [gutter-left-end] 1fr 1fr [gutter-right-start] 1fr 1fr [middle-end body-inset-end body-end gutter-right-end body-outset-end page-inset-end page-end] .5rem [screen-inset-end screen-end];
  align-content: flex-start;
}
@media (min-width:768px) {
  .article-center-grid {
    grid-template-columns: [screen-start] .25rem [screen-inset-start page-start page-inset-start body-outset-start] 1fr [body-start gutter-left-start] 1rem [body-inset-start] minmax(2ch, 10ch) [middle-start] minmax(2ch, 10ch) [gutter-left-end] minmax(2ch, 10ch) minmax(2ch, 10ch) [gutter-right-start] minmax(2ch, 10ch) [middle-end] minmax(2ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 1fr [body-outset-end page-inset-end page-end screen-inset-end] .25rem [screen-end];
  }
}
@media (min-width:1024px) {
  .article-center-grid {
    grid-template-columns: [screen-start] .5rem [screen-inset-start page-start] 2rem [page-inset-start] 2fr [body-outset-start gutter-outset-left-start] 1rem [body-start gutter-left-start] 2rem [body-inset-start gutter-left-start] minmax(8ch, 10ch) [gutter-left-end middle-start] minmax(8ch, 10ch) minmax(8ch, 10ch) [] minmax(8ch, 10ch) [] minmax(8ch, 10ch) [middle-end gutter-right-start gutter-page-right-start] minmax(8ch, 10ch) [body-inset-end gutter-right-end] 2rem [body-end] 1rem [body-outset-end] 2fr [page-inset-end] 2rem [page-end screen-inset-end] .5rem [screen-end];
  }
}
@media (min-width:1280px) {
  .article-center-grid {
    grid-template-columns: [screen-start] .25rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] minmax(4rem, 9rem) [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(4rem, 9rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .25rem [screen-end];
  }
}
@media (min-width:1536px) {
  .article-center-grid {
    grid-template-columns: [screen-start] .5rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] minmax(4rem, 9rem) [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(4rem, 9rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
  }
}
.article-center-grid > *,
.article-grid > *,
.article-left-grid > * {
  grid-column: body;
  margin-top: 0 !important;
}
.grid-gap {
  gap: .25rem;
}
@media (min-width:768px) {
  .grid-gap {
    gap: .5rem;
  }
}
@media (min-width:1280px) {
  .grid-gap {
    gap: .75rem;
  }
}
@media (min-width:1536px) {
  .grid-gap {
    gap: 1rem;
  }
}
.subgrid-gap {
  -moz-column-gap: .25rem;
  column-gap: .25rem;
}
@media (min-width:768px) {
  .subgrid-gap {
    -moz-column-gap: .5rem;
    column-gap: .5rem;
  }
}
@media (min-width:1280px) {
  .subgrid-gap {
    -moz-column-gap: .75rem;
    column-gap: .75rem;
  }
}
@media (min-width:1536px) {
  .subgrid-gap {
    -moz-column-gap: 1rem;
    column-gap: 1rem;
  }
}
.col-margin-left {
  grid-column: body;
}
@media (min-width:1280px) {
  .col-margin-left {
    grid-column: page/body-start;
  }
}
.col-margin,
.col-margin-right {
  grid-column: body;
}
@media (min-width:1024px) {
  .col-margin,
  .col-margin-right {
    grid-column: body-end/page-end;
  }
}
.col-margin-right-inset {
  grid-column: body;
}
@media (min-width:1024px) {
  .col-margin-right-inset {
    grid-column: body-end/page-inset;
  }
}
.col-gutter-page-right {
  grid-column: body;
}
@media (min-width:768px) {
  .col-gutter-page-right {
    grid-column: gutter-right/body-outset;
  }
}
@media (min-width:1024px) {
  .col-gutter-page-right {
    grid-column: middle-end/page;
  }
}
.col-gutter-page-left {
  grid-column: body;
}
@media (min-width:768px) {
  .col-gutter-page-left {
    grid-column: body-outset/gutter-left;
  }
}
@media (min-width:1024px) {
  .col-gutter-page-left {
    grid-column: page/middle-start;
  }
}
.col-body-inset-right {
  grid-column: body/gutter-right-start;
}
@media (min-width:1024px) {
  .col-body-inset-right {
    grid-column: body/middle;
  }
}
.col-body-inset-left {
  grid-column: gutter-left-end/body;
}
@media (min-width:1024px) {
  .col-body-inset-left {
    grid-column: middle/body;
  }
}
.col-page-middle {
  grid-column: body;
}
@media (min-width:1024px) {
  .col-page-middle {
    grid-column: middle;
  }
}
.shaded {
  background-color: var(--myst-color-surface);
  padding-top: 1.25rem;
}
.framed,
.shaded {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
.framed {
  border-width: 1px;
  padding: 1.25rem;
  --tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);
  --tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.framed,
.shaded-children > * {
  background-color: var(--myst-color-bg-secondary);
}
.shaded-children > * {
  padding: .5rem;
}
.rounded-children > * {
  border-radius: .25rem;
}
.task-list-item {
  list-style-type: none;
}
.task-list-item-checkbox {
  margin-left: -29px;
  margin-right: 14px;
  height: 1rem;
  width: 1rem;
  --tw-translate-y:1px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  border-radius: .25rem;
  border-color: var(--myst-color-border-strong);
  background-color: var(--myst-color-surface);
  color: var(--myst-color-active);
}
.task-list-item-checkbox:focus {
  border-color: var(--myst-color-focus-ring);
}
.task-list-item-checkbox:is(.dark *) {
  --tw-ring-offset-color:var(--myst-color-bg-secondary);
}
.prose .task-list-item > p {
  margin-top: 0;
  margin-bottom: 0;
  display: inline;
}
#footnotes p {
  margin: .25rem;
}
:where(footer).article-center-grid > *,
:where(footer).article-grid > *,
:where(footer).article-left-grid > * {
  grid-column: page;
}
.\!container {
  width: 100% !important;
}
.container {
  width: 100%;
}
@media (min-width:640px) {
  .\!container {
    max-width: 640px !important;
  }
  .container {
    max-width: 640px;
  }
}
@media (min-width:768px) {
  .\!container {
    max-width: 768px !important;
  }
  .container {
    max-width: 768px;
  }
}
@media (min-width:1024px) {
  .\!container {
    max-width: 1024px !important;
  }
  .container {
    max-width: 1024px;
  }
}
@media (min-width:1280px) {
  .\!container {
    max-width: 1280px !important;
  }
  .container {
    max-width: 1280px;
  }
}
@media (min-width:1536px) {
  .\!container {
    max-width: 1536px !important;
  }
  .container {
    max-width: 1536px;
  }
}
.prose {
  color: var(--tw-prose-body);
  max-width: 65ch;
}
.prose :where(p):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}
.prose :where([class~=lead]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-lead);
  font-size: 1.25em;
  line-height: 1.6;
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}
.prose :where(a):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--myst-color-link);
  text-decoration: underline;
  font-weight: 500;
  text-decoration-color: var(--myst-color-link-underline);
}
.prose :where(a):not(:where([class~=not-prose], [class~=not-prose] *)):hover {
  color: var(--myst-color-link-hover);
  text-decoration-color: var(--myst-color-link-hover);
}
.prose :where(strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-bold);
  font-weight: 600;
}
.prose :where(a strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.prose :where(blockquote strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.prose :where(thead th strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.prose :where(ol):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: decimal;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em;
}
.prose :where(ol[type=A]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-alpha;
}
.prose :where(ol[type=a]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-alpha;
}
.prose :where(ol[type=A s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-alpha;
}
.prose :where(ol[type=a s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-alpha;
}
.prose :where(ol[type=I]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-roman;
}
.prose :where(ol[type=i]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-roman;
}
.prose :where(ol[type=I s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: upper-roman;
}
.prose :where(ol[type=i s]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: lower-roman;
}
.prose :where(ol[type="1"]):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: decimal;
}
.prose :where(ul):not(:where([class~=not-prose], [class~=not-prose] *)) {
  list-style-type: disc;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em;
}
.prose :where(ol>li):not(:where([class~=not-prose], [class~=not-prose] *))::marker {
  font-weight: 400;
  color: var(--tw-prose-counters);
}
.prose :where(ul>li):not(:where([class~=not-prose], [class~=not-prose] *))::marker {
  color: var(--tw-prose-bullets);
}
.prose :where(dt):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.25em;
}
.prose :where(hr):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-color: var(--tw-prose-hr);
  border-top-width: 1px;
  margin-top: 3em;
  margin-bottom: 3em;
}
.prose :where(blockquote):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 500;
  font-style: italic;
  color: var(--tw-prose-quotes);
  border-inline-start-width: .25rem;
  border-inline-start-color: var(--tw-prose-quote-borders);
  quotes: "\201c""\201d""\2018""\2019";
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  padding-inline-start: 1em;
}
.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose], [class~=not-prose] *)):before {
  content: none;
}
.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: close-quote;
}
.prose :where(h1):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 800;
  font-size: 2.25em;
  margin-top: 0;
  margin-bottom: .8888889em;
  line-height: 1.1111111;
}
.prose :where(h1 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 900;
  color: inherit;
}
.prose :where(h2):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 700;
  font-size: 1.5em;
  margin-top: 2em;
  margin-bottom: 1em;
  line-height: 1.3333333;
}
.prose :where(h2 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 800;
  color: inherit;
}
.prose :where(h3):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  font-size: 1.25em;
  margin-top: 1.6em;
  margin-bottom: .6em;
  line-height: 1.6;
}
.prose :where(h3 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 700;
  color: inherit;
}
.prose :where(h4):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: .5em;
  line-height: 1.5;
}
.prose :where(h4 strong):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 700;
  color: inherit;
}
.prose :where(img):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}
.prose :where(picture):not(:where([class~=not-prose], [class~=not-prose] *)) {
  display: block;
  margin-top: 2em;
  margin-bottom: 2em;
}
.prose :where(video):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}
.prose :where(kbd):not(:where([class~=not-prose], [class~=not-prose] *)) {
  font-weight: 500;
  font-family: inherit;
  color: var(--tw-prose-kbd);
  box-shadow: 0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);
  font-size: .875em;
  border-radius: .3125rem;
  padding-top: .1875em;
  padding-inline-end: .375em;
  padding-bottom: .1875em;
  padding-inline-start: .375em;
}
.prose :where(code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-code);
  font-weight: 400;
  font-size: .875em;
}
.prose :where(a code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.prose :where(h1 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.prose :where(h2 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
  font-size: .875em;
}
.prose :where(h3 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
  font-size: .9em;
}
.prose :where(h4 code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.prose :where(blockquote code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.prose :where(thead th code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: inherit;
}
.prose :where(pre):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-pre-code);
  background-color: var(--tw-prose-pre-bg);
  overflow-x: auto;
  font-weight: 400;
  font-size: .875em;
  line-height: 1.7142857;
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
  border-radius: .375rem;
  padding-top: .8571429em;
  padding-inline-end: 1.1428571em;
  padding-bottom: .8571429em;
  padding-inline-start: 1.1428571em;
}
.prose :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)) {
  background-color: transparent;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-weight: inherit;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit;
}
.prose :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)):before {
  content: none;
}
.prose :where(pre code):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: none;
}
.prose :where(table):not(:where([class~=not-prose], [class~=not-prose] *)) {
  width: 100%;
  table-layout: auto;
  margin-top: 2em;
  margin-bottom: 2em;
  font-size: .875em;
  line-height: 1.7142857;
}
.prose :where(thead):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-th-borders);
}
.prose :where(thead th):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  vertical-align: bottom;
  padding-inline-end: .5714286em;
  padding-bottom: .5714286em;
  padding-inline-start: .5714286em;
}
.prose :where(tbody tr):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-td-borders);
}
.prose :where(tbody tr:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-bottom-width: 0;
}
.prose :where(tbody td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  vertical-align: baseline;
}
.prose :where(tfoot):not(:where([class~=not-prose], [class~=not-prose] *)) {
  border-top-width: 1px;
  border-top-color: var(--tw-prose-th-borders);
}
.prose :where(tfoot td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  vertical-align: top;
}
.prose :where(th, td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  text-align: start;
}
.prose :where(figure>*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
  margin-bottom: 0;
}
.prose :where(figcaption):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-captions);
  font-size: .875em;
  line-height: 1.4285714;
  margin-top: .8571429em;
}
.prose {
  --tw-prose-body:var(--myst-color-prose-body);
  --tw-prose-headings:var(--myst-color-text);
  --tw-prose-lead:var(--myst-color-text-secondary);
  --tw-prose-links:var(--myst-color-link);
  --tw-prose-bold:var(--myst-color-text);
  --tw-prose-counters:var(--myst-color-text-tertiary);
  --tw-prose-bullets:var(--myst-color-border-strong);
  --tw-prose-hr:var(--myst-color-border);
  --tw-prose-quotes:var(--myst-color-text);
  --tw-prose-quote-borders:var(--myst-color-border);
  --tw-prose-captions:var(--myst-color-text-tertiary);
  --tw-prose-kbd:var(--myst-color-text);
  --tw-prose-kbd-shadows:var(--myst-color-kbd-shadow);
  --tw-prose-code:var(--myst-color-code);
  --tw-prose-pre-code:#e5e7eb;
  --tw-prose-pre-bg:#1f2937;
  --tw-prose-th-borders:var(--myst-color-border-strong);
  --tw-prose-td-borders:var(--myst-color-border);
  --tw-prose-invert-body:#d1d5db;
  --tw-prose-invert-headings:#fff;
  --tw-prose-invert-lead:#9ca3af;
  --tw-prose-invert-links:#fff;
  --tw-prose-invert-bold:#fff;
  --tw-prose-invert-counters:#9ca3af;
  --tw-prose-invert-bullets:#4b5563;
  --tw-prose-invert-hr:#374151;
  --tw-prose-invert-quotes:#f3f4f6;
  --tw-prose-invert-quote-borders:#374151;
  --tw-prose-invert-captions:#9ca3af;
  --tw-prose-invert-kbd:#fff;
  --tw-prose-invert-kbd-shadows:hsla(0,0%,100%,.1);
  --tw-prose-invert-code:#fff;
  --tw-prose-invert-pre-code:#d1d5db;
  --tw-prose-invert-pre-bg:rgba(0,0,0,.5);
  --tw-prose-invert-th-borders:#4b5563;
  --tw-prose-invert-td-borders:#374151;
  font-size: 1rem;
  line-height: 1.75;
}
.prose :where(picture>img):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
  margin-bottom: 0;
}
.prose :where(li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .25rem;
  margin-bottom: .25rem;
}
.prose :where(ol>li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: .375em;
}
.prose :where(ul>li):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: .375em;
}
.prose :where(.prose>ul>li p):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .75em;
  margin-bottom: .75em;
}
.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
}
.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 1.25em;
}
.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
}
.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 1.25em;
}
.prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .75em;
  margin-bottom: .75em;
}
.prose :where(dl):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}
.prose :where(dd):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .5em;
  padding-inline-start: 1.625em;
}
.prose :where(hr+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.prose :where(h2+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.prose :where(h3+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.prose :where(h4+*):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.prose :where(thead th:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: 0;
}
.prose :where(thead th:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-end: 0;
}
.prose :where(tbody td, tfoot td):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-top: .5714286em;
  padding-inline-end: .5714286em;
  padding-bottom: .5714286em;
  padding-inline-start: .5714286em;
}
.prose :where(tbody td:first-child, tfoot td:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-start: 0;
}
.prose :where(tbody td:last-child, tfoot td:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  padding-inline-end: 0;
}
.prose :where(figure):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}
.prose :where(.prose>:first-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: 0;
}
.prose :where(.prose>:last-child):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-bottom: 0;
}
.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose], [class~=not-prose] *)):after {
  content: none;
}
.prose :where(li>p, dd>p, header>p, footer>p):not(:where([class~=not-prose], [class~=not-prose] *)) {
  margin-top: .25rem;
  margin-bottom: .25rem;
}
.prose :where(h5, h6):not(:where([class~=not-prose], [class~=not-prose] *)) {
  color: var(--tw-prose-headings);
  font-weight: 500;
}
.hover-link,
.link {
  color: var(--myst-color-link);
  text-decoration-line: underline;
  text-decoration-color: var(--myst-color-link-underline);
  text-decoration-thickness: .1em;
  text-underline-offset: .15em;
}
.hover-link:hover,
.link:hover {
  color: var(--myst-color-link-hover);
  text-decoration-color: var(--myst-color-link-hover);
}
.link-icon {
  display: none;
}
.prose a:not(.button):not(:has(img, figure, picture, video)) > .link-icon {
  margin-left: .125rem;
  display: inline-block;
  height: .85em;
  width: .85em;
  vertical-align: baseline;
  opacity: .8;
}
.grid-area-subtitle {
  grid-area: subtitle;
}
.grid-area-title {
  grid-area: title;
}
.grid-area-body {
  grid-area: body;
}
.grid-area-links {
  grid-area: links;
}
.grid-areas-just-narrow {
  grid-template-areas: "subtitle subtitle subtitle" "title title title" "body body body" "links links links";
}
.hover-card-content {
  animation-duration: .6s;
  animation-timing-function: cubic-bezier(.16, 1, .3, 1);
  z-index: 10;
}
.hover-card-content[data-side=top] {
  animation-name: slideUp;
}
.hover-card-content[data-side=bottom] {
  animation-name: slideDown;
}
@keyframes slideUp {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideDown {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.hover-document {
  border-radius: .25rem;
  border-width: 1px;
  border-color: var(--myst-color-border);
  background-color: var(--myst-color-bg);
  font-size: .875rem;
  line-height: 1.25rem;
  --tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);
  --tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.hover-document:is(.dark *) {
  background-color: var(--myst-color-surface);
}
.hover-link,
.hover-text {
  text-decoration-style: dotted;
}
.hover-text {
  cursor: help;
  text-decoration-line: underline;
  text-decoration-color: var(--myst-color-text-tertiary);
  text-decoration-thickness: .1em;
  text-underline-offset: .15em;
}
a.button,
button.button,
cite.button a,
span.button {
  margin-top: .25rem;
  display: inline-block;
  cursor: pointer;
  border-radius: .25rem;
  padding: .25rem 1rem;
  font-weight: 700;
  text-decoration-line: none;
}
a.button,
a.button:hover,
button.button,
button.button:hover,
cite.button a,
cite.button a:hover,
span.button,
span.button:hover {
  --tw-text-opacity:1;
  color: rgb(255 255 255/var(--tw-text-opacity,1));
}
a.button:is(.dark *),
button.button:is(.dark *),
cite.button a:is(.dark *),
span.button:is(.dark *) {
  --tw-text-opacity:1;
  color: rgb(255 255 255/var(--tw-text-opacity,1));
}
a.button:hover:is(.dark *),
button.button:hover:is(.dark *),
cite.button a:hover:is(.dark *),
span.button:hover:is(.dark *) {
  --tw-text-opacity:1;
  color: rgb(255 255 255/var(--tw-text-opacity,1));
}
a.button,
button.button,
cite.button a,
span.button {
  white-space: nowrap;
  background-color: var(--myst-color-primary);
  &:hover {
    background-color: var(--myst-color-primary-hover);
  }
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.pointer-events-none {
  pointer-events: none;
}
.pointer-events-auto {
  pointer-events: auto;
}
.visible {
  visibility: visible;
}
.invisible {
  visibility: hidden;
}
.collapse {
  visibility: collapse;
}
.static {
  position: static;
}
.fixed {
  position: fixed;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.sticky {
  position: sticky;
}
.inset-0 {
  inset: 0;
}
.inset-y-0 {
  top: 0;
  bottom: 0;
}
.-left-2 {
  left: -.5rem;
}
.-right-1 {
  right: -.25rem;
}
.-top-3 {
  top: -.75rem;
}
.-top-\[12px\] {
  top: -12px;
}
.bottom-0 {
  bottom: 0;
}
.bottom-2 {
  bottom: .5rem;
}
.left-0 {
  left: 0;
}
.left-1 {
  left: .25rem;
}
.left-4 {
  left: 1rem;
}
.right-0 {
  right: 0;
}
.right-1 {
  right: .25rem;
}
.right-\[5px\] {
  right: 5px;
}
.start-0 {
  inset-inline-start: 0;
}
.top-0 {
  top: 0;
}
.top-1 {
  top: .25rem;
}
.top-\[115px\] {
  top: 115px;
}
.top-\[32px\] {
  top: 32px;
}
.top-\[5px\] {
  top: 5px;
}
.top-\[60px\] {
  top: 60px;
}
.-z-10 {
  z-index: -10;
}
.z-0 {
  z-index: 0;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.z-30 {
  z-index: 30;
}
.z-40 {
  z-index: 40;
}
.z-50 {
  z-index: 50;
}
.z-\[1000\] {
  z-index: 1000;
}
.z-\[1001\] {
  z-index: 1001;
}
.z-\[11\] {
  z-index: 11;
}
.z-\[2\] {
  z-index: 2;
}
.col-body {
  grid-column: body;
}
.col-body-inset {
  grid-column: body-inset;
}
.col-body-left {
  grid-column: body/gutter-right-start;
}
.col-body-outset {
  grid-column: body-outset;
}
.col-body-outset-left {
  grid-column: body-outset/body;
}
.col-body-outset-right {
  grid-column: body/body-outset;
}
.col-body-right {
  grid-column: gutter-left-end/body;
}
.col-gutter-left {
  grid-column: gutter-left;
}
.col-gutter-outset-left {
  grid-column: body-outset/gutter-left;
}
.col-gutter-outset-right {
  grid-column: gutter-right/body-outset;
}
.col-gutter-right {
  grid-column: gutter-right;
}
.col-page {
  grid-column: page;
}
.col-page-inset {
  grid-column: page-inset;
}
.col-page-inset-left {
  grid-column: page-inset/body;
}
.col-page-inset-right {
  grid-column: body/page-inset;
}
.col-page-left {
  grid-column: page/body;
}
.col-page-right {
  grid-column: body/page;
}
.col-screen {
  grid-column: screen;
}
.col-screen-inset {
  grid-column: screen-inset;
}
.col-screen-inset-left {
  grid-column: screen-inset/body;
}
.col-screen-inset-right {
  grid-column: body/screen-inset;
}
.col-screen-left {
  grid-column: screen/body;
}
.col-screen-right {
  grid-column: body/screen;
}
.col-span-1 {
  grid-column: span 1/span 1;
}
.col-span-10 {
  grid-column: span 10/span 10;
}
.col-span-11 {
  grid-column: span 11/span 11;
}
.col-span-12 {
  grid-column: span 12/span 12;
}
.col-span-2 {
  grid-column: span 2/span 2;
}
.col-span-3 {
  grid-column: span 3/span 3;
}
.col-span-4 {
  grid-column: span 4/span 4;
}
.col-span-5 {
  grid-column: span 5/span 5;
}
.col-span-6 {
  grid-column: span 6/span 6;
}
.col-span-7 {
  grid-column: span 7/span 7;
}
.col-span-8 {
  grid-column: span 8/span 8;
}
.col-span-9 {
  grid-column: span 9/span 9;
}
.row-span-1 {
  grid-row: span 1/span 1;
}
.row-span-2 {
  grid-row: span 2/span 2;
}
.row-span-3 {
  grid-row: span 3/span 3;
}
.row-span-4 {
  grid-row: span 4/span 4;
}
.row-span-5 {
  grid-row: span 5/span 5;
}
.row-span-6 {
  grid-row: span 6/span 6;
}
.float-right {
  float: right;
}
.-m-2 {
  margin: -.5rem;
}
.m-0 {
  margin: 0;
}
.m-1 {
  margin: .25rem;
}
.mx-0\.5 {
  margin-left: .125rem;
  margin-right: .125rem;
}
.mx-1 {
  margin-left: .25rem;
  margin-right: .25rem;
}
.mx-2 {
  margin-left: .5rem;
  margin-right: .5rem;
}
.mx-3 {
  margin-left: .75rem;
  margin-right: .75rem;
}
.mx-\[4px\] {
  margin-left: 4px;
  margin-right: 4px;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.my-0 {
  margin-top: 0;
  margin-bottom: 0;
}
.my-1 {
  margin-top: .25rem;
  margin-bottom: .25rem;
}
.my-10 {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}
.my-2 {
  margin-top: .5rem;
  margin-bottom: .5rem;
}
.my-3 {
  margin-top: .75rem;
  margin-bottom: .75rem;
}
.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.my-5 {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
.my-8,
.my-\[2rem\] {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.-mr-1 {
  margin-right: -.25rem;
}
.mb-0 {
  margin-bottom: 0;
}
.mb-1 {
  margin-bottom: .25rem;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-2 {
  margin-bottom: .5rem;
}
.mb-2\.5 {
  margin-bottom: .625rem;
}
.mb-3 {
  margin-bottom: .75rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.mb-5 {
  margin-bottom: 1.25rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
.mb-\[1rem\] {
  margin-bottom: 1rem;
}
.ml-1 {
  margin-left: .25rem;
}
.ml-2 {
  margin-left: .5rem;
}
.ml-3 {
  margin-left: .75rem;
}
.ml-4 {
  margin-left: 1rem;
}
.ml-\[0\.2rem\] {
  margin-left: .2rem;
}
.mr-0\.5 {
  margin-right: .125rem;
}
.mr-1 {
  margin-right: .25rem;
}
.mr-2 {
  margin-right: .5rem;
}
.mr-3 {
  margin-right: .75rem;
}
.mt-0 {
  margin-top: 0;
}
.mt-0\.5 {
  margin-top: .125rem;
}
.mt-1 {
  margin-top: .25rem;
}
.mt-10 {
  margin-top: 2.5rem;
}
.mt-2 {
  margin-top: .5rem;
}
.mt-3 {
  margin-top: .75rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mt-5 {
  margin-top: 1.25rem;
}
.mt-6 {
  margin-top: 1.5rem;
}
.mt-8 {
  margin-top: 2rem;
}
.mt-9 {
  margin-top: 2.25rem;
}
.box-border {
  box-sizing: border-box;
}
.\!block {
  display: block !important;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.inline {
  display: inline;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.table {
  display: table;
}
.\!grid {
  display: grid !important;
}
.grid {
  display: grid;
}
.contents {
  display: contents;
}
.\!hidden {
  display: none !important;
}
.hidden {
  display: none;
}
.aspect-square {
  aspect-ratio: 1/1;
}
.size-\[24px\] {
  width: 24px;
  height: 24px;
}
.size-\[25px\] {
  width: 25px;
  height: 25px;
}
.h-0 {
  height: 0;
}
.h-10 {
  height: 2.5rem;
}
.h-11 {
  height: 2.75rem;
}
.h-3 {
  height: .75rem;
}
.h-4 {
  height: 1rem;
}
.h-5 {
  height: 1.25rem;
}
.h-6 {
  height: 1.5rem;
}
.h-8 {
  height: 2rem;
}
.h-80 {
  height: 20rem;
}
.h-9 {
  height: 2.25rem;
}
.h-\[0px\] {
  height: 0;
}
.h-\[10px\] {
  height: 10px;
}
.h-\[150px\] {
  height: 150px;
}
.h-\[22px\] {
  height: 22px;
}
.h-\[24px\] {
  height: 24px;
}
.h-\[2px\] {
  height: 2px;
}
.h-\[35px\] {
  height: 35px;
}
.h-auto {
  height: auto;
}
.h-full {
  height: 100%;
}
.h-screen {
  height: 100vh;
}
.max-h-\[15rem\] {
  max-height: 15rem;
}
.max-h-\[25rem\] {
  max-height: 25rem;
}
.max-h-\[300px\] {
  max-height: 300px;
}
.max-h-\[4rem\] {
  max-height: 4rem;
}
.max-h-\[5rem\] {
  max-height: 5rem;
}
.min-h-1 {
  min-height: .25rem;
}
.min-h-\[2em\] {
  min-height: 2em;
}
.min-h-\[36px\] {
  min-height: 36px;
}
.min-h-\[60px\] {
  min-height: 60px;
}
.w-0 {
  width: 0;
}
.w-10 {
  width: 2.5rem;
}
.w-3 {
  width: .75rem;
}
.w-4 {
  width: 1rem;
}
.w-48 {
  width: 12rem;
}
.w-5 {
  width: 1.25rem;
}
.w-6 {
  width: 1.5rem;
}
.w-8 {
  width: 2rem;
}
.w-\[0px\] {
  width: 0;
}
.w-\[10px\] {
  width: 10px;
}
.w-\[22px\] {
  width: 22px;
}
.w-\[24px\] {
  width: 24px;
}
.w-\[300px\] {
  width: 300px;
}
.w-\[400px\] {
  width: 400px;
}
.w-\[500px\] {
  width: 500px;
}
.w-auto {
  width: auto;
}
.w-fit {
  width: -moz-fit-content;
  width: fit-content;
}
.w-full {
  width: 100%;
}
.w-max {
  width: -moz-max-content;
  width: max-content;
}
.w-px {
  width: 1px;
}
.min-w-0 {
  min-width: 0;
}
.min-w-\[2ch\] {
  min-width: 2ch;
}
.min-w-\[400px\] {
  min-width: 400px;
}
.min-w-\[40px\] {
  min-width: 40px;
}
.max-w-\[1440px\] {
  max-width: 1440px;
}
.max-w-\[200px\] {
  max-width: 200px;
}
.max-w-\[350px\] {
  max-width: 350px;
}
.max-w-\[400px\] {
  max-width: 400px;
}
.max-w-\[80vw\] {
  max-width: 80vw;
}
.max-w-\[90\%\] {
  max-width: 90%;
}
.max-w-full {
  max-width: 100%;
}
.max-w-screen-lg {
  max-width: 1024px;
}
.flex-1 {
  flex: 1 1 0%;
}
.flex-none {
  flex: none;
}
.flex-shrink-0,
.shrink-0 {
  flex-shrink: 0;
}
.flex-grow,
.grow {
  flex-grow: 1;
}
.grow-0 {
  flex-grow: 0;
}
.border-collapse {
  border-collapse: collapse;
}
.origin-top-left {
  transform-origin: top left;
}
.origin-top-right {
  transform-origin: top right;
}
.-translate-y-\[0\.1em\] {
  --tw-translate-y:-.1em;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-\[1px\],
.-translate-y-px {
  --tw-translate-y:-1px;
}
.-translate-y-\[1px\],
.-translate-y-px,
.translate-x-\[10px\] {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-\[10px\] {
  --tw-translate-x:10px;
}
.translate-y-2 {
  --tw-translate-y:.5rem;
}
.translate-y-2,
.translate-y-6 {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-y-6 {
  --tw-translate-y:1.5rem;
}
.scale-100 {
  --tw-scale-x:1;
  --tw-scale-y:1;
}
.scale-100,
.scale-95 {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.scale-95 {
  --tw-scale-x:.95;
  --tw-scale-y:.95;
}
.scale-x-100 {
  --tw-scale-x:1;
}
.scale-x-100,
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@keyframes load {
  0% {
    width: 0;
  }
  to {
    width: 50%;
  }
}
.animate-load {
  animation: load 2.5s ease-out;
}
@keyframes pulse {
  50% {
    opacity: .5;
  }
}
.animate-pulse {
  animation: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
}
@keyframes spin {
  to {
    transform: rotate(1turn);
  }
}
.animate-spin {
  animation: spin 1s linear infinite;
}
.cursor-help {
  cursor: help;
}
.cursor-not-allowed {
  cursor: not-allowed;
}
.cursor-pointer {
  cursor: pointer;
}
.select-none {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.resize-none {
  resize: none;
}
.resize {
  resize: both;
}
.list-none {
  list-style-type: none;
}
.appearance-none {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-10 {
  grid-template-columns: repeat(10, minmax(0, 1fr));
}
.grid-cols-11 {
  grid-template-columns: repeat(11, minmax(0, 1fr));
}
.grid-cols-12 {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.grid-cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.grid-cols-6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.grid-cols-7 {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.grid-cols-8 {
  grid-template-columns: repeat(8, minmax(0, 1fr));
}
.grid-cols-9 {
  grid-template-columns: repeat(9, minmax(0, 1fr));
}
.grid-cols-\[auto_1fr_auto\] {
  grid-template-columns: auto 1fr auto;
}
.grid-rows-\[3rem_1fr\] {
  grid-template-rows: 3rem 1fr;
}
.flex-row {
  flex-direction: row;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.flex-nowrap {
  flex-wrap: nowrap;
}
.items-center {
  align-items: center;
}
.items-baseline {
  align-items: baseline;
}
.items-stretch {
  align-items: stretch;
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.gap-0 {
  gap: 0;
}
.gap-0\.5 {
  gap: .125rem;
}
.gap-1 {
  gap: .25rem;
}
.gap-1\.5 {
  gap: .375rem;
}
.gap-2 {
  gap: .5rem;
}
.gap-2\.5 {
  gap: .625rem;
}
.gap-4 {
  gap: 1rem;
}
.gap-x-1 {
  -moz-column-gap: .25rem;
  column-gap: .25rem;
}
.gap-y-1 {
  row-gap: .25rem;
}
.gap-y-2 {
  row-gap: .5rem;
}
.space-x-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse:0;
  margin-right: calc(.25rem*var(--tw-space-x-reverse));
  margin-left: calc(.25rem*(1 - var(--tw-space-x-reverse)));
}
.space-x-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse:0;
  margin-right: calc(1rem*var(--tw-space-x-reverse));
  margin-left: calc(1rem*(1 - var(--tw-space-x-reverse)));
}
.space-y-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse:0;
  margin-top: calc(.25rem*(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(.25rem*var(--tw-space-y-reverse));
}
.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse:0;
  border-top-width: calc(1px*(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px*var(--tw-divide-y-reverse));
}
.divide-myst-border > :not([hidden]) ~ :not([hidden]) {
  border-color: var(--myst-color-border);
}
.self-start {
  align-self: flex-start;
}
.self-center {
  align-self: center;
}
.self-stretch {
  align-self: stretch;
}
.overflow-auto {
  overflow: auto;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-x-auto {
  overflow-x: auto;
}
.overflow-y-auto {
  overflow-y: auto;
}
.overflow-y-hidden {
  overflow-y: hidden;
}
.overflow-y-visible {
  overflow-y: visible;
}
.overflow-y-scroll {
  overflow-y: scroll;
}
.truncate {
  overflow: hidden;
  white-space: nowrap;
}
.text-ellipsis,
.truncate {
  text-overflow: ellipsis;
}
.whitespace-normal {
  white-space: normal;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.whitespace-pre-wrap {
  white-space: pre-wrap;
}
.break-words {
  overflow-wrap: break-word;
}
.rounded {
  border-radius: .25rem;
}
.rounded-full {
  border-radius: 9999px;
}
.rounded-lg {
  border-radius: .5rem;
}
.rounded-md {
  border-radius: .375rem;
}
.rounded-sm {
  border-radius: .125rem;
}
.rounded-b {
  border-bottom-right-radius: .25rem;
  border-bottom-left-radius: .25rem;
}
.rounded-b-\[10px\] {
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
}
.rounded-l-md {
  border-top-left-radius: .375rem;
  border-bottom-left-radius: .375rem;
}
.rounded-t {
  border-top-left-radius: .25rem;
  border-top-right-radius: .25rem;
}
.rounded-t-\[10px\] {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.border {
  border-width: 1px;
}
.border-2 {
  border-width: 2px;
}
.border-x {
  border-left-width: 1px;
  border-right-width: 1px;
}
.border-y {
  border-top-width: 1px;
}
.border-b,
.border-y {
  border-bottom-width: 1px;
}
.border-b-2 {
  border-bottom-width: 2px;
}
.border-l {
  border-left-width: 1px;
}
.border-l-2 {
  border-left-width: 2px;
}
.border-l-4 {
  border-left-width: 4px;
}
.border-r {
  border-right-width: 1px;
}
.border-t {
  border-top-width: 1px;
}
.border-t-0 {
  border-top-width: 0;
}
.border-solid {
  border-style: solid;
}
.border-dotted {
  border-style: dotted;
}
.border-\[var\(--border\)\] {
  border-color: var(--border);
}
.border-myst-accent-surface-border {
  border-color: var(--myst-color-accent-surface-border);
}
.border-myst-border {
  border-color: var(--myst-color-border);
}
.border-myst-border-strong {
  border-color: var(--myst-color-border-strong);
}
.border-myst-danger {
  border-color: var(--myst-color-danger);
}
.border-myst-error {
  border-color: var(--myst-color-error);
}
.border-myst-example {
  border-color: var(--myst-color-example);
}
.border-myst-focus-ring {
  border-color: var(--myst-color-focus-ring);
}
.border-myst-info {
  border-color: var(--myst-color-info);
}
.border-myst-proof {
  border-color: var(--myst-color-proof);
}
.border-myst-success {
  border-color: var(--myst-color-success);
}
.border-myst-theorem {
  border-color: var(--myst-color-theorem);
}
.border-myst-tip {
  border-color: var(--myst-color-tip);
}
.border-myst-warning {
  border-color: var(--myst-color-warning);
}
.border-white\/30 {
  border-color: #ffffff4d;
}
.border-b-myst-active {
  border-bottom-color: var(--myst-color-active);
}
.border-b-myst-border {
  border-bottom-color: var(--myst-color-border);
}
.border-l-myst-active {
  border-left-color: var(--myst-color-active);
}
.border-l-myst-border-strong {
  border-left-color: var(--myst-color-border-strong);
}
.border-l-myst-link-underline {
  border-left-color: var(--myst-color-link-underline);
}
.border-t-\[var\(--accent\)\] {
  border-top-color: var(--accent);
}
.border-t-white {
  --tw-border-opacity:1;
  border-top-color: rgb(255 255 255/var(--tw-border-opacity,1));
}
.bg-\[\#656c85cc\] {
  background-color: #656c85cc;
}
.bg-\[var\(--surface-2\)\] {
  background-color: var(--surface-2);
}
.bg-black {
  --tw-bg-opacity:1;
  background-color: rgb(0 0 0/var(--tw-bg-opacity,1));
}
.bg-gray-100\/80 {
  background-color: #f3f4f6cc;
}
.bg-gray-400 {
  --tw-bg-opacity:1;
  background-color: rgb(156 163 175/var(--tw-bg-opacity,1));
}
.bg-inherit {
  background-color: inherit;
}
.bg-myst-accent-surface {
  background-color: var(--myst-color-accent-surface);
}
.bg-myst-active-bg {
  background-color: var(--myst-color-active-bg);
}
.bg-myst-active-surface {
  background-color: var(--myst-color-active-surface);
}
.bg-myst-bg {
  background-color: var(--myst-color-bg);
}
.bg-myst-bg-secondary {
  background-color: var(--myst-color-bg-secondary);
}
.bg-myst-danger-bg {
  background-color: var(--myst-color-danger-bg);
}
.bg-myst-error {
  background-color: var(--myst-color-error);
}
.bg-myst-error-bg {
  background-color: var(--myst-color-error-bg);
}
.bg-myst-example-bg {
  background-color: var(--myst-color-example-bg);
}
.bg-myst-info-bg {
  background-color: var(--myst-color-info-bg);
}
.bg-myst-inverse-bg {
  background-color: var(--myst-color-inverse-bg);
}
.bg-myst-primary {
  background-color: var(--myst-color-primary);
}
.bg-myst-primary-hover {
  background-color: var(--myst-color-primary-hover);
}
.bg-myst-proof-bg {
  background-color: var(--myst-color-proof-bg);
}
.bg-myst-success-bg {
  background-color: var(--myst-color-success-bg);
}
.bg-myst-surface {
  background-color: var(--myst-color-surface);
}
.bg-myst-surface-hover {
  background-color: var(--myst-color-surface-hover);
}
.bg-myst-theorem-bg {
  background-color: var(--myst-color-theorem-bg);
}
.bg-myst-tip-bg {
  background-color: var(--myst-color-tip-bg);
}
.bg-myst-warning-bg {
  background-color: var(--myst-color-warning-bg);
}
.bg-orange-500 {
  --tw-bg-opacity:1;
  background-color: rgb(249 115 22/var(--tw-bg-opacity,1));
}
.bg-orange-700 {
  --tw-bg-opacity:1;
  background-color: rgb(194 65 12/var(--tw-bg-opacity,1));
}
.bg-red-500 {
  --tw-bg-opacity:1;
  background-color: rgb(239 68 68/var(--tw-bg-opacity,1));
}
.bg-red-800 {
  --tw-bg-opacity:1;
  background-color: rgb(153 27 27/var(--tw-bg-opacity,1));
}
.bg-slate-50\/50 {
  background-color: #f8fafc80;
}
.bg-slate-500 {
  --tw-bg-opacity:1;
  background-color: rgb(100 116 139/var(--tw-bg-opacity,1));
}
.bg-slate-800 {
  --tw-bg-opacity:1;
  background-color: rgb(30 41 59/var(--tw-bg-opacity,1));
}
.bg-stone-200\/10 {
  background-color: #e7e5e41a;
}
.bg-transparent {
  background-color: transparent;
}
.bg-white {
  --tw-bg-opacity:1;
  background-color: rgb(255 255 255/var(--tw-bg-opacity,1));
}
.bg-cover {
  background-size: cover;
}
.bg-top {
  background-position: top;
}
.bg-no-repeat {
  background-repeat: no-repeat;
}
.fill-green-600 {
  fill: #16a34a;
}
.fill-myst-bg {
  fill: var(--myst-color-bg);
}
.fill-myst-inverse-bg {
  fill: var(--myst-color-inverse-bg);
}
.fill-white {
  fill: #fff;
}
.stroke-myst-text-tertiary {
  stroke: var(--myst-color-text-tertiary);
}
.object-cover {
  -o-object-fit: cover;
  object-fit: cover;
}
.object-left {
  -o-object-position: left;
  object-position: left;
}
.object-top {
  -o-object-position: top;
  object-position: top;
}
.p-1 {
  padding: .25rem;
}
.p-2 {
  padding: .5rem;
}
.p-2\.5 {
  padding: .625rem;
}
.p-3 {
  padding: .75rem;
}
.p-4 {
  padding: 1rem;
}
.p-5 {
  padding: 1.25rem;
}
.p-6 {
  padding: 1.5rem;
}
.p-\[18\%\] {
  padding: 18%;
}
.px-0 {
  padding-left: 0;
  padding-right: 0;
}
.px-1 {
  padding-left: .25rem;
  padding-right: .25rem;
}
.px-1\.5 {
  padding-left: .375rem;
  padding-right: .375rem;
}
.px-2 {
  padding-left: .5rem;
  padding-right: .5rem;
}
.px-2\.5 {
  padding-left: .625rem;
  padding-right: .625rem;
}
.px-3 {
  padding-left: .75rem;
  padding-right: .75rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.px-\[15px\] {
  padding-left: 15px;
  padding-right: 15px;
}
.py-0\.5 {
  padding-top: .125rem;
  padding-bottom: .125rem;
}
.py-1 {
  padding-top: .25rem;
  padding-bottom: .25rem;
}
.py-1\.5 {
  padding-top: .375rem;
  padding-bottom: .375rem;
}
.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.py-2 {
  padding-top: .5rem;
  padding-bottom: .5rem;
}
.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.py-24 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}
.py-3 {
  padding-top: .75rem;
  padding-bottom: .75rem;
}
.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.pb-2 {
  padding-bottom: .5rem;
}
.pb-6 {
  padding-bottom: 1.5rem;
}
.pb-\[14px\] {
  padding-bottom: 14px;
}
.pb-\[1rem\] {
  padding-bottom: 1rem;
}
.pl-0 {
  padding-left: 0;
}
.pl-10 {
  padding-left: 2.5rem;
}
.pl-12 {
  padding-left: 3rem;
}
.pl-2 {
  padding-left: .5rem;
}
.pl-3 {
  padding-left: .75rem;
}
.pl-4 {
  padding-left: 1rem;
}
.pl-8 {
  padding-left: 2rem;
}
.pr-2 {
  padding-right: .5rem;
}
.pr-\[2px\] {
  padding-right: 2px;
}
.ps-10 {
  padding-inline-start: 2.5rem;
}
.ps-\[32px\] {
  padding-inline-start: 32px;
}
.pt-10 {
  padding-top: 2.5rem;
}
.pt-3 {
  padding-top: .75rem;
}
.pt-4 {
  padding-top: 1rem;
}
.pt-6 {
  padding-top: 1.5rem;
}
.pt-9 {
  padding-top: 2.25rem;
}
.pt-\[40px\] {
  padding-top: 40px;
}
.pt-\[80px\] {
  padding-top: 80px;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.align-top {
  vertical-align: top;
}
.align-middle {
  vertical-align: middle;
}
.font-mono {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    Liberation Mono,
    Courier New,
    monospace;
}
.text-5xl {
  font-size: 3rem;
  line-height: 1;
}
.text-\[13px\] {
  font-size: 13px;
}
.text-\[15px\] {
  font-size: 15px;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: .875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.text-xs {
  font-size: .75rem;
  line-height: 1rem;
}
.font-bold {
  font-weight: 700;
}
.font-extralight {
  font-weight: 200;
}
.font-light {
  font-weight: 300;
}
.font-medium {
  font-weight: 500;
}
.font-normal {
  font-weight: 400;
}
.font-semibold {
  font-weight: 600;
}
.font-thin {
  font-weight: 100;
}
.uppercase {
  text-transform: uppercase;
}
.capitalize {
  text-transform: capitalize;
}
.italic {
  font-style: italic;
}
.tabular-nums {
  --tw-numeric-spacing:tabular-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}
.leading-3 {
  line-height: .75rem;
}
.leading-6 {
  line-height: 1.5rem;
}
.leading-\[0\] {
  line-height: 0;
}
.leading-\[19px\] {
  line-height: 19px;
}
.leading-\[35px\] {
  line-height: 35px;
}
.leading-none {
  line-height: 1;
}
.tracking-tight {
  letter-spacing: -.025em;
}
.tracking-wider {
  letter-spacing: .05em;
}
.text-\[var\(--green\)\] {
  color: var(--green);
}
.text-\[var\(--red\)\] {
  color: var(--red);
}
.text-\[var\(--text-3\)\] {
  color: var(--text-3);
}
.text-gray-200 {
  --tw-text-opacity:1;
  color: rgb(229 231 235/var(--tw-text-opacity,1));
}
.text-green-700 {
  --tw-text-opacity:1;
  color: rgb(21 128 61/var(--tw-text-opacity,1));
}
.text-inherit {
  color: inherit;
}
.text-myst-accent-surface-text {
  color: var(--myst-color-accent-surface-text);
}
.text-myst-accent-text {
  color: var(--myst-color-accent-text);
}
.text-myst-active {
  color: var(--myst-color-active);
}
.text-myst-danger-text {
  color: var(--myst-color-danger-text);
}
.text-myst-error {
  color: var(--myst-color-error);
}
.text-myst-error-text {
  color: var(--myst-color-error-text);
}
.text-myst-example-text {
  color: var(--myst-color-example-text);
}
.text-myst-info-text {
  color: var(--myst-color-info-text);
}
.text-myst-inverse-text {
  color: var(--myst-color-inverse-text);
}
.text-myst-link-hover {
  color: var(--myst-color-link-hover);
}
.text-myst-link-underline {
  color: var(--myst-color-link-underline);
}
.text-myst-proof-text {
  color: var(--myst-color-proof-text);
}
.text-myst-success {
  color: var(--myst-color-success);
}
.text-myst-success-text {
  color: var(--myst-color-success-text);
}
.text-myst-text {
  color: var(--myst-color-text);
}
.text-myst-text-secondary {
  color: var(--myst-color-text-secondary);
}
.text-myst-text-tertiary {
  color: var(--myst-color-text-tertiary);
}
.text-myst-theorem-text {
  color: var(--myst-color-theorem-text);
}
.text-myst-tip-text {
  color: var(--myst-color-tip-text);
}
.text-myst-warning-text {
  color: var(--myst-color-warning-text);
}
.text-purple-700 {
  --tw-text-opacity:1;
  color: rgb(126 34 206/var(--tw-text-opacity,1));
}
.text-red-700 {
  --tw-text-opacity:1;
  color: rgb(185 28 28/var(--tw-text-opacity,1));
}
.text-slate-500 {
  --tw-text-opacity:1;
  color: rgb(100 116 139/var(--tw-text-opacity,1));
}
.text-white {
  --tw-text-opacity:1;
  color: rgb(255 255 255/var(--tw-text-opacity,1));
}
.underline {
  text-decoration-line: underline;
}
.no-underline {
  text-decoration-line: none;
}
.placeholder-myst-text-tertiary::-moz-placeholder {
  color: var(--myst-color-text-tertiary);
}
.placeholder-myst-text-tertiary::placeholder {
  color: var(--myst-color-text-tertiary);
}
.opacity-0 {
  opacity: 0;
}
.opacity-10 {
  opacity: .1;
}
.opacity-100 {
  opacity: 1;
}
.opacity-50 {
  opacity: .5;
}
.opacity-60 {
  opacity: .6;
}
.opacity-70 {
  opacity: .7;
}
.opacity-80 {
  opacity: .8;
}
.opacity-90 {
  opacity: .9;
}
.shadow {
  --tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);
  --tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);
}
.shadow,
.shadow-2xl {
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.shadow-2xl {
  --tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);
  --tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);
}
.shadow-\[0_0_0_1px\] {
  --tw-shadow:0 0 0 1px;
  --tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.shadow-\[0_10px_38px_-10px_hsla\(206\,22\%\,7\%\,\.35\)\,0_10px_20px_-15px_hsla\(206\,22\%\,7\%\,\.2\)\] {
  --tw-shadow:0 10px 38px -10px rgba(14,18,22,.35),0 10px 20px -15px rgba(14,18,22,.2);
  --tw-shadow-colored:0 10px 38px -10px var(--tw-shadow-color),0 10px 20px -15px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.shadow-\[0px_2px_0px_0px_rgba\(0\,0\,0\,0\.08\)\] {
  --tw-shadow:0px 2px 0px 0px rgba(0,0,0,.08);
  --tw-shadow-colored:0px 2px 0px 0px var(--tw-shadow-color);
}
.shadow-\[0px_2px_0px_0px_rgba\(0\,0\,0\,0\.08\)\],
.shadow-inner {
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.shadow-inner {
  --tw-shadow:inset 0 2px 4px 0 rgba(0,0,0,.05);
  --tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);
}
.shadow-lg {
  --tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);
  --tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);
}
.shadow-lg,
.shadow-md {
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.shadow-md {
  --tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);
  --tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);
}
.shadow-sm {
  --tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);
  --tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.shadow-myst-border-strong {
  --tw-shadow-color:var(--myst-color-border-strong);
  --tw-shadow:var(--tw-shadow-colored);
}
.outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.\!outline {
  outline-style: solid !important;
}
.outline {
  outline-style: solid;
}
.outline-2 {
  outline-width: 2px;
}
.outline-myst-focus-outline {
  outline-color: var(--myst-color-focus-outline);
}
.ring-1 {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow,0 0 #0000);
}
.ring-black {
  --tw-ring-opacity:1;
  --tw-ring-color:rgb(0 0 0/var(--tw-ring-opacity,1));
}
.ring-myst-border {
  --tw-ring-color:var(--myst-color-border);
}
.ring-myst-focus-ring {
  --tw-ring-color:var(--myst-color-focus-ring);
}
.ring-opacity-5 {
  --tw-ring-opacity:.05;
}
.blur {
  --tw-blur:blur(8px);
}
.blur,
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.backdrop-blur {
  --tw-backdrop-blur:blur(8px);
}
.backdrop-blur,
.backdrop-blur-sm {
  -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.backdrop-blur-sm {
  --tw-backdrop-blur:blur(4px);
}
.transition {
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke,
    opacity,
    box-shadow,
    transform,
    filter,
    -webkit-backdrop-filter;
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke,
    opacity,
    box-shadow,
    transform,
    filter,
    backdrop-filter;
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke,
    opacity,
    box-shadow,
    transform,
    filter,
    backdrop-filter,
    -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s;
}
.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s;
}
.transition-colors {
  transition-property:
    color,
    background-color,
    border-color,
    text-decoration-color,
    fill,
    stroke;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s;
}
.transition-opacity {
  transition-property: opacity;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s;
}
.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  transition-duration: .15s;
}
.duration-100 {
  transition-duration: .1s;
}
.duration-200 {
  transition-duration: .2s;
}
.duration-300 {
  transition-duration: .3s;
}
.duration-700 {
  transition-duration: .7s;
}
.duration-75 {
  transition-duration: 75ms;
}
.ease-in {
  transition-timing-function: cubic-bezier(.4, 0, 1, 1);
}
.ease-in-out {
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}
.ease-out {
  transition-timing-function: cubic-bezier(0, 0, .2, 1);
}
.smallcaps {
  font-variant: small-caps;
}
.myst-bg-translucent {
  background-color: var(--myst-color-bg);
  background-color: rgb(from var(--myst-color-bg) r g b/.8);
}
.myst-bg-translucent-strong {
  background-color: var(--myst-color-bg);
  background-color: rgb(from var(--myst-color-bg) r g b/.95);
}
details > summary {
  list-style: none;
  transition: margin .15s ease-out;
}
details > summary::-webkit-details-marker,
details > summary::marker {
  display: none;
}
details[open] > summary .details-toggle {
  transform: rotate(90deg) translate(-5px) translateY(-5px);
}
details[open] > summary {
  margin-bottom: 10px;
}
details .details-body {
  overflow: auto;
}
details[open] .details-body {
  margin-top: -10px;
}
cite {
  font-style: normal;
}
.cite-group.parenthetical > :after {
  content: ";\a0";
}
.cite-group.narrative > :after,
.xref-group > :after {
  content: ",\a0";
}
.cite-group > :last-of-type:after,
.xref-group > :last-of-type:after {
  content: "";
}
.cite-group.parenthetical:before {
  content: var(--cite-group-open,"(");
}
.cite-group.parenthetical:after {
  content: var(--cite-group-close,")");
}
.xref-group.parenthetical:before {
  content: var(--xref-group-open,"(");
}
.xref-group.parenthetical:after {
  content: var(--xref-group-close,")");
}
figure.fig-quote figcaption {
  text-align: right;
}
figure.fig-quote figcaption > p:before {
  content: "\2014";
  padding-right: .5em;
}
figure.fig-quote.pull-quote > blockquote {
  font-size: 1.4rem;
}
figure.fig-code > div {
  margin: 0;
}
figure.subcontainer {
  margin-bottom: 0;
}
figure.subcontainer figcaption {
  margin-top: .25em;
  text-align: center;
}
figure figcaption > p,
figure img {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.text-spacer:after {
  content: "\a0\2219\a0";
}
.text-comma:after {
  content: ",\a0\a0";
}
pre > code > span[data-line-number] {
  display: block;
  position: relative;
  line-height: 1.4rem;
  padding-right: 1rem;
}
pre > code > span[data-highlight=true]:after {
  content: " ";
  position: absolute;
  right: -.8rem;
  top: 0;
  width: calc(100% + 1.6rem);
  opacity: .1;
  pointer-events: none;
  background: #5ca5ee;
}
pre > code > span > .linenumber {
  color: gray;
}
pre > code > span[data-highlight=true] > .linenumber {
  color: #5ca5ee;
}
.dark .hljs {
  background: #1e1e1e !important;
  color: #dcdcdc;
}
.dark .hljs-keyword,
.dark .hljs-literal,
.dark .hljs-name,
.dark .hljs-symbol {
  color: #569cd6;
}
.dark .hljs-link {
  color: #569cd6;
  text-decoration: underline;
}
.dark .hljs-built_in,
.dark .hljs-type {
  color: #4ec9b0;
}
.dark .hljs-class,
.dark .hljs-number {
  color: #b8d7a3;
}
.dark .hljs-meta .hljs-string,
.dark .hljs-string {
  color: #d69d85;
}
.dark .hljs-regexp,
.dark .hljs-template-tag {
  color: #9a5334;
}
.dark .hljs-formula,
.dark .hljs-function,
.dark .hljs-params,
.dark .hljs-subst,
.dark .hljs-title {
  color: #dcdcdc;
}
.dark .hljs-comment,
.dark .hljs-quote {
  color: #57a64a;
  font-style: italic;
}
.dark .hljs-doctag {
  color: #608b4e;
}
.dark .hljs-meta,
.dark .hljs-meta .hljs-keyword,
.dark .hljs-tag {
  color: #9b9b9b;
}
.dark .hljs-template-variable,
.dark .hljs-variable {
  color: #bd63c5;
}
.dark .hljs-attr,
.dark .hljs-attribute {
  color: #9cdcfe;
}
.dark .hljs-section {
  color: gold;
}
.dark .hljs-emphasis {
  font-style: italic;
}
.dark .hljs-strong {
  font-weight: 700;
}
.dark .hljs-bullet,
.dark .hljs-selector-attr,
.dark .hljs-selector-class,
.dark .hljs-selector-id,
.dark .hljs-selector-pseudo,
.dark .hljs-selector-tag {
  color: #d7ba7d;
}
.dark .hljs-addition {
  background-color: #144212;
  display: inline-block;
  width: 100%;
}
.dark .hljs-deletion {
  background-color: #600;
  display: inline-block;
  width: 100%;
}
.dark .hljs-code {
  color: unset;
}
.xml .hljs-meta {
  color: silver;
  background: transparent;
}
.hljs-comment,
.hljs-quote {
  color: #007400;
}
.hljs-attribute,
.hljs-keyword,
.hljs-literal,
.hljs-name,
.hljs-selector-tag,
.hljs-tag {
  color: #aa0d91;
}
.hljs-template-variable,
.hljs-variable {
  color: #3f6e74;
}
.hljs-code,
.hljs-meta .hljs-string,
.hljs-string {
  color: #c41a16;
}
.hljs-link,
.hljs-regexp {
  color: #0e0eff;
}
.hljs-bullet,
.hljs-number,
.hljs-symbol,
.hljs-title {
  color: #1c00cf;
}
.hljs-meta,
.hljs-section {
  color: #643820;
}
.hljs-built_in,
.hljs-class .hljs-title,
.hljs-params,
.hljs-title.class_,
.hljs-type {
  color: #5c2699;
}
.hljs-attr {
  color: #836c28;
}
.hljs-subst {
  color: #000;
}
.hljs-formula {
  background-color: #eee;
  font-style: italic;
}
.hljs-addition {
  background-color: #baeeba;
}
.hljs-deletion {
  background-color: #ffc8bd;
}
.hljs-selector-class,
.hljs-selector-id {
  color: #9b703f;
}
.hljs-doctag,
.hljs-strong {
  font-weight: 700;
}
.hljs-emphasis {
  font-style: italic;
}
.katex-display {
  margin: 0 !important;
}
.katex .eqn-num {
  opacity: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  pointer-events: none;
}
:where(.jupyter-error, .jupyter-output) span[class*=ansi-] {
  color: var(--bg-color,var(--fg-color));
  background-color: unset;
}
:where(.jupyter-error, .jupyter-output) {
  --ansi-black:#000;
  --ansi-red:#b00;
  --ansi-green:#0b0;
  --ansi-yellow:#bb0;
  --ansi-blue:#00b;
  --ansi-magenta:#b0b;
  --ansi-cyan:#0bb;
  --ansi-white:#fff;
  --ansi-bright-black:var(--ansi-black);
  --ansi-bright-red:var(--ansi-red);
  --ansi-bright-green:var(--ansi-green);
  --ansi-bright-yellow:var(--ansi-yellow);
  --ansi-bright-blue:var(--ansi-blue);
  --ansi-bright-magenta:var(--ansi-magenta);
  --ansi-bright-cyan:var(--ansi-cyan);
  --ansi-bright-white:var(--ansi-white);
  --ansi-palette-16:var(--ansi-black);
  --ansi-palette-17:var(--ansi-black);
  --ansi-palette-18:var(--ansi-blue);
  --ansi-palette-19:var(--ansi-blue);
  --ansi-palette-20:var(--ansi-blue);
  --ansi-palette-21:var(--ansi-blue);
  --ansi-palette-22:var(--ansi-black);
  --ansi-palette-23:var(--ansi-black);
  --ansi-palette-24:var(--ansi-cyan);
  --ansi-palette-25:var(--ansi-blue);
  --ansi-palette-26:var(--ansi-blue);
  --ansi-palette-27:var(--ansi-blue);
  --ansi-palette-28:var(--ansi-green);
  --ansi-palette-29:var(--ansi-green);
  --ansi-palette-30:var(--ansi-cyan);
  --ansi-palette-31:var(--ansi-cyan);
  --ansi-palette-32:var(--ansi-cyan);
  --ansi-palette-33:var(--ansi-cyan);
  --ansi-palette-34:var(--ansi-green);
  --ansi-palette-35:var(--ansi-green);
  --ansi-palette-36:var(--ansi-cyan);
  --ansi-palette-37:var(--ansi-cyan);
  --ansi-palette-38:var(--ansi-cyan);
  --ansi-palette-39:var(--ansi-cyan);
  --ansi-palette-40:var(--ansi-green);
  --ansi-palette-41:var(--ansi-green);
  --ansi-palette-42:var(--ansi-cyan);
  --ansi-palette-43:var(--ansi-cyan);
  --ansi-palette-44:var(--ansi-cyan);
  --ansi-palette-45:var(--ansi-cyan);
  --ansi-palette-46:var(--ansi-green);
  --ansi-palette-47:var(--ansi-green);
  --ansi-palette-48:var(--ansi-cyan);
  --ansi-palette-49:var(--ansi-cyan);
  --ansi-palette-50:var(--ansi-cyan);
  --ansi-palette-51:var(--ansi-cyan);
  --ansi-palette-52:var(--ansi-black);
  --ansi-palette-53:var(--ansi-black);
  --ansi-palette-54:var(--ansi-magenta);
  --ansi-palette-55:var(--ansi-blue);
  --ansi-palette-56:var(--ansi-blue);
  --ansi-palette-57:var(--ansi-blue);
  --ansi-palette-58:var(--ansi-black);
  --ansi-palette-59:var(--ansi-black);
  --ansi-palette-60:var(--ansi-magenta);
  --ansi-palette-61:var(--ansi-blue);
  --ansi-palette-62:var(--ansi-blue);
  --ansi-palette-63:var(--ansi-blue);
  --ansi-palette-64:var(--ansi-green);
  --ansi-palette-65:var(--ansi-green);
  --ansi-palette-66:var(--ansi-cyan);
  --ansi-palette-67:var(--ansi-cyan);
  --ansi-palette-68:var(--ansi-cyan);
  --ansi-palette-69:var(--ansi-cyan);
  --ansi-palette-70:var(--ansi-green);
  --ansi-palette-71:var(--ansi-green);
  --ansi-palette-72:var(--ansi-cyan);
  --ansi-palette-73:var(--ansi-cyan);
  --ansi-palette-74:var(--ansi-cyan);
  --ansi-palette-75:var(--ansi-cyan);
  --ansi-palette-76:var(--ansi-green);
  --ansi-palette-77:var(--ansi-green);
  --ansi-palette-78:var(--ansi-cyan);
  --ansi-palette-79:var(--ansi-cyan);
  --ansi-palette-80:var(--ansi-cyan);
  --ansi-palette-81:var(--ansi-cyan);
  --ansi-palette-82:var(--ansi-green);
  --ansi-palette-83:var(--ansi-green);
  --ansi-palette-84:var(--ansi-cyan);
  --ansi-palette-85:var(--ansi-cyan);
  --ansi-palette-86:var(--ansi-cyan);
  --ansi-palette-87:var(--ansi-cyan);
  --ansi-palette-88:var(--ansi-red);
  --ansi-palette-89:var(--ansi-red);
  --ansi-palette-90:var(--ansi-magenta);
  --ansi-palette-91:var(--ansi-magenta);
  --ansi-palette-92:var(--ansi-magenta);
  --ansi-palette-93:var(--ansi-magenta);
  --ansi-palette-94:var(--ansi-red);
  --ansi-palette-95:var(--ansi-red);
  --ansi-palette-96:var(--ansi-magenta);
  --ansi-palette-97:var(--ansi-magenta);
  --ansi-palette-98:var(--ansi-magenta);
  --ansi-palette-99:var(--ansi-magenta);
  --ansi-palette-100:var(--ansi-yellow);
  --ansi-palette-101:var(--ansi-yellow);
  --ansi-palette-102:var(--ansi-white);
  --ansi-palette-103:var(--ansi-white);
  --ansi-palette-104:var(--ansi-white);
  --ansi-palette-105:var(--ansi-white);
  --ansi-palette-106:var(--ansi-yellow);
  --ansi-palette-107:var(--ansi-yellow);
  --ansi-palette-108:var(--ansi-white);
  --ansi-palette-109:var(--ansi-white);
  --ansi-palette-110:var(--ansi-white);
  --ansi-palette-111:var(--ansi-white);
  --ansi-palette-112:var(--ansi-yellow);
  --ansi-palette-113:var(--ansi-yellow);
  --ansi-palette-114:var(--ansi-white);
  --ansi-palette-115:var(--ansi-white);
  --ansi-palette-116:var(--ansi-white);
  --ansi-palette-117:var(--ansi-white);
  --ansi-palette-118:var(--ansi-yellow);
  --ansi-palette-119:var(--ansi-yellow);
  --ansi-palette-120:var(--ansi-white);
  --ansi-palette-121:var(--ansi-white);
  --ansi-palette-122:var(--ansi-white);
  --ansi-palette-123:var(--ansi-white);
  --ansi-palette-124:var(--ansi-red);
  --ansi-palette-125:var(--ansi-red);
  --ansi-palette-126:var(--ansi-magenta);
  --ansi-palette-127:var(--ansi-magenta);
  --ansi-palette-128:var(--ansi-magenta);
  --ansi-palette-129:var(--ansi-magenta);
  --ansi-palette-130:var(--ansi-red);
  --ansi-palette-131:var(--ansi-red);
  --ansi-palette-132:var(--ansi-magenta);
  --ansi-palette-133:var(--ansi-magenta);
  --ansi-palette-134:var(--ansi-magenta);
  --ansi-palette-135:var(--ansi-magenta);
  --ansi-palette-136:var(--ansi-yellow);
  --ansi-palette-137:var(--ansi-yellow);
  --ansi-palette-138:var(--ansi-white);
  --ansi-palette-139:var(--ansi-white);
  --ansi-palette-140:var(--ansi-white);
  --ansi-palette-141:var(--ansi-white);
  --ansi-palette-142:var(--ansi-yellow);
  --ansi-palette-143:var(--ansi-yellow);
  --ansi-palette-144:var(--ansi-white);
  --ansi-palette-145:var(--ansi-white);
  --ansi-palette-146:var(--ansi-white);
  --ansi-palette-147:var(--ansi-white);
  --ansi-palette-148:var(--ansi-yellow);
  --ansi-palette-149:var(--ansi-yellow);
  --ansi-palette-150:var(--ansi-white);
  --ansi-palette-151:var(--ansi-white);
  --ansi-palette-152:var(--ansi-white);
  --ansi-palette-153:var(--ansi-white);
  --ansi-palette-154:var(--ansi-yellow);
  --ansi-palette-155:var(--ansi-yellow);
  --ansi-palette-156:var(--ansi-white);
  --ansi-palette-157:var(--ansi-white);
  --ansi-palette-158:var(--ansi-white);
  --ansi-palette-159:var(--ansi-white);
  --ansi-palette-160:var(--ansi-red);
  --ansi-palette-161:var(--ansi-red);
  --ansi-palette-162:var(--ansi-magenta);
  --ansi-palette-163:var(--ansi-magenta);
  --ansi-palette-164:var(--ansi-magenta);
  --ansi-palette-165:var(--ansi-magenta);
  --ansi-palette-166:var(--ansi-red);
  --ansi-palette-167:var(--ansi-red);
  --ansi-palette-168:var(--ansi-magenta);
  --ansi-palette-169:var(--ansi-magenta);
  --ansi-palette-170:var(--ansi-magenta);
  --ansi-palette-171:var(--ansi-magenta);
  --ansi-palette-172:var(--ansi-yellow);
  --ansi-palette-173:var(--ansi-yellow);
  --ansi-palette-174:var(--ansi-white);
  --ansi-palette-175:var(--ansi-white);
  --ansi-palette-176:var(--ansi-white);
  --ansi-palette-177:var(--ansi-white);
  --ansi-palette-178:var(--ansi-yellow);
  --ansi-palette-179:var(--ansi-yellow);
  --ansi-palette-180:var(--ansi-white);
  --ansi-palette-181:var(--ansi-white);
  --ansi-palette-182:var(--ansi-white);
  --ansi-palette-183:var(--ansi-white);
  --ansi-palette-184:var(--ansi-yellow);
  --ansi-palette-185:var(--ansi-yellow);
  --ansi-palette-186:var(--ansi-white);
  --ansi-palette-187:var(--ansi-white);
  --ansi-palette-188:var(--ansi-white);
  --ansi-palette-189:var(--ansi-white);
  --ansi-palette-190:var(--ansi-yellow);
  --ansi-palette-191:var(--ansi-yellow);
  --ansi-palette-192:var(--ansi-white);
  --ansi-palette-193:var(--ansi-white);
  --ansi-palette-194:var(--ansi-white);
  --ansi-palette-195:var(--ansi-white);
  --ansi-palette-196:var(--ansi-red);
  --ansi-palette-197:var(--ansi-red);
  --ansi-palette-198:var(--ansi-magenta);
  --ansi-palette-199:var(--ansi-magenta);
  --ansi-palette-200:var(--ansi-magenta);
  --ansi-palette-201:var(--ansi-magenta);
  --ansi-palette-202:var(--ansi-red);
  --ansi-palette-203:var(--ansi-red);
  --ansi-palette-204:var(--ansi-magenta);
  --ansi-palette-205:var(--ansi-magenta);
  --ansi-palette-206:var(--ansi-magenta);
  --ansi-palette-207:var(--ansi-magenta);
  --ansi-palette-208:var(--ansi-yellow);
  --ansi-palette-209:var(--ansi-yellow);
  --ansi-palette-210:var(--ansi-white);
  --ansi-palette-211:var(--ansi-white);
  --ansi-palette-212:var(--ansi-white);
  --ansi-palette-213:var(--ansi-white);
  --ansi-palette-214:var(--ansi-yellow);
  --ansi-palette-215:var(--ansi-yellow);
  --ansi-palette-216:var(--ansi-white);
  --ansi-palette-217:var(--ansi-white);
  --ansi-palette-218:var(--ansi-white);
  --ansi-palette-219:var(--ansi-white);
  --ansi-palette-220:var(--ansi-yellow);
  --ansi-palette-221:var(--ansi-yellow);
  --ansi-palette-222:var(--ansi-white);
  --ansi-palette-223:var(--ansi-white);
  --ansi-palette-224:var(--ansi-white);
  --ansi-palette-225:var(--ansi-white);
  --ansi-palette-226:var(--ansi-yellow);
  --ansi-palette-227:var(--ansi-yellow);
  --ansi-palette-228:var(--ansi-white);
  --ansi-palette-229:var(--ansi-white);
  --ansi-palette-230:var(--ansi-white);
  --ansi-palette-231:var(--ansi-white);
  --ansi-palette-232:var(--ansi-black);
  --ansi-palette-233:var(--ansi-black);
  --ansi-palette-234:var(--ansi-black);
  --ansi-palette-235:var(--ansi-black);
  --ansi-palette-236:var(--ansi-black);
  --ansi-palette-237:var(--ansi-black);
  --ansi-palette-238:var(--ansi-black);
  --ansi-palette-239:var(--ansi-black);
  --ansi-palette-240:var(--ansi-black);
  --ansi-palette-241:var(--ansi-black);
  --ansi-palette-242:var(--ansi-yellow);
  --ansi-palette-243:var(--ansi-yellow);
  --ansi-palette-244:var(--ansi-yellow);
  --ansi-palette-245:var(--ansi-white);
  --ansi-palette-246:var(--ansi-white);
  --ansi-palette-247:var(--ansi-white);
  --ansi-palette-248:var(--ansi-white);
  --ansi-palette-249:var(--ansi-white);
  --ansi-palette-250:var(--ansi-white);
  --ansi-palette-251:var(--ansi-white);
  --ansi-palette-252:var(--ansi-white);
  --ansi-palette-253:var(--ansi-white);
  --ansi-palette-254:var(--ansi-white);
  --ansi-palette-255:var(--ansi-white);
}
.ansi-bold {
  font-weight: 700;
}
.ansi-italic {
  font-style: italic;
}
.ansi-strikethrough {
  text-decoration-line: line-through;
}
.ansi-underline {
  text-decoration-line: underline;
}
.ansi-hidden {
  visibility: hidden;
}
:where(.full-color-error .jupyter-error, .full-color-output .jupyter-output) span.ansi-dim {
  opacity: .5;
}
:where(.full-color-error .jupyter-error, .full-color-output .jupyter-output) span[class*=ansi-] {
  color: var(--fg-color);
  background-color: var(--bg-color);
}
:where(.full-color-error .jupyter-error, .full-color-output .jupyter-output) {
  --ansi-black:#000;
  --ansi-red:#b00;
  --ansi-green:#0b0;
  --ansi-yellow:#bb0;
  --ansi-blue:#00b;
  --ansi-magenta:#b0b;
  --ansi-cyan:#0bb;
  --ansi-white:#fff;
  --ansi-bright-black:#555;
  --ansi-bright-red:#f55;
  --ansi-bright-green:#0f0;
  --ansi-bright-yellow:#ff5;
  --ansi-bright-blue:#55f;
  --ansi-bright-magenta:#f5f;
  --ansi-bright-cyan:#5ff;
  --ansi-bright-white:#fff;
  --ansi-palette-16:#000;
  --ansi-palette-17:#00005f;
  --ansi-palette-18:#000087;
  --ansi-palette-19:#0000af;
  --ansi-palette-20:#0000d7;
  --ansi-palette-21:#00f;
  --ansi-palette-22:#005f00;
  --ansi-palette-23:#005f5f;
  --ansi-palette-24:#005f87;
  --ansi-palette-25:#005faf;
  --ansi-palette-26:#005fd7;
  --ansi-palette-27:#005fff;
  --ansi-palette-28:#008700;
  --ansi-palette-29:#00875f;
  --ansi-palette-30:#008787;
  --ansi-palette-31:#0087af;
  --ansi-palette-32:#0087d7;
  --ansi-palette-33:#0087ff;
  --ansi-palette-34:#00af00;
  --ansi-palette-35:#00af5f;
  --ansi-palette-36:#00af87;
  --ansi-palette-37:#00afaf;
  --ansi-palette-38:#00afd7;
  --ansi-palette-39:#00afff;
  --ansi-palette-40:#00d700;
  --ansi-palette-41:#00d75f;
  --ansi-palette-42:#00d787;
  --ansi-palette-43:#00d7af;
  --ansi-palette-44:#00d7d7;
  --ansi-palette-45:#00d7ff;
  --ansi-palette-46:#0f0;
  --ansi-palette-47:#00ff5f;
  --ansi-palette-48:#00ff87;
  --ansi-palette-49:#00ffaf;
  --ansi-palette-50:#00ffd7;
  --ansi-palette-51:#0ff;
  --ansi-palette-52:#5f0000;
  --ansi-palette-53:#5f005f;
  --ansi-palette-54:#5f0087;
  --ansi-palette-55:#5f00af;
  --ansi-palette-56:#5f00d7;
  --ansi-palette-57:#5f00ff;
  --ansi-palette-58:#5f5f00;
  --ansi-palette-59:#5f5f5f;
  --ansi-palette-60:#5f5f87;
  --ansi-palette-61:#5f5faf;
  --ansi-palette-62:#5f5fd7;
  --ansi-palette-63:#5f5fff;
  --ansi-palette-64:#5f8700;
  --ansi-palette-65:#5f875f;
  --ansi-palette-66:#5f8787;
  --ansi-palette-67:#5f87af;
  --ansi-palette-68:#5f87d7;
  --ansi-palette-69:#5f87ff;
  --ansi-palette-70:#5faf00;
  --ansi-palette-71:#5faf5f;
  --ansi-palette-72:#5faf87;
  --ansi-palette-73:#5fafaf;
  --ansi-palette-74:#5fafd7;
  --ansi-palette-75:#5fafff;
  --ansi-palette-76:#5fd700;
  --ansi-palette-77:#5fd75f;
  --ansi-palette-78:#5fd787;
  --ansi-palette-79:#5fd7af;
  --ansi-palette-80:#5fd7d7;
  --ansi-palette-81:#5fd7ff;
  --ansi-palette-82:#5fff00;
  --ansi-palette-83:#5fff5f;
  --ansi-palette-84:#5fff87;
  --ansi-palette-85:#5fffaf;
  --ansi-palette-86:#5fffd7;
  --ansi-palette-87:#5fffff;
  --ansi-palette-88:#870000;
  --ansi-palette-89:#87005f;
  --ansi-palette-90:#870087;
  --ansi-palette-91:#8700af;
  --ansi-palette-92:#8700d7;
  --ansi-palette-93:#8700ff;
  --ansi-palette-94:#875f00;
  --ansi-palette-95:#875f5f;
  --ansi-palette-96:#875f87;
  --ansi-palette-97:#875faf;
  --ansi-palette-98:#875fd7;
  --ansi-palette-99:#875fff;
  --ansi-palette-100:#878700;
  --ansi-palette-101:#87875f;
  --ansi-palette-102:#878787;
  --ansi-palette-103:#8787af;
  --ansi-palette-104:#8787d7;
  --ansi-palette-105:#8787ff;
  --ansi-palette-106:#87af00;
  --ansi-palette-107:#87af5f;
  --ansi-palette-108:#87af87;
  --ansi-palette-109:#87afaf;
  --ansi-palette-110:#87afd7;
  --ansi-palette-111:#87afff;
  --ansi-palette-112:#87d700;
  --ansi-palette-113:#87d75f;
  --ansi-palette-114:#87d787;
  --ansi-palette-115:#87d7af;
  --ansi-palette-116:#87d7d7;
  --ansi-palette-117:#87d7ff;
  --ansi-palette-118:#87ff00;
  --ansi-palette-119:#87ff5f;
  --ansi-palette-120:#87ff87;
  --ansi-palette-121:#87ffaf;
  --ansi-palette-122:#87ffd7;
  --ansi-palette-123:#87ffff;
  --ansi-palette-124:#af0000;
  --ansi-palette-125:#af005f;
  --ansi-palette-126:#af0087;
  --ansi-palette-127:#af00af;
  --ansi-palette-128:#af00d7;
  --ansi-palette-129:#af00ff;
  --ansi-palette-130:#af5f00;
  --ansi-palette-131:#af5f5f;
  --ansi-palette-132:#af5f87;
  --ansi-palette-133:#af5faf;
  --ansi-palette-134:#af5fd7;
  --ansi-palette-135:#af5fff;
  --ansi-palette-136:#af8700;
  --ansi-palette-137:#af875f;
  --ansi-palette-138:#af8787;
  --ansi-palette-139:#af87af;
  --ansi-palette-140:#af87d7;
  --ansi-palette-141:#af87ff;
  --ansi-palette-142:#afaf00;
  --ansi-palette-143:#afaf5f;
  --ansi-palette-144:#afaf87;
  --ansi-palette-145:#afafaf;
  --ansi-palette-146:#afafd7;
  --ansi-palette-147:#afafff;
  --ansi-palette-148:#afd700;
  --ansi-palette-149:#afd75f;
  --ansi-palette-150:#afd787;
  --ansi-palette-151:#afd7af;
  --ansi-palette-152:#afd7d7;
  --ansi-palette-153:#afd7ff;
  --ansi-palette-154:#afff00;
  --ansi-palette-155:#afff5f;
  --ansi-palette-156:#afff87;
  --ansi-palette-157:#afffaf;
  --ansi-palette-158:#afffd7;
  --ansi-palette-159:#afffff;
  --ansi-palette-160:#d70000;
  --ansi-palette-161:#d7005f;
  --ansi-palette-162:#d70087;
  --ansi-palette-163:#d700af;
  --ansi-palette-164:#d700d7;
  --ansi-palette-165:#d700ff;
  --ansi-palette-166:#d75f00;
  --ansi-palette-167:#d75f5f;
  --ansi-palette-168:#d75f87;
  --ansi-palette-169:#d75faf;
  --ansi-palette-170:#d75fd7;
  --ansi-palette-171:#d75fff;
  --ansi-palette-172:#d78700;
  --ansi-palette-173:#d7875f;
  --ansi-palette-174:#d78787;
  --ansi-palette-175:#d787af;
  --ansi-palette-176:#d787d7;
  --ansi-palette-177:#d787ff;
  --ansi-palette-178:#d7af00;
  --ansi-palette-179:#d7af5f;
  --ansi-palette-180:#d7af87;
  --ansi-palette-181:#d7afaf;
  --ansi-palette-182:#d7afd7;
  --ansi-palette-183:#d7afff;
  --ansi-palette-184:#d7d700;
  --ansi-palette-185:#d7d75f;
  --ansi-palette-186:#d7d787;
  --ansi-palette-187:#d7d7af;
  --ansi-palette-188:#d7d7d7;
  --ansi-palette-189:#d7d7ff;
  --ansi-palette-190:#d7ff00;
  --ansi-palette-191:#d7ff5f;
  --ansi-palette-192:#d7ff87;
  --ansi-palette-193:#d7ffaf;
  --ansi-palette-194:#d7ffd7;
  --ansi-palette-195:#d7ffff;
  --ansi-palette-196:red;
  --ansi-palette-197:#ff005f;
  --ansi-palette-198:#ff0087;
  --ansi-palette-199:#ff00af;
  --ansi-palette-200:#ff00d7;
  --ansi-palette-201:#f0f;
  --ansi-palette-202:#ff5f00;
  --ansi-palette-203:#ff5f5f;
  --ansi-palette-204:#ff5f87;
  --ansi-palette-205:#ff5faf;
  --ansi-palette-206:#ff5fd7;
  --ansi-palette-207:#ff5fff;
  --ansi-palette-208:#ff8700;
  --ansi-palette-209:#ff875f;
  --ansi-palette-210:#ff8787;
  --ansi-palette-211:#ff87af;
  --ansi-palette-212:#ff87d7;
  --ansi-palette-213:#ff87ff;
  --ansi-palette-214:#ffaf00;
  --ansi-palette-215:#ffaf5f;
  --ansi-palette-216:#ffaf87;
  --ansi-palette-217:#ffafaf;
  --ansi-palette-218:#ffafd7;
  --ansi-palette-219:#ffafff;
  --ansi-palette-220:gold;
  --ansi-palette-221:#ffd75f;
  --ansi-palette-222:#ffd787;
  --ansi-palette-223:#ffd7af;
  --ansi-palette-224:#ffd7d7;
  --ansi-palette-225:#ffd7ff;
  --ansi-palette-226:#ff0;
  --ansi-palette-227:#ffff5f;
  --ansi-palette-228:#ffff87;
  --ansi-palette-229:#ffffaf;
  --ansi-palette-230:#ffffd7;
  --ansi-palette-231:#fff;
  --ansi-palette-232:#080808;
  --ansi-palette-233:#121212;
  --ansi-palette-234:#1c1c1c;
  --ansi-palette-235:#262626;
  --ansi-palette-236:#303030;
  --ansi-palette-237:#3a3a3a;
  --ansi-palette-238:#444;
  --ansi-palette-239:#4e4e4e;
  --ansi-palette-240:#585858;
  --ansi-palette-241:#626262;
  --ansi-palette-242:#6c6c6c;
  --ansi-palette-243:#767676;
  --ansi-palette-244:grey;
  --ansi-palette-245:#8a8a8a;
  --ansi-palette-246:#949494;
  --ansi-palette-247:#9e9e9e;
  --ansi-palette-248:#a8a8a8;
  --ansi-palette-249:#b2b2b2;
  --ansi-palette-250:#bcbcbc;
  --ansi-palette-251:#c6c6c6;
  --ansi-palette-252:#d0d0d0;
  --ansi-palette-253:#dadada;
  --ansi-palette-254:#e4e4e4;
  --ansi-palette-255:#eee;
}
.ansi-white-bg {
  --bg-color:var(--ansi-white);
}
.ansi-white-fg {
  --fg-color:var(--ansi-white);
}
.ansi-red-bg {
  --bg-color:var(--ansi-red);
}
.ansi-red-fg {
  --fg-color:var(--ansi-red);
}
.ansi-blue-bg {
  --bg-color:var(--ansi-blue);
}
.ansi-blue-fg {
  --fg-color:var(--ansi-blue);
}
.ansi-black-bg {
  --bg-color:var(--ansi-black);
}
.ansi-black-fg {
  --fg-color:var(--ansi-black);
}
.ansi-green-bg {
  --bg-color:var(--ansi-green);
}
.ansi-green-fg {
  --fg-color:var(--ansi-green);
}
.ansi-yellow-bg {
  --bg-color:var(--ansi-yellow);
}
.ansi-yellow-fg {
  --fg-color:var(--ansi-yellow);
}
.ansi-magenta-bg {
  --bg-color:var(--ansi-magenta);
}
.ansi-magenta-fg {
  --fg-color:var(--ansi-magenta);
}
.ansi-cyan-bg {
  --bg-color:var(--ansi-cyan);
}
.ansi-cyan-fg {
  --fg-color:var(--ansi-cyan);
}
.ansi-bright-white-bg {
  --bg-color:var(--ansi-bright-white);
}
.ansi-bright-white-fg {
  --fg-color:var(--ansi-bright-white);
}
.ansi-bright-red-bg {
  --bg-color:var(--ansi-bright-red);
}
.ansi-bright-red-fg {
  --fg-color:var(--ansi-bright-red);
}
.ansi-bright-blue-bg {
  --bg-color:var(--ansi-bright-blue);
}
.ansi-bright-blue-fg {
  --fg-color:var(--ansi-bright-blue);
}
.ansi-bright-black-bg {
  --bg-color:var(--ansi-bright-black);
}
.ansi-bright-black-fg {
  --fg-color:var(--ansi-bright-black);
}
.ansi-bright-green-bg {
  --bg-color:var(--ansi-bright-green);
}
.ansi-bright-green-fg {
  --fg-color:var(--ansi-bright-green);
}
.ansi-bright-yellow-bg {
  --bg-color:var(--ansi-bright-yellow);
}
.ansi-bright-yellow-fg {
  --fg-color:var(--ansi-bright-yellow);
}
.ansi-bright-magenta-bg {
  --bg-color:var(--ansi-bright-magenta);
}
.ansi-bright-magenta-fg {
  --fg-color:var(--ansi-bright-magenta);
}
.ansi-bright-cyan-bg {
  --bg-color:var(--ansi-bright-cyan);
}
.ansi-bright-cyan-fg {
  --fg-color:var(--ansi-bright-cyan);
}
.ansi-palette-16-bg {
  --bg-color:var(--ansi-palette-16);
}
.ansi-palette-16-fg {
  --fg-color:var(--ansi-palette-16);
}
.ansi-palette-17-bg {
  --bg-color:var(--ansi-palette-17);
}
.ansi-palette-17-fg {
  --fg-color:var(--ansi-palette-17);
}
.ansi-palette-18-bg {
  --bg-color:var(--ansi-palette-18);
}
.ansi-palette-18-fg {
  --fg-color:var(--ansi-palette-18);
}
.ansi-palette-19-bg {
  --bg-color:var(--ansi-palette-19);
}
.ansi-palette-19-fg {
  --fg-color:var(--ansi-palette-19);
}
.ansi-palette-20-bg {
  --bg-color:var(--ansi-palette-20);
}
.ansi-palette-20-fg {
  --fg-color:var(--ansi-palette-20);
}
.ansi-palette-21-bg {
  --bg-color:var(--ansi-palette-21);
}
.ansi-palette-21-fg {
  --fg-color:var(--ansi-palette-21);
}
.ansi-palette-22-bg {
  --bg-color:var(--ansi-palette-22);
}
.ansi-palette-22-fg {
  --fg-color:var(--ansi-palette-22);
}
.ansi-palette-23-bg {
  --bg-color:var(--ansi-palette-23);
}
.ansi-palette-23-fg {
  --fg-color:var(--ansi-palette-23);
}
.ansi-palette-24-bg {
  --bg-color:var(--ansi-palette-24);
}
.ansi-palette-24-fg {
  --fg-color:var(--ansi-palette-24);
}
.ansi-palette-25-bg {
  --bg-color:var(--ansi-palette-25);
}
.ansi-palette-25-fg {
  --fg-color:var(--ansi-palette-25);
}
.ansi-palette-26-bg {
  --bg-color:var(--ansi-palette-26);
}
.ansi-palette-26-fg {
  --fg-color:var(--ansi-palette-26);
}
.ansi-palette-27-bg {
  --bg-color:var(--ansi-palette-27);
}
.ansi-palette-27-fg {
  --fg-color:var(--ansi-palette-27);
}
.ansi-palette-28-bg {
  --bg-color:var(--ansi-palette-28);
}
.ansi-palette-28-fg {
  --fg-color:var(--ansi-palette-28);
}
.ansi-palette-29-bg {
  --bg-color:var(--ansi-palette-29);
}
.ansi-palette-29-fg {
  --fg-color:var(--ansi-palette-29);
}
.ansi-palette-30-bg {
  --bg-color:var(--ansi-palette-30);
}
.ansi-palette-30-fg {
  --fg-color:var(--ansi-palette-30);
}
.ansi-palette-31-bg {
  --bg-color:var(--ansi-palette-31);
}
.ansi-palette-31-fg {
  --fg-color:var(--ansi-palette-31);
}
.ansi-palette-32-bg {
  --bg-color:var(--ansi-palette-32);
}
.ansi-palette-32-fg {
  --fg-color:var(--ansi-palette-32);
}
.ansi-palette-33-bg {
  --bg-color:var(--ansi-palette-33);
}
.ansi-palette-33-fg {
  --fg-color:var(--ansi-palette-33);
}
.ansi-palette-34-bg {
  --bg-color:var(--ansi-palette-34);
}
.ansi-palette-34-fg {
  --fg-color:var(--ansi-palette-34);
}
.ansi-palette-35-bg {
  --bg-color:var(--ansi-palette-35);
}
.ansi-palette-35-fg {
  --fg-color:var(--ansi-palette-35);
}
.ansi-palette-36-bg {
  --bg-color:var(--ansi-palette-36);
}
.ansi-palette-36-fg {
  --fg-color:var(--ansi-palette-36);
}
.ansi-palette-37-bg {
  --bg-color:var(--ansi-palette-37);
}
.ansi-palette-37-fg {
  --fg-color:var(--ansi-palette-37);
}
.ansi-palette-38-bg {
  --bg-color:var(--ansi-palette-38);
}
.ansi-palette-38-fg {
  --fg-color:var(--ansi-palette-38);
}
.ansi-palette-39-bg {
  --bg-color:var(--ansi-palette-39);
}
.ansi-palette-39-fg {
  --fg-color:var(--ansi-palette-39);
}
.ansi-palette-40-bg {
  --bg-color:var(--ansi-palette-40);
}
.ansi-palette-40-fg {
  --fg-color:var(--ansi-palette-40);
}
.ansi-palette-41-bg {
  --bg-color:var(--ansi-palette-41);
}
.ansi-palette-41-fg {
  --fg-color:var(--ansi-palette-41);
}
.ansi-palette-42-bg {
  --bg-color:var(--ansi-palette-42);
}
.ansi-palette-42-fg {
  --fg-color:var(--ansi-palette-42);
}
.ansi-palette-43-bg {
  --bg-color:var(--ansi-palette-43);
}
.ansi-palette-43-fg {
  --fg-color:var(--ansi-palette-43);
}
.ansi-palette-44-bg {
  --bg-color:var(--ansi-palette-44);
}
.ansi-palette-44-fg {
  --fg-color:var(--ansi-palette-44);
}
.ansi-palette-45-bg {
  --bg-color:var(--ansi-palette-45);
}
.ansi-palette-45-fg {
  --fg-color:var(--ansi-palette-45);
}
.ansi-palette-46-bg {
  --bg-color:var(--ansi-palette-46);
}
.ansi-palette-46-fg {
  --fg-color:var(--ansi-palette-46);
}
.ansi-palette-47-bg {
  --bg-color:var(--ansi-palette-47);
}
.ansi-palette-47-fg {
  --fg-color:var(--ansi-palette-47);
}
.ansi-palette-48-bg {
  --bg-color:var(--ansi-palette-48);
}
.ansi-palette-48-fg {
  --fg-color:var(--ansi-palette-48);
}
.ansi-palette-49-bg {
  --bg-color:var(--ansi-palette-49);
}
.ansi-palette-49-fg {
  --fg-color:var(--ansi-palette-49);
}
.ansi-palette-50-bg {
  --bg-color:var(--ansi-palette-50);
}
.ansi-palette-50-fg {
  --fg-color:var(--ansi-palette-50);
}
.ansi-palette-51-bg {
  --bg-color:var(--ansi-palette-51);
}
.ansi-palette-51-fg {
  --fg-color:var(--ansi-palette-51);
}
.ansi-palette-52-bg {
  --bg-color:var(--ansi-palette-52);
}
.ansi-palette-52-fg {
  --fg-color:var(--ansi-palette-52);
}
.ansi-palette-53-bg {
  --bg-color:var(--ansi-palette-53);
}
.ansi-palette-53-fg {
  --fg-color:var(--ansi-palette-53);
}
.ansi-palette-54-bg {
  --bg-color:var(--ansi-palette-54);
}
.ansi-palette-54-fg {
  --fg-color:var(--ansi-palette-54);
}
.ansi-palette-55-bg {
  --bg-color:var(--ansi-palette-55);
}
.ansi-palette-55-fg {
  --fg-color:var(--ansi-palette-55);
}
.ansi-palette-56-bg {
  --bg-color:var(--ansi-palette-56);
}
.ansi-palette-56-fg {
  --fg-color:var(--ansi-palette-56);
}
.ansi-palette-57-bg {
  --bg-color:var(--ansi-palette-57);
}
.ansi-palette-57-fg {
  --fg-color:var(--ansi-palette-57);
}
.ansi-palette-58-bg {
  --bg-color:var(--ansi-palette-58);
}
.ansi-palette-58-fg {
  --fg-color:var(--ansi-palette-58);
}
.ansi-palette-59-bg {
  --bg-color:var(--ansi-palette-59);
}
.ansi-palette-59-fg {
  --fg-color:var(--ansi-palette-59);
}
.ansi-palette-60-bg {
  --bg-color:var(--ansi-palette-60);
}
.ansi-palette-60-fg {
  --fg-color:var(--ansi-palette-60);
}
.ansi-palette-61-bg {
  --bg-color:var(--ansi-palette-61);
}
.ansi-palette-61-fg {
  --fg-color:var(--ansi-palette-61);
}
.ansi-palette-62-bg {
  --bg-color:var(--ansi-palette-62);
}
.ansi-palette-62-fg {
  --fg-color:var(--ansi-palette-62);
}
.ansi-palette-63-bg {
  --bg-color:var(--ansi-palette-63);
}
.ansi-palette-63-fg {
  --fg-color:var(--ansi-palette-63);
}
.ansi-palette-64-bg {
  --bg-color:var(--ansi-palette-64);
}
.ansi-palette-64-fg {
  --fg-color:var(--ansi-palette-64);
}
.ansi-palette-65-bg {
  --bg-color:var(--ansi-palette-65);
}
.ansi-palette-65-fg {
  --fg-color:var(--ansi-palette-65);
}
.ansi-palette-66-bg {
  --bg-color:var(--ansi-palette-66);
}
.ansi-palette-66-fg {
  --fg-color:var(--ansi-palette-66);
}
.ansi-palette-67-bg {
  --bg-color:var(--ansi-palette-67);
}
.ansi-palette-67-fg {
  --fg-color:var(--ansi-palette-67);
}
.ansi-palette-68-bg {
  --bg-color:var(--ansi-palette-68);
}
.ansi-palette-68-fg {
  --fg-color:var(--ansi-palette-68);
}
.ansi-palette-69-bg {
  --bg-color:var(--ansi-palette-69);
}
.ansi-palette-69-fg {
  --fg-color:var(--ansi-palette-69);
}
.ansi-palette-70-bg {
  --bg-color:var(--ansi-palette-70);
}
.ansi-palette-70-fg {
  --fg-color:var(--ansi-palette-70);
}
.ansi-palette-71-bg {
  --bg-color:var(--ansi-palette-71);
}
.ansi-palette-71-fg {
  --fg-color:var(--ansi-palette-71);
}
.ansi-palette-72-bg {
  --bg-color:var(--ansi-palette-72);
}
.ansi-palette-72-fg {
  --fg-color:var(--ansi-palette-72);
}
.ansi-palette-73-bg {
  --bg-color:var(--ansi-palette-73);
}
.ansi-palette-73-fg {
  --fg-color:var(--ansi-palette-73);
}
.ansi-palette-74-bg {
  --bg-color:var(--ansi-palette-74);
}
.ansi-palette-74-fg {
  --fg-color:var(--ansi-palette-74);
}
.ansi-palette-75-bg {
  --bg-color:var(--ansi-palette-75);
}
.ansi-palette-75-fg {
  --fg-color:var(--ansi-palette-75);
}
.ansi-palette-76-bg {
  --bg-color:var(--ansi-palette-76);
}
.ansi-palette-76-fg {
  --fg-color:var(--ansi-palette-76);
}
.ansi-palette-77-bg {
  --bg-color:var(--ansi-palette-77);
}
.ansi-palette-77-fg {
  --fg-color:var(--ansi-palette-77);
}
.ansi-palette-78-bg {
  --bg-color:var(--ansi-palette-78);
}
.ansi-palette-78-fg {
  --fg-color:var(--ansi-palette-78);
}
.ansi-palette-79-bg {
  --bg-color:var(--ansi-palette-79);
}
.ansi-palette-79-fg {
  --fg-color:var(--ansi-palette-79);
}
.ansi-palette-80-bg {
  --bg-color:var(--ansi-palette-80);
}
.ansi-palette-80-fg {
  --fg-color:var(--ansi-palette-80);
}
.ansi-palette-81-bg {
  --bg-color:var(--ansi-palette-81);
}
.ansi-palette-81-fg {
  --fg-color:var(--ansi-palette-81);
}
.ansi-palette-82-bg {
  --bg-color:var(--ansi-palette-82);
}
.ansi-palette-82-fg {
  --fg-color:var(--ansi-palette-82);
}
.ansi-palette-83-bg {
  --bg-color:var(--ansi-palette-83);
}
.ansi-palette-83-fg {
  --fg-color:var(--ansi-palette-83);
}
.ansi-palette-84-bg {
  --bg-color:var(--ansi-palette-84);
}
.ansi-palette-84-fg {
  --fg-color:var(--ansi-palette-84);
}
.ansi-palette-85-bg {
  --bg-color:var(--ansi-palette-85);
}
.ansi-palette-85-fg {
  --fg-color:var(--ansi-palette-85);
}
.ansi-palette-86-bg {
  --bg-color:var(--ansi-palette-86);
}
.ansi-palette-86-fg {
  --fg-color:var(--ansi-palette-86);
}
.ansi-palette-87-bg {
  --bg-color:var(--ansi-palette-87);
}
.ansi-palette-87-fg {
  --fg-color:var(--ansi-palette-87);
}
.ansi-palette-88-bg {
  --bg-color:var(--ansi-palette-88);
}
.ansi-palette-88-fg {
  --fg-color:var(--ansi-palette-88);
}
.ansi-palette-89-bg {
  --bg-color:var(--ansi-palette-89);
}
.ansi-palette-89-fg {
  --fg-color:var(--ansi-palette-89);
}
.ansi-palette-90-bg {
  --bg-color:var(--ansi-palette-90);
}
.ansi-palette-90-fg {
  --fg-color:var(--ansi-palette-90);
}
.ansi-palette-91-bg {
  --bg-color:var(--ansi-palette-91);
}
.ansi-palette-91-fg {
  --fg-color:var(--ansi-palette-91);
}
.ansi-palette-92-bg {
  --bg-color:var(--ansi-palette-92);
}
.ansi-palette-92-fg {
  --fg-color:var(--ansi-palette-92);
}
.ansi-palette-93-bg {
  --bg-color:var(--ansi-palette-93);
}
.ansi-palette-93-fg {
  --fg-color:var(--ansi-palette-93);
}
.ansi-palette-94-bg {
  --bg-color:var(--ansi-palette-94);
}
.ansi-palette-94-fg {
  --fg-color:var(--ansi-palette-94);
}
.ansi-palette-95-bg {
  --bg-color:var(--ansi-palette-95);
}
.ansi-palette-95-fg {
  --fg-color:var(--ansi-palette-95);
}
.ansi-palette-96-bg {
  --bg-color:var(--ansi-palette-96);
}
.ansi-palette-96-fg {
  --fg-color:var(--ansi-palette-96);
}
.ansi-palette-97-bg {
  --bg-color:var(--ansi-palette-97);
}
.ansi-palette-97-fg {
  --fg-color:var(--ansi-palette-97);
}
.ansi-palette-98-bg {
  --bg-color:var(--ansi-palette-98);
}
.ansi-palette-98-fg {
  --fg-color:var(--ansi-palette-98);
}
.ansi-palette-99-bg {
  --bg-color:var(--ansi-palette-99);
}
.ansi-palette-99-fg {
  --fg-color:var(--ansi-palette-99);
}
.ansi-palette-100-bg {
  --bg-color:var(--ansi-palette-100);
}
.ansi-palette-100-fg {
  --fg-color:var(--ansi-palette-100);
}
.ansi-palette-101-bg {
  --bg-color:var(--ansi-palette-101);
}
.ansi-palette-101-fg {
  --fg-color:var(--ansi-palette-101);
}
.ansi-palette-102-bg {
  --bg-color:var(--ansi-palette-102);
}
.ansi-palette-102-fg {
  --fg-color:var(--ansi-palette-102);
}
.ansi-palette-103-bg {
  --bg-color:var(--ansi-palette-103);
}
.ansi-palette-103-fg {
  --fg-color:var(--ansi-palette-103);
}
.ansi-palette-104-bg {
  --bg-color:var(--ansi-palette-104);
}
.ansi-palette-104-fg {
  --fg-color:var(--ansi-palette-104);
}
.ansi-palette-105-bg {
  --bg-color:var(--ansi-palette-105);
}
.ansi-palette-105-fg {
  --fg-color:var(--ansi-palette-105);
}
.ansi-palette-106-bg {
  --bg-color:var(--ansi-palette-106);
}
.ansi-palette-106-fg {
  --fg-color:var(--ansi-palette-106);
}
.ansi-palette-107-bg {
  --bg-color:var(--ansi-palette-107);
}
.ansi-palette-107-fg {
  --fg-color:var(--ansi-palette-107);
}
.ansi-palette-108-bg {
  --bg-color:var(--ansi-palette-108);
}
.ansi-palette-108-fg {
  --fg-color:var(--ansi-palette-108);
}
.ansi-palette-109-bg {
  --bg-color:var(--ansi-palette-109);
}
.ansi-palette-109-fg {
  --fg-color:var(--ansi-palette-109);
}
.ansi-palette-110-bg {
  --bg-color:var(--ansi-palette-110);
}
.ansi-palette-110-fg {
  --fg-color:var(--ansi-palette-110);
}
.ansi-palette-111-bg {
  --bg-color:var(--ansi-palette-111);
}
.ansi-palette-111-fg {
  --fg-color:var(--ansi-palette-111);
}
.ansi-palette-112-bg {
  --bg-color:var(--ansi-palette-112);
}
.ansi-palette-112-fg {
  --fg-color:var(--ansi-palette-112);
}
.ansi-palette-113-bg {
  --bg-color:var(--ansi-palette-113);
}
.ansi-palette-113-fg {
  --fg-color:var(--ansi-palette-113);
}
.ansi-palette-114-bg {
  --bg-color:var(--ansi-palette-114);
}
.ansi-palette-114-fg {
  --fg-color:var(--ansi-palette-114);
}
.ansi-palette-115-bg {
  --bg-color:var(--ansi-palette-115);
}
.ansi-palette-115-fg {
  --fg-color:var(--ansi-palette-115);
}
.ansi-palette-116-bg {
  --bg-color:var(--ansi-palette-116);
}
.ansi-palette-116-fg {
  --fg-color:var(--ansi-palette-116);
}
.ansi-palette-117-bg {
  --bg-color:var(--ansi-palette-117);
}
.ansi-palette-117-fg {
  --fg-color:var(--ansi-palette-117);
}
.ansi-palette-118-bg {
  --bg-color:var(--ansi-palette-118);
}
.ansi-palette-118-fg {
  --fg-color:var(--ansi-palette-118);
}
.ansi-palette-119-bg {
  --bg-color:var(--ansi-palette-119);
}
.ansi-palette-119-fg {
  --fg-color:var(--ansi-palette-119);
}
.ansi-palette-120-bg {
  --bg-color:var(--ansi-palette-120);
}
.ansi-palette-120-fg {
  --fg-color:var(--ansi-palette-120);
}
.ansi-palette-121-bg {
  --bg-color:var(--ansi-palette-121);
}
.ansi-palette-121-fg {
  --fg-color:var(--ansi-palette-121);
}
.ansi-palette-122-bg {
  --bg-color:var(--ansi-palette-122);
}
.ansi-palette-122-fg {
  --fg-color:var(--ansi-palette-122);
}
.ansi-palette-123-bg {
  --bg-color:var(--ansi-palette-123);
}
.ansi-palette-123-fg {
  --fg-color:var(--ansi-palette-123);
}
.ansi-palette-124-bg {
  --bg-color:var(--ansi-palette-124);
}
.ansi-palette-124-fg {
  --fg-color:var(--ansi-palette-124);
}
.ansi-palette-125-bg {
  --bg-color:var(--ansi-palette-125);
}
.ansi-palette-125-fg {
  --fg-color:var(--ansi-palette-125);
}
.ansi-palette-126-bg {
  --bg-color:var(--ansi-palette-126);
}
.ansi-palette-126-fg {
  --fg-color:var(--ansi-palette-126);
}
.ansi-palette-127-bg {
  --bg-color:var(--ansi-palette-127);
}
.ansi-palette-127-fg {
  --fg-color:var(--ansi-palette-127);
}
.ansi-palette-128-bg {
  --bg-color:var(--ansi-palette-128);
}
.ansi-palette-128-fg {
  --fg-color:var(--ansi-palette-128);
}
.ansi-palette-129-bg {
  --bg-color:var(--ansi-palette-129);
}
.ansi-palette-129-fg {
  --fg-color:var(--ansi-palette-129);
}
.ansi-palette-130-bg {
  --bg-color:var(--ansi-palette-130);
}
.ansi-palette-130-fg {
  --fg-color:var(--ansi-palette-130);
}
.ansi-palette-131-bg {
  --bg-color:var(--ansi-palette-131);
}
.ansi-palette-131-fg {
  --fg-color:var(--ansi-palette-131);
}
.ansi-palette-132-bg {
  --bg-color:var(--ansi-palette-132);
}
.ansi-palette-132-fg {
  --fg-color:var(--ansi-palette-132);
}
.ansi-palette-133-bg {
  --bg-color:var(--ansi-palette-133);
}
.ansi-palette-133-fg {
  --fg-color:var(--ansi-palette-133);
}
.ansi-palette-134-bg {
  --bg-color:var(--ansi-palette-134);
}
.ansi-palette-134-fg {
  --fg-color:var(--ansi-palette-134);
}
.ansi-palette-135-bg {
  --bg-color:var(--ansi-palette-135);
}
.ansi-palette-135-fg {
  --fg-color:var(--ansi-palette-135);
}
.ansi-palette-136-bg {
  --bg-color:var(--ansi-palette-136);
}
.ansi-palette-136-fg {
  --fg-color:var(--ansi-palette-136);
}
.ansi-palette-137-bg {
  --bg-color:var(--ansi-palette-137);
}
.ansi-palette-137-fg {
  --fg-color:var(--ansi-palette-137);
}
.ansi-palette-138-bg {
  --bg-color:var(--ansi-palette-138);
}
.ansi-palette-138-fg {
  --fg-color:var(--ansi-palette-138);
}
.ansi-palette-139-bg {
  --bg-color:var(--ansi-palette-139);
}
.ansi-palette-139-fg {
  --fg-color:var(--ansi-palette-139);
}
.ansi-palette-140-bg {
  --bg-color:var(--ansi-palette-140);
}
.ansi-palette-140-fg {
  --fg-color:var(--ansi-palette-140);
}
.ansi-palette-141-bg {
  --bg-color:var(--ansi-palette-141);
}
.ansi-palette-141-fg {
  --fg-color:var(--ansi-palette-141);
}
.ansi-palette-142-bg {
  --bg-color:var(--ansi-palette-142);
}
.ansi-palette-142-fg {
  --fg-color:var(--ansi-palette-142);
}
.ansi-palette-143-bg {
  --bg-color:var(--ansi-palette-143);
}
.ansi-palette-143-fg {
  --fg-color:var(--ansi-palette-143);
}
.ansi-palette-144-bg {
  --bg-color:var(--ansi-palette-144);
}
.ansi-palette-144-fg {
  --fg-color:var(--ansi-palette-144);
}
.ansi-palette-145-bg {
  --bg-color:var(--ansi-palette-145);
}
.ansi-palette-145-fg {
  --fg-color:var(--ansi-palette-145);
}
.ansi-palette-146-bg {
  --bg-color:var(--ansi-palette-146);
}
.ansi-palette-146-fg {
  --fg-color:var(--ansi-palette-146);
}
.ansi-palette-147-bg {
  --bg-color:var(--ansi-palette-147);
}
.ansi-palette-147-fg {
  --fg-color:var(--ansi-palette-147);
}
.ansi-palette-148-bg {
  --bg-color:var(--ansi-palette-148);
}
.ansi-palette-148-fg {
  --fg-color:var(--ansi-palette-148);
}
.ansi-palette-149-bg {
  --bg-color:var(--ansi-palette-149);
}
.ansi-palette-149-fg {
  --fg-color:var(--ansi-palette-149);
}
.ansi-palette-150-bg {
  --bg-color:var(--ansi-palette-150);
}
.ansi-palette-150-fg {
  --fg-color:var(--ansi-palette-150);
}
.ansi-palette-151-bg {
  --bg-color:var(--ansi-palette-151);
}
.ansi-palette-151-fg {
  --fg-color:var(--ansi-palette-151);
}
.ansi-palette-152-bg {
  --bg-color:var(--ansi-palette-152);
}
.ansi-palette-152-fg {
  --fg-color:var(--ansi-palette-152);
}
.ansi-palette-153-bg {
  --bg-color:var(--ansi-palette-153);
}
.ansi-palette-153-fg {
  --fg-color:var(--ansi-palette-153);
}
.ansi-palette-154-bg {
  --bg-color:var(--ansi-palette-154);
}
.ansi-palette-154-fg {
  --fg-color:var(--ansi-palette-154);
}
.ansi-palette-155-bg {
  --bg-color:var(--ansi-palette-155);
}
.ansi-palette-155-fg {
  --fg-color:var(--ansi-palette-155);
}
.ansi-palette-156-bg {
  --bg-color:var(--ansi-palette-156);
}
.ansi-palette-156-fg {
  --fg-color:var(--ansi-palette-156);
}
.ansi-palette-157-bg {
  --bg-color:var(--ansi-palette-157);
}
.ansi-palette-157-fg {
  --fg-color:var(--ansi-palette-157);
}
.ansi-palette-158-bg {
  --bg-color:var(--ansi-palette-158);
}
.ansi-palette-158-fg {
  --fg-color:var(--ansi-palette-158);
}
.ansi-palette-159-bg {
  --bg-color:var(--ansi-palette-159);
}
.ansi-palette-159-fg {
  --fg-color:var(--ansi-palette-159);
}
.ansi-palette-160-bg {
  --bg-color:var(--ansi-palette-160);
}
.ansi-palette-160-fg {
  --fg-color:var(--ansi-palette-160);
}
.ansi-palette-161-bg {
  --bg-color:var(--ansi-palette-161);
}
.ansi-palette-161-fg {
  --fg-color:var(--ansi-palette-161);
}
.ansi-palette-162-bg {
  --bg-color:var(--ansi-palette-162);
}
.ansi-palette-162-fg {
  --fg-color:var(--ansi-palette-162);
}
.ansi-palette-163-bg {
  --bg-color:var(--ansi-palette-163);
}
.ansi-palette-163-fg {
  --fg-color:var(--ansi-palette-163);
}
.ansi-palette-164-bg {
  --bg-color:var(--ansi-palette-164);
}
.ansi-palette-164-fg {
  --fg-color:var(--ansi-palette-164);
}
.ansi-palette-165-bg {
  --bg-color:var(--ansi-palette-165);
}
.ansi-palette-165-fg {
  --fg-color:var(--ansi-palette-165);
}
.ansi-palette-166-bg {
  --bg-color:var(--ansi-palette-166);
}
.ansi-palette-166-fg {
  --fg-color:var(--ansi-palette-166);
}
.ansi-palette-167-bg {
  --bg-color:var(--ansi-palette-167);
}
.ansi-palette-167-fg {
  --fg-color:var(--ansi-palette-167);
}
.ansi-palette-168-bg {
  --bg-color:var(--ansi-palette-168);
}
.ansi-palette-168-fg {
  --fg-color:var(--ansi-palette-168);
}
.ansi-palette-169-bg {
  --bg-color:var(--ansi-palette-169);
}
.ansi-palette-169-fg {
  --fg-color:var(--ansi-palette-169);
}
.ansi-palette-170-bg {
  --bg-color:var(--ansi-palette-170);
}
.ansi-palette-170-fg {
  --fg-color:var(--ansi-palette-170);
}
.ansi-palette-171-bg {
  --bg-color:var(--ansi-palette-171);
}
.ansi-palette-171-fg {
  --fg-color:var(--ansi-palette-171);
}
.ansi-palette-172-bg {
  --bg-color:var(--ansi-palette-172);
}
.ansi-palette-172-fg {
  --fg-color:var(--ansi-palette-172);
}
.ansi-palette-173-bg {
  --bg-color:var(--ansi-palette-173);
}
.ansi-palette-173-fg {
  --fg-color:var(--ansi-palette-173);
}
.ansi-palette-174-bg {
  --bg-color:var(--ansi-palette-174);
}
.ansi-palette-174-fg {
  --fg-color:var(--ansi-palette-174);
}
.ansi-palette-175-bg {
  --bg-color:var(--ansi-palette-175);
}
.ansi-palette-175-fg {
  --fg-color:var(--ansi-palette-175);
}
.ansi-palette-176-bg {
  --bg-color:var(--ansi-palette-176);
}
.ansi-palette-176-fg {
  --fg-color:var(--ansi-palette-176);
}
.ansi-palette-177-bg {
  --bg-color:var(--ansi-palette-177);
}
.ansi-palette-177-fg {
  --fg-color:var(--ansi-palette-177);
}
.ansi-palette-178-bg {
  --bg-color:var(--ansi-palette-178);
}
.ansi-palette-178-fg {
  --fg-color:var(--ansi-palette-178);
}
.ansi-palette-179-bg {
  --bg-color:var(--ansi-palette-179);
}
.ansi-palette-179-fg {
  --fg-color:var(--ansi-palette-179);
}
.ansi-palette-180-bg {
  --bg-color:var(--ansi-palette-180);
}
.ansi-palette-180-fg {
  --fg-color:var(--ansi-palette-180);
}
.ansi-palette-181-bg {
  --bg-color:var(--ansi-palette-181);
}
.ansi-palette-181-fg {
  --fg-color:var(--ansi-palette-181);
}
.ansi-palette-182-bg {
  --bg-color:var(--ansi-palette-182);
}
.ansi-palette-182-fg {
  --fg-color:var(--ansi-palette-182);
}
.ansi-palette-183-bg {
  --bg-color:var(--ansi-palette-183);
}
.ansi-palette-183-fg {
  --fg-color:var(--ansi-palette-183);
}
.ansi-palette-184-bg {
  --bg-color:var(--ansi-palette-184);
}
.ansi-palette-184-fg {
  --fg-color:var(--ansi-palette-184);
}
.ansi-palette-185-bg {
  --bg-color:var(--ansi-palette-185);
}
.ansi-palette-185-fg {
  --fg-color:var(--ansi-palette-185);
}
.ansi-palette-186-bg {
  --bg-color:var(--ansi-palette-186);
}
.ansi-palette-186-fg {
  --fg-color:var(--ansi-palette-186);
}
.ansi-palette-187-bg {
  --bg-color:var(--ansi-palette-187);
}
.ansi-palette-187-fg {
  --fg-color:var(--ansi-palette-187);
}
.ansi-palette-188-bg {
  --bg-color:var(--ansi-palette-188);
}
.ansi-palette-188-fg {
  --fg-color:var(--ansi-palette-188);
}
.ansi-palette-189-bg {
  --bg-color:var(--ansi-palette-189);
}
.ansi-palette-189-fg {
  --fg-color:var(--ansi-palette-189);
}
.ansi-palette-190-bg {
  --bg-color:var(--ansi-palette-190);
}
.ansi-palette-190-fg {
  --fg-color:var(--ansi-palette-190);
}
.ansi-palette-191-bg {
  --bg-color:var(--ansi-palette-191);
}
.ansi-palette-191-fg {
  --fg-color:var(--ansi-palette-191);
}
.ansi-palette-192-bg {
  --bg-color:var(--ansi-palette-192);
}
.ansi-palette-192-fg {
  --fg-color:var(--ansi-palette-192);
}
.ansi-palette-193-bg {
  --bg-color:var(--ansi-palette-193);
}
.ansi-palette-193-fg {
  --fg-color:var(--ansi-palette-193);
}
.ansi-palette-194-bg {
  --bg-color:var(--ansi-palette-194);
}
.ansi-palette-194-fg {
  --fg-color:var(--ansi-palette-194);
}
.ansi-palette-195-bg {
  --bg-color:var(--ansi-palette-195);
}
.ansi-palette-195-fg {
  --fg-color:var(--ansi-palette-195);
}
.ansi-palette-196-bg {
  --bg-color:var(--ansi-palette-196);
}
.ansi-palette-196-fg {
  --fg-color:var(--ansi-palette-196);
}
.ansi-palette-197-bg {
  --bg-color:var(--ansi-palette-197);
}
.ansi-palette-197-fg {
  --fg-color:var(--ansi-palette-197);
}
.ansi-palette-198-bg {
  --bg-color:var(--ansi-palette-198);
}
.ansi-palette-198-fg {
  --fg-color:var(--ansi-palette-198);
}
.ansi-palette-199-bg {
  --bg-color:var(--ansi-palette-199);
}
.ansi-palette-199-fg {
  --fg-color:var(--ansi-palette-199);
}
.ansi-palette-200-bg {
  --bg-color:var(--ansi-palette-200);
}
.ansi-palette-200-fg {
  --fg-color:var(--ansi-palette-200);
}
.ansi-palette-201-bg {
  --bg-color:var(--ansi-palette-201);
}
.ansi-palette-201-fg {
  --fg-color:var(--ansi-palette-201);
}
.ansi-palette-202-bg {
  --bg-color:var(--ansi-palette-202);
}
.ansi-palette-202-fg {
  --fg-color:var(--ansi-palette-202);
}
.ansi-palette-203-bg {
  --bg-color:var(--ansi-palette-203);
}
.ansi-palette-203-fg {
  --fg-color:var(--ansi-palette-203);
}
.ansi-palette-204-bg {
  --bg-color:var(--ansi-palette-204);
}
.ansi-palette-204-fg {
  --fg-color:var(--ansi-palette-204);
}
.ansi-palette-205-bg {
  --bg-color:var(--ansi-palette-205);
}
.ansi-palette-205-fg {
  --fg-color:var(--ansi-palette-205);
}
.ansi-palette-206-bg {
  --bg-color:var(--ansi-palette-206);
}
.ansi-palette-206-fg {
  --fg-color:var(--ansi-palette-206);
}
.ansi-palette-207-bg {
  --bg-color:var(--ansi-palette-207);
}
.ansi-palette-207-fg {
  --fg-color:var(--ansi-palette-207);
}
.ansi-palette-208-bg {
  --bg-color:var(--ansi-palette-208);
}
.ansi-palette-208-fg {
  --fg-color:var(--ansi-palette-208);
}
.ansi-palette-209-bg {
  --bg-color:var(--ansi-palette-209);
}
.ansi-palette-209-fg {
  --fg-color:var(--ansi-palette-209);
}
.ansi-palette-210-bg {
  --bg-color:var(--ansi-palette-210);
}
.ansi-palette-210-fg {
  --fg-color:var(--ansi-palette-210);
}
.ansi-palette-211-bg {
  --bg-color:var(--ansi-palette-211);
}
.ansi-palette-211-fg {
  --fg-color:var(--ansi-palette-211);
}
.ansi-palette-212-bg {
  --bg-color:var(--ansi-palette-212);
}
.ansi-palette-212-fg {
  --fg-color:var(--ansi-palette-212);
}
.ansi-palette-213-bg {
  --bg-color:var(--ansi-palette-213);
}
.ansi-palette-213-fg {
  --fg-color:var(--ansi-palette-213);
}
.ansi-palette-214-bg {
  --bg-color:var(--ansi-palette-214);
}
.ansi-palette-214-fg {
  --fg-color:var(--ansi-palette-214);
}
.ansi-palette-215-bg {
  --bg-color:var(--ansi-palette-215);
}
.ansi-palette-215-fg {
  --fg-color:var(--ansi-palette-215);
}
.ansi-palette-216-bg {
  --bg-color:var(--ansi-palette-216);
}
.ansi-palette-216-fg {
  --fg-color:var(--ansi-palette-216);
}
.ansi-palette-217-bg {
  --bg-color:var(--ansi-palette-217);
}
.ansi-palette-217-fg {
  --fg-color:var(--ansi-palette-217);
}
.ansi-palette-218-bg {
  --bg-color:var(--ansi-palette-218);
}
.ansi-palette-218-fg {
  --fg-color:var(--ansi-palette-218);
}
.ansi-palette-219-bg {
  --bg-color:var(--ansi-palette-219);
}
.ansi-palette-219-fg {
  --fg-color:var(--ansi-palette-219);
}
.ansi-palette-220-bg {
  --bg-color:var(--ansi-palette-220);
}
.ansi-palette-220-fg {
  --fg-color:var(--ansi-palette-220);
}
.ansi-palette-221-bg {
  --bg-color:var(--ansi-palette-221);
}
.ansi-palette-221-fg {
  --fg-color:var(--ansi-palette-221);
}
.ansi-palette-222-bg {
  --bg-color:var(--ansi-palette-222);
}
.ansi-palette-222-fg {
  --fg-color:var(--ansi-palette-222);
}
.ansi-palette-223-bg {
  --bg-color:var(--ansi-palette-223);
}
.ansi-palette-223-fg {
  --fg-color:var(--ansi-palette-223);
}
.ansi-palette-224-bg {
  --bg-color:var(--ansi-palette-224);
}
.ansi-palette-224-fg {
  --fg-color:var(--ansi-palette-224);
}
.ansi-palette-225-bg {
  --bg-color:var(--ansi-palette-225);
}
.ansi-palette-225-fg {
  --fg-color:var(--ansi-palette-225);
}
.ansi-palette-226-bg {
  --bg-color:var(--ansi-palette-226);
}
.ansi-palette-226-fg {
  --fg-color:var(--ansi-palette-226);
}
.ansi-palette-227-bg {
  --bg-color:var(--ansi-palette-227);
}
.ansi-palette-227-fg {
  --fg-color:var(--ansi-palette-227);
}
.ansi-palette-228-bg {
  --bg-color:var(--ansi-palette-228);
}
.ansi-palette-228-fg {
  --fg-color:var(--ansi-palette-228);
}
.ansi-palette-229-bg {
  --bg-color:var(--ansi-palette-229);
}
.ansi-palette-229-fg {
  --fg-color:var(--ansi-palette-229);
}
.ansi-palette-230-bg {
  --bg-color:var(--ansi-palette-230);
}
.ansi-palette-230-fg {
  --fg-color:var(--ansi-palette-230);
}
.ansi-palette-231-bg {
  --bg-color:var(--ansi-palette-231);
}
.ansi-palette-231-fg {
  --fg-color:var(--ansi-palette-231);
}
.ansi-palette-232-bg {
  --bg-color:var(--ansi-palette-232);
}
.ansi-palette-232-fg {
  --fg-color:var(--ansi-palette-232);
}
.ansi-palette-233-bg {
  --bg-color:var(--ansi-palette-233);
}
.ansi-palette-233-fg {
  --fg-color:var(--ansi-palette-233);
}
.ansi-palette-234-bg {
  --bg-color:var(--ansi-palette-234);
}
.ansi-palette-234-fg {
  --fg-color:var(--ansi-palette-234);
}
.ansi-palette-235-bg {
  --bg-color:var(--ansi-palette-235);
}
.ansi-palette-235-fg {
  --fg-color:var(--ansi-palette-235);
}
.ansi-palette-236-bg {
  --bg-color:var(--ansi-palette-236);
}
.ansi-palette-236-fg {
  --fg-color:var(--ansi-palette-236);
}
.ansi-palette-237-bg {
  --bg-color:var(--ansi-palette-237);
}
.ansi-palette-237-fg {
  --fg-color:var(--ansi-palette-237);
}
.ansi-palette-238-bg {
  --bg-color:var(--ansi-palette-238);
}
.ansi-palette-238-fg {
  --fg-color:var(--ansi-palette-238);
}
.ansi-palette-239-bg {
  --bg-color:var(--ansi-palette-239);
}
.ansi-palette-239-fg {
  --fg-color:var(--ansi-palette-239);
}
.ansi-palette-240-bg {
  --bg-color:var(--ansi-palette-240);
}
.ansi-palette-240-fg {
  --fg-color:var(--ansi-palette-240);
}
.ansi-palette-241-bg {
  --bg-color:var(--ansi-palette-241);
}
.ansi-palette-241-fg {
  --fg-color:var(--ansi-palette-241);
}
.ansi-palette-242-bg {
  --bg-color:var(--ansi-palette-242);
}
.ansi-palette-242-fg {
  --fg-color:var(--ansi-palette-242);
}
.ansi-palette-243-bg {
  --bg-color:var(--ansi-palette-243);
}
.ansi-palette-243-fg {
  --fg-color:var(--ansi-palette-243);
}
.ansi-palette-244-bg {
  --bg-color:var(--ansi-palette-244);
}
.ansi-palette-244-fg {
  --fg-color:var(--ansi-palette-244);
}
.ansi-palette-245-bg {
  --bg-color:var(--ansi-palette-245);
}
.ansi-palette-245-fg {
  --fg-color:var(--ansi-palette-245);
}
.ansi-palette-246-bg {
  --bg-color:var(--ansi-palette-246);
}
.ansi-palette-246-fg {
  --fg-color:var(--ansi-palette-246);
}
.ansi-palette-247-bg {
  --bg-color:var(--ansi-palette-247);
}
.ansi-palette-247-fg {
  --fg-color:var(--ansi-palette-247);
}
.ansi-palette-248-bg {
  --bg-color:var(--ansi-palette-248);
}
.ansi-palette-248-fg {
  --fg-color:var(--ansi-palette-248);
}
.ansi-palette-249-bg {
  --bg-color:var(--ansi-palette-249);
}
.ansi-palette-249-fg {
  --fg-color:var(--ansi-palette-249);
}
.ansi-palette-250-bg {
  --bg-color:var(--ansi-palette-250);
}
.ansi-palette-250-fg {
  --fg-color:var(--ansi-palette-250);
}
.ansi-palette-251-bg {
  --bg-color:var(--ansi-palette-251);
}
.ansi-palette-251-fg {
  --fg-color:var(--ansi-palette-251);
}
.ansi-palette-252-bg {
  --bg-color:var(--ansi-palette-252);
}
.ansi-palette-252-fg {
  --fg-color:var(--ansi-palette-252);
}
.ansi-palette-253-bg {
  --bg-color:var(--ansi-palette-253);
}
.ansi-palette-253-fg {
  --fg-color:var(--ansi-palette-253);
}
.ansi-palette-254-bg {
  --bg-color:var(--ansi-palette-254);
}
.ansi-palette-254-fg {
  --fg-color:var(--ansi-palette-254);
}
.ansi-palette-255-bg {
  --bg-color:var(--ansi-palette-255);
}
.ansi-palette-255-fg {
  --fg-color:var(--ansi-palette-255);
}
.font-system {
  font-family:
    Menlo,
    Consolas,
    DejaVu Sans Mono,
    monospace;
}
.jp-OutputPrompt {
  display: none;
}
.jp-OutputArea-output.jp-RenderedText,
.myst-jp-error-output,
.myst-jp-stream-output {
  padding: .75rem;
}
table.dataframe {
  margin: 0 !important;
  table-layout: fixed;
  border-collapse: collapse;
  --tw-border-spacing-x:0px;
  --tw-border-spacing-y:0px;
  border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
  border-style: none;
  font-size: .75rem;
  line-height: 1rem;
  --tw-text-opacity:1;
  color: rgb(0 0 0/var(--tw-text-opacity,1));
}
.dataframe thead {
  border-bottom-width: 1px;
  --tw-border-opacity:1;
  border-color: rgb(0 0 0/var(--tw-border-opacity,1));
  vertical-align: bottom;
}
.dataframe th {
  font-weight: 700;
}
.dataframe td {
  max-width: none;
  white-space: normal;
  border-style: none;
  padding: .5rem;
  text-align: right;
  vertical-align: middle;
  line-height: 1.5;
}
.jp-OutputArea-output table tr:nth-child(odd) {
  background-color: var(--myst-color-bg-secondary) !important;
}
.jp-OutputArea-output table tr:nth-child(odd):hover > * {
  background-color: var(--myst-color-info-bg) !important;
}
.jp-OutputArea-output table tr:nth-child(2n) {
  background-color: var(--myst-color-bg) !important;
}
.jp-OutputArea-output table tr:nth-child(2n):hover > * {
  background-color: var(--myst-color-info-bg) !important;
}
html.dark {
  --jp-ui-font-color0:#fff;
  --jp-ui-font-color1:hsla(0,0%,100%,.87);
  --jp-ui-font-color2:hsla(0,0%,100%,.54);
  --jp-ui-font-color3:hsla(0,0%,100%,.38);
  --jp-ui-inverse-font-color0:#000;
  --jp-ui-inverse-font-color1:rgba(0,0,0,.8);
  --jp-ui-inverse-font-color2:rgba(0,0,0,.5);
  --jp-ui-inverse-font-color3:rgba(0,0,0,.3);
  --jp-content-font-color0:#fff;
  --jp-content-font-color1:#fff;
  --jp-content-font-color2:hsla(0,0%,100%,.7);
  --jp-content-font-color3:hsla(0,0%,100%,.5);
  --jp-layout-color0:#111;
  --jp-layout-color1:var(--md-grey-900);
  --jp-layout-color2:var(--md-grey-800);
  --jp-layout-color3:var(--md-grey-700);
  --jp-layout-color4:var(--md-grey-600);
}
.jupyter-output {
  --ansi-black:#000;
  --ansi-blue:#00b;
  --ansi-white:#666;
  --ansi-yellow:#854d0e;
  --ansi-green:#1d7500;
  --ansi-cyan:#0c6ea6;
}
html.dark .jupyter-output {
  --ansi-black:#999;
  --ansi-blue:#7575f9;
  --ansi-red:#f93939;
  --ansi-magenta:#e13de1;
  --ansi-white:#e5e5e5;
  --ansi-green:#00eb00;
  --ansi-yellow:#facc15;
  --ansi-cyan:#00fafa;
}
.jupyter-error {
  --tw-bg-opacity:1;
  background-color: rgb(254 242 242/var(--tw-bg-opacity,1));
  --ansi-black:#000;
  --ansi-red:#b91c1c;
  --ansi-green:#1d7500;
  --ansi-yellow:#854d0e;
  --ansi-blue:#1e40af;
  --ansi-magenta:#86198f;
  --ansi-cyan:#0c6ea6;
  --ansi-white:#575757;
}
html.dark .jupyter-error {
  background-color: #7f1d1d4d;
  --ansi-black:#b5b5b5;
  --ansi-red:#ff9494;
  --ansi-green:#00eb00;
  --ansi-yellow:#facc15;
  --ansi-blue:#93c5fd;
  --ansi-magenta:#f0abfc;
  --ansi-cyan:#00fafa;
  --ansi-white:#b5b5b5;
}
.sphinx-desc-addname,
.sphinx-desc-inline,
.sphinx-desc-name,
.sphinx-desc-optional,
.sphinx-desc-parameterlist,
.sphinx-desc-returns,
.sphinx-desc-sig-element,
.sphinx-desc-sig-keyword,
.sphinx-desc-sig-keyword-type,
.sphinx-desc-sig-literal-char,
.sphinx-desc-sig-literal-number,
.sphinx-desc-sig-literal-string,
.sphinx-desc-sig-name,
.sphinx-desc-sig-operator,
.sphinx-desc-sig-punctuation,
.sphinx-desc-sig-space,
.sphinx-desc-signature-line,
.sphinx-desc-type,
.sphinx-desc-type-parameter {
  white-space: pre;
}
.sphinx-desc-name {
  font-size: 1.1em;
  font-weight: 700;
}
.sphinx-desc-signature {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    Liberation Mono,
    Courier New,
    monospace;
  font-weight: 300;
}
.sphinx-desc-returns:before {
  --tw-content:" \2192  ";
  content: var(--tw-content);
}
dl > dt:has([class^=sphinx-desc-]) {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    Liberation Mono,
    Courier New,
    monospace;
  font-weight: 300;
}
dl > dt:has([class^=sphinx-desc-]) > em {
  white-space: pre;
}
dl:has(>dt>[class^=sphinx-desc-]) > dd > dl:not(:has(>dt>[class^=sphinx-desc-])) {
  display: grid;
  grid-template-columns: fit-content(30%) auto;
}
dl:has(>dt>[class^=sphinx-desc-]) > dd > dl:not(:has(>dt>[class^=sphinx-desc-])) > dd > p {
  margin: unset !important;
}
dl:has(>dt>[class^=sphinx-desc-]) > dd > dl:not(:has(>dt>[class^=sphinx-desc-])) > :is(dt, dd) {
  margin: unset !important;
}
.myst-grid > * {
  margin: 0 !important;
}
p[data-line-number].line:before {
  content: attr(data-line-number);
  position: absolute;
  left: 0;
  font-family: monospace;
  width: 1.25em;
  text-align: right;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  color: gray;
  overflow: hidden;
}
p.line {
  position: relative;
  margin: 0;
}
.collapsible-content {
  overflow: hidden;
}
.collapsible-content[data-state=open] {
  animation: open-content .3s ease-out;
}
.collapsible-content[data-state=closed] {
  animation: close-content .3s ease-out;
}
@keyframes open-content {
  0% {
    height: 0;
  }
  to {
    height: var(--radix-collapsible-content-height);
  }
}
@keyframes close-content {
  0% {
    height: var(--radix-collapsible-content-height);
  }
  to {
    height: 0;
  }
}
.primary-scrollbar::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.primary-scrollbar::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: #cbd5e14d;
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  display: none;
}
button[aria-label="Open Contents"] {
  display: none !important;
}
.pyfirst-loading-bar {
  position: fixed;
  top: 0;
  left: 0;
  height: 4px;
  z-index: 9999;
  background: linear-gradient(90deg, var(--accent), #6366f1 35%, #a855f7 65%, var(--accent));
  background-size: 200% 100%;
  animation: pyfirst-loading-slide 1.8s ease-in-out infinite;
  transform-origin: left;
  box-shadow: 0 0 8px #2d7aff59;
}
@keyframes pyfirst-loading-slide {
  0% {
    width: 0;
    background-position: 0 50%;
  }
  30% {
    width: 40%;
    background-position: 100% 50%;
  }
  60% {
    width: 75%;
    background-position: 0 50%;
  }
  85% {
    width: 92%;
    background-position: 100% 50%;
  }
  to {
    width: 96%;
    background-position: 0 50%;
  }
}
.pyfirst-navigating {
  opacity: .5;
  transition: opacity .15s ease;
  pointer-events: none;
}
.pyfirst-hero-title h1.myst-fm-block-title {
  font-size: 2.5rem;
  font-weight: 800;
  letter-spacing: -.025em;
  line-height: 1.15;
  color: var(--text);
}
.pyfirst-hero-title .myst-fm-block-subtitle {
  font-size: 1.1rem;
  font-weight: 400;
  color: var(--text-2);
  letter-spacing: .01em;
  margin-top: .5rem;
}
.pyfirst-hero-title .myst-fm-block-subtitle:before {
  content: "";
  display: block;
  width: 3rem;
  height: 3px;
  background: var(--accent);
  border-radius: 2px;
  margin-bottom: .75rem;
}
.pyfirst-challenge-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 1.25rem;
  box-shadow: 0 2px 8px #0000000a;
  font-family:
    Inter,
    -apple-system,
    sans-serif;
  transition: box-shadow .2s ease;
}
.pyfirst-challenge-card:hover {
  box-shadow: 0 4px 16px #00000014;
}
.pyfirst-challenge-card__badge {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  background: var(--accent-bg);
  color: var(--accent);
  font-size: .75rem;
  font-weight: 600;
  padding: .25rem .65rem;
  border-radius: 20px;
  margin-bottom: .65rem;
  letter-spacing: .02em;
}
.pyfirst-challenge-card__title {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--text);
  line-height: 1.3;
  margin-bottom: .4rem;
}
.pyfirst-challenge-card__desc {
  font-size: .85rem;
  color: var(--text-2);
  line-height: 1.5;
  margin-bottom: .75rem;
}
.pyfirst-challenge-card__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: .75rem;
  color: var(--text-3);
}
.pyfirst-challenge-card__difficulty {
  display: flex;
  gap: 2px;
}
.pyfirst-challenge-card__star {
  font-size: .85rem;
  color: var(--border);
}
.pyfirst-challenge-card__star--active {
  color: #f5a623;
}
.pyfirst-challenge-card__action {
  display: flex;
  align-items: center;
  gap: .3rem;
  color: var(--accent);
  font-weight: 600;
  text-decoration: none;
  transition: gap .2s;
}
.pyfirst-challenge-card__action:hover {
  gap: .5rem;
}
#myst-no-css {
  --has-styling:1;
}
@media (min-width:1024px) {
  .lg\:col-margin-right {
    grid-column: body;
  }
  @media (min-width:1024px) {
    .lg\:col-margin-right {
      grid-column: body-end/page-end;
    }
  }
}
@media (min-width:1280px) {
  .xl\:article-grid {
    display: grid;
    grid-template-columns: [screen-start screen-inset-start] .5rem [page-start page-inset-start body-outset-start body-start gutter-left-start body-inset-start middle-start] 1fr 1fr [gutter-left-end] 1fr 1fr [gutter-right-start] 1fr 1fr [middle-end body-inset-end body-end gutter-right-end body-outset-end page-inset-end page-end] .5rem [screen-inset-end screen-end];
    align-content: flex-start;
  }
  @media (min-width:768px) {
    .xl\:article-grid {
      grid-template-columns: [screen-start] .25rem [screen-inset-start page-start page-inset-start body-outset-start] 1fr [body-start gutter-left-start] 1rem [body-inset-start] minmax(2ch, 10ch) [middle-start] minmax(2ch, 10ch) [gutter-left-end] minmax(2ch, 10ch) minmax(2ch, 10ch) [gutter-right-start] minmax(2ch, 10ch) [middle-end] minmax(2ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 1fr [body-outset-end page-inset-end page-end screen-inset-end] .25rem [screen-end];
    }
  }
  @media (min-width:1024px) {
    .xl\:article-grid {
      grid-template-columns: [screen-start] .25rem [screen-inset-start page-start] 1rem [page-inset-start body-outset-start] 1fr [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(5rem, 13rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .25rem [screen-end];
    }
  }
  @media (min-width:1280px) {
    .xl\:article-grid {
      grid-template-columns: [screen-start] .25rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] minmax(4rem, 9rem) [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(5rem, 13rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .25rem [screen-end];
    }
  }
  @media (min-width:1536px) {
    .xl\:article-grid {
      grid-template-columns: [screen-start] .5rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] minmax(4rem, 9rem) [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(5rem, 13rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
    }
  }
  .xl\:article-left-grid {
    display: grid;
    grid-template-columns: [screen-start screen-inset-start] .5rem [page-start page-inset-start body-outset-start body-start gutter-left-start body-inset-start middle-start] 1fr 1fr [gutter-left-end] 1fr 1fr [gutter-right-start] 1fr 1fr [middle-end body-inset-end body-end gutter-right-end body-outset-end page-inset-end page-end] .5rem [screen-inset-end screen-end];
    align-content: flex-start;
  }
  @media (min-width:768px) {
    .xl\:article-left-grid {
      grid-template-columns: [screen-start] .5rem [screen-inset-start page-start page-inset-start body-outset-start] 1rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(5ch, 15ch) [middle-start] minmax(5ch, 15ch) [gutter-left-end] minmax(5ch, 15ch) minmax(5ch, 15ch) [gutter-right-start] minmax(5ch, 15ch) [middle-end] minmax(5ch, 15ch) [body-inset-end] 1rem [body-end gutter-right-end body-outset-end page-inset-end] 1rem [page-end screen-inset-end] .5rem [screen-end];
    }
  }
  @media (min-width:1024px) {
    .xl\:article-left-grid {
      grid-template-columns: [screen-start] .5rem [screen-inset-start page-start page-inset-start body-outset-start] 1rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(5ch, 12ch) [middle-start] minmax(5ch, 12ch) [gutter-left-end] minmax(5ch, 12ch) minmax(5ch, 12ch) [gutter-right-start] minmax(5ch, 12ch) [middle-end] minmax(5ch, 12ch) [body-inset-end] 1rem [body-end] 1fr [gutter-right-end] 1rem [body-outset-end] minmax(10rem, 18rem) [page-inset-end] 1rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
    }
  }
  @media (min-width:1280px) {
    .xl\:article-left-grid {
      grid-template-columns: [screen-start] .5rem [screen-inset-start page-start page-inset-start body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 12ch) [middle-start] minmax(8ch, 12ch) [gutter-left-end] minmax(8ch, 12ch) minmax(8ch, 12ch) [gutter-right-start] minmax(8ch, 12ch) [middle-end] minmax(8ch, 12ch) [body-inset-end] 1rem [body-end] 1fr [gutter-right-end] 1rem [body-outset-end] minmax(10rem, 18rem) [page-inset-end] 1rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
    }
  }
  @media (min-width:1536px) {
    .xl\:article-left-grid {
      grid-template-columns: [screen-start] .5rem [screen-inset-start] 1fr [page-start page-inset-start body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 12ch) [middle-start] minmax(8ch, 12ch) [gutter-left-end] minmax(8ch, 12ch) minmax(8ch, 12ch) [gutter-right-start] minmax(8ch, 12ch) [middle-end] minmax(8ch, 12ch) [body-inset-end] 1rem [body-end] 1fr [gutter-right-end] 1rem [body-outset-end] minmax(10rem, 18rem) [page-inset-end] 1rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
    }
  }
  .xl\:article-center-grid {
    display: grid;
    grid-template-columns: [screen-start screen-inset-start] .5rem [page-start page-inset-start body-outset-start body-start gutter-left-start body-inset-start middle-start] 1fr 1fr [gutter-left-end] 1fr 1fr [gutter-right-start] 1fr 1fr [middle-end body-inset-end body-end gutter-right-end body-outset-end page-inset-end page-end] .5rem [screen-inset-end screen-end];
    align-content: flex-start;
  }
  @media (min-width:768px) {
    .xl\:article-center-grid {
      grid-template-columns: [screen-start] .25rem [screen-inset-start page-start page-inset-start body-outset-start] 1fr [body-start gutter-left-start] 1rem [body-inset-start] minmax(2ch, 10ch) [middle-start] minmax(2ch, 10ch) [gutter-left-end] minmax(2ch, 10ch) minmax(2ch, 10ch) [gutter-right-start] minmax(2ch, 10ch) [middle-end] minmax(2ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 1fr [body-outset-end page-inset-end page-end screen-inset-end] .25rem [screen-end];
    }
  }
  @media (min-width:1024px) {
    .xl\:article-center-grid {
      grid-template-columns: [screen-start] .5rem [screen-inset-start page-start] 2rem [page-inset-start] 2fr [body-outset-start gutter-outset-left-start] 1rem [body-start gutter-left-start] 2rem [body-inset-start gutter-left-start] minmax(8ch, 10ch) [gutter-left-end middle-start] minmax(8ch, 10ch) minmax(8ch, 10ch) [] minmax(8ch, 10ch) [] minmax(8ch, 10ch) [middle-end gutter-right-start gutter-page-right-start] minmax(8ch, 10ch) [body-inset-end gutter-right-end] 2rem [body-end] 1rem [body-outset-end] 2fr [page-inset-end] 2rem [page-end screen-inset-end] .5rem [screen-end];
    }
  }
  @media (min-width:1280px) {
    .xl\:article-center-grid {
      grid-template-columns: [screen-start] .25rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] minmax(4rem, 9rem) [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(4rem, 9rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .25rem [screen-end];
    }
  }
  @media (min-width:1536px) {
    .xl\:article-center-grid {
      grid-template-columns: [screen-start] .5rem [screen-inset-start] 1fr [page-start] 3rem [page-inset-start] minmax(4rem, 9rem) [body-outset-start] 3rem [body-start gutter-left-start] 1rem [body-inset-start] minmax(8ch, 10ch) [middle-start] minmax(8ch, 10ch) [gutter-left-end] minmax(8ch, 10ch) minmax(8ch, 10ch) [gutter-right-start] minmax(8ch, 10ch) [middle-end] minmax(8ch, 10ch) [body-inset-end] 1rem [body-end gutter-right-end] 3rem [body-outset-end] minmax(4rem, 9rem) [page-inset-end] 3rem [page-end] 1fr [screen-inset-end] .5rem [screen-end];
    }
  }
  .xl\:article-center-grid > *,
  .xl\:article-grid > *,
  .xl\:article-left-grid > * {
    grid-column: body;
  }
  .xl\:article-center-grid > *,
  .xl\:article-grid > *,
  .xl\:article-left-grid > * {
    margin-top: 0 !important;
  }
  .xl\:col-margin-left {
    grid-column: body;
  }
  @media (min-width:1280px) {
    .xl\:col-margin-left {
      grid-column: page/body-start;
    }
  }
  .xl\:article-grid:where(footer) > * {
    grid-column: page;
  }
  .xl\:article-left-grid :where(footer) > * {
    grid-column: page;
  }
  .xl\:article-center-grid :where(footer) > * {
    grid-column: page;
  }
}
@media (min-width:768px) {
  .md\:grid-areas-just-wide {
    grid-template-areas: "subtitle subtitle subtitle" "title . links" "body body body";
  }
}
.before\:content-\[\'\.\.\._\'\]:before {
  --tw-content:"... ";
  content: var(--tw-content);
}
.after\:mr-1:after {
  content: var(--tw-content);
  margin-right: .25rem;
}
.after\:content-\[\'\,\'\]:after {
  --tw-content:",";
  content: var(--tw-content);
}
.after\:content-\[\'_\.\.\.\'\]:after {
  --tw-content:" ...";
  content: var(--tw-content);
}
.focus-within\:z-40:focus-within {
  z-index: 40;
}
.focus-within\:h-auto:focus-within {
  height: auto;
}
.focus-within\:w-auto:focus-within {
  width: auto;
}
.focus-within\:p-2:focus-within {
  padding: .5rem;
}
.focus-within\:ring-1:focus-within {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow,0 0 #0000);
}
.hover\:border-myst-active:hover {
  border-color: var(--myst-color-active);
}
.hover\:border-myst-focus-ring:hover {
  border-color: var(--myst-color-focus-ring);
}
.hover\:border-transparent:hover {
  border-color: transparent;
}
.hover\:border-l-myst-active:hover {
  border-left-color: var(--myst-color-active);
}
.hover\:bg-gray-500:hover {
  --tw-bg-opacity:1;
  background-color: rgb(107 114 128/var(--tw-bg-opacity,1));
}
.hover\:bg-myst-accent-surface-border:hover {
  background-color: var(--myst-color-accent-surface-border);
}
.hover\:bg-myst-surface:hover {
  background-color: var(--myst-color-surface);
}
.hover\:bg-myst-surface-hover:hover {
  background-color: var(--myst-color-surface-hover);
}
.hover\:bg-myst-text:hover {
  background-color: var(--myst-color-text);
}
.hover\:bg-orange-600:hover {
  --tw-bg-opacity:1;
  background-color: rgb(234 88 12/var(--tw-bg-opacity,1));
}
.hover\:stroke-myst-text:hover {
  stroke: var(--myst-color-text);
}
.hover\:font-light:hover {
  font-weight: 300;
}
.hover\:font-semibold:hover {
  font-weight: 600;
}
.hover\:text-\[\#E18435\]:hover {
  --tw-text-opacity:1;
  color: rgb(225 132 53/var(--tw-text-opacity,1));
}
.hover\:text-inherit:hover {
  color: inherit;
}
.hover\:text-myst-active:hover {
  color: var(--myst-color-active);
}
.hover\:text-myst-bg:hover {
  color: var(--myst-color-bg);
}
.hover\:text-myst-link:hover {
  color: var(--myst-color-link);
}
.hover\:text-myst-link-hover:hover {
  color: var(--myst-color-link-hover);
}
.hover\:text-myst-link-underline:hover {
  color: var(--myst-color-link-underline);
}
.hover\:text-myst-text:hover {
  color: var(--myst-color-text);
}
.hover\:text-myst-text-secondary:hover {
  color: var(--myst-color-text-secondary);
}
.hover\:underline:hover {
  text-decoration-line: underline;
}
.hover\:no-underline:hover {
  text-decoration-line: none;
}
.hover\:opacity-10:hover {
  opacity: .1;
}
.hover\:opacity-100:hover {
  opacity: 1;
}
.hover\:shadow-\[0_0_0_1px_black\]:hover {
  --tw-shadow:0 0 0 1px #000;
  --tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.hover\:shadow-\[inset_0_0_0px_30px_\#00000003\]:hover {
  --tw-shadow:inset 0 0 0px 30px #00000003;
  --tw-shadow-colored:inset 0 0 0px 30px var(--tw-shadow-color);
}
.hover\:shadow-\[inset_0_0_0px_30px_\#00000003\]:hover,
.hover\:shadow-lg:hover {
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.hover\:shadow-lg:hover {
  --tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);
  --tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);
}
.hover\:shadow-md:hover {
  --tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);
  --tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.hover\:ring-myst-focus-ring:hover {
  --tw-ring-color:var(--myst-color-focus-ring);
}
.focus\:border-myst-focus-ring:focus {
  border-color: var(--myst-color-focus-ring);
}
.focus\:opacity-100:focus {
  opacity: 1;
}
.focus\:shadow-\[0_0_0_2px\]:focus {
  --tw-shadow:0 0 0 2px;
  --tw-shadow-colored:0 0 0 2px var(--tw-shadow-color);
}
.focus\:shadow-\[0_0_0_2px\]:focus,
.focus\:shadow-\[0_0_0_2px_black\]:focus {
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.focus\:shadow-\[0_0_0_2px_black\]:focus {
  --tw-shadow:0 0 0 2px #000;
  --tw-shadow-colored:0 0 0 2px var(--tw-shadow-color);
}
.focus\:shadow-black:focus {
  --tw-shadow-color:#000;
  --tw-shadow:var(--tw-shadow-colored);
}
.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.focus\:outline:focus {
  outline-style: solid;
}
.focus\:ring-myst-focus-ring:focus {
  --tw-ring-color:var(--myst-color-focus-ring);
}
.focus-visible\:outline:focus-visible {
  outline-style: solid;
}
.focus-visible\:ring-2:focus-visible {
  --tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow:
    var(--tw-ring-offset-shadow),
    var(--tw-ring-shadow),
    var(--tw-shadow,0 0 #0000);
}
.focus-visible\:ring-myst-focus-ring:focus-visible {
  --tw-ring-color:var(--myst-color-focus-ring);
}
.focus-visible\:ring-opacity-75:focus-visible {
  --tw-ring-opacity:.75;
}
.focus-visible\:ring-offset-2:focus-visible {
  --tw-ring-offset-width:2px;
}
.active\:text-myst-success:active {
  color: var(--myst-color-success);
}
.active\:opacity-100:active {
  opacity: 1;
}
.group\/block:hover .group-hover\/block\:flex {
  display: flex;
}
.group\/block:hover .group-hover\/block\:hidden {
  display: none;
}
.group:hover .group-hover\:-translate-x-1 {
  --tw-translate-x:-.25rem;
}
.group:hover .group-hover\:-translate-x-1,
.group:hover .group-hover\:translate-x-1 {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:translate-x-1 {
  --tw-translate-x:.25rem;
}
.group:hover .group-hover\:underline {
  text-decoration-line: underline;
}
.group:hover .group-hover\:opacity-100,
.group\/backmatter:hover .group-hover\/backmatter\:opacity-100,
.group\/block:hover .group-hover\/block\:opacity-100 {
  opacity: 1;
}
.group:hover .group-hover\:opacity-70 {
  opacity: .7;
}
.group[aria-selected=true] .group-aria-selected\:visible {
  visibility: visible;
}
.group[aria-selected=true] .group-aria-selected\:bg-myst-active {
  background-color: var(--myst-color-active);
}
.group[aria-selected=true] .group-aria-selected\:text-white {
  --tw-text-opacity:1;
  color: rgb(255 255 255/var(--tw-text-opacity,1));
}
.group[aria-selected=true] .group-aria-selected\:underline {
  text-decoration-line: underline;
}
.group[data-state=open] .group-data-\[state\=open\]\:rotate-90 {
  --tw-rotate:90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (prefers-reduced-motion:no-preference) {
  @keyframes spin {
    to {
      transform: rotate(1turn);
    }
  }
  .motion-safe\:animate-spin {
    animation: spin 1s linear infinite;
  }
}
.dark\:block:is(.dark *) {
  display: block;
}
.dark\:hidden:is(.dark *) {
  display: none;
}
.dark\:rounded:is(.dark *) {
  border-radius: .25rem;
}
.dark\:border-y-0:is(.dark *) {
  border-top-width: 0;
  border-bottom-width: 0;
}
.dark\:border-l-4:is(.dark *) {
  border-left-width: 4px;
}
.dark\:border-myst-error:is(.dark *) {
  border-color: var(--myst-color-error);
}
.dark\:border-myst-info:is(.dark *) {
  border-color: var(--myst-color-info);
}
.dark\:border-myst-proof:is(.dark *) {
  border-color: var(--myst-color-proof);
}
.dark\:bg-myst-bg-secondary:is(.dark *) {
  background-color: var(--myst-color-bg-secondary);
}
.dark\:bg-myst-surface:is(.dark *) {
  background-color: var(--myst-color-surface);
}
.dark\:bg-myst-surface-hover:is(.dark *) {
  background-color: var(--myst-color-surface-hover);
}
.dark\:bg-neutral-800\/80:is(.dark *) {
  background-color: #262626cc;
}
.dark\:bg-orange-700:is(.dark *) {
  --tw-bg-opacity:1;
  background-color: rgb(194 65 12/var(--tw-bg-opacity,1));
}
.dark\:bg-red-800:is(.dark *) {
  --tw-bg-opacity:1;
  background-color: rgb(153 27 27/var(--tw-bg-opacity,1));
}
.dark\:bg-slate-800:is(.dark *) {
  --tw-bg-opacity:1;
  background-color: rgb(30 41 59/var(--tw-bg-opacity,1));
}
.dark\:bg-slate-800\/50:is(.dark *) {
  background-color: #1e293b80;
}
.dark\:bg-slate-950:is(.dark *) {
  --tw-bg-opacity:1;
  background-color: rgb(2 6 23/var(--tw-bg-opacity,1));
}
.dark\:fill-myst-surface:is(.dark *) {
  fill: var(--myst-color-surface);
}
.dark\:text-gray-600:is(.dark *) {
  --tw-text-opacity:1;
  color: rgb(75 85 99/var(--tw-text-opacity,1));
}
.dark\:text-green-500:is(.dark *) {
  --tw-text-opacity:1;
  color: rgb(34 197 94/var(--tw-text-opacity,1));
}
.dark\:text-myst-text:is(.dark *) {
  color: var(--myst-color-text);
}
.dark\:text-purple-500:is(.dark *) {
  --tw-text-opacity:1;
  color: rgb(168 85 247/var(--tw-text-opacity,1));
}
.dark\:text-red-500:is(.dark *) {
  --tw-text-opacity:1;
  color: rgb(239 68 68/var(--tw-text-opacity,1));
}
.dark\:text-slate-400:is(.dark *) {
  --tw-text-opacity:1;
  color: rgb(148 163 184/var(--tw-text-opacity,1));
}
.dark\:shadow-2xl:is(.dark *) {
  --tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);
  --tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.dark\:shadow-none:is(.dark *) {
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
.dark\:shadow-neutral-900:is(.dark *) {
  --tw-shadow-color:#171717;
  --tw-shadow:var(--tw-shadow-colored);
}
.dark\:hover\:shadow-\[inset_0_0_0px_30px_\#FFFFFF03\]:hover:is(.dark *) {
  --tw-shadow:inset 0 0 0px 30px #ffffff03;
  --tw-shadow-colored:inset 0 0 0px 30px var(--tw-shadow-color);
  box-shadow:
    var(--tw-ring-offset-shadow,0 0 #0000),
    var(--tw-ring-shadow,0 0 #0000),
    var(--tw-shadow);
}
@media not all and (min-width:1280px) {
  .max-xl\:\!top-0 {
    top: 0 !important;
  }
  .max-xl\:z-40 {
    z-index: 40;
  }
  .max-xl\:\!mt-0 {
    margin-top: 0 !important;
  }
  .max-xl\:h-full {
    height: 100%;
  }
  .max-xl\:h-screen {
    height: 100vh;
  }
  .max-xl\:w-\[75vw\] {
    width: 75vw;
  }
  .max-xl\:max-w-\[350px\] {
    max-width: 350px;
  }
}
@media (min-width:640px) {
  .sm\:left-1\/2 {
    left: 50%;
  }
  .sm\:right-2 {
    right: .5rem;
  }
  .sm\:top-\[var\(--content-top\)\] {
    top: var(--content-top);
  }
  .sm\:col-span-2 {
    grid-column: span 2/span 2;
  }
  .sm\:mr-5 {
    margin-right: 1.25rem;
  }
  .sm\:mr-7 {
    margin-right: 1.75rem;
  }
  .sm\:mt-0 {
    margin-top: 0;
  }
  .sm\:block {
    display: block;
  }
  .sm\:flex {
    display: flex;
  }
  .sm\:grid {
    display: grid;
  }
  .sm\:hidden {
    display: none;
  }
  .sm\:h-auto {
    height: auto;
  }
  .sm\:max-h-\[var\(--content-max-height\)\] {
    max-height: var(--content-max-height);
  }
  .sm\:w-64 {
    width: 16rem;
  }
  .sm\:w-\[90vw\] {
    width: 90vw;
  }
  .sm\:max-w-\[400px\] {
    max-width: 400px;
  }
  .sm\:max-w-\[500px\] {
    max-width: 500px;
  }
  .sm\:max-w-screen-sm {
    max-width: 640px;
  }
  .sm\:-translate-x-1\/2 {
    --tw-translate-x:-50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
  .sm\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .sm\:grid-cols-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
  .sm\:grid-cols-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .sm\:grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sm\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .sm\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .sm\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .sm\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .sm\:grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .sm\:grid-cols-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .sm\:grid-cols-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .sm\:gap-4 {
    gap: 1rem;
  }
  .sm\:rounded-md {
    border-radius: .375rem;
  }
  .sm\:px-0 {
    padding-left: 0;
    padding-right: 0;
  }
  .sm\:px-3 {
    padding-left: .75rem;
    padding-right: .75rem;
  }
  .sm\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .sm\:py-28 {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
  .sm\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
@media (min-width:768px) {
  .md\:absolute {
    position: absolute;
  }
  .md\:my-\[4rem\] {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
  .md\:ml-5 {
    margin-left: 1.25rem;
  }
  .md\:ml-auto {
    margin-left: auto;
  }
  .md\:block {
    display: block;
  }
  .md\:h-full {
    height: 100%;
  }
  .md\:w-\[200px\] {
    width: 200px;
  }
  .md\:w-\[calc\(100\%\/3\)\] {
    width: 33.33333%;
  }
  .md\:w-\[calc\(2\*100\%\/3\)\] {
    width: 66.66667%;
  }
  .md\:max-w-\[300px\] {
    max-width: 300px;
  }
  .md\:flex-none {
    flex: none;
  }
  .md\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .md\:grid-cols-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
  .md\:grid-cols-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .md\:grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .md\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .md\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .md\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .md\:grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .md\:grid-cols-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .md\:grid-cols-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .md\:flex-row {
    flex-direction: row;
  }
  .md\:p-8 {
    padding: 2rem;
  }
  .md\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .md\:pl-16 {
    padding-left: 4rem;
  }
}
@media (min-width:1024px) {
  .lg\:absolute {
    position: absolute;
  }
  .lg\:sticky {
    position: sticky;
  }
  .lg\:z-10 {
    z-index: 10;
  }
  .lg\:my-0 {
    margin-top: 0;
    margin-bottom: 0;
  }
  .lg\:ml-10 {
    margin-left: 2.5rem;
  }
  .lg\:ml-auto {
    margin-left: auto;
  }
  .lg\:mr-0 {
    margin-right: 0;
  }
  .lg\:block {
    display: block;
  }
  .lg\:flex {
    display: flex;
  }
  .lg\:hidden {
    display: none;
  }
  .lg\:h-0 {
    height: 0;
  }
  .lg\:h-full {
    height: 100%;
  }
  .lg\:w-\[calc\(50\%\)\] {
    width: 50%;
  }
  .lg\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .lg\:grid-cols-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
  .lg\:grid-cols-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .lg\:grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .lg\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .lg\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .lg\:grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .lg\:grid-cols-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .lg\:grid-cols-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .lg\:p-8 {
    padding: 2rem;
  }
  .lg\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .lg\:pl-24 {
    padding-left: 6rem;
  }
  .lg\:pt-0 {
    padding-top: 0;
  }
}
@media (min-width:1280px) {
  .xl\:pointer-events-none {
    pointer-events: none;
  }
  .xl\:z-30 {
    z-index: 30;
  }
  .xl\:ml-0 {
    margin-left: 0;
  }
  .xl\:ml-7 {
    margin-left: 1.75rem;
  }
  .xl\:flex {
    display: flex;
  }
  .xl\:hidden {
    display: none;
  }
  .xl\:w-full {
    width: 100%;
  }
  .xl\:min-w-\[19\.5rem\] {
    min-width: 19.5rem;
  }
  .xl\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .xl\:grid-cols-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
  .xl\:grid-cols-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .xl\:grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .xl\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .xl\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .xl\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .xl\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .xl\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .xl\:grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .xl\:grid-cols-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .xl\:grid-cols-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
}
.\[\&\>\*\]\:col-page > * {
  grid-column: page;
}
.\[\&\>\*\]\:m-0 > * {
  margin: 0;
}
.\[\&_a\]\:font-semibold a {
  font-weight: 600;
}
.\[\&_a\]\:underline a {
  text-decoration-line: underline;
}
.\[\&_img\]\:m-0 img {
  margin: 0;
}
.\[\&_img\]\:h-full img {
  height: 100%;
}
.\[\&_img\]\:w-full img {
  width: 100%;
}
.\[\&_img\]\:object-cover img {
  -o-object-fit: cover;
  object-fit: cover;
}
.\[\&_p\]\:contents p {
  display: contents;
}
.\[\&_picture\]\:m-0 picture {
  margin: 0;
}
.\[\&_picture\]\:inline picture {
  display: inline;
}
@media (hover:hover) {
  .\[\@media\(hover\:hover\)\]\:opacity-0 {
    opacity: 0;
  }
  .\[\@media\(hover\:hover\)\]\:transition-opacity {
    transition-property: opacity;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    transition-duration: .15s;
  }
  .\[\@media\(hover\:hover\)\]\:focus\:opacity-100:focus {
    opacity: 1;
  }
  .group:hover .\[\@media\(hover\:hover\)\]\:group-hover\:opacity-70 {
    opacity: .7;
  }
}
/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/
