@layer docusaurus.infima {
    :root {
        --ifm-color-scheme: light;
        --ifm-dark-value: 10%;
        --ifm-darker-value: 15%;
        --ifm-darkest-value: 30%;
        --ifm-light-value: 15%;
        --ifm-lighter-value: 30%;
        --ifm-lightest-value: 50%;
        --ifm-contrast-background-value: 90%;
        --ifm-contrast-foreground-value: 70%;
        --ifm-contrast-background-dark-value: 70%;
        --ifm-contrast-foreground-dark-value: 90%;
        --ifm-color-primary: #3578e5;
        --ifm-color-secondary: #ebedf0;
        --ifm-color-success: #00a400;
        --ifm-color-info: #54c7ec;
        --ifm-color-warning: #ffba00;
        --ifm-color-danger: #fa383e;
        --ifm-color-primary-dark: #306cce;
        --ifm-color-primary-darker: #2d66c3;
        --ifm-color-primary-darkest: #2554a0;
        --ifm-color-primary-light: #538ce9;
        --ifm-color-primary-lighter: #72a1ed;
        --ifm-color-primary-lightest: #9abcf2;
        --ifm-color-primary-contrast-background: #ebf2fc;
        --ifm-color-primary-contrast-foreground: #102445;
        --ifm-color-secondary-dark: #d4d5d8;
        --ifm-color-secondary-darker: #c8c9cc;
        --ifm-color-secondary-darkest: #a4a6a8;
        --ifm-color-secondary-light: #eef0f2;
        --ifm-color-secondary-lighter: #f1f2f5;
        --ifm-color-secondary-lightest: #f5f6f8;
        --ifm-color-secondary-contrast-background: #fdfdfe;
        --ifm-color-secondary-contrast-foreground: #474748;
        --ifm-color-success-dark: #009400;
        --ifm-color-success-darker: #008b00;
        --ifm-color-success-darkest: #007300;
        --ifm-color-success-light: #26b226;
        --ifm-color-success-lighter: #4dbf4d;
        --ifm-color-success-lightest: #80d280;
        --ifm-color-success-contrast-background: #e6f6e6;
        --ifm-color-success-contrast-foreground: #003100;
        --ifm-color-info-dark: #4cb3d4;
        --ifm-color-info-darker: #47a9c9;
        --ifm-color-info-darkest: #3b8ba5;
        --ifm-color-info-light: #6ecfef;
        --ifm-color-info-lighter: #87d8f2;
        --ifm-color-info-lightest: #aae3f6;
        --ifm-color-info-contrast-background: #eef9fd;
        --ifm-color-info-contrast-foreground: #193c47;
        --ifm-color-warning-dark: #e6a700;
        --ifm-color-warning-darker: #d99e00;
        --ifm-color-warning-darkest: #b38200;
        --ifm-color-warning-light: #ffc426;
        --ifm-color-warning-lighter: #ffcf4d;
        --ifm-color-warning-lightest: #ffdd80;
        --ifm-color-warning-contrast-background: #fff8e6;
        --ifm-color-warning-contrast-foreground: #4d3800;
        --ifm-color-danger-dark: #e13238;
        --ifm-color-danger-darker: #d53035;
        --ifm-color-danger-darkest: #af272b;
        --ifm-color-danger-light: #fb565b;
        --ifm-color-danger-lighter: #fb7478;
        --ifm-color-danger-lightest: #fd9c9f;
        --ifm-color-danger-contrast-background: #ffebec;
        --ifm-color-danger-contrast-foreground: #4b1113;
        --ifm-color-white: #fff;
        --ifm-color-black: #000;
        --ifm-color-gray-0: var(--ifm-color-white);
        --ifm-color-gray-100: #f5f6f7;
        --ifm-color-gray-200: #ebedf0;
        --ifm-color-gray-300: #dadde1;
        --ifm-color-gray-400: #ccd0d5;
        --ifm-color-gray-500: #bec3c9;
        --ifm-color-gray-600: #8d949e;
        --ifm-color-gray-700: #606770;
        --ifm-color-gray-800: #444950;
        --ifm-color-gray-900: #1c1e21;
        --ifm-color-gray-1000: var(--ifm-color-black);
        --ifm-color-emphasis-0: var(--ifm-color-gray-0);
        --ifm-color-emphasis-100: var(--ifm-color-gray-100);
        --ifm-color-emphasis-200: var(--ifm-color-gray-200);
        --ifm-color-emphasis-300: var(--ifm-color-gray-300);
        --ifm-color-emphasis-400: var(--ifm-color-gray-400);
        --ifm-color-emphasis-500: var(--ifm-color-gray-500);
        --ifm-color-emphasis-600: var(--ifm-color-gray-600);
        --ifm-color-emphasis-700: var(--ifm-color-gray-700);
        --ifm-color-emphasis-800: var(--ifm-color-gray-800);
        --ifm-color-emphasis-900: var(--ifm-color-gray-900);
        --ifm-color-emphasis-1000: var(--ifm-color-gray-1000);
        --ifm-color-content: var(--ifm-color-emphasis-900);
        --ifm-color-content-inverse: var(--ifm-color-emphasis-0);
        --ifm-color-content-secondary: #525860;
        --ifm-background-color: transparent;
        --ifm-background-surface-color: var(--ifm-color-content-inverse);
        --ifm-global-border-width: 1px;
        --ifm-global-radius: .4rem;
        --ifm-hover-overlay: rgba(0, 0, 0, .05);
        --ifm-font-color-base: var(--ifm-color-content);
        --ifm-font-color-base-inverse: var(--ifm-color-content-inverse);
        --ifm-font-color-secondary: var(--ifm-color-content-secondary);
        --ifm-font-family-base: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
        --ifm-font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
        --ifm-font-size-base: 100%;
        --ifm-font-weight-light: 300;
        --ifm-font-weight-normal: 400;
        --ifm-font-weight-semibold: 500;
        --ifm-font-weight-bold: 700;
        --ifm-font-weight-base: var(--ifm-font-weight-normal);
        --ifm-line-height-base: 1.65;
        --ifm-global-spacing: 1rem;
        --ifm-spacing-vertical: var(--ifm-global-spacing);
        --ifm-spacing-horizontal: var(--ifm-global-spacing);
        --ifm-transition-fast: .2s;
        --ifm-transition-slow: .4s;
        --ifm-transition-timing-default: cubic-bezier(.08, .52, .52, 1);
        --ifm-global-shadow-lw: 0 1px 2px 0 rgba(0, 0, 0, .1);
        --ifm-global-shadow-md: 0 5px 40px rgba(0, 0, 0, .2);
        --ifm-global-shadow-tl: 0 12px 28px 0 rgba(0, 0, 0, .2), 0 2px 4px 0 rgba(0, 0, 0, .1);
        --ifm-z-index-dropdown: 100;
        --ifm-z-index-fixed: 200;
        --ifm-z-index-overlay: 400;
        --ifm-container-width: 1140px;
        --ifm-container-width-xl: 1320px;
        --ifm-code-background: #f6f7f8;
        --ifm-code-border-radius: var(--ifm-global-radius);
        --ifm-code-font-size: 90%;
        --ifm-code-padding-horizontal: .1rem;
        --ifm-code-padding-vertical: .1rem;
        --ifm-pre-background: var(--ifm-code-background);
        --ifm-pre-border-radius: var(--ifm-code-border-radius);
        --ifm-pre-color: inherit;
        --ifm-pre-line-height: 1.45;
        --ifm-pre-padding: 1rem;
        --ifm-heading-color: inherit;
        --ifm-heading-margin-top: 0;
        --ifm-heading-margin-bottom: var(--ifm-spacing-vertical);
        --ifm-heading-font-family: var(--ifm-font-family-base);
        --ifm-heading-font-weight: var(--ifm-font-weight-bold);
        --ifm-heading-line-height: 1.25;
        --ifm-h1-font-size: 2rem;
        --ifm-h2-font-size: 1.5rem;
        --ifm-h3-font-size: 1.25rem;
        --ifm-h4-font-size: 1rem;
        --ifm-h5-font-size: .875rem;
        --ifm-h6-font-size: .85rem;
        --ifm-image-alignment-padding: 1.25rem;
        --ifm-leading-desktop: 1.25;
        --ifm-leading: calc(var(--ifm-leading-desktop)*1rem);
        --ifm-list-left-padding: 2rem;
        --ifm-list-margin: 1rem;
        --ifm-list-item-margin: .25rem;
        --ifm-list-paragraph-margin: 1rem;
        --ifm-table-cell-padding: .75rem;
        --ifm-table-background: transparent;
        --ifm-table-stripe-background: rgba(0, 0, 0, .03);
        --ifm-table-border-width: 1px;
        --ifm-table-border-color: var(--ifm-color-emphasis-300);
        --ifm-table-head-background: inherit;
        --ifm-table-head-color: inherit;
        --ifm-table-head-font-weight: var(--ifm-font-weight-bold);
        --ifm-table-cell-color: inherit;
        --ifm-link-color: var(--ifm-color-primary);
        --ifm-link-decoration: none;
        --ifm-link-hover-color: var(--ifm-link-color);
        --ifm-link-hover-decoration: underline;
        --ifm-paragraph-margin-bottom: var(--ifm-leading);
        --ifm-blockquote-font-size: var(--ifm-font-size-base);
        --ifm-blockquote-border-left-width: 2px;
        --ifm-blockquote-padding-horizontal: var(--ifm-spacing-horizontal);
        --ifm-blockquote-padding-vertical: 0;
        --ifm-blockquote-shadow: none;
        --ifm-blockquote-color: var(--ifm-color-emphasis-800);
        --ifm-blockquote-border-color: var(--ifm-color-emphasis-300);
        --ifm-hr-background-color: var(--ifm-color-emphasis-500);
        --ifm-hr-height: 1px;
        --ifm-hr-margin-vertical: 1.5rem;
        --ifm-scrollbar-size: 7px;
        --ifm-scrollbar-track-background-color: #f1f1f1;
        --ifm-scrollbar-thumb-background-color: silver;
        --ifm-scrollbar-thumb-hover-background-color: #a7a7a7;
        --ifm-alert-background-color: inherit;
        --ifm-alert-border-color: inherit;
        --ifm-alert-border-radius: var(--ifm-global-radius);
        --ifm-alert-border-width: 0px;
        --ifm-alert-border-left-width: 5px;
        --ifm-alert-color: var(--ifm-font-color-base);
        --ifm-alert-padding-horizontal: var(--ifm-spacing-horizontal);
        --ifm-alert-padding-vertical: var(--ifm-spacing-vertical);
        --ifm-alert-shadow: var(--ifm-global-shadow-lw);
        --ifm-avatar-intro-margin: 1rem;
        --ifm-avatar-intro-alignment: inherit;
        --ifm-avatar-photo-size: 3rem;
        --ifm-badge-background-color: inherit;
        --ifm-badge-border-color: inherit;
        --ifm-badge-border-radius: var(--ifm-global-radius);
        --ifm-badge-border-width: var(--ifm-global-border-width);
        --ifm-badge-color: var(--ifm-color-white);
        --ifm-badge-padding-horizontal: calc(var(--ifm-spacing-horizontal)*.5);
        --ifm-badge-padding-vertical: calc(var(--ifm-spacing-vertical)*.25);
        --ifm-breadcrumb-border-radius: 1.5rem;
        --ifm-breadcrumb-spacing: .5rem;
        --ifm-breadcrumb-color-active: var(--ifm-color-primary);
        --ifm-breadcrumb-item-background-active: var(--ifm-hover-overlay);
        --ifm-breadcrumb-padding-horizontal: .8rem;
        --ifm-breadcrumb-padding-vertical: .4rem;
        --ifm-breadcrumb-size-multiplier: 1;
        --ifm-breadcrumb-separator: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" x=\"0px\" y=\"0px\" viewBox=\"0 0 256 256\"><g><g><polygon points=\"79.093,0 48.907,30.187 146.72,128 48.907,225.813 79.093,256 207.093,128\"/></g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g></svg>");
        --ifm-breadcrumb-separator-filter: none;
        --ifm-breadcrumb-separator-size: .5rem;
        --ifm-breadcrumb-separator-size-multiplier: 1.25;
        --ifm-button-background-color: inherit;
        --ifm-button-border-color: var(--ifm-button-background-color);
        --ifm-button-border-width: var(--ifm-global-border-width);
        --ifm-button-color: var(--ifm-font-color-base-inverse);
        --ifm-button-font-weight: var(--ifm-font-weight-bold);
        --ifm-button-padding-horizontal: 1.5rem;
        --ifm-button-padding-vertical: .375rem;
        --ifm-button-size-multiplier: 1;
        --ifm-button-transition-duration: var(--ifm-transition-fast);
        --ifm-button-border-radius: calc(var(--ifm-global-radius)*var(--ifm-button-size-multiplier));
        --ifm-button-group-spacing: 2px;
        --ifm-card-background-color: var(--ifm-background-surface-color);
        --ifm-card-border-radius: calc(var(--ifm-global-radius)*2);
        --ifm-card-horizontal-spacing: var(--ifm-global-spacing);
        --ifm-card-vertical-spacing: var(--ifm-global-spacing);
        --ifm-toc-border-color: var(--ifm-color-emphasis-300);
        --ifm-toc-link-color: var(--ifm-color-content-secondary);
        --ifm-toc-padding-vertical: .5rem;
        --ifm-toc-padding-horizontal: .5rem;
        --ifm-dropdown-background-color: var(--ifm-background-surface-color);
        --ifm-dropdown-font-weight: var(--ifm-font-weight-semibold);
        --ifm-dropdown-link-color: var(--ifm-font-color-base);
        --ifm-dropdown-hover-background-color: var(--ifm-hover-overlay);
        --ifm-footer-background-color: var(--ifm-color-emphasis-100);
        --ifm-footer-color: inherit;
        --ifm-footer-link-color: var(--ifm-color-emphasis-700);
        --ifm-footer-link-hover-color: var(--ifm-color-primary);
        --ifm-footer-link-horizontal-spacing: .5rem;
        --ifm-footer-padding-horizontal: calc(var(--ifm-spacing-horizontal)*2);
        --ifm-footer-padding-vertical: calc(var(--ifm-spacing-vertical)*2);
        --ifm-footer-title-color: inherit;
        --ifm-footer-logo-max-width: min(30rem, 90vw);
        --ifm-hero-background-color: var(--ifm-background-surface-color);
        --ifm-hero-text-color: var(--ifm-color-emphasis-800);
        --ifm-menu-color: var(--ifm-color-emphasis-700);
        --ifm-menu-color-active: var(--ifm-color-primary);
        --ifm-menu-color-background-active: var(--ifm-hover-overlay);
        --ifm-menu-color-background-hover: var(--ifm-hover-overlay);
        --ifm-menu-link-padding-horizontal: .75rem;
        --ifm-menu-link-padding-vertical: .375rem;
        --ifm-menu-link-sublist-icon: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16px\" height=\"16px\" viewBox=\"0 0 24 24\"><path fill=\"rgba(0,0,0,0.5)\" d=\"M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z\"></path></svg>");
        --ifm-menu-link-sublist-icon-filter: none;
        --ifm-navbar-background-color: var(--ifm-background-surface-color);
        --ifm-navbar-height: 3.75rem;
        --ifm-navbar-item-padding-horizontal: .75rem;
        --ifm-navbar-item-padding-vertical: .25rem;
        --ifm-navbar-link-color: var(--ifm-font-color-base);
        --ifm-navbar-link-hover-color: var(--ifm-color-primary);
        --ifm-navbar-link-active-color: var(--ifm-link-color);
        --ifm-navbar-padding-horizontal: var(--ifm-spacing-horizontal);
        --ifm-navbar-padding-vertical: calc(var(--ifm-spacing-vertical)*.5);
        --ifm-navbar-shadow: var(--ifm-global-shadow-lw);
        --ifm-navbar-search-input-background-color: var(--ifm-color-emphasis-200);
        --ifm-navbar-search-input-color: var(--ifm-color-emphasis-800);
        --ifm-navbar-search-input-placeholder-color: var(--ifm-color-emphasis-500);
        --ifm-navbar-search-input-icon: url("data:image/svg+xml;utf8,<svg fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" height=\"16px\" width=\"16px\"><path d=\"M6.02945,10.20327a4.17382,4.17382,0,1,1,4.17382-4.17382A4.15609,4.15609,0,0,1,6.02945,10.20327Zm9.69195,4.2199L10.8989,9.59979A5.88021,5.88021,0,0,0,12.058,6.02856,6.00467,6.00467,0,1,0,9.59979,10.8989l4.82338,4.82338a.89729.89729,0,0,0,1.29912,0,.89749.89749,0,0,0-.00087-1.29909Z\" /></svg>");
        --ifm-navbar-sidebar-width: 83vw;
        --ifm-pagination-border-radius: var(--ifm-global-radius);
        --ifm-pagination-color-active: var(--ifm-color-primary);
        --ifm-pagination-font-size: 1rem;
        --ifm-pagination-item-active-background: var(--ifm-hover-overlay);
        --ifm-pagination-page-spacing: .2em;
        --ifm-pagination-padding-horizontal: calc(var(--ifm-spacing-horizontal)*1);
        --ifm-pagination-padding-vertical: calc(var(--ifm-spacing-vertical)*.25);
        --ifm-pagination-nav-border-radius: var(--ifm-global-radius);
        --ifm-pagination-nav-color-hover: var(--ifm-color-primary);
        --ifm-pills-color-active: var(--ifm-color-primary);
        --ifm-pills-color-background-active: var(--ifm-hover-overlay);
        --ifm-pills-spacing: .125rem;
        --ifm-tabs-color: var(--ifm-font-color-secondary);
        --ifm-tabs-color-active: var(--ifm-color-primary);
        --ifm-tabs-color-active-border: var(--ifm-tabs-color-active);
        --ifm-tabs-padding-horizontal: 1rem;
        --ifm-tabs-padding-vertical: 1rem
    }

    * {
        box-sizing: border-box
    }

    html {
        background-color: var(--ifm-background-color);
        color: var(--ifm-font-color-base);
        color-scheme: var(--ifm-color-scheme);
        font: var(--ifm-font-size-base)/var(--ifm-line-height-base)var(--ifm-font-family-base);
        -webkit-font-smoothing: antialiased;
        -webkit-tap-highlight-color: transparent;
        text-rendering: optimizelegibility;
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%
    }

    body {
        word-wrap: break-word;
        margin: 0
    }

    iframe {
        color-scheme: normal;
        border: 0
    }

    .container {
        max-width: var(--ifm-container-width);
        padding: 0 var(--ifm-spacing-horizontal);
        width: 100%;
        margin: 0 auto
    }

    .container--fluid {
        max-width: inherit
    }

    .row {
        margin: 0 calc(var(--ifm-spacing-horizontal)*-1);
        flex-wrap: wrap;
        display: flex
    }

    .row--no-gutters {
        margin-left: 0;
        margin-right: 0
    }

    .row--no-gutters>.col {
        padding-left: 0;
        padding-right: 0
    }

    .row--align-top {
        align-items: flex-start
    }

    .row--align-bottom {
        align-items: flex-end
    }

    .row--align-center {
        align-items: center
    }

    .row--align-stretch {
        align-items: stretch
    }

    .row--align-baseline {
        align-items: baseline
    }

    .col {
        --ifm-col-width: 100%;
        max-width: var(--ifm-col-width);
        padding: 0 var(--ifm-spacing-horizontal);
        flex: 1 0;
        width: 100%;
        margin-left: 0
    }

    .col[class*=col--] {
        flex: 0 0 var(--ifm-col-width)
    }

    .col--1 {
        --ifm-col-width: calc(1/12*100%)
    }

    .col--offset-1 {
        margin-left: 8.33333%
    }

    .col--2 {
        --ifm-col-width: calc(2/12*100%)
    }

    .col--offset-2 {
        margin-left: 16.6667%
    }

    .col--3 {
        --ifm-col-width: calc(3/12*100%)
    }

    .col--offset-3 {
        margin-left: 25%
    }

    .col--4 {
        --ifm-col-width: calc(4/12*100%)
    }

    .col--offset-4 {
        margin-left: 33.3333%
    }

    .col--5 {
        --ifm-col-width: calc(5/12*100%)
    }

    .col--offset-5 {
        margin-left: 41.6667%
    }

    .col--6 {
        --ifm-col-width: calc(6/12*100%)
    }

    .col--offset-6 {
        margin-left: 50%
    }

    .col--7 {
        --ifm-col-width: calc(7/12*100%)
    }

    .col--offset-7 {
        margin-left: 58.3333%
    }

    .col--8 {
        --ifm-col-width: calc(8/12*100%)
    }

    .col--offset-8 {
        margin-left: 66.6667%
    }

    .col--9 {
        --ifm-col-width: calc(9/12*100%)
    }

    .col--offset-9 {
        margin-left: 75%
    }

    .col--10 {
        --ifm-col-width: calc(10/12*100%)
    }

    .col--offset-10 {
        margin-left: 83.3333%
    }

    .col--11 {
        --ifm-col-width: calc(11/12*100%)
    }

    .col--offset-11 {
        margin-left: 91.6667%
    }

    .col--12 {
        --ifm-col-width: calc(12/12*100%)
    }

    .col--offset-12 {
        margin-left: 100%
    }

    .margin--none {
        margin: 0 !important
    }

    .margin-top--none {
        margin-top: 0 !important
    }

    .margin-left--none {
        margin-left: 0 !important
    }

    .margin-bottom--none {
        margin-bottom: 0 !important
    }

    .margin-right--none {
        margin-right: 0 !important
    }

    .margin-vert--none {
        margin-top: 0 !important;
        margin-bottom: 0 !important
    }

    .margin-horiz--none {
        margin-left: 0 !important;
        margin-right: 0 !important
    }

    .margin--xs {
        margin: .25rem !important
    }

    .margin-top--xs {
        margin-top: .25rem !important
    }

    .margin-left--xs {
        margin-left: .25rem !important
    }

    .margin-bottom--xs {
        margin-bottom: .25rem !important
    }

    .margin-right--xs {
        margin-right: .25rem !important
    }

    .margin-vert--xs {
        margin-top: .25rem !important;
        margin-bottom: .25rem !important
    }

    .margin-horiz--xs {
        margin-left: .25rem !important;
        margin-right: .25rem !important
    }

    .margin--sm {
        margin: .5rem !important
    }

    .margin-top--sm {
        margin-top: .5rem !important
    }

    .margin-left--sm {
        margin-left: .5rem !important
    }

    .margin-bottom--sm {
        margin-bottom: .5rem !important
    }

    .margin-right--sm {
        margin-right: .5rem !important
    }

    .margin-vert--sm {
        margin-top: .5rem !important;
        margin-bottom: .5rem !important
    }

    .margin-horiz--sm {
        margin-left: .5rem !important;
        margin-right: .5rem !important
    }

    .margin--md {
        margin: 1rem !important
    }

    .margin-top--md {
        margin-top: 1rem !important
    }

    .margin-left--md {
        margin-left: 1rem !important
    }

    .margin-bottom--md {
        margin-bottom: 1rem !important
    }

    .margin-right--md {
        margin-right: 1rem !important
    }

    .margin-vert--md {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important
    }

    .margin-horiz--md {
        margin-left: 1rem !important;
        margin-right: 1rem !important
    }

    .margin--lg {
        margin: 2rem !important
    }

    .margin-top--lg {
        margin-top: 2rem !important
    }

    .margin-left--lg {
        margin-left: 2rem !important
    }

    .margin-bottom--lg {
        margin-bottom: 2rem !important
    }

    .margin-right--lg {
        margin-right: 2rem !important
    }

    .margin-vert--lg {
        margin-top: 2rem !important;
        margin-bottom: 2rem !important
    }

    .margin-horiz--lg {
        margin-left: 2rem !important;
        margin-right: 2rem !important
    }

    .margin--xl {
        margin: 5rem !important
    }

    .margin-top--xl {
        margin-top: 5rem !important
    }

    .margin-left--xl {
        margin-left: 5rem !important
    }

    .margin-bottom--xl {
        margin-bottom: 5rem !important
    }

    .margin-right--xl {
        margin-right: 5rem !important
    }

    .margin-vert--xl {
        margin-top: 5rem !important;
        margin-bottom: 5rem !important
    }

    .margin-horiz--xl {
        margin-left: 5rem !important;
        margin-right: 5rem !important
    }

    .padding--none {
        padding: 0 !important
    }

    .padding-top--none {
        padding-top: 0 !important
    }

    .padding-left--none {
        padding-left: 0 !important
    }

    .padding-bottom--none {
        padding-bottom: 0 !important
    }

    .padding-right--none {
        padding-right: 0 !important
    }

    .padding-vert--none {
        padding-top: 0 !important;
        padding-bottom: 0 !important
    }

    .padding-horiz--none {
        padding-left: 0 !important;
        padding-right: 0 !important
    }

    .padding--xs {
        padding: .25rem !important
    }

    .padding-top--xs {
        padding-top: .25rem !important
    }

    .padding-left--xs {
        padding-left: .25rem !important
    }

    .padding-bottom--xs {
        padding-bottom: .25rem !important
    }

    .padding-right--xs {
        padding-right: .25rem !important
    }

    .padding-vert--xs {
        padding-top: .25rem !important;
        padding-bottom: .25rem !important
    }

    .padding-horiz--xs {
        padding-left: .25rem !important;
        padding-right: .25rem !important
    }

    .padding--sm {
        padding: .5rem !important
    }

    .padding-top--sm {
        padding-top: .5rem !important
    }

    .padding-left--sm {
        padding-left: .5rem !important
    }

    .padding-bottom--sm {
        padding-bottom: .5rem !important
    }

    .padding-right--sm {
        padding-right: .5rem !important
    }

    .padding-vert--sm {
        padding-top: .5rem !important;
        padding-bottom: .5rem !important
    }

    .padding-horiz--sm {
        padding-left: .5rem !important;
        padding-right: .5rem !important
    }

    .padding--md {
        padding: 1rem !important
    }

    .padding-top--md {
        padding-top: 1rem !important
    }

    .padding-left--md {
        padding-left: 1rem !important
    }

    .padding-bottom--md {
        padding-bottom: 1rem !important
    }

    .padding-right--md {
        padding-right: 1rem !important
    }

    .padding-vert--md {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important
    }

    .padding-horiz--md {
        padding-left: 1rem !important;
        padding-right: 1rem !important
    }

    .padding--lg {
        padding: 2rem !important
    }

    .padding-top--lg {
        padding-top: 2rem !important
    }

    .padding-left--lg {
        padding-left: 2rem !important
    }

    .padding-bottom--lg {
        padding-bottom: 2rem !important
    }

    .padding-right--lg {
        padding-right: 2rem !important
    }

    .padding-vert--lg {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important
    }

    .padding-horiz--lg {
        padding-left: 2rem !important;
        padding-right: 2rem !important
    }

    .padding--xl {
        padding: 5rem !important
    }

    .padding-top--xl {
        padding-top: 5rem !important
    }

    .padding-left--xl {
        padding-left: 5rem !important
    }

    .padding-bottom--xl {
        padding-bottom: 5rem !important
    }

    .padding-right--xl {
        padding-right: 5rem !important
    }

    .padding-vert--xl {
        padding-top: 5rem !important;
        padding-bottom: 5rem !important
    }

    .padding-horiz--xl {
        padding-left: 5rem !important;
        padding-right: 5rem !important
    }

    code {
        background-color: var(--ifm-code-background);
        border-radius: var(--ifm-code-border-radius);
        font-family: var(--ifm-font-family-monospace);
        font-size: var(--ifm-code-font-size);
        padding: var(--ifm-code-padding-vertical)var(--ifm-code-padding-horizontal);
        vertical-align: middle;
        border: .1rem solid rgba(0, 0, 0, .1)
    }

    a code {
        color: inherit
    }

    pre {
        background-color: var(--ifm-pre-background);
        border-radius: var(--ifm-pre-border-radius);
        color: var(--ifm-pre-color);
        font: var(--ifm-code-font-size)/var(--ifm-pre-line-height)var(--ifm-font-family-monospace);
        margin: 0 0 var(--ifm-spacing-vertical);
        padding: var(--ifm-pre-padding);
        overflow: auto
    }

    pre code {
        font-size: 100%;
        line-height: inherit;
        background-color: transparent;
        border: none;
        padding: 0
    }

    kbd {
        background-color: var(--ifm-color-emphasis-0);
        border: 1px solid var(--ifm-color-emphasis-400);
        box-shadow: inset 0 -1px 0 var(--ifm-color-emphasis-400);
        color: var(--ifm-color-emphasis-800);
        font: 80% var(--ifm-font-family-monospace);
        border-radius: .2rem;
        padding: .15rem .3rem
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        color: var(--ifm-heading-color);
        font-family: var(--ifm-heading-font-family);
        font-weight: var(--ifm-heading-font-weight);
        line-height: var(--ifm-heading-line-height);
        margin: var(--ifm-heading-margin-top)0 var(--ifm-heading-margin-bottom)0
    }

    h1 {
        font-size: var(--ifm-h1-font-size)
    }

    h2 {
        font-size: var(--ifm-h2-font-size)
    }

    h3 {
        font-size: var(--ifm-h3-font-size)
    }

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

    h5 {
        font-size: var(--ifm-h5-font-size)
    }

    h6 {
        font-size: var(--ifm-h6-font-size)
    }

    img {
        max-width: 100%
    }

    img[align=right] {
        padding-left: var(--image-alignment-padding)
    }

    img[align=left] {
        padding-right: var(--image-alignment-padding)
    }

    .markdown {
        --ifm-h1-vertical-rhythm-top: 3;
        --ifm-h2-vertical-rhythm-top: 2;
        --ifm-h3-vertical-rhythm-top: 1.5;
        --ifm-heading-vertical-rhythm-top: 1.25;
        --ifm-h1-vertical-rhythm-bottom: 1.25;
        --ifm-heading-vertical-rhythm-bottom: 1
    }

    .markdown:before {
        content: "";
        display: table
    }

    .markdown:after {
        clear: both;
        content: "";
        display: table
    }

    .markdown>:last-child {
        margin-bottom: 0 !important
    }

    .markdown h1:first-child {
        --ifm-h1-font-size: 3rem;
        margin-bottom: calc(var(--ifm-h1-vertical-rhythm-bottom)*var(--ifm-leading))
    }

    .markdown>h2 {
        --ifm-h2-font-size: 2rem;
        margin-bottom: calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading));
        margin-top: calc(var(--ifm-h2-vertical-rhythm-top)*var(--ifm-leading))
    }

    .markdown>h3 {
        --ifm-h3-font-size: 1.5rem;
        margin-bottom: calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading));
        margin-top: calc(var(--ifm-h3-vertical-rhythm-top)*var(--ifm-leading))
    }

    .markdown>h4,
    .markdown>h5,
    .markdown>h6 {
        margin-bottom: calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading));
        margin-top: calc(var(--ifm-heading-vertical-rhythm-top)*var(--ifm-leading))
    }

    .markdown>pre,
    .markdown>ul,
    .markdown>p {
        margin-bottom: var(--ifm-leading)
    }

    .markdown li {
        word-wrap: break-word
    }

    .markdown li>p {
        margin-top: var(--ifm-list-paragraph-margin)
    }

    .markdown li+li {
        margin-top: var(--ifm-list-item-margin)
    }

    ul,
    ol {
        margin: 0 0 var(--ifm-list-margin);
        padding-left: var(--ifm-list-left-padding)
    }

    ol ol,
    ul ol {
        list-style-type: lower-roman
    }

    ul ul,
    ul ol,
    ol ol,
    ol ul {
        margin: 0
    }

    ul ul ol,
    ul ol ol,
    ol ul ol,
    ol ol ol {
        list-style-type: lower-alpha
    }

    table {
        border-collapse: collapse;
        margin-bottom: var(--ifm-spacing-vertical);
        display: block;
        overflow: auto
    }

    table thead tr {
        border-bottom: 2px solid var(--ifm-table-border-color)
    }

    table thead {
        background-color: var(--ifm-table-stripe-background)
    }

    table tr {
        background-color: var(--ifm-table-background);
        border-top: var(--ifm-table-border-width)solid var(--ifm-table-border-color)
    }

    table tr:nth-child(2n) {
        background-color: var(--ifm-table-stripe-background)
    }

    table th,
    table td {
        border: var(--ifm-table-border-width)solid var(--ifm-table-border-color);
        padding: var(--ifm-table-cell-padding)
    }

    table th {
        background-color: var(--ifm-table-head-background);
        color: var(--ifm-table-head-color);
        font-weight: var(--ifm-table-head-font-weight)
    }

    table td {
        color: var(--ifm-table-cell-color)
    }

    strong {
        font-weight: var(--ifm-font-weight-bold)
    }

    a {
        color: var(--ifm-link-color);
        -webkit-text-decoration: var(--ifm-link-decoration);
        text-decoration: var(--ifm-link-decoration);
        transition: color var(--ifm-transition-fast)var(--ifm-transition-timing-default)
    }

    a:hover {
        color: var(--ifm-link-hover-color);
        -webkit-text-decoration: var(--ifm-link-hover-decoration);
        text-decoration: var(--ifm-link-hover-decoration)
    }

    a:not([href]) {
        -webkit-text-decoration: none;
        text-decoration: none
    }

    p {
        margin: 0 0 var(--ifm-paragraph-margin-bottom)
    }

    blockquote {
        border-left: var(--ifm-blockquote-border-left-width)solid var(--ifm-blockquote-border-color);
        box-shadow: var(--ifm-blockquote-shadow);
        color: var(--ifm-blockquote-color);
        font-size: var(--ifm-blockquote-font-size);
        margin: 0 0 var(--ifm-spacing-vertical);
        padding: var(--ifm-blockquote-padding-vertical)var(--ifm-blockquote-padding-horizontal)
    }

    blockquote>:first-child {
        margin-top: 0
    }

    blockquote>:last-child {
        margin-bottom: 0
    }

    hr {
        background-color: var(--ifm-hr-background-color);
        height: var(--ifm-hr-height);
        margin: var(--ifm-hr-margin-vertical)0;
        border: 0
    }

    .shadow--lw {
        box-shadow: var(--ifm-global-shadow-lw) !important
    }

    .shadow--md {
        box-shadow: var(--ifm-global-shadow-md) !important
    }

    .shadow--tl {
        box-shadow: var(--ifm-global-shadow-tl) !important
    }

    .text--primary {
        color: var(--ifm-color-primary)
    }

    .text--secondary {
        color: var(--ifm-color-secondary)
    }

    .text--success {
        color: var(--ifm-color-success)
    }

    .text--info {
        color: var(--ifm-color-info)
    }

    .text--warning {
        color: var(--ifm-color-warning)
    }

    .text--danger {
        color: var(--ifm-color-danger)
    }

    .text--center {
        text-align: center
    }

    .text--left {
        text-align: left
    }

    .text--justify {
        text-align: justify
    }

    .text--right {
        text-align: right
    }

    .text--capitalize {
        text-transform: capitalize
    }

    .text--lowercase {
        text-transform: lowercase
    }

    .text--uppercase {
        text-transform: uppercase
    }

    .text--light {
        font-weight: var(--ifm-font-weight-light)
    }

    .text--normal {
        font-weight: var(--ifm-font-weight-normal)
    }

    .text--semibold {
        font-weight: var(--ifm-font-weight-semibold)
    }

    .text--bold {
        font-weight: var(--ifm-font-weight-bold)
    }

    .text--italic {
        font-style: italic
    }

    .text--truncate {
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden
    }

    .text--break {
        word-wrap: break-word !important;
        word-break: break-word !important
    }

    .text--no-decoration,
    .text--no-decoration:hover {
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .clean-btn {
        color: inherit;
        cursor: pointer;
        background: 0 0;
        border: none;
        padding: 0;
        font-family: inherit
    }

    .clean-list {
        padding-left: 0;
        list-style: none
    }

    .alert--primary {
        --ifm-alert-background-color: var(--ifm-color-primary-contrast-background);
        --ifm-alert-background-color-highlight: rgba(53, 120, 229, .15);
        --ifm-alert-foreground-color: var(--ifm-color-primary-contrast-foreground);
        --ifm-alert-border-color: var(--ifm-color-primary-dark)
    }

    .alert--secondary {
        --ifm-alert-background-color: var(--ifm-color-secondary-contrast-background);
        --ifm-alert-background-color-highlight: rgba(235, 237, 240, .15);
        --ifm-alert-foreground-color: var(--ifm-color-secondary-contrast-foreground);
        --ifm-alert-border-color: var(--ifm-color-secondary-dark)
    }

    .alert--success {
        --ifm-alert-background-color: var(--ifm-color-success-contrast-background);
        --ifm-alert-background-color-highlight: rgba(0, 164, 0, .15);
        --ifm-alert-foreground-color: var(--ifm-color-success-contrast-foreground);
        --ifm-alert-border-color: var(--ifm-color-success-dark)
    }

    .alert--info {
        --ifm-alert-background-color: var(--ifm-color-info-contrast-background);
        --ifm-alert-background-color-highlight: rgba(84, 199, 236, .15);
        --ifm-alert-foreground-color: var(--ifm-color-info-contrast-foreground);
        --ifm-alert-border-color: var(--ifm-color-info-dark)
    }

    .alert--warning {
        --ifm-alert-background-color: var(--ifm-color-warning-contrast-background);
        --ifm-alert-background-color-highlight: rgba(255, 186, 0, .15);
        --ifm-alert-foreground-color: var(--ifm-color-warning-contrast-foreground);
        --ifm-alert-border-color: var(--ifm-color-warning-dark)
    }

    .alert--danger {
        --ifm-alert-background-color: var(--ifm-color-danger-contrast-background);
        --ifm-alert-background-color-highlight: rgba(250, 56, 62, .15);
        --ifm-alert-foreground-color: var(--ifm-color-danger-contrast-foreground);
        --ifm-alert-border-color: var(--ifm-color-danger-dark)
    }

    .alert {
        --ifm-code-background: var(--ifm-alert-background-color-highlight);
        --ifm-link-color: var(--ifm-alert-foreground-color);
        --ifm-link-hover-color: var(--ifm-alert-foreground-color);
        --ifm-link-decoration: underline;
        --ifm-tabs-color: var(--ifm-alert-foreground-color);
        --ifm-tabs-color-active: var(--ifm-alert-foreground-color);
        --ifm-tabs-color-active-border: var(--ifm-alert-border-color);
        background-color: var(--ifm-alert-background-color);
        border: var(--ifm-alert-border-width)solid var(--ifm-alert-border-color);
        border-left-width: var(--ifm-alert-border-left-width);
        border-radius: var(--ifm-alert-border-radius);
        box-shadow: var(--ifm-alert-shadow);
        color: var(--ifm-alert-foreground-color);
        padding: var(--ifm-alert-padding-vertical)var(--ifm-alert-padding-horizontal)
    }

    .alert__heading {
        font: bold var(--ifm-h5-font-size)/var(--ifm-heading-line-height)var(--ifm-heading-font-family);
        text-transform: uppercase;
        align-items: center;
        margin-bottom: .5rem;
        display: flex
    }

    .alert__icon {
        margin-right: .4em;
        display: inline-flex
    }

    .alert__icon svg {
        fill: var(--ifm-alert-foreground-color);
        stroke: var(--ifm-alert-foreground-color);
        stroke-width: 0
    }

    .alert .close {
        color: var(--ifm-alert-foreground-color);
        margin: calc(var(--ifm-alert-padding-vertical)*-1)calc(var(--ifm-alert-padding-horizontal)*-1)0 0;
        opacity: .75
    }

    .alert .close:hover,
    .alert .close:focus {
        opacity: 1
    }

    .alert a {
        -webkit-text-decoration-color: var(--ifm-alert-border-color);
        text-decoration-color: var(--ifm-alert-border-color)
    }

    .alert a:hover {
        text-decoration-thickness: 2px
    }

    .avatar {
        column-gap: var(--ifm-avatar-intro-margin);
        display: flex
    }

    .avatar__photo {
        height: var(--ifm-avatar-photo-size);
        width: var(--ifm-avatar-photo-size);
        border-radius: 50%;
        display: block;
        overflow: hidden
    }

    .avatar__photo--sm {
        --ifm-avatar-photo-size: 2rem
    }

    .avatar__photo--lg {
        --ifm-avatar-photo-size: 4rem
    }

    .avatar__photo--xl {
        --ifm-avatar-photo-size: 6rem
    }

    .avatar__intro {
        text-align: var(--ifm-avatar-intro-alignment);
        flex-direction: column;
        flex: 1;
        justify-content: center;
        display: flex
    }

    .avatar__name {
        font: bold var(--ifm-h4-font-size)/var(--ifm-heading-line-height)var(--ifm-font-family-base)
    }

    .avatar__subtitle {
        margin-top: .25rem
    }

    .avatar--vertical {
        --ifm-avatar-intro-alignment: center;
        --ifm-avatar-intro-margin: .5rem;
        flex-direction: column;
        align-items: center
    }

    .badge {
        background-color: var(--ifm-badge-background-color);
        border: var(--ifm-badge-border-width)solid var(--ifm-badge-border-color);
        border-radius: var(--ifm-badge-border-radius);
        color: var(--ifm-badge-color);
        font-size: 75%;
        font-weight: var(--ifm-font-weight-bold);
        padding: var(--ifm-badge-padding-vertical)var(--ifm-badge-padding-horizontal);
        line-height: 1;
        display: inline-block
    }

    .badge--primary {
        --ifm-badge-background-color: var(--ifm-color-primary);
        --ifm-badge-border-color: var(--ifm-badge-background-color)
    }

    .badge--secondary {
        --ifm-badge-background-color: var(--ifm-color-secondary);
        --ifm-badge-border-color: var(--ifm-badge-background-color);
        color: var(--ifm-color-black)
    }

    .badge--success {
        --ifm-badge-background-color: var(--ifm-color-success);
        --ifm-badge-border-color: var(--ifm-badge-background-color)
    }

    .badge--info {
        --ifm-badge-background-color: var(--ifm-color-info);
        --ifm-badge-border-color: var(--ifm-badge-background-color)
    }

    .badge--warning {
        --ifm-badge-background-color: var(--ifm-color-warning);
        --ifm-badge-border-color: var(--ifm-badge-background-color)
    }

    .badge--danger {
        --ifm-badge-background-color: var(--ifm-color-danger);
        --ifm-badge-border-color: var(--ifm-badge-background-color)
    }

    .breadcrumbs {
        margin-bottom: 0;
        padding-left: 0
    }

    .breadcrumbs__item {
        display: inline-block
    }

    .breadcrumbs__item:not(:last-child):after {
        background: var(--ifm-breadcrumb-separator)center;
        content: " ";
        filter: var(--ifm-breadcrumb-separator-filter);
        height: calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier));
        margin: 0 var(--ifm-breadcrumb-spacing);
        opacity: .5;
        width: calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier));
        display: inline-block
    }

    .breadcrumbs__item--active .breadcrumbs__link {
        background: var(--ifm-breadcrumb-item-background-active);
        color: var(--ifm-breadcrumb-color-active)
    }

    .breadcrumbs__link {
        border-radius: var(--ifm-breadcrumb-border-radius);
        color: var(--ifm-font-color-base);
        font-size: calc(1rem*var(--ifm-breadcrumb-size-multiplier));
        padding: calc(var(--ifm-breadcrumb-padding-vertical)*var(--ifm-breadcrumb-size-multiplier))calc(var(--ifm-breadcrumb-padding-horizontal)*var(--ifm-breadcrumb-size-multiplier));
        transition-property: background, color;
        transition-duration: var(--ifm-transition-fast);
        transition-timing-function: var(--ifm-transition-timing-default);
        display: inline-block
    }

    .breadcrumbs__link:link:hover,
    .breadcrumbs__link:visited:hover,
    area[href].breadcrumbs__link:hover {
        background: var(--ifm-breadcrumb-item-background-active);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .breadcrumbs__link:any-link:hover {
        background: var(--ifm-breadcrumb-item-background-active);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .breadcrumbs--sm {
        --ifm-breadcrumb-size-multiplier: .8
    }

    .breadcrumbs--lg {
        --ifm-breadcrumb-size-multiplier: 1.2
    }

    .button {
        background-color: var(--ifm-button-background-color);
        border: var(--ifm-button-border-width)solid var(--ifm-button-border-color);
        border-radius: var(--ifm-button-border-radius);
        color: var(--ifm-button-color);
        cursor: pointer;
        font-size: calc(.875rem*var(--ifm-button-size-multiplier));
        font-weight: var(--ifm-button-font-weight);
        padding: calc(var(--ifm-button-padding-vertical)*var(--ifm-button-size-multiplier))calc(var(--ifm-button-padding-horizontal)*var(--ifm-button-size-multiplier));
        text-align: center;
        -webkit-user-select: none;
        user-select: none;
        vertical-align: middle;
        white-space: nowrap;
        transition-property: color, background, border-color;
        transition-duration: var(--ifm-button-transition-duration);
        transition-timing-function: var(--ifm-transition-timing-default);
        line-height: 1.5;
        display: inline-block
    }

    .button:hover {
        color: var(--ifm-button-color);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .button--outline {
        --ifm-button-background-color: transparent;
        --ifm-button-color: var(--ifm-button-border-color)
    }

    .button--outline:hover {
        --ifm-button-background-color: var(--ifm-button-border-color)
    }

    .button--outline:hover,
    .button--outline:active,
    .button--outline.button--active {
        --ifm-button-color: var(--ifm-font-color-base-inverse)
    }

    .button--link {
        --ifm-button-background-color: transparent;
        --ifm-button-border-color: transparent;
        color: var(--ifm-link-color);
        -webkit-text-decoration: var(--ifm-link-decoration);
        text-decoration: var(--ifm-link-decoration)
    }

    .button--link:hover,
    .button--link:active,
    .button--link.button--active {
        color: var(--ifm-link-hover-color);
        -webkit-text-decoration: var(--ifm-link-hover-decoration);
        text-decoration: var(--ifm-link-hover-decoration)
    }

    .button.disabled,
    .button:disabled,
    .button[disabled] {
        opacity: .65;
        pointer-events: none
    }

    .button--sm {
        --ifm-button-size-multiplier: .8
    }

    .button--lg {
        --ifm-button-size-multiplier: 1.35
    }

    .button--block {
        width: 100%;
        display: block
    }

    .button.button--secondary {
        color: var(--ifm-color-gray-900)
    }

    .button.button--secondary.button--outline:not(.button--active):not(:hover) {
        color: var(--ifm-font-color-base)
    }

    :where(.button--primary) {
        --ifm-button-background-color: var(--ifm-color-primary);
        --ifm-button-border-color: var(--ifm-color-primary)
    }

    :where(.button--primary):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-primary-dark);
        --ifm-button-border-color: var(--ifm-color-primary-dark)
    }

    .button--primary:active,
    .button--primary.button--active {
        --ifm-button-background-color: var(--ifm-color-primary-darker);
        --ifm-button-border-color: var(--ifm-color-primary-darker)
    }

    :where(.button--secondary) {
        --ifm-button-background-color: var(--ifm-color-secondary);
        --ifm-button-border-color: var(--ifm-color-secondary)
    }

    :where(.button--secondary):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-secondary-dark);
        --ifm-button-border-color: var(--ifm-color-secondary-dark)
    }

    .button--secondary:active,
    .button--secondary.button--active {
        --ifm-button-background-color: var(--ifm-color-secondary-darker);
        --ifm-button-border-color: var(--ifm-color-secondary-darker)
    }

    :where(.button--success) {
        --ifm-button-background-color: var(--ifm-color-success);
        --ifm-button-border-color: var(--ifm-color-success)
    }

    :where(.button--success):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-success-dark);
        --ifm-button-border-color: var(--ifm-color-success-dark)
    }

    .button--success:active,
    .button--success.button--active {
        --ifm-button-background-color: var(--ifm-color-success-darker);
        --ifm-button-border-color: var(--ifm-color-success-darker)
    }

    :where(.button--info) {
        --ifm-button-background-color: var(--ifm-color-info);
        --ifm-button-border-color: var(--ifm-color-info)
    }

    :where(.button--info):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-info-dark);
        --ifm-button-border-color: var(--ifm-color-info-dark)
    }

    .button--info:active,
    .button--info.button--active {
        --ifm-button-background-color: var(--ifm-color-info-darker);
        --ifm-button-border-color: var(--ifm-color-info-darker)
    }

    :where(.button--warning) {
        --ifm-button-background-color: var(--ifm-color-warning);
        --ifm-button-border-color: var(--ifm-color-warning)
    }

    :where(.button--warning):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-warning-dark);
        --ifm-button-border-color: var(--ifm-color-warning-dark)
    }

    .button--warning:active,
    .button--warning.button--active {
        --ifm-button-background-color: var(--ifm-color-warning-darker);
        --ifm-button-border-color: var(--ifm-color-warning-darker)
    }

    :where(.button--danger) {
        --ifm-button-background-color: var(--ifm-color-danger);
        --ifm-button-border-color: var(--ifm-color-danger)
    }

    :where(.button--danger):not(.button--outline):hover {
        --ifm-button-background-color: var(--ifm-color-danger-dark);
        --ifm-button-border-color: var(--ifm-color-danger-dark)
    }

    .button--danger:active,
    .button--danger.button--active {
        --ifm-button-background-color: var(--ifm-color-danger-darker);
        --ifm-button-border-color: var(--ifm-color-danger-darker)
    }

    .button-group {
        gap: var(--ifm-button-group-spacing);
        display: inline-flex
    }

    .button-group>.button:not(:first-child) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0
    }

    .button-group>.button:not(:last-child) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0
    }

    .button-group--block {
        justify-content: stretch;
        display: flex
    }

    .button-group--block>.button {
        flex-grow: 1
    }

    .card {
        background-color: var(--ifm-card-background-color);
        border-radius: var(--ifm-card-border-radius);
        box-shadow: var(--ifm-global-shadow-lw);
        flex-direction: column;
        display: flex;
        overflow: hidden
    }

    .card--full-height {
        height: 100%
    }

    .card__image {
        padding-top: var(--ifm-card-vertical-spacing)
    }

    .card__image:first-child {
        padding-top: 0
    }

    .card__header,
    .card__body,
    .card__footer {
        padding: var(--ifm-card-vertical-spacing)var(--ifm-card-horizontal-spacing)
    }

    .card__header:not(:last-child),
    .card__body:not(:last-child),
    .card__footer:not(:last-child) {
        padding-bottom: 0
    }

    .card__header>:last-child,
    .card__body>:last-child,
    .card__footer>:last-child {
        margin-bottom: 0
    }

    .card__footer {
        margin-top: auto
    }

    .table-of-contents {
        padding: var(--ifm-toc-padding-vertical)0;
        margin-bottom: 0;
        font-size: .8rem
    }

    .table-of-contents,
    .table-of-contents ul {
        padding-left: var(--ifm-toc-padding-horizontal);
        list-style: none
    }

    .table-of-contents li {
        margin: var(--ifm-toc-padding-vertical)var(--ifm-toc-padding-horizontal)
    }

    .table-of-contents__left-border {
        border-left: 1px solid var(--ifm-toc-border-color)
    }

    .table-of-contents__link {
        color: var(--ifm-toc-link-color);
        display: block
    }

    .table-of-contents__link:hover,
    .table-of-contents__link:hover code,
    .table-of-contents__link--active,
    .table-of-contents__link--active code {
        color: var(--ifm-color-primary);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .close {
        color: var(--ifm-color-black);
        float: right;
        font-size: 1.5rem;
        font-weight: var(--ifm-font-weight-bold);
        opacity: .5;
        transition: opacity var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        padding: 1rem;
        line-height: 1
    }

    .close:hover {
        opacity: .7
    }

    .close:focus {
        opacity: .8
    }

    .dropdown {
        font-weight: var(--ifm-dropdown-font-weight);
        vertical-align: top;
        display: inline-flex;
        position: relative
    }

    .dropdown--hoverable:hover .dropdown__menu,
    .dropdown--show .dropdown__menu {
        opacity: 1;
        pointer-events: all;
        visibility: visible;
        transform: translateY(-1px)
    }

    .dropdown--right .dropdown__menu {
        left: inherit;
        right: 0
    }

    .dropdown--nocaret .navbar__link:after {
        content: none !important
    }

    .dropdown__menu {
        background-color: var(--ifm-dropdown-background-color);
        border-radius: var(--ifm-global-radius);
        box-shadow: var(--ifm-global-shadow-md);
        opacity: 0;
        pointer-events: none;
        min-width: 10rem;
        max-height: 80vh;
        left: 0;
        top: calc(100% - var(--ifm-navbar-item-padding-vertical) + .3rem);
        visibility: hidden;
        z-index: var(--ifm-z-index-dropdown);
        transition-property: opacity, transform, visibility;
        transition-duration: var(--ifm-transition-fast);
        transition-timing-function: var(--ifm-transition-timing-default);
        padding: .5rem;
        list-style: none;
        position: absolute;
        overflow-y: auto;
        transform: translateY(-.625rem)
    }

    .dropdown__link {
        color: var(--ifm-dropdown-link-color);
        white-space: nowrap;
        border-radius: .25rem;
        margin-top: .2rem;
        padding: .25rem .5rem;
        font-size: .875rem;
        display: block
    }

    .dropdown__link:hover,
    .dropdown__link--active {
        background-color: var(--ifm-dropdown-hover-background-color);
        color: var(--ifm-dropdown-link-color);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .dropdown__link--active,
    .dropdown__link--active:hover {
        --ifm-dropdown-link-color: var(--ifm-link-color)
    }

    .dropdown>.navbar__link:after {
        content: "";
        border: .4em solid transparent;
        border-top-color: currentColor;
        border-bottom: 0 solid;
        margin-left: .3em;
        display: inline-block;
        position: relative;
        top: 2px;
        transform: translateY(-50%)
    }

    .footer {
        background-color: var(--ifm-footer-background-color);
        color: var(--ifm-footer-color);
        padding: var(--ifm-footer-padding-vertical)var(--ifm-footer-padding-horizontal)
    }

    .footer--dark {
        --ifm-footer-background-color: #303846;
        --ifm-footer-color: var(--ifm-footer-link-color);
        --ifm-footer-link-color: var(--ifm-color-secondary);
        --ifm-footer-title-color: var(--ifm-color-white)
    }

    .footer__links {
        margin-bottom: 1rem
    }

    .footer__link-item {
        color: var(--ifm-footer-link-color);
        line-height: 2
    }

    .footer__link-item:hover {
        color: var(--ifm-footer-link-hover-color)
    }

    .footer__link-separator {
        margin: 0 var(--ifm-footer-link-horizontal-spacing)
    }

    .footer__logo {
        max-width: var(--ifm-footer-logo-max-width);
        margin-top: 1rem
    }

    .footer__title {
        color: var(--ifm-footer-title-color);
        font: bold var(--ifm-h4-font-size)/var(--ifm-heading-line-height)var(--ifm-font-family-base);
        margin-bottom: var(--ifm-heading-margin-bottom)
    }

    .footer__item {
        margin-top: 0
    }

    .footer__items {
        margin-bottom: 0
    }

    [type=checkbox] {
        padding: 0
    }

    .hero {
        background-color: var(--ifm-hero-background-color);
        color: var(--ifm-hero-text-color);
        align-items: center;
        padding: 4rem 2rem;
        display: flex
    }

    .hero--primary {
        --ifm-hero-background-color: var(--ifm-color-primary);
        --ifm-hero-text-color: var(--ifm-font-color-base-inverse)
    }

    .hero--dark {
        --ifm-hero-background-color: #303846;
        --ifm-hero-text-color: var(--ifm-color-white)
    }

    .hero__title {
        font-size: 3rem
    }

    .hero__subtitle {
        font-size: 1.5rem
    }

    .menu {
        font-weight: var(--ifm-font-weight-semibold);
        overflow-x: hidden
    }

    .menu__list {
        margin: 0;
        padding-left: 0;
        list-style: none
    }

    .menu__list .menu__list {
        padding-left: var(--ifm-menu-link-padding-horizontal);
        flex: 0 0 100%;
        margin-top: .25rem
    }

    .menu__list-item:not(:first-child) {
        margin-top: .25rem
    }

    .menu__list-item--collapsed .menu__list {
        height: 0;
        overflow: hidden
    }

    .menu__list-item--collapsed .menu__link--sublist:after,
    .menu__list-item--collapsed .menu__caret:before {
        transform: rotate(90deg)
    }

    .menu__list-item-collapsible {
        transition: background var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        border-radius: .25rem;
        flex-wrap: wrap;
        display: flex;
        position: relative
    }

    .menu__list-item-collapsible:hover,
    .menu__list-item-collapsible--active {
        background: var(--ifm-menu-color-background-hover)
    }

    .menu__list-item-collapsible .menu__link:hover,
    .menu__list-item-collapsible .menu__link--active {
        background: 0 0 !important
    }

    .menu__link,
    .menu__caret {
        transition: background var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        border-radius: .25rem;
        align-items: center;
        display: flex
    }

    .menu__link:hover,
    .menu__caret:hover {
        background: var(--ifm-menu-color-background-hover)
    }

    .menu__link {
        color: var(--ifm-menu-color);
        padding: var(--ifm-menu-link-padding-vertical)var(--ifm-menu-link-padding-horizontal);
        flex: 1;
        line-height: 1.25
    }

    .menu__link:hover {
        color: var(--ifm-menu-color);
        transition: color var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .menu__link--sublist-caret:after {
        content: "";
        background: var(--ifm-menu-link-sublist-icon)50%/2rem 2rem;
        min-width: 1.25rem;
        filter: var(--ifm-menu-link-sublist-icon-filter);
        width: 1.25rem;
        height: 1.25rem;
        transition: transform var(--ifm-transition-fast)linear;
        margin-left: auto;
        transform: rotate(180deg)
    }

    .menu__link--active,
    .menu__link--active:hover {
        color: var(--ifm-menu-color-active)
    }

    .menu__link--active:not(.menu__link--sublist) {
        background-color: var(--ifm-menu-color-background-active)
    }

    .menu__caret {
        padding: var(--ifm-menu-link-padding-vertical)var(--ifm-menu-link-padding-horizontal)
    }

    .menu__caret:before {
        content: "";
        background: var(--ifm-menu-link-sublist-icon)50%/2rem 2rem;
        filter: var(--ifm-menu-link-sublist-icon-filter);
        width: 1.25rem;
        height: 1.25rem;
        transition: transform var(--ifm-transition-fast)linear;
        transform: rotate(180deg)
    }

    html[data-theme=dark],
    .navbar--dark {
        --ifm-menu-link-sublist-icon-filter: invert(100%)sepia(94%)saturate(17%)hue-rotate(223deg)brightness(104%)contrast(98%)
    }

    .navbar {
        box-shadow: var(--ifm-navbar-shadow);
        height: var(--ifm-navbar-height);
        /* padding: var(--ifm-navbar-padding-vertical)var(--ifm-navbar-padding-horizontal); */
        display: flex
    }

    /* 🚫 REMOVE blur from navbar */
    .navbar {
        background: transparent;
    }

    /* ✅ APPLY blur safely inside */
    .navbar__inner {
        background: rgba(13, 17, 23, 0.45);

        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
        padding: var(--ifm-navbar-padding-vertical)var(--ifm-navbar-padding-horizontal);
        display: flex;
    }

    .navbar>.container,
    .navbar>.container-fluid {
        display: flex
    }

    .navbar--fixed-top {
        z-index: var(--ifm-z-index-fixed);
        position: sticky;
        top: 0
    }

    .navbar__inner {
        flex-wrap: wrap;
        justify-content: space-between;
        width: 100%;
        display: flex
    }

    .navbar__brand {
        color: var(--ifm-navbar-link-color);
        align-items: center;
        min-width: 0;
        margin-right: 1rem;
        display: flex
    }

    .navbar__brand:hover {
        color: var(--ifm-navbar-link-hover-color);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .navbar__title {
        flex: auto
    }

    .navbar__toggle {
        margin-right: .5rem;
        display: none
    }

    .navbar__logo {
        flex: none;
        height: 2rem;
        margin-right: .5rem
    }

    .navbar__logo img {
        height: 100%
    }

    .navbar__items {
        flex: 1;
        align-items: center;
        min-width: 0;
        display: flex
    }

    .navbar__items--center {
        flex: none
    }

    .navbar__items--center .navbar__brand {
        margin: 0
    }

    .navbar__items--center+.navbar__items--right {
        flex: 1
    }

    .navbar__items--right {
        flex: none;
        justify-content: flex-end
    }

    .navbar__items--right>:last-child {
        padding-right: 0
    }

    .navbar__item {
        padding: var(--ifm-navbar-item-padding-vertical)var(--ifm-navbar-item-padding-horizontal);
        display: inline-block
    }

    .navbar__item.dropdown .navbar__link:not([href]) {
        pointer-events: none
    }

    .navbar__link {
        color: var(--ifm-navbar-link-color);
        font-weight: var(--ifm-font-weight-semibold)
    }

    .navbar__link:hover,
    .navbar__link--active {
        color: var(--ifm-navbar-link-hover-color);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .navbar--dark,
    .navbar--primary {
        --ifm-menu-color: var(--ifm-color-gray-300);
        --ifm-navbar-link-color: var(--ifm-color-gray-100);
        --ifm-navbar-search-input-background-color: rgba(255, 255, 255, .1);
        --ifm-navbar-search-input-placeholder-color: rgba(255, 255, 255, .5);
        color: var(--ifm-color-white)
    }

    .navbar--dark {
        --ifm-navbar-background-color: #242526;
        --ifm-navbar-link-hover-color: var(--ifm-color-primary);
        --ifm-menu-color-background-active: rgba(255, 255, 255, .05);
        --ifm-navbar-search-input-color: var(--ifm-color-white)
    }

    .navbar--primary {
        --ifm-navbar-background-color: var(--ifm-color-primary);
        --ifm-navbar-link-hover-color: var(--ifm-color-white);
        --ifm-menu-color-active: var(--ifm-color-white);
        --ifm-navbar-search-input-color: var(--ifm-color-emphasis-500)
    }

    .navbar__search-input {
        appearance: none;
        background: var(--ifm-navbar-search-input-background-color)var(--ifm-navbar-search-input-icon)no-repeat .75rem center/1rem 1rem;
        color: var(--ifm-navbar-search-input-color);
        cursor: text;
        border: none;
        border-radius: 2rem;
        width: 12.5rem;
        height: 2rem;
        padding: 0 .5rem 0 2.25rem;
        font-size: 1rem;
        display: inline-block
    }

    .navbar__search-input::placeholder {
        color: var(--ifm-navbar-search-input-placeholder-color)
    }

    .navbar-sidebar {
        background-color: var(--ifm-navbar-background-color);
        box-shadow: var(--ifm-global-shadow-md);
        opacity: 0;
        visibility: hidden;
        width: var(--ifm-navbar-sidebar-width);
        transition-property: opacity, visibility, transform;
        transition-duration: var(--ifm-transition-fast);
        transition-timing-function: ease-in-out;
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        overflow-x: hidden;
        transform: translate(-100%)
    }

    .navbar-sidebar--show .navbar-sidebar,
    .navbar-sidebar--show .navbar-sidebar__backdrop {
        opacity: 1;
        visibility: visible
    }

    .navbar-sidebar--show .navbar-sidebar {
        transform: translate(0, 0)
    }

    .navbar-sidebar__backdrop {
        opacity: 0;
        visibility: hidden;
        transition-property: opacity, visibility;
        transition-duration: var(--ifm-transition-fast);
        background-color: rgba(0, 0, 0, .6);
        transition-timing-function: ease-in-out;
        position: fixed;
        inset: 0
    }

    .navbar-sidebar__brand {
        box-shadow: var(--ifm-navbar-shadow);
        height: var(--ifm-navbar-height);
        padding: var(--ifm-navbar-padding-vertical)var(--ifm-navbar-padding-horizontal);
        flex: 1;
        align-items: center;
        display: flex
    }

    .navbar-sidebar__items {
        height: calc(100% - var(--ifm-navbar-height));
        transition: transform var(--ifm-transition-fast)ease-in-out;
        display: flex;
        transform: translateZ(0)
    }

    .navbar-sidebar__items--show-secondary {
        transform: translate3d(calc((var(--ifm-navbar-sidebar-width))*-1), 0, 0)
    }

    .navbar-sidebar__item {
        width: calc(var(--ifm-navbar-sidebar-width));
        flex-shrink: 0;
        padding: .5rem
    }

    .navbar-sidebar__back {
        background: var(--ifm-menu-color-background-active);
        font-size: 15px;
        font-weight: var(--ifm-button-font-weight);
        text-align: left;
        width: calc(100% + 1rem);
        margin: 0 0 .2rem -.5rem;
        padding: .6rem 1.5rem;
        position: relative;
        top: -.5rem
    }

    .navbar-sidebar__close {
        margin-left: auto;
        display: flex
    }

    .pagination {
        column-gap: var(--ifm-pagination-page-spacing);
        font-size: var(--ifm-pagination-font-size);
        padding-left: 0;
        display: flex
    }

    .pagination--sm {
        --ifm-pagination-font-size: .8rem;
        --ifm-pagination-padding-horizontal: .8rem;
        --ifm-pagination-padding-vertical: .2rem
    }

    .pagination--lg {
        --ifm-pagination-font-size: 1.2rem;
        --ifm-pagination-padding-horizontal: 1.2rem;
        --ifm-pagination-padding-vertical: .3rem
    }

    .pagination__item {
        display: inline-flex
    }

    .pagination__item>span {
        padding: var(--ifm-pagination-padding-vertical)
    }

    .pagination__item--active .pagination__link {
        background: var(--ifm-pagination-item-active-background);
        color: var(--ifm-pagination-color-active)
    }

    .pagination__item:not(.pagination__item--active):hover .pagination__link {
        background: var(--ifm-pagination-item-active-background)
    }

    .pagination__item--disabled,
    .pagination__item[disabled] {
        opacity: .25;
        pointer-events: none
    }

    .pagination__link {
        border-radius: var(--ifm-pagination-border-radius);
        color: var(--ifm-font-color-base);
        padding: var(--ifm-pagination-padding-vertical)var(--ifm-pagination-padding-horizontal);
        transition: background var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        display: inline-block
    }

    .pagination__link:hover {
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .pagination-nav {
        grid-gap: var(--ifm-spacing-horizontal);
        gap: var(--ifm-spacing-horizontal);
        grid-template-columns: repeat(2, 1fr);
        display: grid
    }

    .pagination-nav__link {
        border: 1px solid var(--ifm-color-emphasis-300);
        border-radius: var(--ifm-pagination-nav-border-radius);
        height: 100%;
        line-height: var(--ifm-heading-line-height);
        padding: var(--ifm-global-spacing);
        transition: border-color var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        display: block
    }

    .pagination-nav__link:hover {
        border-color: var(--ifm-pagination-nav-color-hover);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .pagination-nav__link--next {
        text-align: right;
        grid-column: 2/3
    }

    .pagination-nav__label {
        font-size: var(--ifm-h4-font-size);
        font-weight: var(--ifm-heading-font-weight);
        word-break: break-word
    }

    .pagination-nav__link--prev .pagination-nav__label:before {
        content: "« "
    }

    .pagination-nav__link--next .pagination-nav__label:after {
        content: " »"
    }

    .pagination-nav__sublabel {
        color: var(--ifm-color-content-secondary);
        font-size: var(--ifm-h5-font-size);
        font-weight: var(--ifm-font-weight-semibold);
        margin-bottom: .25rem
    }

    .pills {
        gap: var(--ifm-pills-spacing);
        padding-left: 0;
        display: flex
    }

    .pills__item {
        cursor: pointer;
        font-weight: var(--ifm-font-weight-bold);
        transition: background var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        border-radius: .5rem;
        padding: .25rem 1rem;
        display: inline-block
    }

    .pills__item--active {
        background: var(--ifm-pills-color-background-active);
        color: var(--ifm-pills-color-active)
    }

    .pills__item:not(.pills__item--active):hover {
        background: var(--ifm-pills-color-background-active)
    }

    .pills--block {
        justify-content: stretch
    }

    .pills--block .pills__item {
        text-align: center;
        flex-grow: 1
    }

    .tabs {
        color: var(--ifm-tabs-color);
        font-weight: var(--ifm-font-weight-bold);
        margin-bottom: 0;
        padding-left: 0;
        display: flex;
        overflow-x: auto
    }

    .tabs__item {
        border-radius: var(--ifm-global-radius);
        cursor: pointer;
        padding: var(--ifm-tabs-padding-vertical)var(--ifm-tabs-padding-horizontal);
        transition: background-color var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        border-bottom: 3px solid transparent;
        display: inline-flex
    }

    .tabs__item--active {
        border-bottom-color: var(--ifm-tabs-color-active-border);
        color: var(--ifm-tabs-color-active);
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0
    }

    .tabs__item:hover {
        background-color: var(--ifm-hover-overlay)
    }

    .tabs--block {
        justify-content: stretch
    }

    .tabs--block .tabs__item {
        flex-grow: 1;
        justify-content: center
    }

    html[data-theme=dark] {
        --ifm-color-scheme: dark;
        --ifm-color-emphasis-0: var(--ifm-color-gray-1000);
        --ifm-color-emphasis-100: var(--ifm-color-gray-900);
        --ifm-color-emphasis-200: var(--ifm-color-gray-800);
        --ifm-color-emphasis-300: var(--ifm-color-gray-700);
        --ifm-color-emphasis-400: var(--ifm-color-gray-600);
        --ifm-color-emphasis-500: var(--ifm-color-gray-500);
        --ifm-color-emphasis-600: var(--ifm-color-gray-400);
        --ifm-color-emphasis-700: var(--ifm-color-gray-300);
        --ifm-color-emphasis-800: var(--ifm-color-gray-200);
        --ifm-color-emphasis-900: var(--ifm-color-gray-100);
        --ifm-color-emphasis-1000: var(--ifm-color-gray-0);
        --ifm-background-color: #1b1b1d;
        --ifm-background-surface-color: #242526;
        --ifm-hover-overlay: rgba(255, 255, 255, .05);
        --ifm-color-content: #e3e3e3;
        --ifm-color-content-secondary: #fff;
        --ifm-breadcrumb-separator-filter: invert(64%)sepia(11%)saturate(0%)hue-rotate(149deg)brightness(99%)contrast(95%);
        --ifm-code-background: rgba(255, 255, 255, .1);
        --ifm-scrollbar-track-background-color: #444;
        --ifm-scrollbar-thumb-background-color: #686868;
        --ifm-scrollbar-thumb-hover-background-color: #7a7a7a;
        --ifm-table-stripe-background: rgba(255, 255, 255, .07);
        --ifm-toc-border-color: var(--ifm-color-emphasis-200);
        --ifm-color-primary-contrast-background: #102445;
        --ifm-color-primary-contrast-foreground: #ebf2fc;
        --ifm-color-secondary-contrast-background: #474748;
        --ifm-color-secondary-contrast-foreground: #fdfdfe;
        --ifm-color-success-contrast-background: #003100;
        --ifm-color-success-contrast-foreground: #e6f6e6;
        --ifm-color-info-contrast-background: #193c47;
        --ifm-color-info-contrast-foreground: #eef9fd;
        --ifm-color-warning-contrast-background: #4d3800;
        --ifm-color-warning-contrast-foreground: #fff8e6;
        --ifm-color-danger-contrast-background: #4b1113;
        --ifm-color-danger-contrast-foreground: #ffebec
    }

    @media (width>=1440px) {
        .container {
            max-width: var(--ifm-container-width-xl)
        }
    }

    @media (width<=996px) {
        .col {
            --ifm-col-width: 100%;
            flex-basis: var(--ifm-col-width);
            margin-left: 0
        }

        .footer {
            --ifm-footer-padding-horizontal: 0
        }

        .footer__link-separator {
            display: none
        }

        .footer__col {
            margin-bottom: calc(var(--ifm-spacing-vertical)*3)
        }

        .footer__link-item {
            width: max-content;
            display: block
        }

        .hero {
            padding-left: 0;
            padding-right: 0
        }

        .navbar>.container,
        .navbar>.container-fluid {
            padding: 0
        }

        .navbar__toggle {
            display: inherit
        }

        .navbar__item {
            display: none
        }

        .navbar__search-input {
            width: 9rem
        }

        .pills--block,
        .tabs--block {
            flex-direction: column
        }
    }

    @media (width<=576px) {
        .markdown h1:first-child {
            --ifm-h1-font-size: 2rem
        }

        .markdown>h2 {
            --ifm-h2-font-size: 1.5rem
        }

        .markdown>h3 {
            --ifm-h3-font-size: 1.25rem
        }
    }

    @media (pointer:fine) {
        .thin-scrollbar {
            scrollbar-width: thin
        }

        .thin-scrollbar::-webkit-scrollbar {
            height: var(--ifm-scrollbar-size);
            width: var(--ifm-scrollbar-size)
        }

        .thin-scrollbar::-webkit-scrollbar-track {
            background: var(--ifm-scrollbar-track-background-color);
            border-radius: 10px
        }

        .thin-scrollbar::-webkit-scrollbar-thumb {
            background: var(--ifm-scrollbar-thumb-background-color);
            border-radius: 10px
        }

        .thin-scrollbar::-webkit-scrollbar-thumb:hover {
            background: var(--ifm-scrollbar-thumb-hover-background-color)
        }
    }

    @media (prefers-reduced-motion:reduce) {
        :root {
            --ifm-transition-fast: 0s;
            --ifm-transition-slow: 0s
        }
    }

    @media print {

        .table-of-contents,
        .footer,
        .menu,
        .navbar,
        .pagination-nav {
            display: none
        }

        .tabs {
            page-break-inside: avoid
        }
    }
}

@layer docusaurus.theme-common {
    .themedComponent_mlkZ {
        display: none
    }

    [data-theme=light] .themedComponent--light_NVdE,
    [data-theme=dark] .themedComponent--dark_xIcU,
    html:not([data-theme]) .themedComponent--light_NVdE {
        display: initial
    }

    .errorBoundaryError_a6uf {
        white-space: pre-wrap;
        color: red
    }

    .errorBoundaryFallback_VBag {
        color: red;
        padding: .55rem
    }

    .anchorTargetStickyNavbar_Vzrq {
        scroll-margin-top: calc(var(--ifm-navbar-height) + .5rem)
    }

    .anchorTargetHideOnScrollNavbar_vjPI {
        scroll-margin-top: .5rem
    }

    .details_lb9f {
        --docusaurus-details-summary-arrow-size: .38rem;
        --docusaurus-details-transition: transform .2s ease;
        --docusaurus-details-decoration-color: grey
    }

    .details_lb9f>summary {
        cursor: pointer;
        padding-left: 1rem;
        list-style: none;
        position: relative
    }

    .details_lb9f>summary::-webkit-details-marker {
        display: none
    }

    .details_lb9f>summary:before {
        content: "";
        border-width: var(--docusaurus-details-summary-arrow-size);
        border-style: solid;
        border-color: transparent transparent transparent var(--docusaurus-details-decoration-color);
        transition: var(--docusaurus-details-transition);
        transform-origin: calc(var(--docusaurus-details-summary-arrow-size)/2)50%;
        position: absolute;
        top: .45rem;
        left: 0;
        transform: rotate(0)
    }

    .details_lb9f[open]:not(.isBrowser_bmU9)>summary:before,
    .details_lb9f[data-collapsed=false].isBrowser_bmU9>summary:before {
        transform: rotate(90deg)
    }

    .collapsibleContent_i85q {
        border-top: 1px solid var(--docusaurus-details-decoration-color);
        margin-top: 1rem;
        padding-top: 1rem
    }

    .collapsibleContent_i85q p:last-child,
    .details_lb9f>summary>p:last-child {
        margin-bottom: 0
    }
}

@layer docusaurus.theme-classic {
    :root {
        --docusaurus-progress-bar-color: var(--ifm-color-primary)
    }

    #nprogress {
        pointer-events: none
    }

    #nprogress .bar {
        background: var(--docusaurus-progress-bar-color);
        z-index: 1031;
        width: 100%;
        height: 2px;
        position: fixed;
        top: 0;
        left: 0
    }

    #nprogress .peg {
        width: 100px;
        height: 100%;
        box-shadow: 0 0 10px var(--docusaurus-progress-bar-color), 0 0 5px var(--docusaurus-progress-bar-color);
        opacity: 1;
        position: absolute;
        right: 0;
        transform: rotate(3deg)translateY(-4px)
    }

    .skipToContent_fXgn {
        z-index: calc(var(--ifm-z-index-fixed) + 1);
        padding: calc(var(--ifm-global-spacing)/2)var(--ifm-global-spacing);
        color: var(--ifm-color-emphasis-900);
        background-color: var(--ifm-background-surface-color);
        position: fixed;
        top: 1rem;
        left: 100%
    }

    .skipToContent_fXgn:focus {
        box-shadow: var(--ifm-global-shadow-md);
        left: 1rem
    }

    .closeButton_CVFx {
        padding: 0;
        line-height: 0
    }

    .content_knG7 {
        text-align: center;
        padding: 5px 0;
        font-size: 85%
    }

    .content_knG7 a {
        color: inherit;
        -webkit-text-decoration: underline;
        text-decoration: underline
    }

    :root {
        --docusaurus-announcement-bar-height: auto
    }

    .announcementBar_mb4j {
        height: var(--docusaurus-announcement-bar-height);
        background-color: var(--ifm-color-white);
        color: var(--ifm-color-black);
        border-bottom: 1px solid var(--ifm-color-emphasis-100);
        align-items: center;
        display: flex
    }

    html[data-announcement-bar-initially-dismissed=true] .announcementBar_mb4j {
        display: none
    }

    .announcementBarPlaceholder_vyr4 {
        flex: 0 0 10px
    }

    .announcementBarClose_gvF7 {
        flex: 0 0 30px;
        align-self: stretch
    }

    .announcementBarContent_xLdY {
        flex: auto
    }

    @media print {
        .announcementBar_mb4j {
            display: none
        }
    }

    @media (width>=997px) {
        :root {
            --docusaurus-announcement-bar-height: 30px
        }

        .announcementBarPlaceholder_vyr4,
        .announcementBarClose_gvF7 {
            flex-basis: 50px
        }
    }

    .toggle_vylO {
        width: 2rem;
        height: 2rem
    }

    .toggleButton_gllP {
        -webkit-tap-highlight-color: transparent;
        width: 100%;
        height: 100%;
        transition: background var(--ifm-transition-fast);
        border-radius: 50%;
        justify-content: center;
        align-items: center;
        display: flex
    }

    .toggleButton_gllP:hover {
        background: var(--ifm-color-emphasis-200)
    }

    .toggleIcon_g3eP {
        display: none
    }

    [data-theme-choice=system] .systemToggleIcon_QzmC,
    [data-theme-choice=light] .lightToggleIcon_pyhR,
    [data-theme-choice=dark] .darkToggleIcon_wfgR {
        display: initial
    }

    .toggleButtonDisabled_aARS {
        cursor: not-allowed
    }

    .darkNavbarColorModeToggle_X3D1:hover {
        background: var(--ifm-color-gray-800)
    }

    .iconExternalLink_nPIU {
        margin-left: .3rem
    }

    .dropdownNavbarItemMobile_J0Sd {
        cursor: pointer
    }

    .iconLanguage_nlXk {
        vertical-align: text-bottom;
        margin-right: 5px
    }

    .navbarSearchContainer_Bca1:empty {
        display: none
    }

    @media (width<=996px) {
        .navbarSearchContainer_Bca1 {
            right: var(--ifm-navbar-padding-horizontal);
            position: absolute
        }
    }

    @media (width>=997px) {
        .navbarSearchContainer_Bca1 {
            padding: 0 var(--ifm-navbar-item-padding-horizontal)
        }
    }

    .navbarHideable_m1mJ {
        transition: transform var(--ifm-transition-fast)ease
    }

    .navbarHidden_jGov {
        transform: translateY(calc(-100% - 2px))
    }

    @media (width<=996px) {
        .colorModeToggle_DEke {
            display: none
        }
    }

    .navbar__items--right>:last-child {
        padding-right: 0
    }

    .footerLogoLink_BH7S {
        opacity: .5;
        transition: opacity var(--ifm-transition-fast)var(--ifm-transition-timing-default)
    }

    .footerLogoLink_BH7S:hover {
        opacity: 1
    }

    .hash-link {
        opacity: 0;
        transition: opacity var(--ifm-transition-fast);
        -webkit-user-select: none;
        user-select: none;
        padding-left: .5rem
    }

    .hash-link:before {
        content: "#"
    }

    .hash-link:focus,
    :hover>.hash-link {
        opacity: 1
    }

    html,
    body {
        height: 100%
    }

    .mainWrapper_z2l0 {
        flex-direction: column;
        flex: 1 0 auto;
        display: flex
    }

    .docusaurus-mt-lg {
        margin-top: 3rem
    }

    #__docusaurus {
        flex-direction: column;
        min-height: 100%;
        display: flex
    }

    .sidebar_re4s {
        max-height: calc(100vh - (var(--ifm-navbar-height) + 2rem));
        top: calc(var(--ifm-navbar-height) + 2rem);
        position: sticky;
        overflow-y: auto
    }

    .sidebarItemTitle_pO2u {
        font-size: var(--ifm-h3-font-size);
        font-weight: var(--ifm-font-weight-bold)
    }

    .sidebarItemList_Yudw {
        font-size: .9rem
    }

    .sidebarItem__DBe {
        margin-top: .7rem
    }

    .sidebarItemLink_mo7H {
        color: var(--ifm-font-color-base);
        display: block
    }

    .sidebarItemLink_mo7H:hover {
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .sidebarItemLinkActive_I1ZP {
        color: var(--ifm-color-primary) !important
    }

    @media (width<=996px) {
        .sidebar_re4s {
            display: none
        }
    }

    .yearGroupHeading_rMGB {
        margin-top: 1.6rem;
        margin-bottom: .4rem
    }

    .yearGroupHeading_QT03 {
        margin: 1rem .75rem .5rem
    }

    .cardTitleIcon_GcdP {
        margin-right: .6rem;
        font-size: 1.6rem
    }

    .cardTitleText_nuEl {
        font-size: 1.2rem
    }

    .cardTitle_mcqP {
        align-items: center;
        display: inline-flex
    }

    .cardDescription_L2fP {
        font-size: .8rem
    }

    .cardContainer_KhuF {
        --ifm-link-color: var(--ifm-color-emphasis-800);
        --ifm-link-hover-color: var(--ifm-color-emphasis-700);
        --ifm-link-hover-decoration: none;
        border: 1px solid var(--ifm-color-emphasis-200);
        transition: all var(--ifm-transition-fast)ease;
        transition-property: border, box-shadow;
        box-shadow: 0 1.5px 3px rgba(0, 0, 0, .15)
    }

    .cardContainer_KhuF:hover {
        border-color: var(--ifm-color-primary);
        box-shadow: 0 3px 6px rgba(0, 0, 0, .2)
    }

    .cardContainer_KhuF :last-child {
        margin-bottom: 0
    }

    .docCardListItem_W1sv {
        margin-bottom: 2rem
    }

    .docCardListItem_W1sv>* {
        height: 100%
    }

    .title_f1Hy {
        font-size: 3rem
    }

    @media (width<=576px) {
        .title_f1Hy {
            font-size: 2rem
        }
    }

    .container_mt6G {
        font-size: .9rem
    }

    [data-theme=dark] .githubSvg_Uu4N {
        fill: var(--light)
    }

    [data-theme=light] .githubSvg_Uu4N {
        fill: var(--dark)
    }

    [data-theme=dark] .xSvg_y3PF {
        fill: var(--light)
    }

    [data-theme=light] .xSvg_y3PF {
        fill: var(--dark)
    }

    [data-theme=dark] .linkedinSvg_FCgI {
        fill: var(--light)
    }

    [data-theme=light] .linkedinSvg_FCgI {
        fill: var(--dark)
    }

    [data-theme=dark] .blueskySvg_AzZw {
        fill: var(--light)
    }

    [data-theme=light] .blueskySvg_AzZw {
        fill: var(--dark)
    }

    [data-theme=dark] .instagramSvg_YC40 {
        fill: var(--light)
    }

    [data-theme=light] .instagramSvg_YC40 {
        fill: var(--dark)
    }

    [data-theme=dark] .threadsSvg_PTXY {
        fill: var(--light)
    }

    [data-theme=light] .threadsSvg_PTXY {
        fill: var(--dark)
    }

    :root {
        --docusaurus-blog-social-icon-size: 1rem
    }

    .authorSocials_rSDt {
        height: var(--docusaurus-blog-social-icon-size);
        line-clamp: 1;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        flex-wrap: wrap;
        align-items: center;
        line-height: 0;
        display: flex;
        overflow: hidden
    }

    .authorSocialLink_owbf {
        height: var(--docusaurus-blog-social-icon-size);
        width: var(--docusaurus-blog-social-icon-size);
        margin-right: .4rem;
        line-height: 0
    }

    .authorSocialIcon_XYv3 {
        width: var(--docusaurus-blog-social-icon-size);
        height: var(--docusaurus-blog-social-icon-size)
    }

    .authorImage_XqGP {
        --ifm-avatar-photo-size: 3.6rem
    }

    .author-as-h1_n9oJ .authorImage_XqGP {
        --ifm-avatar-photo-size: 7rem
    }

    .author-as-h2_gXvM .authorImage_XqGP {
        --ifm-avatar-photo-size: 5.4rem
    }

    .authorDetails_lV9A {
        flex-direction: column;
        justify-content: space-around;
        align-items: flex-start;
        display: flex
    }

    .authorName_yefp {
        flex-direction: row;
        font-size: 1.1rem;
        line-height: 1.1rem;
        display: flex
    }

    .author-as-h1_n9oJ .authorName_yefp {
        font-size: 2.4rem;
        line-height: 2.4rem;
        display: inline
    }

    .author-as-h2_gXvM .authorName_yefp {
        font-size: 1.4rem;
        line-height: 1.4rem;
        display: inline
    }

    .authorTitle_nd0D {
        line-clamp: 1;
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        font-size: .8rem;
        line-height: 1rem;
        display: -webkit-box;
        overflow: hidden
    }

    .author-as-h1_n9oJ .authorTitle_nd0D {
        font-size: 1.2rem;
        line-height: 1.6rem
    }

    .author-as-h2_gXvM .authorTitle_nd0D {
        font-size: 1rem;
        line-height: 1.3rem
    }

    .authorBlogPostCount_iiJ5 {
        background: var(--ifm-color-secondary);
        color: var(--ifm-color-black);
        border-radius: var(--ifm-global-radius);
        margin-left: .3rem;
        padding: .1rem .4rem;
        font-size: .8rem;
        line-height: 1.2
    }

    .authorCol_Hf19 {
        max-width: inherit !important
    }

    .imageOnlyAuthorRow_pa_O {
        flex-flow: wrap;
        display: flex
    }

    .imageOnlyAuthorCol_G86a {
        margin-left: .3rem;
        margin-right: .3rem
    }

    .authorListItem_n3yI {
        margin-bottom: 2rem;
        list-style-type: none
    }

    .backToTopButton_sjWU {
        background-color: var(--ifm-color-emphasis-200);
        width: 3rem;
        height: 3rem;
        z-index: calc(var(--ifm-z-index-fixed) - 1);
        box-shadow: var(--ifm-global-shadow-lw);
        transition: all var(--ifm-transition-fast)var(--ifm-transition-timing-default);
        opacity: 0;
        visibility: hidden;
        border-radius: 50%;
        position: fixed;
        bottom: 1.3rem;
        right: 1.3rem;
        transform: scale(0)
    }

    .backToTopButton_sjWU:after {
        content: " ";
        -webkit-mask: var(--ifm-menu-link-sublist-icon)50%/2rem 2rem no-repeat;
        -webkit-mask: var(--ifm-menu-link-sublist-icon)50%/2rem 2rem no-repeat;
        mask: var(--ifm-menu-link-sublist-icon)50%/2rem 2rem no-repeat;
        background-color: var(--ifm-color-emphasis-1000);
        width: 100%;
        height: 100%;
        display: inline-block
    }

    @media (hover:hover) {
        .backToTopButton_sjWU:hover {
            background-color: var(--ifm-color-emphasis-300)
        }
    }

    .backToTopButtonShow_xfvO {
        opacity: 1;
        visibility: visible;
        transform: scale(1)
    }

    :root {
        --docusaurus-collapse-button-bg: transparent;
        --docusaurus-collapse-button-bg-hover: rgba(0, 0, 0, .1)
    }

    [data-theme=dark]:root {
        --docusaurus-collapse-button-bg: rgba(255, 255, 255, .05);
        --docusaurus-collapse-button-bg-hover: rgba(255, 255, 255, .1)
    }

    @media (width>=997px) {
        .collapseSidebarButton_PEFL {
            background-color: var(--docusaurus-collapse-button-bg);
            border: 1px solid var(--ifm-toc-border-color);
            border-radius: 0;
            height: 40px;
            position: sticky;
            bottom: 0;
            display: block !important
        }

        .collapseSidebarButtonIcon_kv0_ {
            margin-top: 4px;
            transform: rotate(180deg)
        }

        [dir=rtl] .collapseSidebarButtonIcon_kv0_ {
            transform: rotate(0)
        }

        .collapseSidebarButton_PEFL:hover,
        .collapseSidebarButton_PEFL:focus {
            background-color: var(--docusaurus-collapse-button-bg-hover)
        }
    }

    .collapseSidebarButton_PEFL {
        margin: 0;
        display: none
    }

    .menuExternalLink_NmtK {
        align-items: center
    }

    .linkLabel_WmDU {
        line-clamp: 2;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden
    }

    .categoryLink_byQd {
        overflow: hidden
    }

    .menu__link--sublist-caret:after {
        margin-left: var(--ifm-menu-link-padding-vertical)
    }

    .categoryLinkLabel_W154 {
        line-clamp: 2;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        flex: 1;
        display: -webkit-box;
        overflow: hidden
    }

    @media (width>=997px) {
        .menuHtmlItem_M9Kj {
            padding: var(--ifm-menu-link-padding-vertical)var(--ifm-menu-link-padding-horizontal)
        }

        .menu_SIkG {
            flex-grow: 1;
            padding: .5rem
        }

        @supports (scrollbar-gutter:stable) {
            .menu_SIkG {
                scrollbar-gutter: stable;
                padding: .5rem 0 .5rem .5rem
            }
        }

        .menuWithAnnouncementBar_GW3s {
            margin-bottom: var(--docusaurus-announcement-bar-height)
        }

        .sidebar_njMd {
            height: 100%;
            padding-top: var(--ifm-navbar-height);
            width: var(--doc-sidebar-width);
            flex-direction: column;
            display: flex
        }

        .sidebarWithHideableNavbar_wUlq {
            padding-top: 0
        }

        .sidebarHidden_VK0M {
            opacity: 0;
            visibility: hidden
        }

        .sidebarLogo_isFc {
            margin: 0 var(--ifm-navbar-padding-horizontal);
            min-height: var(--ifm-navbar-height);
            max-height: var(--ifm-navbar-height);
            align-items: center;
            color: inherit !important;
            -webkit-text-decoration: none !important;
            text-decoration: none !important;
            display: flex !important
        }

        .sidebarLogo_isFc img {
            height: 2rem;
            margin-right: .5rem
        }
    }

    .sidebarLogo_isFc {
        display: none
    }

    @media (width>=997px) {
        .expandButton_TmdG {
            width: 100%;
            height: 100%;
            transition: background-color var(--ifm-transition-fast)ease;
            background-color: var(--docusaurus-collapse-button-bg);
            justify-content: center;
            align-items: center;
            display: flex;
            position: absolute;
            top: 0;
            right: 0
        }

        .expandButton_TmdG:hover,
        .expandButton_TmdG:focus {
            background-color: var(--docusaurus-collapse-button-bg-hover)
        }

        .expandButtonIcon_i1dp {
            transform: rotate(0)
        }

        [dir=rtl] .expandButtonIcon_i1dp {
            transform: rotate(180deg)
        }
    }

    :root {
        --doc-sidebar-width: 300px;
        --doc-sidebar-hidden-width: 30px
    }

    .docSidebarContainer_YfHR {
        display: none
    }

    @media (width>=997px) {
        .docSidebarContainer_YfHR {
            width: var(--doc-sidebar-width);
            margin-top: calc(-1*var(--ifm-navbar-height));
            border-right: 1px solid var(--ifm-toc-border-color);
            will-change: width;
            transition: width var(--ifm-transition-fast)ease;
            clip-path: inset(0);
            display: block
        }

        .docSidebarContainerHidden_DPk8 {
            width: var(--doc-sidebar-hidden-width);
            cursor: pointer
        }

        .sidebarViewport_aRkj {
            height: 100%;
            max-height: 100vh;
            position: sticky;
            top: 0
        }
    }

    .docMainContainer_TBSr {
        width: 100%;
        display: flex
    }

    @media (width>=997px) {
        .docMainContainer_TBSr {
            max-width: calc(100% - var(--doc-sidebar-width));
            flex-grow: 1
        }

        .docMainContainerEnhanced_lQrH {
            max-width: calc(100% - var(--doc-sidebar-hidden-width))
        }

        .docItemWrapperEnhanced_JWYK {
            max-width: calc(var(--ifm-container-width) + var(--doc-sidebar-width)) !important
        }
    }

    .docRoot_UBD9 {
        width: 100%;
        display: flex
    }

    .docsWrapper_hBAB {
        flex: 1 0 auto;
        display: flex
    }

    .codeBlockContainer_Ckt0 {
        background: var(--prism-background-color);
        color: var(--prism-color);
        margin-bottom: var(--ifm-leading);
        box-shadow: var(--ifm-global-shadow-lw);
        border-radius: var(--ifm-code-border-radius)
    }

    .codeBlock_bY9V {
        --ifm-pre-background: var(--prism-background-color);
        margin: 0;
        padding: 0
    }

    .codeBlockStandalone_MEMb {
        padding: 0
    }

    .codeBlockLines_e6Vv {
        font: inherit;
        float: left;
        min-width: 100%;
        padding: var(--ifm-pre-padding)
    }

    .codeBlockLinesWithNumbering_o6Pm {
        padding: var(--ifm-pre-padding)0;
        display: table
    }

    @media print {
        .codeBlockLines_e6Vv {
            white-space: pre-wrap
        }
    }

    :where(:root) {
        --docusaurus-highlighted-code-line-bg: #484d5b
    }

    :where([data-theme=dark]) {
        --docusaurus-highlighted-code-line-bg: #646464
    }

    .theme-code-block-highlighted-line {
        background-color: var(--docusaurus-highlighted-code-line-bg);
        margin: 0 calc(-1*var(--ifm-pre-padding));
        padding: 0 var(--ifm-pre-padding);
        display: block
    }

    .codeLine_lJS_ {
        counter-increment: line-count;
        display: table-row
    }

    .codeLineNumber_Tfdd {
        text-align: right;
        width: 1%;
        padding: 0 var(--ifm-pre-padding);
        background: var(--ifm-pre-background);
        overflow-wrap: normal;
        display: table-cell;
        position: sticky;
        left: 0
    }

    .codeLineNumber_Tfdd:before {
        content: counter(line-count);
        opacity: .4
    }

    .theme-code-block-highlighted-line .codeLineNumber_Tfdd:before {
        opacity: .8
    }

    .codeLineContent_feaV {
        padding-right: var(--ifm-pre-padding)
    }

    .theme-code-block:hover .copyButtonCopied_Vdqa {
        opacity: 1 !important
    }

    .copyButtonIcons_IEyt {
        width: 1.125rem;
        height: 1.125rem;
        position: relative
    }

    .copyButtonIcon_TrPX,
    .copyButtonSuccessIcon_cVMy {
        fill: currentColor;
        opacity: inherit;
        width: inherit;
        height: inherit;
        transition: all var(--ifm-transition-fast)ease;
        position: absolute;
        top: 0;
        left: 0
    }

    .copyButtonSuccessIcon_cVMy {
        opacity: 0;
        color: #00d600;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%)scale(.33)
    }

    .copyButtonCopied_Vdqa .copyButtonIcon_TrPX {
        opacity: 0;
        transform: scale(.33)
    }

    .copyButtonCopied_Vdqa .copyButtonSuccessIcon_cVMy {
        opacity: 1;
        transition-delay: 75ms;
        transform: translate(-50%, -50%)scale(1)
    }

    .wordWrapButtonIcon_b1P5 {
        width: 1.2rem;
        height: 1.2rem
    }

    .wordWrapButtonEnabled_uzNF .wordWrapButtonIcon_b1P5 {
        color: var(--ifm-color-primary)
    }

    .buttonGroup_M5ko {
        right: calc(var(--ifm-pre-padding)/2);
        top: calc(var(--ifm-pre-padding)/2);
        column-gap: .2rem;
        display: flex;
        position: absolute
    }

    .buttonGroup_M5ko button {
        background: var(--prism-background-color);
        color: var(--prism-color);
        border: 1px solid var(--ifm-color-emphasis-300);
        border-radius: var(--ifm-global-radius);
        transition: opacity var(--ifm-transition-fast)ease-in-out;
        opacity: 0;
        align-items: center;
        padding: .4rem;
        line-height: 0;
        display: flex
    }

    .buttonGroup_M5ko button:hover {
        opacity: 1 !important
    }

    .buttonGroup_M5ko button:focus-visible {
        opacity: 1 !important
    }

    .theme-code-block:hover .buttonGroup_M5ko button {
        opacity: .4
    }

    .codeBlockContent_QJqH {
        border-radius: inherit;
        direction: ltr;
        position: relative
    }

    .codeBlockTitle_OeMC {
        border-bottom: 1px solid var(--ifm-color-emphasis-300);
        font-size: var(--ifm-code-font-size);
        padding: .75rem var(--ifm-pre-padding);
        border-top-left-radius: inherit;
        border-top-right-radius: inherit;
        font-weight: 500
    }

    .codeBlockTitle_OeMC+.codeBlockContent_QJqH .codeBlock_a8dz {
        border-top-left-radius: 0;
        border-top-right-radius: 0
    }

    :root {
        --docusaurus-tag-list-border: var(--ifm-color-emphasis-300)
    }

    .tag_zVej {
        border: 1px solid var(--docusaurus-tag-list-border);
        transition: border var(--ifm-transition-fast)
    }

    .tag_zVej:hover {
        --docusaurus-tag-list-border: var(--ifm-link-color);
        -webkit-text-decoration: none;
        text-decoration: none
    }

    .tagRegular_sFm0 {
        border-radius: var(--ifm-global-radius);
        padding: .2rem .5rem .3rem;
        font-size: 90%
    }

    .tagWithCount_h2kH {
        border-left: 0;
        align-items: center;
        padding: 0 .5rem 0 1rem;
        display: flex;
        position: relative
    }

    .tagWithCount_h2kH:before,
    .tagWithCount_h2kH:after {
        content: "";
        border: 1px solid var(--docusaurus-tag-list-border);
        transition: inherit;
        position: absolute;
        top: 50%
    }

    .tagWithCount_h2kH:before {
        border-bottom: 0;
        border-right: 0;
        width: 1.18rem;
        height: 1.18rem;
        right: 100%;
        transform: translate(50%, -50%)rotate(-45deg)
    }

    .tagWithCount_h2kH:after {
        border-radius: 50%;
        width: .5rem;
        height: .5rem;
        left: 0;
        transform: translateY(-50%)
    }

    .tagWithCount_h2kH span {
        background: var(--ifm-color-secondary);
        color: var(--ifm-color-black);
        border-radius: var(--ifm-global-radius);
        margin-left: .3rem;
        padding: .1rem .4rem;
        font-size: .7rem;
        line-height: 1.2
    }

    .tag_Nnez {
        margin: .5rem .5rem 0 1rem;
        display: inline-block
    }

    .tags_jXut {
        display: inline
    }

    .tag_QGVx {
        margin: 0 .4rem .5rem 0;
        display: inline-block
    }

    .iconEdit_Z9Sw {
        vertical-align: sub;
        margin-right: .3em
    }

    .details_b_Ee {
        --docusaurus-details-decoration-color: var(--ifm-alert-border-color);
        --docusaurus-details-transition: transform var(--ifm-transition-fast)ease;
        margin: 0 0 var(--ifm-spacing-vertical);
        border: 1px solid var(--ifm-alert-border-color)
    }

    .lastUpdated_JAkA {
        margin-top: .2rem;
        font-size: smaller;
        font-style: italic
    }

    @media (width>=997px) {
        .lastUpdated_JAkA {
            text-align: right
        }
    }

    @media print {
        .noPrint_WFHX {
            display: none
        }
    }

    .tocCollapsibleButton_TO0P {
        font-size: inherit;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        padding: .4rem .8rem;
        display: flex
    }

    .tocCollapsibleButton_TO0P:after {
        content: "";
        background: var(--ifm-menu-link-sublist-icon)50% 50%/2rem 2rem no-repeat;
        filter: var(--ifm-menu-link-sublist-icon-filter);
        width: 1.25rem;
        height: 1.25rem;
        transition: transform var(--ifm-transition-fast);
        transform: rotate(180deg)
    }

    .tocCollapsibleButtonExpanded_MG3E:after {
        transform: none
    }

    .tocCollapsible_ETCw {
        background-color: var(--ifm-menu-color-background-active);
        border-radius: var(--ifm-global-radius);
        margin: 1rem 0
    }

    .tocCollapsibleContent_vkbj>ul {
        border-left: none;
        border-top: 1px solid var(--ifm-color-emphasis-300);
        padding: .2rem 0;
        font-size: 15px
    }

    .tocCollapsibleContent_vkbj ul li {
        margin: .4rem .8rem
    }

    .tocCollapsibleContent_vkbj a {
        display: block
    }

    .tocCollapsibleExpanded_sAul {
        transform: none
    }

    @media (width>=997px) {
        .tocMobile_ITEo {
            display: none
        }
    }

    @media print {
        .tocMobile_ITEo {
            display: none
        }
    }

    .containsTaskList_mC6p {
        list-style: none
    }

    :not(.containsTaskList_mC6p>li)>.containsTaskList_mC6p {
        padding-left: 0
    }

    .img_ev3q {
        height: auto
    }

    .admonition_xJq3 {
        margin-bottom: 1em
    }

    .admonitionHeading_Gvgb {
        font: var(--ifm-heading-font-weight)var(--ifm-h5-font-size)/var(--ifm-heading-line-height)var(--ifm-heading-font-family);
        text-transform: uppercase
    }

    .admonitionHeading_Gvgb:not(:last-child) {
        margin-bottom: .3rem
    }

    .admonitionHeading_Gvgb code {
        text-transform: none
    }

    .admonitionIcon_Rf37 {
        vertical-align: middle;
        margin-right: .4em;
        display: inline-block
    }

    .admonitionIcon_Rf37 svg {
        width: 1.6em;
        height: 1.6em;
        fill: var(--ifm-alert-foreground-color);
        display: inline-block
    }

    .admonitionContent_BuS1>:last-child {
        margin-bottom: 0
    }

    .tableOfContents_bqdL {
        max-height: calc(100vh - (var(--ifm-navbar-height) + 2rem));
        top: calc(var(--ifm-navbar-height) + 1rem);
        position: sticky;
        overflow-y: auto
    }

    @media (width<=996px) {
        .tableOfContents_bqdL {
            display: none
        }

        .docItemContainer_F8PC {
            padding: 0 .3rem
        }
    }

    .breadcrumbHomeIcon_YNFT {
        vertical-align: top;
        width: 1.1rem;
        height: 1.1rem;
        position: relative;
        top: 1px
    }

    .breadcrumbsContainer_Z_bl {
        --ifm-breadcrumb-size-multiplier: .8;
        margin-bottom: .8rem
    }

    @media (width>=997px) {
        .generatedIndexPage_vN6x {
            max-width: 75% !important
        }
    }

    .title_kItE {
        --ifm-h1-font-size: 3rem;
        margin-bottom: calc(1.25*var(--ifm-leading))
    }

    .docItemContainer_Djhp header+*,
    .docItemContainer_Djhp article>:first-child {
        margin-top: 0
    }

    @media (width>=997px) {
        .docItemCol_VOVn {
            max-width: 75% !important
        }
    }

    .mdxPageWrapper_j9I6 {
        justify-content: center
    }
}

@layer docusaurus.core {
    #__docusaurus-base-url-issue-banner-container {
        display: none
    }
}

@layer docusaurus.plugin-debug;

@layer docusaurus.theme-mermaid {

    .container_lyt7,
    .container_lyt7>svg {
        max-width: 100%
    }
}

@layer docusaurus.theme-live-codeblock, docusaurus.theme-search-algolia.docsearch, docusaurus.theme-search-algolia;

:root {
    --ifm-color-primary: #c2410c;
    --ifm-color-primary-dark: #ae3a0a;
    --ifm-color-primary-darker: #9f3509;
    --ifm-color-primary-darkest: #7c2907;
    --ifm-color-primary-light: #d65a1f;
    --ifm-color-primary-lighter: #e06b2e;
    --ifm-color-primary-lightest: #f08a4b;
    --ifm-code-font-size: 95%;
    --docusaurus-highlighted-code-line-bg: rgba(194, 65, 12, .18);
    --ifm-font-family-base: "Inter", system-ui, -apple-system, sans-serif;
    --ifm-heading-font-family: "Inter", system-ui, -apple-system, sans-serif;
    --ifm-navbar-background-color: transparent !important
}

html[data-theme=dark] {
    --ifm-color-primary: #fbbf24;
    --ifm-color-primary-dark: #f59e0b;
    --ifm-color-primary-darker: #d97706;
    --ifm-color-primary-darkest: #b45309;
    --ifm-color-primary-light: #fcd34d;
    --ifm-color-primary-lighter: #fde68a;
    --ifm-color-primary-lightest: #fef3c7;
    --docusaurus-highlighted-code-line-bg: #000;
    --ifm-background-color: #000;
    --ifm-background-surface-color: #161b22
}

.navbar {
    z-index: 1000;
    -webkit-backdrop-filter: blur(var(--blur-amount, 8px))saturate(180%);
    background: rgba(255, 255, 255, .05);
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    transition: -webkit-backdrop-filter .2s, backdrop-filter .2s, background .2s;
    position: sticky;
    top: 0
}

.navbar:before {
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0
}

.navbar:after {
    content: "";
    height: 2px;
    width: var(--scroll-progress, 0%);
    background: linear-gradient(90deg, rgba(194, 64, 12, .443), rgba(251, 191, 36, .443));
    transition: width .1s ease-out;
    position: absolute;
    bottom: 0;
    left: 0
}

.navbar-sidebar {
    inset: 0;
    z-index: 9999 !important;
    position: fixed !important
}

html:has(.navbar-sidebar--show) .navbar {
    background: #000;
    -webkit-backdrop-filter: none !important
}

.theme-doc-sidebar-container {
    -webkit-backdrop-filter: blur(16px);
    background: rgba(255, 255, 255, .85)
}

html[data-theme=dark] .theme-doc-sidebar-container {
    background: rgba(0, 0, 0, .85)
}

.navbar-sidebar {
    background: rgba(255, 255, 255, .95)
}

html[data-theme=dark] .navbar-sidebar {
    -webkit-backdrop-filter: blur(var(--blur-amount, 8px))saturate(180%);
    backdrop-filter: blur(var(--blur-amount, 8px))saturate(180%);
    background: rgba(255, 255, 255, .05)
}

.searchBar_RVTs .dropdownMenu_qbY6 {
    background: var(--search-local-modal-background, #f5f6f7);
    box-shadow: var(--search-local-modal-shadow, inset 1px 1px 0 0 rgba(255, 255, 255, .5), 0 3px 8px 0 #555a64);
    width: var(--search-local-modal-width, 560px);
    padding: var(--search-local-spacing, 12px);
    border-radius: 6px;
    margin-top: 8px;
    position: relative;
    left: auto !important;
    right: 0 !important
}

.searchInput_YFbd:focus {
    outline: 2px solid var(--search-local-input-active-border-color, var(--ifm-color-primary));
    outline-offset: 0px
}

html[data-theme=dark] div.ask-ai,
div.ask-ai {
    --ask-ai-primary: var(--ifm-color-primary);
    --ask-ai-primary-hover: var(--ifm-color-primary-light);
    --ask-ai-foreground: var(--ifm-color-content);
    --ask-ai-border: var(--ifm-color-emphasis-300);
    --ask-ai-error: var(--ifm-color-danger);
    --ask-ai-button-bg: var(--ifm-color-emphasis-200)
}

.ask-ai {
    --ask-ai-background: var(--search-local-modal-background, #f5f6f7);
    --ask-ai-muted: var(--search-local-muted-color, #969faf)
}

html[data-theme=dark] .ask-ai {
    --ask-ai-background: var(--search-local-modal-background, var(--ifm-background-color));
    --ask-ai-muted: var(--search-local-muted-color, var(--ifm-color-secondary-darkest))
}

@media (width>996px) {
    .searchBar_RVTs.searchBarLeft_MXDe .dropdownMenu_qbY6 {
        left: 0 !important;
        right: auto !important
    }
}

@media (width<=576px) {
    .navbar__search-input:not(:focus) {
        width: 2rem
    }

    .searchBar_RVTs .dropdownMenu_qbY6 {
        width: var(--search-local-modal-width-sm, 340px);
        max-width: calc(100vw - var(--ifm-navbar-padding-horizontal)*2)
    }
}

html[data-theme=dark] .searchBar_RVTs .dropdownMenu_qbY6 {
    background: var(--search-local-modal-background, var(--ifm-background-color));
    box-shadow: var(--search-local-modal-shadow, inset 1px 1px 0 0 #2c2e40, 0 3px 8px 0 #000309)
}

.searchBar_RVTs .dropdownMenu_qbY6 .suggestion_fB_2 {
    cursor: pointer;
    background: var(--search-local-hit-background, #fff);
    box-shadow: var(--search-local-hit-shadow, 0 1px 3px 0 #d4d9e1);
    padding: 0 var(--search-local-spacing, 12px);
    width: 100%;
    color: var(--search-local-hit-color, #444950);
    height: var(--search-local-hit-height, 56px);
    border-radius: 4px;
    flex-direction: row;
    align-items: center;
    display: flex
}

html[data-theme=dark] .dropdownMenu_qbY6 .suggestion_fB_2 {
    background: var(--search-local-hit-background, var(--ifm-color-emphasis-100));
    box-shadow: var(--search-local-hit-shadow, none);
    color: var(--search-local-hit-color, var(--ifm-font-color-base))
}

.searchBar_RVTs .dropdownMenu_qbY6 .suggestion_fB_2:not(:last-child) {
    margin-bottom: 4px
}

.searchBar_RVTs .dropdownMenu_qbY6 .suggestion_fB_2.cursor_eG29 {
    background-color: var(--search-local-highlight-color, var(--ifm-color-primary))
}

.hitTree_kk6K,
.hitIcon_a7Zy,
.hitPath_ieM4,
.noResultsIcon_EBY5,
.hitFooter_E9YW a {
    color: var(--search-local-muted-color, #969faf)
}

html[data-theme=dark] .hitTree_kk6K,
html[data-theme=dark] .hitIcon_a7Zy,
html[data-theme=dark] .hitPath_ieM4,
html[data-theme=dark] .noResultsIcon_EBY5 {
    color: var(--search-local-muted-color, var(--ifm-color-secondary-darkest))
}

.hitTree_kk6K {
    align-items: center;
    display: flex
}

.hitTree_kk6K>svg {
    height: var(--search-local-hit-height, 56px);
    opacity: .5;
    stroke-width: var(--search-local-icon-stroke-width, 1.4);
    width: 24px
}

.hitIcon_a7Zy {
    stroke-width: var(--search-local-icon-stroke-width, 1.4);
    width: 20px;
    height: 20px
}

.hitWrapper_sAK8 {
    flex-direction: column;
    flex: auto;
    justify-content: center;
    width: 80%;
    margin: 0 8px;
    font-weight: 500;
    display: flex;
    overflow-x: hidden
}

.hitWrapper_sAK8 mark {
    color: var(--search-local-highlight-color, var(--ifm-color-primary));
    background: 0 0
}

.hitTitle_vyVt {
    font-size: .9em
}

.hitPath_ieM4 {
    font-size: .75em
}

.hitPath_ieM4,
.hitTitle_vyVt {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow-x: hidden
}

.hitAction_NqkB {
    width: 20px;
    height: 20px
}

.hideAction_vcyE>svg {
    display: none
}

.noResults_l6Q3 {
    padding: var(--search-local-spacing, 12px)0;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: flex
}

.noResultsIcon_EBY5 {
    margin-bottom: var(--search-local-spacing, 12px)
}

.hitFooter_E9YW {
    text-align: center;
    margin-top: var(--search-local-spacing, 12px);
    font-size: .85em
}

.hitFooter_E9YW a {
    -webkit-text-decoration: underline;
    text-decoration: underline
}

.cursor_eG29 .hideAction_vcyE>svg {
    display: block
}

.suggestion_fB_2.cursor_eG29,
.suggestion_fB_2.cursor_eG29 mark,
.suggestion_fB_2.cursor_eG29 .hitTree_kk6K,
.suggestion_fB_2.cursor_eG29 .hitIcon_a7Zy,
.suggestion_fB_2.cursor_eG29 .hitPath_ieM4 {
    color: var(--search-local-hit-active-color, var(--ifm-color-white)) !important
}

.suggestion_fB_2.cursor_eG29 mark {
    -webkit-text-decoration: underline;
    text-decoration: underline
}

.searchBarContainer_NW3z {
    margin-left: 16px
}

.searchBarContainer_NW3z .searchBarLoadingRing_YnHq {
    display: none;
    position: absolute;
    top: 6px;
    left: 10px
}

.searchBarContainer_NW3z .searchClearButton_qk4g {
    background: 0 0;
    border: none;
    padding: 0;
    line-height: 1rem;
    position: absolute;
    top: 50%;
    right: .8rem;
    transform: translateY(-50%)
}

.navbar__search {
    position: relative
}

.searchIndexLoading_EJ1f .navbar__search-input {
    background-image: none
}

.searchBarContainer_NW3z.searchIndexLoading_EJ1f .searchBarLoadingRing_YnHq {
    display: inline-block
}

.searchHintContainer_Pkmr {
    pointer-events: none;
    justify-content: center;
    align-items: center;
    gap: 4px;
    height: 100%;
    display: flex;
    position: absolute;
    top: 0;
    right: 10px
}

.searchHint_iIMx {
    color: var(--ifm-navbar-search-input-placeholder-color);
    background-color: var(--ifm-navbar-search-input-background-color);
    border: 1px solid var(--ifm-color-emphasis-500);
    box-shadow: inset 0 -1px 0 var(--ifm-color-emphasis-500)
}

@media (width<=576px) {

    .searchBarContainer_NW3z:not(.focused_OWtg) .searchClearButton_qk4g,
    .searchHintContainer_Pkmr {
        display: none
    }
}

html[dir=rtl] .searchHintContainer_Pkmr {
    left: 10px;
    right: auto
}

html[dir=rtl] .searchBarContainer_NW3z .searchClearButton_qk4g {
    left: .8rem;
    right: auto
}

html[dir=rtl] .searchBarContainer_NW3z .searchBarLoadingRing_YnHq {
    left: auto;
    right: 10px
}

html[dir=rtl] .navbar__search-input {
    padding: 0 2.25em 0 .5em
}

.loadingRing_RJI3 {
    width: 20px;
    height: 20px;
    opacity: var(--search-local-loading-icon-opacity, .5);
    display: inline-block;
    position: relative
}

.loadingRing_RJI3 div {
    box-sizing: border-box;
    border: 2px solid var(--search-load-loading-icon-color, var(--ifm-navbar-search-input-color));
    border-color: var(--search-load-loading-icon-color, var(--ifm-navbar-search-input-color))transparent transparent transparent;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    margin: 2px;
    animation: 1.2s cubic-bezier(.5, 0, .5, 1) infinite loading-ring_FB5o;
    display: block;
    position: absolute
}

.loadingRing_RJI3 div:first-child {
    animation-delay: -.45s
}

.loadingRing_RJI3 div:nth-child(2) {
    animation-delay: -.3s
}

.loadingRing_RJI3 div:nth-child(3) {
    animation-delay: -.15s
}

@keyframes loading-ring_FB5o {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

.searchContextInput_mXoe,
.searchQueryInput_CFBF {
    border-radius: var(--ifm-global-radius);
    border: var(--ifm-global-border-width)solid var(--ifm-color-content-secondary);
    font-size: var(--ifm-font-size-base);
    background: var(--ifm-background-color);
    width: 100%;
    color: var(--ifm-font-color-base);
    margin-bottom: 1rem;
    padding: .5rem
}

.searchResultItem_U687 {
    border-bottom: 1px solid #dfe3e8;
    padding: 1rem 0
}

.searchResultItem_U687>h2 {
    margin-bottom: 0
}

.searchResultItemPath_uIbk {
    color: var(--ifm-color-content-secondary);
    margin: .5rem 0 0;
    font-size: .8rem
}

.searchResultItemSummary_oZHr {
    margin: .5rem 0 0;
    font-style: italic
}

@media only screen and (width<=996px) {
    .searchQueryColumn_q7nx {
        max-width: 60% !important
    }

    .searchContextColumn_oWAF {
        max-width: 40% !important
    }
}

@media screen and (width<=576px) {
    .searchQueryColumn_q7nx {
        max-width: 100% !important
    }

    .searchContextColumn_oWAF {
        max-width: 100% !important;
        padding-left: var(--ifm-spacing-horizontal) !important
    }
}

.features_t9lD {
    align-items: center;
    width: 100%;
    padding: 2rem 0;
    display: flex
}

.featureSvg_GfXr {
    width: 200px;
    height: 200px
}

.heroBanner_qdFl {
    text-align: center;
    padding: 4rem 0;
    position: relative;
    overflow: hidden
}

@media screen and (width<=996px) {
    .heroBanner_qdFl {
        padding: 2rem
    }
}

.buttons_AeoN {
    justify-content: center;
    align-items: center;
    display: flex
}