/* Font face management */

    /* Inter */

        @font-face { font-family: "Inter"; font-style: normal; font-weight: 100; font-display: swap; src: url(fonts/Inter-Thin.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 100; font-display: swap; src: url(fonts/Inter-ThinItalic.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: normal; font-weight: 200; font-display: swap; src: url(fonts/Inter-ExtraLight.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 200; font-display: swap; src: url(fonts/Inter-ExtraLightItalic.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: normal; font-weight: 300; font-display: swap; src: url(fonts/Inter-Light.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 300; font-display: swap; src: url(fonts/Inter-LightItalic.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/Inter-Regular.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/Inter-Italic.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/Inter-Medium.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 500; font-display: swap; src: url(fonts/Inter-MediumItalic.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/Inter-SemiBold.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 600; font-display: swap; src: url(fonts/Inter-SemiBoldItalic.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/Inter-Bold.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 700; font-display: swap; src: url(fonts/Inter-BoldItalic.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url(fonts/Inter-ExtraBold.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 800; font-display: swap; src: url(fonts/Inter-ExtraBoldItalic.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: normal; font-weight: 900; font-display: swap; src: url(fonts/Inter-Black.woff2) format("woff2"); }
        @font-face { font-family: "Inter"; font-style: italic; font-weight: 900; font-display: swap; src: url(fonts/Inter-BlackItalic.woff2) format("woff2"); }

        /* Configuration */

        @font-feature-values Inter {

            @character-variant {

                cv01: 1; cv02: 2; cv03: 3; cv04: 4; cv05: 5; cv06: 6; cv07: 7; cv08: 8;
                cv09: 9; cv10: 10; cv11: 11; cv12: 12; cv13: 13;
                alt-1:            1; /* Alternate one */
                alt-3:            9; /* Flat-top three */
                open-4:           2; /* Open four */
                open-6:           3; /* Open six */
                open-9:           4; /* Open nine */
                lc-l-with-tail:   5; /* Lower-case L with tail */
                simplified-u:     6; /* Simplified u */
                alt-double-s:     7; /* Alternate German double s */
                uc-i-with-serif:  8; /* Upper-case i with serif */
                uc-g-with-spur:  10; /* Capital G with spur */
                single-story-a:  11; /* Single-story a */
                compact-lc-f:    12; /* Compact f */
                compact-lc-t:    13; /* Compact t */

            }

            @styleset {
                ss01: 1; ss02: 2; ss03: 3; ss04: 4; ss05: 5; ss06: 6; ss07: 7; ss08: 8;
                open-digits: 1;                /* Open digits */
                disambiguation: 2;             /* Disambiguation (with zero) */
                disambiguation-except-zero: 4; /* Disambiguation (no zero) */
                round-quotes-and-commas: 3;    /* Round quotes &amp; commas */
                square-punctuation: 7;         /* Square punctuation */
                square-quotes: 8;              /* Square quotes */
                circled-characters: 5;         /* Circled characters */
                squared-characters: 6;         /* Squared characters */
            }

        }

    /* JetBrains Mono */

        @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 100; font-display: swap; src: url(fonts/JetBrainsMono-Thin.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: italic; font-weight: 100; font-display: swap; src: url(fonts/JetBrainsMono-ThinItalic.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 200; font-display: swap; src: url(fonts/JetBrainsMono-ExtraLight.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: italic; font-weight: 200; font-display: swap; src: url(fonts/JetBrainsMono-ExtraLightItalic.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 300; font-display: swap; src: url(fonts/JetBrainsMono-Light.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: italic; font-weight: 300; font-display: swap; src: url(fonts/JetBrainsMono-LightItalic.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/JetBrainsMono-Regular.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/JetBrainsMono-Italic.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/JetBrainsMono-Medium.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: italic; font-weight: 500; font-display: swap; src: url(fonts/JetBrainsMono-MediumItalic.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/JetBrainsMono-SemiBold.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: italic; font-weight: 600; font-display: swap; src: url(fonts/JetBrainsMono-SemiBoldItalic.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/JetBrainsMono-Bold.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: italic; font-weight: 700; font-display: swap; src: url(fonts/JetBrainsMono-BoldItalic.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: normal; font-weight: 800; font-display: swap; src: url(fonts/JetBrainsMono-ExtraBold.woff2) format("woff2"); }
        @font-face { font-family: "JetBrains Mono"; font-style: italic; font-weight: 800; font-display: swap; src: url(fonts/JetBrainsMono-ExtraBoldItalic.woff2) format("woff2"); }

    /* Glacial Indifference */

        @font-face { font-family: "Glacial Indifference"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/GlacialIndifference-Regular.otf) format("opentype"); }
        @font-face { font-family: "Glacial Indifference"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/GlacialIndifference-Italic.otf) format("opentype"); }
        @font-face { font-family: "Glacial Indifference"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/GlacialIndifference-Bold.otf) format("opentype"); }

    /* Roboto + mono */

        @font-face { font-family: "Roboto"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/Roboto-Regular.ttf) format("truetype"); }
        @font-face { font-family: "Roboto"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/Roboto-Italic.ttf) format("truetype"); }
        @font-face { font-family: "Roboto"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/Roboto-Bold.ttf) format("truetype"); }
        @font-face { font-family: "Roboto"; font-style: italic; font-weight: 700; font-display: swap; src: url(fonts/Roboto-BoldItalic.ttf) format("truetype"); }

        @font-face { font-family: "Roboto Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/RobotoMono-Regular.ttf) format("truetype"); }
        @font-face { font-family: "Roboto Mono"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/RobotoMono-Italic.ttf) format("truetype"); }
        @font-face { font-family: "Roboto Mono"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/RobotoMono-Bold.ttf) format("truetype"); }
        @font-face { font-family: "Roboto Mono"; font-style: italic; font-weight: 700; font-display: swap; src: url(fonts/RobotoMono-BoldItalic.ttf) format("truetype"); }

/* Font faces */

    :root {
        --md-text-font: "Inter";
        --md-code-font: "JetBrains Mono";
        font-variant-alternates: styleset(ss02);
        --glacial-indifference: "Glacial Indifference";
    }

    table {
        font-variant-numeric: tabular-nums;
    }

    .font-gi {
        font-family: var(--glacial-indifference), "Glacial Indifference", var(--md-text-font);
    }

    .font-rb {
        font-family: "Roboto", var(--md-text-font);
    }

    .font-rbm {
        font-family: "Roboto Mono", var(--md-text-font);
    }

    /* When webkit outline fails you have to do these hacks. C'mon bro make css text outline happen*/

    .chat {
        --chat-color: #FFF;
        --chat-outline: #181425;
        color: var(--chat-color);
        text-shadow:
        2px 2px 0 var(--chat-outline),
        2px 1px 0 var(--chat-outline),
        2px 0 0 var(--chat-outline),
        2px -1px 0 var(--chat-outline),
        2px -2px 0 var(--chat-outline),
        1px 2px 0 var(--chat-outline),
        1px 1px 0 var(--chat-outline),
        1px 0 0 var(--chat-outline),
        1px -1px 0 var(--chat-outline),
        1px -2px 0 var(--chat-outline),
        0 2px 0 var(--chat-outline),
        0 1px 0 var(--chat-outline),
        0 -1px 0 var(--chat-outline),
        0 -2px 0 var(--chat-outline),
        -1px 2px 0 var(--chat-outline),
        -1px 1px 0 var(--chat-outline),
        -1px 0 0 var(--chat-outline),
        -1px -1px 0 var(--chat-outline),
        -1px -2px 0 var(--chat-outline),
        -2px 2px 0 var(--chat-outline),   
        -2px 1px 0 var(--chat-outline),
        -2px 0 0 var(--chat-outline),
        -2px -1px 0 var(--chat-outline),
        -2px -2px 0 var(--chat-outline);
    }

    .chat.username {
        --chat-color: #ffd000;
    }

/* Font configuration */

    .md-typeset {
        font-size: .75rem;
        letter-spacing: 0;
    }

    .md-typeset h1, .md-typeset h2, .md-typeset h3, .md-typeset h4, .md-typeset h5, .md-typeset h6 {
        letter-spacing: 0;
    }

/* Announcement */

.md-banner {
    color: #FFFFFF;
    background-color: #009bee;
}

/* Dialog */

.md-dialog {
    border-radius: 0.1rem;
    box-shadow: var(--md-shadow-z2);
    color: var(--md-default-fg-color);
    background-color: var(--md-default-bg-color);
    border: .05rem solid var(--md-default-fg-color);
}

.md-dialog__inner {
    color: unset;
}

/* Content */

    /* Stock elements */

        /* Images */

            /* Image border */

                .md-content img {
                    border: .075rem solid var(--md-default-fg-color--lightest);
                    border-radius: .1rem;
                }

            /* Image without border */

                .img-no-border {
                    border-style: none !important;
                }

            /* Rounded image */

                img.rounded {
                    border-radius: 1rem;
                }

                img.rounded.half {
                    border-radius: 0.5rem;
                }

        /* Content tabs */

            @media screen {
            .js .md-typeset .tabbed-labels::before {
                height: 0.1rem;
            }
            .md-typeset .tabbed-set > input:first-child:checked ~ .tabbed-labels > :first-child, .md-typeset .tabbed-set > input:nth-child(10):checked ~ .tabbed-labels > :nth-child(10), .md-typeset .tabbed-set > input:nth-child(11):checked ~ .tabbed-labels > :nth-child(11), .md-typeset .tabbed-set > input:nth-child(12):checked ~ .tabbed-labels > :nth-child(12), .md-typeset .tabbed-set > input:nth-child(13):checked ~ .tabbed-labels > :nth-child(13), .md-typeset .tabbed-set > input:nth-child(14):checked ~ .tabbed-labels > :nth-child(14), .md-typeset .tabbed-set > input:nth-child(15):checked ~ .tabbed-labels > :nth-child(15), .md-typeset .tabbed-set > input:nth-child(16):checked ~ .tabbed-labels > :nth-child(16), .md-typeset .tabbed-set > input:nth-child(17):checked ~ .tabbed-labels > :nth-child(17), .md-typeset .tabbed-set > input:nth-child(18):checked ~ .tabbed-labels > :nth-child(18), .md-typeset .tabbed-set > input:nth-child(19):checked ~ .tabbed-labels > :nth-child(19), .md-typeset .tabbed-set > input:nth-child(2):checked ~ .tabbed-labels > :nth-child(2), .md-typeset .tabbed-set > input:nth-child(20):checked ~ .tabbed-labels > :nth-child(20), .md-typeset .tabbed-set > input:nth-child(3):checked ~ .tabbed-labels > :nth-child(3), .md-typeset .tabbed-set > input:nth-child(4):checked ~ .tabbed-labels > :nth-child(4), .md-typeset .tabbed-set > input:nth-child(5):checked ~ .tabbed-labels > :nth-child(5), .md-typeset .tabbed-set > input:nth-child(6):checked ~ .tabbed-labels > :nth-child(6), .md-typeset .tabbed-set > input:nth-child(7):checked ~ .tabbed-labels > :nth-child(7), .md-typeset .tabbed-set > input:nth-child(8):checked ~ .tabbed-labels > :nth-child(8), .md-typeset .tabbed-set > input:nth-child(9):checked ~ .tabbed-labels > :nth-child(9) {
                font-weight: 600;
            }
            }

        /* Big buttons */

            .md-button.md-button--primary {
                border-radius: .1rem;
            }

            .md-typeset .md-button {
                border-radius: .1rem;
            }
   
        /* Grid cards */

        .md-typeset .grid.cards > ol > li:focus-within, .md-typeset .grid.cards > ol > li:hover, .md-typeset .grid.cards > ul > li:focus-within, .md-typeset .grid.cards > ul > li:hover, .md-typeset .grid > .card:focus-within, .md-typeset .grid > .card:hover {
            border-color: var(--md-default-fg-color--light);
            box-shadow: unset;
            transition: unset;
        }

        /* Figure captions */

        .md-typeset figcaption {
            font-style: unset;
        }

        /* Keys */

        .md-typeset kbd {
            border-radius: .1rem;
            border: .05rem solid var(--md-default-fg-color--light);
            box-shadow: 0 0.1rem 0 0 var(--md-default-fg-color--light);
            background-color: var(--md-default-fg-color--lightest);
            margin-bottom: -0.2rem;
        }

        /* Code blocks */

            .md-code__content {
                border-radius: .1rem;
            }

            .highlight span.filename {
                border-radius: .1rem .2rem 0 0;
            }

            .md-typeset pre > code {
                border-radius: .1rem;
            }

        /* Card grids */

            .md-typeset .grid.cards > ol > li, .md-typeset .grid.cards > ul > li, .md-typeset .grid > .card {
                border-radius: .1rem;
            }

        /* Expandable admonition */

            /* Expandable admonition colors */

                .md-typeset .admonition.note, .md-typeset details.note {
                    border: .075rem solid #4489ff;
                    border-left: 0.2rem solid #4489ff;
                }

                .md-typeset .admonition.abstract, .md-typeset details.abstract {
                    border: .075rem solid #00b0ff;
                    border-left: 0.2rem solid #00b0ff;
                }

                .md-typeset .admonition.info, .md-typeset details.info {
                    border: .075rem solid #00b8d4;
                    border-left: 0.2rem solid #00b8d4;
                }

                .md-typeset .admonition.tip, .md-typeset details.tip {
                    border: .075rem solid #00bfa5;
                    border-left: 0.2rem solid #00bfa5;
                }

                .md-typeset .admonition.success, .md-typeset details.success {
                    border: .075rem solid #00C853;
                    border-left: 0.2rem solid #00C853;
                }

                .md-typeset .admonition.question, .md-typeset details.question {
                    border: .075rem solid #64DD17;
                    border-left: 0.2rem solid #64DD17;
                }

                .md-typeset .admonition.warning, .md-typeset details.warning {
                    border: .075rem solid #FF9100;
                    border-left: 0.2rem solid #FF9100;
                }

                .md-typeset .admonition.failure, .md-typeset details.failure {
                    border: .075rem solid #FF5252;
                    border-left: 0.2rem solid #FF5252;
                }

                .md-typeset .admonition.danger, .md-typeset details.danger {
                    border: .075rem solid #FF1744;
                    border-left: 0.2rem solid #FF1744;
                }

                .md-typeset .admonition.bug, .md-typeset details.bug {
                    border: .075rem solid #F50057;
                    border-left: 0.2rem solid #F50057;
                }

                .md-typeset .admonition.example, .md-typeset details.example {
                    border: .075rem solid #7C4DFF;
                    border-left: 0.2rem solid #7C4DFF;
                }

                .md-typeset .admonition.quote, .md-typeset details.quote {
                    border: .075rem solid #9E9E9E;
                    border-left: 0.2rem solid #9E9E9E;
                }

        /* Admonition */
            
        .md-typeset .admonition, .md-typeset details {
            border-radius: .1rem;
        }

            /* Admonition colors */

                .md-typeset .admonition.note {
                    border: .075rem solid #4489ff;
                    border-left: 0.2rem solid #4489ff;
                }

                .md-typeset .admonition.abstract {
                    border: .075rem solid #00b0ff;
                    border-left: 0.2rem solid #00b0ff;
                }

                .md-typeset .admonition.info {
                    border: .075rem solid #00b8d4;
                    border-left: 0.2rem solid #00b8d4;
                }

                .md-typeset .admonition.tip {
                    border: .075rem solid #00bfa5;
                    border-left: 0.2rem solid #00bfa5;
                }

                .md-typeset .admonition.success {
                    border: .075rem solid #00C853;
                    border-left: 0.2rem solid #00C853;
                }

                .md-typeset .admonition.question {
                    border: .075rem solid #64DD17;
                    border-left: 0.2rem solid #64DD17;
                }

                .md-typeset .admonition.warning {
                    border: .075rem solid #FF9100;
                    border-left: 0.2rem solid #FF9100;
                }

                .md-typeset .admonition.failure {
                    border: .075rem solid #FF5252;
                    border-left: 0.2rem solid #FF5252;
                }

                .md-typeset .admonition.danger {
                    border: .075rem solid #FF1744;
                    border-left: 0.2rem solid #FF1744;
                }

                .md-typeset .admonition.bug {
                    border: .075rem solid #F50057;
                    border-left: 0.2rem solid #F50057;
                }

                .md-typeset .admonition.example {
                    border: .075rem solid #7C4DFF;
                    border-left: 0.2rem solid #7C4DFF;
                }

                .md-typeset .admonition.quote {
                    border: .075rem solid #9E9E9E;
                    border-left: 0.2rem solid #9E9E9E;
                }

    /* Custom elements */

        /* Transparent class */

            .trans {
                opacity: 50%;
            }

        /* Info blocks */

            .info-mini {
                background-color: #9e9e9e1a;
                border: .075rem none #9e9e9e;
                text-decoration: none !important;
                padding: 0.4rem 0.6rem 0.4rem 0.6rem;
                line-height: 1.8rem;
                border-radius: 2.4rem;
                font-size: min(.85em,.78rem);
            }

            .info-mini.link {
                background-color: var(--md-accent-fg-color--transparent);
                border-color: var(--md-accent-fg-color);
            }

            .info-mini.bool {
                background-color: #ff17441a;
                border-color: #ff1744;
            }

            .info-mini.int {
                background-color: #00bfa51a;
                border-color: #00bfa5;
            }

            .info-mini.float {
                background-color: #00c8531a;
                border-color: #00c853;
            }

            .info-mini.str {
                background-color: #ff91001a;
                border-color: #ff9100;
            }

            .info-mini.ent {
                background-color: #00d9ff1a;
                border-color: #00d9ff;
            }

            .info-mini.vec {
                background-color: #4451ff1a;
                border-color: #4451ff;
            }

            .info-mini.list {
                background-color: #ca44ff1a;
                border-color: #c444ff;
            }

        /* In-game buttons */

            .option {
                background-color: #131D30;
                color: #9DBAD4;
                text-decoration: none !important;
                padding: 0.2rem 0.4rem 0.2rem 0.4rem;
                border-radius: 0.3rem;
            }

            .button {
                background-color: #455a7e;
                color: #a7bbce;
                text-decoration: none !important;
                padding: 0.2rem 0.4rem 0.2rem 0.4rem;
                border-radius: 0.3rem;
                text-transform: uppercase;
            }

            .button.red {
                background-color: #e02d2d;
                color: #FFFFFF;
            }
            .button.yellow {
                background-color: #ffb727;
                color: #FFFFFF;
            }          
            .button.green {
                background-color: #5da93d;
                color: #FFFFFF;
            }
            .button.blue {
                background-color: #009bee;
                color: #FFFFFF;
            }

            .button.giant {
                background-color: #162741;
                color: #FFFFFF;
                padding: 0.3rem 0.2rem 0.3rem 0.2rem;
                top: .4rem;
                line-height: 1.8rem;
            }

            .button.tiny {
                padding: 0.3rem 0.3rem 0.2rem 0.3rem;
                top: .4rem;
            }

            .button.lcase {
                text-transform: none;
            }

            .button.item {
                padding: 0 .15rem 0 .15rem;
                color: #FFFFFF;
                box-shadow: none;
                height: 1.5em;
                position: relative;
                top: -.1rem;
                border-radius: .2rem;
            }

            .button.item.red {
                background-color: #e02d2d;
            }
            .button.item.orange {
                background-color: #ff5300;
            }
            .button.item.yellow {
                background-color: #ffb727;
            }
            .button.item.dark-yellow {
                background-color: #D69209;
            }
            .button.item.green {
                background-color: #5da93d;
            }
            .button.item.dark-green {
                background-color: #2e914c;
            }
            .button.item.blue {
                background-color: #009bee;
            }
            .button.item.dark-blue {
                background-color: #005693;
            }
            .button.item.purple {
                background-color: #b727ff;
            }
            .button.item.gray {
                background-color: #92A3BB;
            }

/* Header */

    .md-header{
        color: #FFFFFF;
        backdrop-filter: none;
    }

    .md-header--shadow {
        box-shadow: var(--md-shadow-z3);
    }

    .md-header__title {
        letter-spacing: 0;
    }

    /* Search */

        .md-search__button {
            color: #111a2b;
            background-color: #ffffff;
            border-radius: .1rem;
        }

        .md-search__button::after{
            color: #111a2b;
            background-color: none;
            border-width: 0.075rem;
            border-style: solid;
            border-radius: .1rem;
            top: .3rem;
        }

        .md-search__button:hover {
            opacity: 0.75;
        }

    /* Tabs */

        .md-tabs {
            color: #FFFFFF;
            background-color: #1B2F4A;
            backdrop-filter: none;
            box-shadow: var(--md-shadow-z3);
        }

        .md-tabs__item--active {
            border-color: #FFFFFF;
            border-width: .1rem;
            font-weight: 600;
        }

    /* Back to top */

        .md-top.md-icon {
            color: #FFFFFF;
        } 

    /* Sidebars */

        @media screen and (max-width: 76.2344em) {
            .md-sidebar--primary {
                border: .075rem solid var(--md-default-fg-color--lightest);
                border-radius: .1rem;
                backdrop-filter: none;
            }
        }

        .md-nav__link {
            border-radius: .1rem;
        }

        .md-nav--primary .md-nav__item .md-nav__link--active {
            background-color: none;
            background: linear-gradient(90deg,#526cfe31 0%, #526cfe13 50%, #526cfe00 100%);
            background-repeat: no-repeat;
            font-weight: 600;
            border-left: .1rem solid #526cfe;
        }

        .md-nav--primary .md-nav__item label.md-nav__link--active {
            background-color: none;
            background: linear-gradient(270deg,#526cfe31 0%, #526cfe13 50%, #526cfe00 100%);
            background-repeat: no-repeat;
            border-left: none;
            border-right: .1rem solid #526cfe;
        }

        .md-nav__link.md-nav__link--passed.md-nav__link--active {
            background-color: none;
            color: var(--md-accent-fg-color);
            background: linear-gradient(270deg,#526cfe31 0%, #526cfe13 50%, #526cfe00 100%);
            background-repeat: no-repeat;
            font-weight: 600;
            border-right: .1rem solid #526cfe;
        }

        .md-nav--primary .md-nav__link[for]:focus:not(.md-nav__link--active), .md-nav--primary .md-nav__link[for]:hover:not(.md-nav__link--active), .md-nav--primary .md-nav__link[href]:focus:not(.md-nav__link--active), .md-nav--primary .md-nav__link[href]:hover:not(.md-nav__link--active) {
            border-radius: .1rem;
        }

        .md-nav__link > svg {
            opacity: 1;
        }

        .md-nav__source {
            border-radius: .1rem;
        }
    
    /* Breadcrumb */

    ol.md-path__list {
        padding: 0.4rem;
        border: 0.05rem solid var(--md-default-fg-color--lightest);
        border-radius: .1rem;
    }

/* Footer */

    .md-footer {
        border-top: none;
    }

    .md-footer__direction {
        opacity: 1;
        color: #A7BBCE;
    }

    /* Copyright */

        html .md-footer-meta.md-typeset a:not(:focus, :hover) {
            color: #A7BBCE;
        }

        .md-copyright, .md-copyright__highlight {
            color: #A7BBCE;
        }

        html .md-footer-met.md-typeset a:not(:focus) {
            color: var(--md-accent-fg-color);
        }

        html .md-footer-met.md-typeset a:not(:hover) {
            color: #A7BBCE;
        }

    /* Social */

        .md-social__link svg {
            color: #455A7E;
        }

        .md-social__link:hover svg {
            color: var(--md-accent-fg-color);
        }

/* Labels */

    /* Tooltips */

        .md-tooltip.md-tooltip--active {
            border-radius: .1rem;
        }

        .md-tooltip2__inner.md-typeset {
            border-radius: .1rem;
        }

    /* Tags */

        .md-typeset .md-tag {
            border-radius: 2.4rem;
        }

/* Theme Data */

[data-md-color-scheme="default"] {

    /* Header */

        .md-header.md-header--shadow {
            background-color: #455A7E;
        }

        .md-header {
            background-color: #455A7E;
        }

        /* Search */

            .md-search__button {
                color: #111a2b;
                background-color: #ffffff;
            }

            .md-search__button::before{
                background-color: #111a2b;
            }

            .md-search__button::after{
                color: #111a2b;
                background-color: none;
                border-color: #111a2b7c;
            }

        /* Tabs */

            .md-tabs {
                background-color: #455A7E;
            }

        /* Back to top */

            .md-top.md-icon {
                background-color: #455a7e;
                border: .075rem solid #ffffff;
            }

        /* Sidebar */

            @media screen and (max-width: 76.2344em) {
                .md-sidebar--primary {
                    background-color: #FFFFFF;
                }
            }

    /* Footer */

        .md-footer {
            color: #FFFFFF;
            background-image: url(elements/footer-background-light.svg);
            border-top: none;
            background-color: #b4b4b4;
            box-shadow: 0 -0.4rem 1rem #0003,0 0 0.1rem #00000059;
        }

        .md-footer-meta__inner {
            color: #ffffffa1;
        }

        .md-footer-meta {
            background-color: #091022;
        }

        .md-footer-meta__inner.md-grid {
            background-color: #091022;
        }

    /* Variable type link colors */

        .bool, .bool > a  {
            color: #af2732;
        }   
        a.bool:hover {
            color: #eb354d;
        }

        .int, .int > a  {
            color: #1b8360;
        }
        a.int:hover {
            color: #28be80;
        }

        .float, .float > a  {
            color: #1d8722;
        }
        a.float:hover {
            color: #2fca37;
        }

        .str, .str > a  {
            color: #AF5E27;
        }
        a.str:hover {
            color: #eb7e35;
        }

        .ent, .ent > a  {
            color: #1f92a1;
        }
        a.ent:hover {
            color: #3bbaca;
        }

        .vec, .vec > a  {
            color: #323cc5;
        }
        a.vec:hover {
            color: #6057db;
        }

        .list, .list > a  {
            color: #b932c5;
        }
        a.list:hover {
            color: #c76ae4;
        }

        .exec, .exec > a  {
            color: #000000;
        }
        a.exec:hover {
            color: #4e4e4e;
        }

}

[data-md-color-scheme="slate"] {

    /* Text color */

    --md-default-fg-color: hsla(var(--md-hue),15%,90%,1);

    /* Background color variables */

        /* Background */

            --md-default-bg-color: #13182b;

        /* Code blocks */

            --md-code-bg-color: #070c14;
            --md-code-bg-color--light: #070c14c5;
            --md-code-bg-color--lighter: #070c1486;

        /* Shadows */

            --md-shadow-z2: 0 0.2rem 0.5rem #0000001a,0 0 0.05rem #00000040;

    /* Header */

        .md-header.md-header--shadow {
            background-color: #070c14;
            box-shadow: none;
        }

        .md-header {
            background-color: #070c14;
            box-shadow: none;
        }

        /* Search */

            .md-search__button {
                color: #FFFFFF;
                background-color: #13182b;
            }

            .md-search__button::before{
                background-color: #FFFFFF;
            }

            .md-search__button::after{
                color: #FFFFFF;
                background-color: none;
                border-color: #455A7E;
            }

        /* Tabs */

            .md-tabs {
                background-color: #070c14;
                box-shadow: none;
            }
        
        /* Back to top */

            .md-top.md-icon {
                background-color: #070c14;
                border: .075rem solid #455A7E;
            }

        /* Sidebar */

            @media screen and (max-width: 76.2344em) {
                .md-sidebar--primary {
                    background-color: #070c14;
                }
            }

    /* Footer */

        .md-footer {
            color: #FFFFFF;
            background-image: url(elements/footer-background-dark.svg);
        }

        .md-footer-meta__inner {
            color: #ffffffa1;
        }

        .md-footer-meta {
            background-color: #000000;
        }

        .md-footer-meta__inner.md-grid {
            background-color: #000000;
        }

    /* Variable type link colors */

        .bool, .bool > a{
            color: #e94f5c;
        }
        a.bool:hover {
            color: #cf3c50;
        }
    
        .int, .int > a {
            color: #2dc290;
        }
        a.int:hover {
            color: #35ac8e;
        }

        .float, .float > a {
            color: #40c740;
        }
        a.float:hover {
            color: #2c9435;
        }

        .str, .str > a {
            color: #e09237;
        }
        a.str:hover {
            color: #c57432;
        }

        .ent, .ent > a {
            color: #3dc3d4;
        }
        a.ent:hover {
            color: #3197a5;
        }

        .vec, .vec > a {
            color: #7a82ee;
        }
        a.vec:hover {
            color: #675fd6;
        }

        .list, .list > a {
            color: #d071ec;
        }
        a.list:hover {
            color: #b761d1;
        }

        .exec, .exec > a {
            color: #ffffff;
        }
        a.exec:hover {
            color: #cfcfcf;
        }

}