:host,
:root {
    --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Solid";
    --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Regular";
    --fa-font-light: normal 300 1em/1 "Font Awesome 6 Light";
    --fa-font-thin: normal 100 1em/1 "Font Awesome 6 Thin";
    --fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
    --fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
    --fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
    --fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
    --fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
    --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";

    /* Penguin Computing brand 2025 colors */
    --color-penguin-yellow: #FFCD30;
    --color-yellow: var(--color-penguin-yellow);
    --color-white: white;
    --color-gray-1: #F5F6F8;
    --color-gray-2: #DCE2E3;
    --color-gray-3: #BCC3C7;
    --color-gray-4: #3A5A65;
    --color-gray-5: #3E4553;
    --color-penguin-black: #242B2E;
    --color-gray-6: var(--color-penguin-black);
    --color-black: black;

    --color-light-green: #C9FCE4;
    --color-green-1: #14E4A6;
    --color-green-2: #0A5B51;
    --color-green-lt: var(--color-light-green);

    --color-light-blue: #cef0ff;
    --color-blue-1: #2974E4;
    --color-blue-2: #0E3A90;
    --color-blue-lt: var(--color-light-blue);

    --color-tan: #FFE8C5;
    --color-red: #FF3636;
    --color-dark-magenta: #9B0041;
    --color-red-1: var(--color-red);
    --color-red-2: var(--color-dark-magenta);

    /* Additional colors */

    --color-orange: hsl(45, 82%, 50%);
    --color-green: hsl(109, 90%, 35%);
    --color-green-dk: var(--color-green-2); // hsl(102 ,54% ,40%)

    /* color change amount */
    --step-color-amount: 50%;
    --step-color-h: var(--color-blue-lt);

    /* Template Colors */

}

html[data-theme=light] {
    /* color change amount */
    --step-color-amount: 20%;
    --step-color-h: var(--color-blue-lt);
    
    --pst-color-primary: var(--color-blue-1);
    --pst-color-primary-highlight: color-mix(in oklab, var(--pst-color-primary), var(--step-color-h) var(--step-color-amount));
    --pst-color-secondary: var(--color-blue-2);
    --pst-color-secondary-highlight: color-mix(in oklab, var(--pst-color-secondary), var(--step-color-h) var(--step-color-amount));
    --pst-color-primary-bg: #d0ecf1;
    --pst-color-secondary-bg: #e0c7ff;
    --pst-color-accent: #c132af;
    --pst-color-accent-bg: #f8dff5;
    --pst-color-info-bg: #dce7fc;
    --pst-color-warning-bg: #f8e3d0;
    --pst-color-success-bg: #d6ece1;
    --pst-color-attention: var(--pst-color-warning);
    --pst-color-attention-bg: var(--pst-color-warning-bg);
    --pst-color-danger-bg: #f9e1e4;
    --pst-color-text-base: #222832;
    --pst-color-text-muted: #48566b;
    --pst-color-heading-color: #fff;
    --pst-color-shadow: rgba(0, 0, 0, .1);
    --pst-color-border: #d1d5da;
    --pst-color-border-muted: rgba(23, 23, 26, .2);
    --pst-color-blockquote-notch: #677384;
    --pst-color-inline-code: #912583;
    --pst-color-inline-code-links: #085d6c;
    --pst-color-target: #f3cf95;
    --pst-color-table: #14181e;
    --pst-color-table-row-hover-bg: rgba(41, 116, 228, 0.3);
    --pst-color-table-inner-border: #e5e7ea;
    --pst-color-background: #fff;
    --pst-color-on-background: #fff;
    --pst-color-surface: #f3f4f5;
    --pst-color-on-surface: #222832;
    --pst-color-link: var(--pst-color-primary);
    --pst-color-link-hover: var(--pst-color-secondary);
    --pst-color-table-outer-border: var(--pst-color-surface);
    --pst-color-table-heading-bg: var(--pst-color-surface);
    --pst-color-table-row-zebra-high-bg: color(display-p3 0.248 0.268 0.319 / 0.2);
    /* var(--pst-color-on-background) */
    --pst-color-table-row-zebra-low-bg: var(--pst-color-surface);

    --color-aside-fg: var(--color-gray-6);
    --color-aside-bg: var(--color-gray-2);
    --color-aside-active-bg: rgba(250, 250, 250, 0.5);
    color-scheme: light
}

html[data-theme=dark] {
    /* color change amount */
    --step-color-amount: 20%;
    --step-color-h: var(--color-blue-lt);

    --pst-color-primary: var(--color-blue-1);
    --pst-color-primary-highlight: color-mix(in oklab, var(--pst-color-primary), var(--step-color-h) var(--step-color-amount));
    --pst-color-secondary: var(--color-blue-2);
    --pst-color-secondary-highlight: color-mix(in oklab, var(--pst-color-secondary), var(--step-color-h) var(--step-color-amount));
    --pst-color-accent: var(--color-blue-lt);
    --pst-color-success: var(--color-green-lt);
    --pst-color-success-highlight: color-mix(in oklab, var(--pst-color-success), var(--step-color-h) var(--step-color-amount));
    --pst-color-info: var(--color-blue-lt);
    --pst-color-info-highlight: color-mix(in oklab, var(--pst-color-success), var(--step-color-h) var(--step-color-amount));
    --pst-color-warning: var(--color-orange);
    --pst-color-warning-highlight: color-mix(in oklab, var(--pst-color-warning), var(--step-color-h) var(--step-color-amount));
    --pst-color-danger: var(--color-red);
    --pst-color-danger-highlight: color-mix(in oklab, var(--pst-color-danger), var(--step-color-h) var(--step-color-amount));
    --pst-color-background: var(--color-gray-1);
    --pst-color-on-background: var(--color-gray-1);
    --pst-color-on-surface: var(--color-penguin-black);
    --pst-color-target: var(--color-penguin-yellow);
    --color-aside-active-bg: rgba(127, 127, 127, .3);

    --color-aside-fg: var(--color-gray-1);
    --color-aside-bg: var(--color-gray-5);

    --pst-color-background: var(--color-gray-6);
    --pst-color-on-background: var(--color-gray-6);
    --pst-color-surface: rgba(47, 56, 60, 0.5);
    /* var(--color-penguin-black) */
    --pst-color-on-surface: var(--color-gray-1);
    --pst-color-target: var(--color-gray-4);

    --pst-color-accent-bg: #46123f;
    --pst-color-attention-bg: var(--pst-color-warning-bg);
    --pst-color-attention: var(--pst-color-warning);
    --pst-color-black-highlight-text: #fff;
    --pst-color-black-highlight: #10141a;
    --pst-color-black-text: #fff;
    --pst-color-black: #14181e;
    --pst-color-blockquote-notch: #9ca4af;
    --pst-color-border-muted: #29313d;
    --pst-color-border: #48566b;
    --pst-color-danger-bg: #4e111b;
    --pst-color-danger-highlight-text: #14181e;
    --pst-color-danger-text: #14181e;
    --pst-color-dark-highlight-text: #fff;
    --pst-color-dark-highlight: #1b222c;
    --pst-color-dark-text: #fff;
    --pst-color-dark: #222832;
    --pst-color-heading-color: #14181e;
    --pst-color-info-bg: #06245d;
    --pst-color-info-highlight-text: #14181e;
    --pst-color-info-text: #14181e;
    --pst-color-inline-code-links: #3fb1c5;
    --pst-color-inline-code: #f3c7ee;
    --pst-color-light-highlight-text: #14181e;
    --pst-color-light-highlight: #c9cfd6;
    --pst-color-light-text: #14181e;
    --pst-color-light: #f3f4f5;
    --pst-color-link-hover: var(--pst-color-primary-highlight);
    --pst-color-link: var(--pst-color-primary);
    --pst-color-muted-highlight-text: #14181e;
    --pst-color-muted-highlight: #c9cfd6;
    --pst-color-muted-text: #14181e;
    --pst-color-muted: #f3f4f5;
    --pst-color-primary-bg: #042c33;
    --pst-color-primary-highlight-text: #14181e;
    --pst-color-primary-text: #14181e;
    --pst-color-secondary-bg: #341a61;
    --pst-color-secondary-highlight-text: #fff;
    --pst-color-secondary-text: #14181e;
    --pst-color-shadow: rgba(0, 0, 0, .2);
    --pst-color-success-bg: #002f17;
    --pst-color-success-highlight-text: #14181e;
    --pst-color-success-text: #14181e;
    --pst-color-table-heading-bg: var(--pst-color-surface);
    --pst-color-table-inner-border: #364150;
    --pst-color-table-outer-border: var(--pst-color-surface);
    --pst-color-table-row-hover-bg: rgba(41, 116, 228, 0.4);
    --pst-color-table-row-zebra-high-bg: color(display-p3 0.248 0.268 0.319 / 0.5);
    /* var(--pst-color-on-background) */
    --pst-color-table-row-zebra-low-bg: var(--pst-color-surface);
    --pst-color-table: #fff;
    --pst-color-text-base: #ced6dd;
    --pst-color-text-muted: #9ca4af;
    --pst-color-warning-bg: #652a02;
    --pst-color-warning-highlight-text: #14181e;
    --pst-color-warning-text: #14181e;
    --pst-color-white-highlight-text: #14181e;
    --pst-color-white-highlight: #dbd7d7;
    --pst-color-white-text: #14181e;
    --pst-color-white: #fff;

    --sd-color-black-highlight: var(--pst-color-black-highlight);
    --sd-color-black-text: var(--pst-color-black-text);
    --sd-color-black: var(--pst-color-black);
    --sd-color-danger-bg-text: #fff;
    --sd-color-danger-bg: #4e111b;
    --sd-color-danger-highlight: var(--pst-color-danger-highlight);
    --sd-color-danger-text: var(--pst-color-danger-text);
    --sd-color-danger: var(--pst-color-danger);
    --sd-color-dark-highlight: var(--pst-color-dark-highlight);
    --sd-color-dark-text: var(--pst-color-dark-text);
    --sd-color-dark: var(--pst-color-dark);
    --sd-color-info-bg-text: #fff;
    --sd-color-info-bg: #06245d;
    --sd-color-info-highlight: var(--pst-color-info-highlight);
    --sd-color-info-text: var(--pst-color-info-text);
    --sd-color-info: var(--pst-color-info);
    --sd-color-light-bg-text: #14181e;
    --sd-color-light-bg: #a3abb2;
    --sd-color-light-highlight: var(--pst-color-light-highlight);
    --sd-color-light-text: var(--pst-color-light-text);
    --sd-color-light: var(--pst-color-light);
    --sd-color-muted-bg-text: #fff;
    --sd-color-muted-bg: #1d222b;
    --sd-color-muted-highlight: var(--pst-color-muted-highlight);
    --sd-color-muted-text: var(--pst-color-muted-text);
    --sd-color-muted: var(--pst-color-muted);
    --sd-color-primary-bg-text: #fff;
    --sd-color-primary-bg: #042c33;
    --sd-color-primary-highlight: var(--pst-color-primary-highlight);
    --sd-color-primary-text: var(--pst-color-primary-text);
    --sd-color-primary: var(--pst-color-primary);
    --sd-color-secondary-bg-text: #fff;
    --sd-color-secondary-bg: #341a61;
    --sd-color-secondary-highlight: var(--pst-color-secondary-highlight);
    --sd-color-secondary-text: var(--pst-color-secondary-text);
    --sd-color-secondary: var(--pst-color-secondary);
    --sd-color-success-bg-text: #fff;
    --sd-color-success-bg: #002f17;
    --sd-color-success-highlight: var(--pst-color-success-highlight);
    --sd-color-success-text: var(--pst-color-success-text);
    --sd-color-success: var(--pst-color-success);
    --sd-color-warning-bg-text: #fff;
    --sd-color-warning-bg: #652a02;
    --sd-color-warning-highlight: var(--pst-color-warning-highlight);
    --sd-color-warning-text: var(--pst-color-warning-text);
    --sd-color-warning: var(--pst-color-warning);
    --sd-color-white-highlight: var(--pst-color-white-highlight);
    --sd-color-white-text: var(--pst-color-white-text);
    --sd-color-white: var(--pst-color-white);

    color-scheme: dark
}



html {
    --pst-header-height: 4rem;
    --pst-header-article-height: calc(var(--pst-header-height)* 2 / 3);
    --pst-sidebar-secondary: 17rem;
    --pst-font-size-base: 1rem;
    --pst-font-size-h1: 2.5rem;
    --pst-font-size-h2: 2rem;
    --pst-font-size-h3: 1.75rem;
    --pst-font-size-h4: 1.5rem;
    --pst-font-size-h5: 1.25rem;
    --pst-font-size-h6: 1.1rem;
    --pst-font-size-milli: 0.9rem;
    --pst-sidebar-font-size: 0.9rem;
    --pst-sidebar-font-size-mobile: 1.1rem;
    --pst-sidebar-header-font-size: 1.2rem;
    --pst-sidebar-header-font-weight: 600;
    --pst-admonition-font-weight-heading: 600;
    --pst-font-weight-caption: 300;
    --pst-font-weight-heading: 400;
    --pst-font-family-base-system: -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", "Arial", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    --pst-font-family-monospace-system: "SFMono-Regular", "Menlo", "Consolas", "Monaco", "Liberation Mono", "Lucida Console", monospace;
    --pst-font-family-base: var(--pst-font-family-base-system);
    --pst-font-family-heading: var(--pst-font-family-base-system);
    --pst-font-family-monospace: var(--pst-font-family-monospace-system);
    --pst-font-size-icon: 1.5rem;

    /* Font Awesome default icons */
    --pst-icon-check-circle: "✔︎";  /* \f058 */
    /* fa-solid fa-circle-check */
    --pst-icon-info-circle: "ℹ︎"; /* \f05a*/
    /* fa-solid fa-circle-info */
    --pst-icon-exclamation-triangle: "!"; /* \f071 */
    /* fa-solid fa-triangle-exclamation */
    --pst-icon-exclamation-circle: "!"; /* "\f06a" */
    /* fa-solid fa-circle-exclamation */
    --pst-icon-times-circle: "×"; /* \f057 */
    /* fa-solid fa-circle-xmark */
    --pst-icon-lightbulb: "✔︎"; /* \f0eb */
    /* fa-solid fa-lightbulb */
    --pst-icon-download: "⇩"; /* \f019 */
    /* fa-solid fa-download */
    --pst-icon-angle-left: "❮"; /* \f104 */
    /* fa-solid fa-angle-left */
    --pst-icon-angle-right: "❯"; /* \f105 */
    /* fa-solid fa-angle-right */
    --pst-icon-external-link: "☍"; /* \f35d */
    /* fa-solid fa-up-right-from-square */
    --pst-icon-search-minus: "−"; /* \f010 */
    /* fa-solid fa-magnifying-glass-minus */
    --pst-icon-github: "\f09b"; /* \f09b */
    /* fa-brands fa-github */
    --pst-icon-gitlab: "\f296"; /* \f296 */
    /* fa-brands fa-gitlab */
    --pst-icon-share: "⧉"; /* \f064 */
    /* fa-solid fa-share */
    --pst-icon-bell: "\f0f3"; /* \f0f3 */
    /* fa-solid fa-bell */
    --pst-icon-pencil: "✎"; /* \f303 */
    /* fa-solid fa-pencil */
    /* Bootstrap icons */
    --pst-breadcrumb-divider: "❯";

    --pst-icon-admonition-default: var(--pst-icon-bell);
    --pst-icon-admonition-note: var(--pst-icon-info-circle);
    --pst-icon-admonition-attention: var(--pst-icon-exclamation-circle);
    --pst-icon-admonition-caution: var(--pst-icon-exclamation-triangle);
    --pst-icon-admonition-warning: var(--pst-icon-exclamation-triangle);
    --pst-icon-admonition-danger: var(--pst-icon-exclamation-triangle);
    --pst-icon-admonition-error: var(--pst-icon-times-circle);
    --pst-icon-admonition-hint: var(--pst-icon-lightbulb);
    --pst-icon-admonition-tip: var(--pst-icon-lightbulb);
    --pst-icon-admonition-important: var(--pst-icon-exclamation-circle);
    --pst-icon-admonition-seealso: var(--pst-icon-share);
    --pst-icon-admonition-todo: var(--pst-icon-pencil);
    --pst-icon-versionmodified-default: var(--pst-icon-exclamation-circle);
    --pst-icon-versionmodified-added: var(--pst-icon-exclamation-circle);
    --pst-icon-versionmodified-changed: var(--pst-icon-exclamation-circle);
    --pst-icon-versionmodified-deprecated: var(--pst-icon-exclamation-circle);
    font-size: var(--pst-font-size-base);
    scroll-padding-top: calc(var(--pst-header-height) + 1rem);
}

svg:not(:host).svg-inline--fa,
svg:not(:root).svg-inline--fa {
    overflow: visible;
    box-sizing: content-box
}

.svg-inline--fa {
    display: var(--fa-display, inline-block);
    height: 1em;
    overflow: visible;
    vertical-align: -.125em
}

.svg-inline--fa.fa-2xs {
    vertical-align: .1em
}

.svg-inline--fa.fa-xs {
    vertical-align: 0
}

.svg-inline--fa.fa-sm {
    vertical-align: -.0714285705em
}

.svg-inline--fa.fa-lg {
    vertical-align: -.2em
}

.svg-inline--fa.fa-xl {
    vertical-align: -.25em
}

.svg-inline--fa.fa-2xl {
    vertical-align: -.3125em
}

.svg-inline--fa.fa-pull-left {
    margin-right: var(--fa-pull-margin, .3em);
    width: auto
}

.svg-inline--fa.fa-pull-right {
    margin-left: var(--fa-pull-margin, .3em);
    width: auto
}

.svg-inline--fa.fa-li {
    width: var(--fa-li-width, 2em);
    top: .25em
}

.svg-inline--fa.fa-fw {
    width: var(--fa-fw-width, 1.25em)
}

.fa-layers svg.svg-inline--fa {
    bottom: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0
}

.fa-layers-counter,
.fa-layers-text {
    display: inline-block;
    position: absolute;
    text-align: center
}

.fa-layers {
    display: inline-block;
    height: 1em;
    position: relative;
    text-align: center;
    vertical-align: -.125em;
    width: 1em
}

.fa-layers svg.svg-inline--fa {
    -webkit-transform-origin: center center;
    transform-origin: center center
}

.fa-layers-text {
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transform-origin: center center;
    transform-origin: center center
}

.fa-layers-counter {
    background-color: var(--fa-counter-background-color, #ff253a);
    border-radius: var(--fa-counter-border-radius, 1em);
    box-sizing: border-box;
    color: var(--fa-inverse, #fff);
    line-height: var(--fa-counter-line-height, 1);
    max-width: var(--fa-counter-max-width, 5em);
    min-width: var(--fa-counter-min-width, 1.5em);
    overflow: hidden;
    padding: var(--fa-counter-padding, .25em .5em);
    right: var(--fa-right, 0);
    text-overflow: ellipsis;
    top: var(--fa-top, 0);
    -webkit-transform: scale(var(--fa-counter-scale, .25));
    transform: scale(var(--fa-counter-scale, .25));
    -webkit-transform-origin: top right;
    transform-origin: top right
}

.fa-layers-bottom-right {
    bottom: var(--fa-bottom, 0);
    right: var(--fa-right, 0);
    top: auto;
    -webkit-transform: scale(var(--fa-layers-scale, .25));
    transform: scale(var(--fa-layers-scale, .25));
    -webkit-transform-origin: bottom right;
    transform-origin: bottom right
}

.fa-layers-bottom-left {
    bottom: var(--fa-bottom, 0);
    left: var(--fa-left, 0);
    right: auto;
    top: auto;
    -webkit-transform: scale(var(--fa-layers-scale, .25));
    transform: scale(var(--fa-layers-scale, .25));
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left
}

.fa-layers-top-right {
    top: var(--fa-top, 0);
    right: var(--fa-right, 0);
    -webkit-transform: scale(var(--fa-layers-scale, .25));
    transform: scale(var(--fa-layers-scale, .25));
    -webkit-transform-origin: top right;
    transform-origin: top right
}

.fa-layers-top-left {
    left: var(--fa-left, 0);
    right: auto;
    top: var(--fa-top, 0);
    -webkit-transform: scale(var(--fa-layers-scale, .25));
    transform: scale(var(--fa-layers-scale, .25));
    -webkit-transform-origin: top left;
    transform-origin: top left
}

.fa-1x {
    font-size: 1em
}

.fa-2x {
    font-size: 2em
}

.fa-3x {
    font-size: 3em
}

.fa-4x {
    font-size: 4em
}

.fa-5x {
    font-size: 5em
}

.fa-6x {
    font-size: 6em
}

.fa-7x {
    font-size: 7em
}

.fa-8x {
    font-size: 8em
}

.fa-9x {
    font-size: 9em
}

.fa-10x {
    font-size: 10em
}

.fa-2xs {
    font-size: .625em;
    line-height: .1em;
    vertical-align: .225em
}

.fa-xs {
    font-size: .75em;
    line-height: .0833333337em;
    vertical-align: .125em
}

.fa-sm {
    font-size: .875em;
    line-height: .0714285718em;
    vertical-align: .0535714295em
}

.fa-lg {
    font-size: 1.25em;
    line-height: .05em;
    vertical-align: -.075em
}

.fa-xl {
    font-size: 1.5em;
    line-height: .0416666682em;
    vertical-align: -.125em
}

.fa-2xl {
    font-size: 2em;
    line-height: .03125em;
    vertical-align: -.1875em
}

.fa-fw {
    text-align: center;
    width: 1.25em
}

.fa-ul {
    list-style-type: none;
    margin-left: var(--fa-li-margin, 2.5em);
    padding-left: 0
}

.fa-ul>li {
    position: relative
}

.fa-li {
    left: calc(var(--fa-li-width, 2em) * -1);
    position: absolute;
    text-align: center;
    width: var(--fa-li-width, 2em);
    line-height: inherit
}

.fa-border {
    border-color: var(--fa-border-color, #eee);
    border-radius: var(--fa-border-radius, .1em);
    border-style: var(--fa-border-style, solid);
    border-width: var(--fa-border-width, .08em);
    padding: var(--fa-border-padding, .2em .25em .15em)
}

.fa-pull-left {
    float: left;
    margin-right: var(--fa-pull-margin, .3em)
}

.fa-pull-right {
    float: right;
    margin-left: var(--fa-pull-margin, .3em)
}

.fa-beat {
    -webkit-animation-name: fa-beat;
    animation-name: fa-beat;
    -webkit-animation-delay: var(--fa-animation-delay, 0s);
    animation-delay: var(--fa-animation-delay, 0s);
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);
    animation-timing-function: var(--fa-animation-timing, ease-in-out)
}

.fa-bounce {
    -webkit-animation-name: fa-bounce;
    animation-name: fa-bounce;
    -webkit-animation-delay: var(--fa-animation-delay, 0s);
    animation-delay: var(--fa-animation-delay, 0s);
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1));
    animation-timing-function: var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1))
}

.fa-fade {
    -webkit-animation-name: fa-fade;
    animation-name: fa-fade;
    -webkit-animation-delay: var(--fa-animation-delay, 0s);
    animation-delay: var(--fa-animation-delay, 0s);
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1));
    animation-timing-function: var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))
}

.fa-beat-fade {
    -webkit-animation-name: fa-beat-fade;
    animation-name: fa-beat-fade;
    -webkit-animation-delay: var(--fa-animation-delay, 0s);
    animation-delay: var(--fa-animation-delay, 0s);
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1));
    animation-timing-function: var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))
}

.fa-flip {
    -webkit-animation-name: fa-flip;
    animation-name: fa-flip;
    -webkit-animation-delay: var(--fa-animation-delay, 0s);
    animation-delay: var(--fa-animation-delay, 0s);
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);
    animation-timing-function: var(--fa-animation-timing, ease-in-out)
}

.fa-shake {
    -webkit-animation-name: fa-shake;
    animation-name: fa-shake;
    -webkit-animation-delay: var(--fa-animation-delay, 0s);
    animation-delay: var(--fa-animation-delay, 0s);
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, linear);
    animation-timing-function: var(--fa-animation-timing, linear)
}

.fa-spin {
    -webkit-animation-name: fa-spin;
    animation-name: fa-spin;
    -webkit-animation-delay: var(--fa-animation-delay, 0s);
    animation-delay: var(--fa-animation-delay, 0s);
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 2s);
    animation-duration: var(--fa-animation-duration, 2s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, linear);
    animation-timing-function: var(--fa-animation-timing, linear)
}

.fa-spin-reverse {
    --fa-animation-direction: reverse
}

.fa-pulse,
.fa-spin-pulse {
    -webkit-animation-name: fa-spin;
    animation-name: fa-spin;
    -webkit-animation-direction: var(--fa-animation-direction, normal);
    animation-direction: var(--fa-animation-direction, normal);
    -webkit-animation-duration: var(--fa-animation-duration, 1s);
    animation-duration: var(--fa-animation-duration, 1s);
    -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    animation-iteration-count: var(--fa-animation-iteration-count, infinite);
    -webkit-animation-timing-function: var(--fa-animation-timing, steps(8));
    animation-timing-function: var(--fa-animation-timing, steps(8))
}

@media (prefers-reduced-motion:reduce) {

    .fa-beat,
    .fa-beat-fade,
    .fa-bounce,
    .fa-fade,
    .fa-flip,
    .fa-pulse,
    .fa-shake,
    .fa-spin,
    .fa-spin-pulse {
        -webkit-animation-delay: -1ms;
        animation-delay: -1ms;
        -webkit-animation-duration: 1ms;
        animation-duration: 1ms;
        -webkit-animation-iteration-count: 1;
        animation-iteration-count: 1;
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
        -webkit-transition-duration: 0s;
        transition-duration: 0s
    }
}

@-webkit-keyframes fa-beat {

    0%,
    90% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    45% {
        -webkit-transform: scale(var(--fa-beat-scale, 1.25));
        transform: scale(var(--fa-beat-scale, 1.25))
    }
}

@keyframes fa-beat {

    0%,
    90% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    45% {
        -webkit-transform: scale(var(--fa-beat-scale, 1.25));
        transform: scale(var(--fa-beat-scale, 1.25))
    }
}

@-webkit-keyframes fa-bounce {
    0% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }

    10% {
        -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0);
        transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0)
    }

    30% {
        -webkit-transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em));
        transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))
    }

    50% {
        -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0);
        transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0)
    }

    57% {
        -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -.125em));
        transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -.125em))
    }

    64% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }

    100% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }
}

@keyframes fa-bounce {
    0% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }

    10% {
        -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0);
        transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, .9)) translateY(0)
    }

    30% {
        -webkit-transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em));
        transform: scale(var(--fa-bounce-jump-scale-x, .9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))
    }

    50% {
        -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0);
        transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, .95)) translateY(0)
    }

    57% {
        -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -.125em));
        transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -.125em))
    }

    64% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }

    100% {
        -webkit-transform: scale(1, 1) translateY(0);
        transform: scale(1, 1) translateY(0)
    }
}

@-webkit-keyframes fa-fade {
    50% {
        opacity: var(--fa-fade-opacity, .4)
    }
}

@keyframes fa-fade {
    50% {
        opacity: var(--fa-fade-opacity, .4)
    }
}

@-webkit-keyframes fa-beat-fade {

    0%,
    100% {
        opacity: var(--fa-beat-fade-opacity, .4);
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));
        transform: scale(var(--fa-beat-fade-scale, 1.125))
    }
}

@keyframes fa-beat-fade {

    0%,
    100% {
        opacity: var(--fa-beat-fade-opacity, .4);
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        opacity: 1;
        -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));
        transform: scale(var(--fa-beat-fade-scale, 1.125))
    }
}

@-webkit-keyframes fa-flip {
    50% {
        -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
        transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg))
    }
}

@keyframes fa-flip {
    50% {
        -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
        transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg))
    }
}

@-webkit-keyframes fa-shake {
    0% {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg)
    }

    4% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }

    24%,
    8% {
        -webkit-transform: rotate(-18deg);
        transform: rotate(-18deg)
    }

    12%,
    28% {
        -webkit-transform: rotate(18deg);
        transform: rotate(18deg)
    }

    16% {
        -webkit-transform: rotate(-22deg);
        transform: rotate(-22deg)
    }

    20% {
        -webkit-transform: rotate(22deg);
        transform: rotate(22deg)
    }

    32% {
        -webkit-transform: rotate(-12deg);
        transform: rotate(-12deg)
    }

    36% {
        -webkit-transform: rotate(12deg);
        transform: rotate(12deg)
    }

    100%,
    40% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@keyframes fa-shake {
    0% {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg)
    }

    4% {
        -webkit-transform: rotate(15deg);
        transform: rotate(15deg)
    }

    24%,
    8% {
        -webkit-transform: rotate(-18deg);
        transform: rotate(-18deg)
    }

    12%,
    28% {
        -webkit-transform: rotate(18deg);
        transform: rotate(18deg)
    }

    16% {
        -webkit-transform: rotate(-22deg);
        transform: rotate(-22deg)
    }

    20% {
        -webkit-transform: rotate(22deg);
        transform: rotate(22deg)
    }

    32% {
        -webkit-transform: rotate(-12deg);
        transform: rotate(-12deg)
    }

    36% {
        -webkit-transform: rotate(12deg);
        transform: rotate(12deg)
    }

    100%,
    40% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }
}

@-webkit-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.fa-rotate-90 {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.fa-rotate-180 {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.fa-rotate-270 {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg)
}

.fa-flip-horizontal {
    -webkit-transform: scale(-1, 1);
    transform: scale(-1, 1)
}

.fa-flip-vertical {
    -webkit-transform: scale(1, -1);
    transform: scale(1, -1)
}

.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
    -webkit-transform: scale(-1, -1);
    transform: scale(-1, -1)
}

.fa-rotate-by {
    -webkit-transform: rotate(var(--fa-rotate-angle, 0));
    transform: rotate(var(--fa-rotate-angle, 0))
}

.fa-stack {
    display: inline-block;
    vertical-align: middle;
    height: 2em;
    position: relative;
    width: 2.5em
}

.fa-stack-1x,
.fa-stack-2x {
    bottom: 0;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    z-index: var(--fa-stack-z-index, auto)
}

.svg-inline--fa.fa-stack-1x {
    height: 1em;
    width: 1.25em
}

.svg-inline--fa.fa-stack-2x {
    height: 2em;
    width: 2.5em
}

.fa-inverse {
    color: var(--fa-inverse, #fff)
}

.fa-sr-only,
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0
}

.fa-sr-only-focusable:not(:focus),
.sr-only-focusable:not(:focus) {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0
}

.svg-inline--fa .fa-primary {
    fill: var(--fa-primary-color, currentColor);
    opacity: var(--fa-primary-opacity, 1)
}

.svg-inline--fa .fa-secondary {
    fill: var(--fa-secondary-color, currentColor);
    opacity: var(--fa-secondary-opacity, .4)
}

.svg-inline--fa.fa-swap-opacity .fa-primary {
    opacity: var(--fa-secondary-opacity, .4)
}

.svg-inline--fa.fa-swap-opacity .fa-secondary {
    opacity: var(--fa-primary-opacity, 1)
}

.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
    fill: #000
}

.fa-duotone.fa-inverse,
.fad.fa-inverse {
    color: var(--fa-inverse, #fff)
}

/* This usually removes scroll from sidebar */
.bd-sidebar-primary .sidebar-primary-items__end {
    margin-top: unset;
}

.bd-sidebar-primary {
    background-color: var(--color-aside-bg);
}

a {
    transition: color 0.15sease-out, opacity 0.15sease-out;
}

nav.bd-links li>a {
    color: var(--color-aside-fg);

    &:hover {
        text-decoration: none;
        color: light-dark(black, white);
        background-color: var(--color-aside-active-bg);
        /* background-color: red; */
    }
}

td p {
    margin: 0;
}