* {
    box-sizing: border-box;
}

body {
    margin: 0;

    font-family: var(--mcl-text-font);
    font-size: var(--mcl-text-size);
    color: var(--mcl-text-color);

    background-color: var(--mcl-body-bg-fallback);
    background-image: var(--mcl-header-bg), var(--mcl-body-bg);
    background-repeat: repeat-x,repeat;
    background-position: top left, top left;
    background-size: var(--mcl-bg-sizes);
}

a {
    text-decoration: none;
    color: var(--mcl-link-color);
}

a:hover {
    text-decoration: underline;
}

a:visited {
    color: var(--mcl-link-visited-color);
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    margin-bottom: .25em;

    display: flow-root;
    font-weight: normal;
    font-family: var(--mcl-heading-font);
    color: var(--mcl-text-color-alt);
}

:is(h1, h2, h3, h4, h5, h6, dt) .headerlink {
    display: none;
    font-size: .95em;
    font-family: var(--mcl-text-font);
    text-decoration: none;
}

:is(h2, h3, h4, h5, h6, dt):hover .headerlink {
    display: inline-block;
    margin-left: .625rem;
    line-height: 0;
    color: var(--mcl-heading-link-color);
}

:is(h2, h3, h4, h5, h6):hover .headerlink:hover {
    color: var(--mcl-heading-link-active-color);
}

h1, h2 {
    border-bottom: var(--mcl-heading-border);
}

h3, h4, h5, h6 {
    margin-bottom: 0;
    margin: .5rem 0;
}

h1 { font-size: 1.75rem; display: block; }

h2 { font-size: 1.3125rem; }

h3, h4, h5, h6 { font-size: 1.1875rem; font-weight: 600; font-family: var(--mcl-text-font); }

h4, h5, h6 { font-size: 1.0625rem; }

footer, .mcl-toc > ul, .mcl-auto-toc > ul > li > ul, .mcl-auto-toc-global .toctree-l1 > ul {
    margin-top: .9375rem;
    font-size: .875rem;

    border-image-slice: var(--mcl-toc-body-border-slices);
    border-image-width: var(--mcl-toc-body-border-widths);
    border-image-outset: 0 0 0 0;
    border-image-repeat: repeat repeat;
    border-image-source: var(--mcl-toc-body-border-bg);
    border-style: solid;
    filter: var(--mcl-toc-btn-filter);

    background-image: var(--mcl-toc-body-bg);
    background-size: 64px;

    color: var(--mcl-toc-header-color);
}

.mcl-toc > ul, .mcl-auto-toc > ul > li > ul, .mcl-auto-toc-global .toctree-l1 > ul {
    padding: .1em .75em .5em;
}

footer {
    border-image-width: var(--mcl-footer-border-widths);
    padding: .5em .75em;
    margin-left: 6px;
}

:is(footer, .mcl-toc > ul) a {
    color: var(--mcl-toc-text-color);
}

:is(footer, .mcl-toc > ul) a:hover {
    color: var(--mcl-toc-text-active-color);
}

a.footnote-reference {
    vertical-align: super;
    font-size: .8em;
    line-height: 0;
    text-decoration: none;
}

:is(#mclMobileKebab, #mclMobileSearchLink) img {
    max-width: 25px;
    filter: var(--mcl-mobile-top-nav-btn-filter);
}

.mcl-wrap {
    margin: 1.875rem 1.875rem 1.875rem 0;
    margin-top: 0;

    display: grid;
    grid-template-columns: 18.75rem 1fr 15.625rem;
    align-items: flex-start;
    gap: .9375rem;

    min-height: calc(100vh - 3.125rem);
}

.mcl-wrap.w-notoc {
    grid-template-columns: 18.75rem 1fr;
}

.mcl-sidebar-right {
    position: sticky;
    top: .9375rem;

    margin-top: 4.875rem;
}

.mcl-sidebar-left {
    position: sticky;
    top: 0;

    mask-image: linear-gradient(to bottom, black 90%, transparent 100%);
    overflow-y: auto;
    height: calc(100vh - 1.875rem);

    display: flex;
    flex-direction: column;
    gap: .9375rem;

    direction: rtl;
    padding-left: .9375rem;
    padding-bottom: 3.125rem;
}

.mcl-sidebar-left > * {
    direction: ltr;
}

@supports selector(::-webkit-scrollbar) {
    .mcl-sidebar-left {
        padding-left: 1.875rem;
    }

    .mcl-sidebar-left:not(:hover)::-webkit-scrollbar {
        display: none;
    }
}

.mcl-logo {
    position: relative;
}

.mcl-logo > a {
    display: block;
    width: 50%;
    margin: auto;
}

.mcl-page {
    display: grid;
    margin-top: 3.34375rem;
    grid-template-rows: 2.25rem 1fr;
}

.mcl-logo > a > img {
    width: 100%;
}

.mcl-topnav {
    position: relative;

    display: flex;
    flex-direction: row;

    gap: .625rem;
}

.mcl-topnav::before {
    display: block;
    content: " ";
    z-index: -1;

    position: absolute;
    bottom: 0;
    left: 6px;

    height: 6px;
    width: calc(100% - 6px);

    background-color: var(--mcl-top-nav-bg);
}

.mcl-topnav::after {
    display: block;
    content: " ";

    position: absolute;
    bottom: 0;
    right: 0;

    height: 0;
    width: 0;

    border-style: solid;
    border-width: 7px 0 0 7px;
    border-color: var(--mcl-top-nav-trispective-right) transparent transparent transparent;
}

.mcl-topnav-alt {
    display: flex;
    flex-grow: 1;
    flex-direction: row;
    align-items: flex-end;
    justify-content: flex-end;

    margin-right: .75rem;
    padding-bottom: .1875rem;
}

.mcl-search-form, .mcl-light-switch {
    height: 90%;
    position: relative;
    border-top: 3px solid var(--mcl-search-bar-top-bg);
    border-left: 3px solid var(--mcl-search-bar-side-bg);
    background-color: var(--mcl-search-bar-bg-fallback);
    background-image: var(--mcl-search-bar-bg-gradient);
}

.mcl-light-switch {
    appearance: none;
    border-right: none;
    border-bottom: none;
    margin-right: 10px;
    padding: 0;
    width: 32px;
    cursor: pointer;
}

.mcl-light-switch:empty {
    display: none;
}

.mcl-light-switch > ion-icon {
    color: var(--mcl-text-color);
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    padding: 5px;
}

.mcl-search-form {
    display: grid;
    grid-template-columns: 1fr auto;

    width: 13.4375rem;
    max-width: 13.4375rem;
    transition: .3s width ease-in-out,
    .3s max-width ease-in-out;
}

.mcl-search-form:focus-within {
    width: 100%;
    max-width: max(13.4375rem, 30vw);
}

.mcl-search-form > :is(input, button), .mcl-light-switch > ion-icon {
    background-color: var(--mcl-search-bar-bg-bleacher);
}

.mcl-search-form > input {
    appearance: none;

    min-width: 0;
    padding: 0 .5em;
    padding-right: 0;

    outline: none;
    border: none;
    color: var(--mcl-search-bar-color);
}

.mcl-search-form > input::placeholder {
    color: var(--mcl-search-bar-placeholder-color);
}

.mcl-search-form > button {
    appearance: none;
    font-weight: 600;

    cursor: pointer;
    border: none;

    padding: 0 .625em;
    padding-left: .75em;
    color: var(--mcl-search-bar-color);
}

:is(.mcl-search-form, .mcl-light-switch)::before {
    display: block;
    content: " ";
    position: absolute;
    right: 0;
    top: -3px;
    height: 0;
    width: 0;
    border-style: solid;
    border-width: 3px 0 0 4px;
    border-color: var(--mcl-search-bar-trispective-right) transparent transparent transparent;
}

:is(.mcl-search-form, .mcl-light-switch)::after {
    display: block;
    content: " ";
    position: absolute;
    bottom: 0;
    left: -3px;
    height: 0;
    width: 0;
    border-style: solid;
    border-width: 0 3px 3px 0;
    border-color: transparent transparent var(--mcl-search-bar-trispective-left) transparent;
}

div#search-results {
    margin-top: 1em;
}

.mcl-nav-button {
    display: block;
    position: relative;
    padding: .9375rem .875rem 0 1.25rem;

    text-decoration: none;
    font-weight: bold;
    font-size: .8125rem;

    background: var(--mcl-top-nav-btn-bg-sprite), var(--mcl-top-nav-btn-bg);
    color: var(--mcl-text-color) !important;
}

.mcl-nav-button.current, .mcl-nav-button:hover {
    background: var(--mcl-top-nav-btn-bg-sprite), var(--mcl-top-nav-btn-active-bg);
    text-decoration: none;
}

.mcl-nav-button::before {
    display: block;
    content: " ";

    position: absolute;
    bottom: 0;
    left: 0;

    height: 0;
    width: 0;

    border-style: solid;
    border-width: 0 6px 6px 0;
    border-color: transparent transparent var(--mcl-top-nav-btn-trispective-left) transparent;
}

.mcl-nav-button.first::before {
    border-color: transparent transparent var(--mcl-top-nav-btn-trispective-left-alt) transparent;
}

.mcl-nav-button::after {
    display: block;
    content: " ";

    position: absolute;
    right: 0;
    top: 0;

    height: 0;
    width: 0;

    border-style: solid;
    border-width: 6px 0 0 6px;
    border-color: var(--mcl-top-nav-btn-trispective-right) transparent transparent transparent;
}

.mcl-nav-button img {
    max-width: 16px;
    max-height: 16px;
    vertical-align: middle;
}

.mcl-document-wrap, .mcl-topnav, .mcl-page footer {
    max-width: calc(100vw - 37.5rem);
}

.mcl-wrap.w-notoc :is(.mcl-document-wrap, .mcl-topnav, .mcl-page footer) {
    max-width: calc(100vw - 18.75rem);
}

.mcl-document-wrap {
    border-left: 6px solid var(--mcl-document-side-shadow);
    container-type: inline-size;
}

.mcl-document {
    padding: 1.5rem;
    padding-top: 1px;

    background-color: var(--mcl-document-bg);
    line-height: 1.4;
    min-height: 100%;
}

.mcl-document ion-icon {
    vertical-align: sub;
}

.mcl-toc > h3 {
    background: var(--mcl-toc-btn-active-bg);
    box-shadow: var(--mcl-toc-btn-active-border);

    font-weight: bold;
    font-size: 1rem;
    color: var(--mcl-toc-header-color);

    padding: calc(.5em + 2px);
    border-bottom: 2px solid var(--mcl-toc-body-outer-border);
}

.mcl-toc ul {
    margin: 0;
    list-style: none;
}

.mcl-toc > ul {
    padding-bottom: .3125rem;
    padding-top: .3125rem;
}

.mcl-toc li {
    margin: .3125rem 0;
}

.mcl-toc li ul {
    padding-left: 1.25rem;
}

.mcl-toc li:is([data-toc-level="0"], [data-toc-level="3"], [data-toc-level="4"], [data-toc-level="5"], [data-toc-level="6"]) a {
    font-style: oblique;
}

:is(.mcl-auto-toc, .mcl-auto-toc-global) ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

:is(.mcl-auto-toc, .mcl-auto-toc-global) ul a {
    text-decoration: none;
    color: var(--mcl-toc-text-color);
}

:is(.mcl-auto-toc, .mcl-auto-toc-global) ul a:hover {
    text-decoration: underline;
    color: var(--mcl-toc-text-active-color);
}

:is(.mcl-auto-toc, .mcl-auto-toc-global) ul a > code {
    font-family: var(--mcl-monospace-font);
    word-break: break-all;
}

.mcl-auto-toc-global .toctree-l1, .mcl-auto-toc > ul > li {
    margin-bottom: .9375rem;
}

.mcl-auto-toc > ul > li > a {
    color: var(--mcl-toc-header-color);
    font-style: oblique;
}

.mcl-auto-toc > ul > li > a,
.mcl-auto-toc-global .toctree-l1 > a {
    display: block;
    pointer-events: none;

    font-weight: bold;
    font-size: 1rem;

    padding: calc(.5em + 2px);
}

.mcl-auto-toc-global .toctree-l1 > a {
    border-image-slice: var(--mcl-toc-btn-border-slices);
    border-image-width: var(--mcl-toc-btn-border-widths);
    border-image-outset: 0 0 0 0;
    border-image-repeat: repeat repeat;
    border-image-source: var(--mcl-toc-btn-border-bg);
    /*     border-width: var(--mcl-toc-btn-border-widths); */
    border-style: solid;
    filter: var(--mcl-toc-btn-filter);

    background-image: var(--mcl-toc-btn-bg);
    background-size: 64px;

    text-shadow: #00000055 2px 2px;
}

.mcl-auto-toc > ul > li > a,
.mcl-auto-toc-global .toctree-l1.current > a,
.mcl-auto-toc-global .toctree-l1:has(ul) > a {
    border-image-slice: var(--mcl-toc-btn-border-slices);
    border-image-width: var(--mcl-toc-btn-border-widths);
    border-image-outset: 0 0 0 0;
    border-image-repeat: repeat repeat;
    border-image-source: var(--mcl-toc-btn-active-border-bg);
    /*     border-width: var(--mcl-toc-btn-border-widths); */
    border-style: solid;
    filter: var(--mcl-toc-btn-filter);

    background-image: var(--mcl-toc-btn-active-bg);
    background-size: 64px;

    text-shadow: #00000099 2px 2px;
}

.mcl-auto-toc-global .toctree-l1 > a {
    pointer-events: all;
    color: var(--mcl-toc-header-color);
}

.mcl-auto-toc > ul > li > a::before {
    content: var(--mcl-toc-local-heading);
    font-style: normal;
}

.mcl-auto-toc-global p.caption {
    color: var(--mcl-toc-header-color);
    font-weight: bold;
    margin-top: 1.5625rem;
    font-size: 1.125rem;
    text-shadow: #000000aa 2px 2px;
}

.mcl-auto-toc > ul > li > ul, .mcl-auto-toc-global .toctree-l1 > ul {
    margin: 0;
    font-size: .875rem;
}

.mcl-auto-toc > ul > li > ul ul li,
.mcl-auto-toc-global li:not(.toctree-l1),
.mcl-auto-toc > ul > li > ul > li:not(:has(> ul)) {
    margin: .3125rem 0;
}

.mcl-auto-toc > ul > li > ul > li:not(:has(> ul)):first-of-type {
    margin-top: 0;
}

.mcl-auto-toc > ul > li > ul > li:not(:has(> ul)):last-of-type {
    margin-bottom: 0;
}

.mcl-auto-toc > ul > li > ul ul li, .mcl-auto-toc-global li:not(.toctree-l1, .toctree-l2) {
    padding-left: .9375rem;
}

.mcl-auto-toc-global li > a.current {
    font-weight: bold;
}

.admonition, .versionadded, .versionchanged, .versionremoved, div.deprecated {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr;
    padding: .375rem .625rem;
    gap: .1875rem;
    border-left: 4px solid var(--mcl-admonition-default-border-color);
    margin: .625rem 0;
    background-color: var(--mcl-admonition-default-bg);
    overflow-y: hidden;
    color: var(--mcl-admonition-text-color);
}

.admonition > p.admonition-title, .versionmodified {
    font-weight: 600;
}

:is(.admonition, .versionadded, .versionchanged, .versionremoved, div.deprecated) > p {
    margin: 0;
}

.admonition.tip {
    background-color: var(--mcl-admonition-tip-bg);
    border-color: var(--mcl-admonition-tip-border-color);
}

.admonition.hint {
    background-color: var(--mcl-admonition-hint-bg);
    border-color: var(--mcl-admonition-hint-border-color);
}

.admonition.seealso {
    background-color: var(--mcl-admonition-seealso-bg);
    border-color: var(--mcl-admonition-seealso-border-color);
}

.versionadded {
    background-color: var(--mcl-admonition-ver-add-bg);
    border-color: var(--mcl-admonition-ver-add-border-color);
}

.admonition.warning {
    background-color: var(--mcl-admonition-warning-bg);
    border-color: var(--mcl-admonition-warning-border-color);
}

.admonition.caution {
    background-color: var(--mcl-admonition-caution-bg);
    border-color: var(--mcl-admonition-caution-border-color);
}

.admonition.attention {
    background-color: var(--mcl-admonition-attention-bg);
    border-color: var(--mcl-admonition-attention-border-color);
}

.admonition.important {
    background-color: var(--mcl-admonition-important-bg);
    border-color: var(--mcl-admonition-important-border-color);
}

div.deprecated {
    background-color: var(--mcl-admonition-deprecated-bg);
    border-color: var(--mcl-admonition-deprecated-border-color);
}

.admonition.danger {
    background-color: var(--mcl-admonition-danger-bg);
    border-color: var(--mcl-admonition-danger-border-color);
}

.admonition.error {
    background-color: var(--mcl-admonition-error-bg);
    border-color: var(--mcl-admonition-error-border-color);
}

.versionremoved {
    background-color: var(--mcl-admonition-ver-rem-bg);
    border-color: var(--mcl-admonition-ver-rem-border-color);
}

:is(.admonition, .versionadded, .versionchanged, .versionremoved, div.deprecated, .topic, blockquote) > * {
    z-index: 2;
}

:is(.admonition, .versionadded, .versionchanged, .versionremoved, div.deprecated, .topic, blockquote)::after {
    position: absolute;
    content: "";
    bottom: clamp(-24px, calc(100% - 86px - 8px), -8px);
    right: 10px;

    width: clamp(0rem, calc(96 * (100% - (96px + 10px))), 96px);
    height: clamp(0rem, calc(86 * (100% - 84px)), 86px);

    background-image: var(--mcl-admonition-soup-source);
    opacity: var(--mcl-admonition-soup-opacity);
    mix-blend-mode: var(--mcl-admonition-soup-blend);
    filter: var(--mcl-admonition-soup-filter);
}

.admonition.tip::after {
    background-position: var(--mcl-admonition-tip-soup-offsets);
}

.admonition.hint::after {
    background-position: var(--mcl-admonition-hint-soup-offsets);
}

.admonition.seealso::after {
    background-position: var(--mcl-admonition-seealso-soup-offsets);
}

.versionadded::after {
    background-position: var(--mcl-admonition-ver-add-soup-offsets);
}

.admonition.warning::after {
    background-position: var(--mcl-admonition-warning-soup-offsets);
}

.admonition.caution::after {
    background-position: var(--mcl-admonition-caution-soup-offsets);
}

.admonition.attention::after {
    background-position: var(--mcl-admonition-attention-soup-offsets);
}

.admonition.important::after {
    background-position: var(--mcl-admonition-important-soup-offsets);
}

div.deprecated::after {
    background-position: var(--mcl-admonition-deprecated-soup-offsets);
}

.admonition.danger::after {
    background-position: var(--mcl-admonition-danger-soup-offsets);
}

.admonition.error::after {
    background-position: var(--mcl-admonition-error-soup-offsets);
}

.versionremoved::after {
    background-position: var(--mcl-admonition-ver-rem-soup-offsets);
}

.admonition.note::after {
    background-position: var(--mcl-admonition-note-soup-offsets);
}

.topic::after {
    background-position: var(--mcl-admonition-topic-soup-offsets);
}

blockquote::after {
    background-position: var(--mcl-admonition-blockquote-soup-offsets);
}

blockquote.highlights::after {
    background-position: var(--mcl-admonition-highlights-soup-offsets);
}

.highlight {
    border: var(--mcl-code-border);
    padding: 1.1rem;
    margin: .625rem 0;
}

.highlight > pre {
    margin: 0;
    font-family: var(--mcl-monospace-font);
}

pre {
    overflow: auto;
}

.highlight .linenos {
    margin-right: .9375rem !important;
    user-select: none;
}

.mcl-document .notranslate > .highlight {
    display: flow-root;
    max-width: 100%;
}

.literal-block-wrapper {
    margin: .625rem 0;
    display: flow-root;
    max-width: 100%;
}

.literal-block-wrapper .code-block-caption {
    padding: .375rem .625rem;

    font-size: .875rem;
    font-weight: bold;
    user-select: none;

    border: var(--mcl-code-block-border-outer);
    background: var(--mcl-code-header-bg);
}

.literal-block-wrapper .code-block-caption::before {
    content: var(--mcl-code-header-title);
}

.literal-block-wrapper .code-block-caption .headerlink {
    display: none;
}

.literal-block-wrapper .highlight {
    margin: 0;
    margin-top: -2px;
    padding: .75rem;

    border-color: var(--mcl-code-block-border-outer-color);
    box-shadow: var(--mcl-code-block-border-inner);

    font-size: .9375rem;
}

div.math {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    width: 100%;
    margin: auto;
    overflow: auto;
}

div.math .eqno {
    order: 2;
    font-style: oblique;
    display: grid;
    grid-template-columns: repeat(2, auto);
    gap: .3125rem;
}

div.math .eqno .headerlink {
    font-style: initial;
    color: transparent;
    transition: .1s color;
}

div.math:hover .eqno .headerlink {
    color: var(--mcl-heading-link-color);
}

div.math .eqno .headerlink:hover {
    color: var(--mcl-heading-link-active-color);
}

.mjx-help {
    display: none !important;
}

.mjx-selected {
    outline: none !important;
    background-color: none !important;
    --mjx-bg1-color: transparent !important;
}

.mcl-table-wrap {
    max-width: 100%;
    overflow-x: auto;
    container-type: inline-size;
}

.mcl-table-wrap > table {
    margin: 0 !important;
}

table.docutils {
    border-collapse: collapse;
    border-spacing: 0;
    min-width: 20%;
    margin: .625rem 0;
}

table.docutils p {
    margin: 0;
}

table.docutils :is(th, td) {
    border-collapse: collapse;
    border: var(--mcl-table-border);
    padding: .2em .4em;
}

table.docutils th {
    background-color: var(--mcl-table-th-bg);
    font-weight: 600;
}

table.docutils td {
    background-color: var(--mcl-table-bg);
}

table.docutils td:has(.mcl-crafting-table) {
    vertical-align: top;
    padding: 0;
}

table.hlist td {
    vertical-align: top;
}

.mcl-infobox-data {
    width: 100%;
    font-size: .875rem;
    margin-top: .3125rem;
    margin-bottom: 0;
    table-layout: fixed;
    border-collapse: collapse;
}

.mcl-infobox-data tr:nth-child(odd) {
    background-color: var(--mcl-table-th-bg);
}

.mcl-infobox-data :is(th, td) {
    border: 0;
    background: none;
    padding: .25rem;
}

.mcl-infobox-data tr:not(.mcl-infobox-section) :is(th, td) {
    border-top: var(--mcl-table-border);
}

.mcl-infobox-data .mcl-infobox-section th {
    background: var(--mcl-infobox-header-bg);
    color: var(--mcl-infobox-header-text-color);
}

.mcl-infobox > .image-reference > img {
    display: flow-root;
    margin: auto;
    margin-bottom: .3125rem;
}

.mcl-infobox .mcl-img-caption {
    width: 100%;
    text-align: center;
    display: block;
    font-size: .875rem;
}

.mcl-infobox .sd-card-footer {
    border-top: var(--mcl-table-border);
}

.mcl-infobox .figcaption {
    font-size: .85em;
}

.mcl-infobox .sd-card-title {
    font-weight: 500 !important;
    font-style: oblique;
    font-size: .95rem !important;
}

.mcl-infobox-data p {
    margin: 0;
}

.mcl-bottom-nav {
    margin-top: 1.5625rem;
    padding-top: .75rem;

    display: grid;
    align-items: center;
    justify-content: space-between;
    grid-template-columns: repeat(2, auto);
    gap: 30%;

    border-top: var(--mcl-btm-nav-border);
    clear: both;
}

p > code.literal {
    background-color: var(--mcl-code-bg);
    border-radius: 3px;
    padding: 2px 4px;
    font-family: var(--mcl-monospace-font);
    color: var(--mcl-code-color-inline);
}

aside.footnote > span, div.citation > span {
    float: left;
    padding-right: .25rem;
    font-weight: 600;
}

.reference img {
    vertical-align: middle;
}

aside.footnote > span, div.citation > span {
    float: left;
    padding-right: .25rem;
    font-weight: 600;
}

aside.footnote > p, div.citation > p {
    margin-top: .5rem;
    margin-bottom: .5rem;
    margin-left: 2rem;
}

p.centered {
    text-align: center;
}

p.rubric {
    margin-top: 2rem;
    font-weight: bold;
}

.topic {
    position: relative;
    overflow: hidden;
    padding: 0 .625rem;
    margin-bottom: .625rem;
    border: 2px solid var(--mcl-admonition-topic-border-color);
    background: var(--mcl-admonition-topic-bg);
}

.sidebar {
    clear: right;
    float: right;
    width: 16rem;
    margin-bottom: 1rem;
    margin-right: 0;
    margin-left: 1rem;
    margin-top: .625rem;
    border: var(--mcl-sidebar-border);
    background: var(--mcl-sidebar-bg);
}

.sidebar > .sidebar-title {
    font-weight: bold;
}

.sidebar > .sidebar-subtitle {
    font-weight: 600;
}

.sidebar > .sidebar-title {
    border-bottom: inherit;
    padding-bottom: 1rem;
}

.sidebar > * {
    padding-left: 1rem;
    padding-right: 1rem;
}

.mcl-document section > div {
    margin-bottom: 1rem;
}

.mcl-document :is(ul, ol) {
    padding-left: 1rem;
}

.mcl-document :is(ul, ol) li {
    margin: 0 auto;
}

.mcl-document :is(ul, ol) li > p {
    margin: .25em;
}

blockquote {
    position: relative;
    overflow: hidden;
    background: var(--mcl-admonition-blockquote-bg);
    border-left: 6px solid var(--mcl-admonition-blockquote-border-color);
    margin-left: 1rem;
    padding: 1rem;
}

blockquote p {
    margin-top: 0;
}

blockquote .attribution {
    text-align: right;
    margin: 0;
}

blockquote.epigraph :is(p, .attribution) {
    font-style: oblique;
    text-align: center;
}

blockquote.pull-quote p:not(.attribution) {
    font-size: 1.375rem;
}

blockquote.highlights {
    background: var(--mcl-admonition-highlights-bg);
    border-color: var(--mcl-admonition-highlights-border-color);
}

.align-left {
    clear: left;
    float :left;
    margin-right: 1rem;
}

.align-right {
    clear: right;
    float: right;
    margin-left: 1rem;
}

.align-center {
    margin: auto;
    display: block;
    text-align: center;
}

table .caption-text {
    opacity: .7;
}

figure, figcaption {
    margin: 0;
    padding: .5rem;
    display: table;
    background: var(--mcl-figure-bg);
    border: var(--mcl-figure-border);
}

figure.align-center {
    display: table;
    width: fit-content;
}

figure:has(figcaption) {
    border-bottom: none;
    padding-bottom: 0;
    display: table;
}

figure img {
    border: var(--mcl-figure-border);
    display: block;
}

figure figcaption {
    display: table-caption;
    caption-side: bottom;
    border-top: none;
    font-size: .875rem;
    padding-top: 0;
}

figure figcaption p {
    margin: 0;
}

figure figcaption p:not(:is(table, .mcl-table-wrap) + p) {
    margin-top: .4375rem;
}

:is(table caption, figure figcaption) .headerlink {
    display: none;
}

div.pp_default .pp_social {
    display: none;
}

ol {
    list-style-type:decimal;
}

ol[type=A], ol.upperalpha {
    list-style-type: upper-alpha;
}

ol[type=a], ol.loweralpha {
    list-style-type: lower-alpha;
}

ol[type=I], ol.upperroman {
    list-style-type: upper-roman;
}

ol[type=i], ol.lowerroman {
    list-style-type: lower-roman;
}

dt {
    font-weight: 600;
}

dt .classifier {
    font-style: oblique;
    font-weight: 400;
}

dt .classifier:before {
    content: ":";
    margin-left: .125rem;
    margin-right: .3125rem;
    font-style: normal;
    display: inline-block;
}

dt kbd .option {
    font-family: var(--mcl-monospace-font);
    font-weight: 600;
}

dl.field-list {
    display: grid;
    grid-template-columns: fit-content(30%) auto;
    align-items: first baseline;
}

dl.field-list > dt {
    font-weight: bold;
    word-break: break-word;
    padding-left: .5em;
    padding-right: .3125rem;
}

dl.field-list > dd {
    padding-left: .5em;
    margin-top: 0em;
    margin-left: 0em;
    margin-bottom: 0em;
}

dl.field-list > dd > ul {
    padding-left: .625rem;
}

dl.field-list > dd p {
    margin: .4375rem 0;
}

.sig {
    font-family: var(--mcl-monospace-font);
    font-weight: inherit;
}

.sig-prename {
    color: var(--mcl-code-color-pre-name);
}

.sig-name, code.descname {
    color: var(--mcl-code-color-name);
    font-weight: bold;
}

.sig .k, .sig .kt {
    color: var(--mcl-code-color-keyword);
}

.menuselection, .guilabel, p kbd.kbd {
    border: var(--mcl-kbd-border);
    padding: 1px 4px;
    background: var(--mcl-kbd-bg);
    box-shadow: inset 0 -1px var(--mcl-kbd-border-color);
    background-image: var(--mcl-kbd-bg-gradient);
    border-radius: 2px;
}

ion-icon.guilabel {
    margin-block: -4px;
}

.mcl-invslot {
    position: relative;
    width: 36px;
    height: 36px;
    background-color: var(--mcl-invslot-bg);
    box-shadow: inset 2px 2px var(--mcl-invslot-left-border-color),
    inset -2px -2px var(--mcl-invslot-right-border-color);
    user-select: none;
}

.mcl-invslot.large {
    width: 52px;
    height: 52px;
}

.mcl-invslot > a {
    position: absolute;
    top: 2px;

    text-align: center;
    width: 100%;
}

.mcl-invslot > a > img {
    width: 32px;
    height: 32px;
    pointer-events: none;
/*     image-rendering: pixelated; */
}

.mcl-invslot.large > a {
    top: 10px;
}

.mcl-invslot > :is(.mcl-invslot-amount, .mcl-invslot-tooltip) {
    font-family: var(--mcl-monospace-font);
    text-shadow: 2px 2px 0 var(--mcl-invslot-annotation-shadow);
    font-weight: bolder;
    font-size: .75rem;
    color: var(--mcl-invslot-annotation-color);

    pointer-events: none;
}

.mcl-invslot > .mcl-invslot-amount {
    position: absolute;
    bottom: 2px;
    right: 5px;
    z-index: 2;
}

.mcl-invslot > .mcl-invslot-tooltip {
    display: none;

    position: absolute;
    width: max-content;
    max-width: 200px;
    z-index: 3;

    padding: 2px 3px;
    font-size: .8125rem;

    box-shadow: inset 2px 2px var(--mcl-invslot-tooltip-left-border-color),
    inset -2px -2px var(--mcl-invslot-tooltip-right-border-color);
    background-color: var(--mcl-invslot-tooltip-bg);
    border: var(--mcl-invslot-tooltip-outer-border);
    border-radius: 4px;
}

.mcl-invslot:hover > .mcl-invslot-tooltip {
    display: grid;
    grid-template-rows: repeat(2, auto);
}

.mcl-invslot-tooltip-description {
    font-style: oblique;
    font-weight: 500;
    opacity: .7;
}

.mcl-invslot-anime {
    width: 36px;
    height: 36px;
}

.mcl-invslot-anime:has(.mcl-invslot.large) {
    width: 52px;
    height: 52px;
}

.mcl-invslot-anime > .mcl-invslot:not([data-anim-current=True]) {
    display: none;
}

.mcl-crafting-table {
    display: inline-grid;
    grid-template-columns: auto 32px auto;
    align-items: center;
    padding: 6px;
    gap: 4px;

    background-color: var(--mcl-crafting-bg);
    border: 2px solid;
    border-color: var(--mcl-crafting-right-border-color) var(--mcl-crafting-left-border-color) var(--mcl-crafting-left-border-color) var(--mcl-crafting-right-border-color);
}

.mcl-crafting-table > .mcl-crafting-table-arrow {
    background-image: var(--mcl-crafting-table-arrow-sprite);
    background-size: 100%;
    image-rendering: crisp-edges;
    height: 32px;
}

.mcl-crafting-table > .mcl-crafting-table-grid {
    display: grid;
    grid-template-columns: repeat(3, 36px);
}

.mcl-breadcrumbs {
    margin: .375rem -1.5rem;
    margin-top: .75rem;
    padding: .3125rem 1.5rem;
    background: var(--mcl-breadcrumbs-bg);
    border-top: var(--mcl-breadcrumbs-border);
    border-bottom: var(--mcl-breadcrumbs-border);
}

.mcl-breadcrumbs a {
    color: var(--mcl-breadcrumbs-color);
}

.mcl-breadcrumbs a:last-child {
    font-weight: bold;
}

.mcl-attribution {
    display: grid;
    grid-template-columns: auto max-content;
    justify-content: flex-end;
    align-items: center;
    gap: 3px;

    background: var(--mcl-attribution-bg);
    border: var(--mcl-attribution-border);
    border-right-width: 0;

    float: right;
    padding: 2px;
    padding-right: 1.5rem;
    margin-right: -1.5rem;
    margin-bottom: 0 !important;

    font-size: .625rem;
    font-family: var(--mcl-monospace-font);
}

.mcl-attribution .mcl-attribution-pfps {
    position: relative;
    width: 42px;
    height: 28px;
}

.mcl-attribution .mcl-attribution-pfps:not(:has(a:nth-child(2))) {
    width: 28px;
}

.mcl-attribution .mcl-attribution-pfps a {
    position: absolute;
    display: block;
}

.mcl-attribution .mcl-attribution-pfps a:first-child {
    z-index: 2;
}

.mcl-attribution .mcl-attribution-pfps a:nth-child(2) {
    left: 20px;
    top: calc((28px - 22px) / 2);
}

.mcl-attribution .mcl-attribution-pfps a img {
    width: 28px;
    border: var(--mcl-attribution-pfp-border);
}

.mcl-attribution .mcl-attribution-pfps a:nth-child(2) img {
    width: 22px;
}

.mcl-attribution .mcl-attribution-pfps:hover a:nth-child(2) {
    left: 32px;
}

.mcl-timeline {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    margin-left: .625rem;
    padding-left: .9375rem;
    border-left: 2px solid var(--mcl-timeline-line-color);
    font-size: .75rem;
    user-select: none;
}

.mcl-timeline dl:not(:last-child) {
    padding-bottom: .75rem;
}

.mcl-timeline dl > dt::before {
    content: "";
    position: absolute;
    left: -23px;
    top: 2px;
    width: 9px;
    height: 9px;
    background: var(--mcl-timeline-square-bg);
    border: var(--mcl-timeline-square-border);
}

.mcl-timeline :is(dl, dt, dd) {
    margin: 0;
    position: relative;
}

.mcl-timeline dl {
    display: flex;
    gap: 0 4px;
    flex-wrap: wrap;
    flex: 1;
    align-content: center;
    max-height: 3.75rem;
}

.mcl-timeline dd {
    opacity: .8;
}

.mcl-timeline dd::before {
    content: "–  ";
}

.mcl-timeline dt > img {
    max-width: 16px;
    vertical-align: sub;
    margin-right: .3125rem;
}

.mcl-timeline dt p {
    display: inline;
}

.sp_preview_icon {
    display: none;
}

.mcl-chiseled-btn {
    position: relative;
    display: flow-root;
    appearance: none;

    margin-top: .25rem;
    margin-bottom: .75rem;

    padding: .3125rem .625rem;

    color: var(--mcl-chiseled-btn-color) !important;
    font-weight: bold;

    border-image-slice: var(--mcl-chiseled-btn-border-slices);
    border-image-width: var(--mcl-chiseled-btn-border-widths);
    border-image-outset: 0 0 0 0;
    border-image-repeat: repeat repeat;
    border-image-source: var(--mcl-chiseled-btn-border-bg);
    border-width: var(--mcl-chiseled-btn-border-widths);
    border-style: solid;
    filter: var(--mcl-chiseled-btn-filter);

    background-image: var(--mcl-chiseled-btn-bg);
    background-size: 100px;

    transition: .05s margin-top ease-in,
    .05s margin-bottom ease-in;
}

.mcl-chiseled-btn::after {
    content: "";
    position: absolute;
    top: calc(100% + 4px);
    left: -4px;

    width: calc(100% + 2 * 4px);
    height: 12px;

    background-image: var(--mcl-chiseled-btn-side-bg);
    background-position-y: 100px;
    background-size: 100px;
    filter: brightness(70%);

    transition: .05s height ease-in;
}

.mcl-chiseled-btn:hover {
    margin-top: .375rem;
    margin-bottom: .625rem;
    text-decoration: none;
}

.mcl-chiseled-btn:hover::after {
    height: 10px;
}

.mcl-chiseled-btn:active {
    margin-top: .875rem;
    margin-bottom: .125rem;
}

.mcl-chiseled-btn:active::after {
    height: 2px;
}

.mcl-chiseled-btn:has(> ion-icon) {
    display: grid;
    grid-template-columns: repeat(2, auto);
    align-items: center;
    gap: .25rem;
}

.mcl-chiseled-btn:has(> ion-icon:first-child) {
    padding-left: 2px;
}

.mcl-chiseled-btn:has(> ion-icon:last-child) {
    padding-right: 2px;
}

.mcl-chiseled-btn > ion-icon {
    font-size: 1.375rem;
}

.mcl-gallery-wrap {
    display: table;
}

.mcl-gallery-caption {
    display: table-caption;
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    opacity: .7;
    margin-bottom: .2rem;
}

.mcl-gallery-wrap > .mcl-gallery {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: var(--mcl-x-gallery-alignment);
    align-items: anchor-center;
}

.jupyter_cell div.highlight {
    background-color: var(--mcl-jupyter-cell-code-bg) !important;
    border: none !important;
}

.jupyter_cell {
    background-color: var(--mcl-jupyter-cell-bg) !important;
    border: var(--mcl-jupyter-cell-border) !important;
}

.jupyter_cell .code_cell {
    border: none !important;
    border-bottom: var(--mcl-jupyter-cell-bottom-border) !important;
}

.cell_output + .code_cell {
    border-top: var(--mcl-jupyter-cell-bottom-border) !important;
    border-bottom: none !important;
}

.jupyter_cell .cell_output img {
    display: flow-root;
    max-width: 90%;
    margin: auto;
}

.jupyter_cell .output .highlight, .jupyter_cell .stderr {
    border-radius: 4px !important;
    margin: 8px !important;
}

.jupyter_cell .output .highlight {
    background-color: var(--mcl-jupyter-cell-output-bg) !important;
    padding: 4px !important;
}

.jupyter_cell > .cell_output:first-child:last-child .highlight {
    margin: 0 !important;
    padding: 8px !important;
}

.jupyter_cell .stderr {
    font-size: .8rem !important;
    color: var(--mcl-jupyter-cell-output-stderr-color) !important;
    background-color: var(--mcl-jupyter-cell-output-stderr-bg) !important;
}

div.nbinput.container div.input_area {
    border: var(--mcl-nb-cell-border) !important;
}

div.nbinput.container div.prompt pre, div.nbinput.container div.prompt pre > code {
    color: var(--mcl-nb-prompt-input-color) !important;
}

div.nboutput.container div.prompt pre, div.nboutput.container div.prompt pre > code {
    color: var(--mcl-nb-prompt-output-color) !important;
}

div.nboutput.container div.output_area.stderr {
    color: var(--mcl-nb-cell-output-stderr-color) !important;
    background-color: var(--mcl-nb-cell-output-stderr-bg) !important;
}

.dataframe {
    background-color: var(--mcl-document-bg) !important;
    border: var(--mcl-table-border) !important;
    color: var(--mcl-text-color) !important;
}

.dataframe th {
    background-color: var(--mcl-table-th-bg) !important;
    font-weight: 600 !important;
}

.jp-RenderedHTMLCommon tbody tr:nth-child(2n+1), div.rendered_html tbody tr:nth-child(2n+1) {
    background: var(--mcl-block-bg) !important;
}

.jp-RenderedHTMLCommon thead, div.rendered_html thead {
    border-bottom: 1px solid var(--mcl-text-color) !important;
}
