:root {
    --bs-font-sans-serif: monospace;
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-body-font-size: 1rem;

    --bs-border-radius: 0rem;
    --bs-border-radius-sm: 0rem;
    --bs-border-radius-lg: 0rem;
    --bs-border-radius-xl: 0rem;
    --bs-border-radius-xxl: 0rem;
    --bs-border-radius-pill: 50rem;

    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);

    --bs-heading-color: inherit;
    --bs-link-decoration: underline;

    --bs-code-color: #d63384;
    --bs-highlight-color: #212529;
    --bs-highlight-bg: #fff3cd;

    --bs-focus-ring-width: 0.25rem;
    --bs-focus-ring-opacity: 0.25;
    --bs-focus-ring-color: rgba(109, 58, 223, 0.25);
}

[data-bs-theme=dark] {
    --bs-primary: #6d3adf;
    --bs-primary-rgb: 109, 58, 223;
    --bs-primary-text-emphasis: #a688fa;
    --bs-primary-bg-subtle: #160b2d;
    --bs-primary-border-subtle: #412386;

    --bs-accent: #2df7c2;
    --bs-accent-rgb: 45, 247, 194;
    --bs-accent-text-emphasis: #81fad9;
    --bs-accent-bg-subtle: #093227;
    --bs-accent-border-subtle: #1b9475;

    --bs-secondary: rgb(149, 51, 156);
    --bs-secondary-rgb: 149, 51, 156;
    --bs-secondary-text-emphasis: #8eb675;
    --bs-secondary-bg-subtle: #0a1106;
    --bs-secondary-border-subtle: #1d3112;

    --bs-link-color: #a688fa;
    --bs-link-hover-color: #c2affc;
    --bs-link-color-rgb: 166, 136, 250;
    --bs-link-hover-color-rgb: 194, 175, 252;

    --bs-component-active-color: #000;
    --bs-component-active-bg: var(--bs-primary);

    --bs-success-text-emphasis: #75b798;
    --bs-success-bg-subtle: #051b11;
    --bs-success-border-subtle: #0f5132;

    --bs-info-text-emphasis: #6edff6;
    --bs-info-bg-subtle: #032830;
    --bs-info-border-subtle: #087990;

    --bs-warning-text-emphasis: #ffda6a;
    --bs-warning-bg-subtle: #332701;
    --bs-warning-border-subtle: #997404;

    --bs-danger-text-emphasis: #ea868f;
    --bs-danger-bg-subtle: #2c0b0e;
    --bs-danger-border-subtle: #842029;

    --bs-light-text-emphasis: #f8f9fa;
    --bs-light-bg-subtle: #343a40;
    --bs-light-border-subtle: #495057;

    --bs-dark-text-emphasis: #dee2e6;
    --bs-dark-bg-subtle: #1a1d20;
    --bs-dark-border-subtle: #343a40;

    --bs-body-color: #dee2e6;
    --bs-body-color-rgb: 222, 226, 230;
    --bs-body-bg: #212529;
    --bs-body-bg-rgb: 33, 37, 41;

    --bs-emphasis-color: #fff;
    --bs-emphasis-color-rgb: 255, 255, 255;

    --bs-secondary-color: rgba(222, 226, 230, 0.75);
    --bs-secondary-color-rgb: 222, 226, 230;
    --bs-secondary-bg: #343a40;
    --bs-secondary-bg-rgb: 52, 58, 64;

    --bs-tertiary-color: rgba(222, 226, 230, 0.5);
    --bs-tertiary-color-rgb: 222, 226, 230;
    --bs-tertiary-bg: #2b3035;
    --bs-tertiary-bg-rgb: 43, 48, 53;

    --bs-border-color: #495057;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.15);

    --bs-heading-color: inherit;

    --bs-code-color: #e685b5;
    --bs-highlight-color: #dee2e6;
    --bs-highlight-bg: #664d03;

    --bs-focus-ring-color: rgba(166, 136, 250, 0.25);
}


.nav-pills {
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-link-active-bg: var(--bs-primary);
}

.dropdown-menu {
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: var(--bs-primary);
}

.list-group {
    --bs-list-group-active-color: #fff;
    --bs-list-group-active-bg: var(--bs-primary);
    --bs-list-group-active-border-color: var(--bs-primary);
}

.pagination {
    --bs-pagination-active-color: #fff;
    --bs-pagination-active-bg: var(--bs-primary);
    --bs-pagination-active-border-color: var(--bs-primary);
}

.accordion {
    --bs-accordion-active-color: var(--bs-primary-text-emphasis);
    --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.navbar {
    --bs-navbar-active-color: var(--bs-primary);
}


.btn-primary {
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-bg: #5a2ebf;
    --bs-btn-hover-border-color: #5a2ebf;
    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
    --bs-btn-active-bg: #4e27a6;
    --bs-btn-active-border-color: #4e27a6;
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
    --bs-btn-disabled-color: var(--bs-primary);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-primary);
    --bs-gradient: none;
}

.btn-secondary {
    --bs-btn-bg: var(--bs-secondary);
    --bs-btn-border-color: var(--bs-secondary);
    --bs-btn-hover-bg: rgba(var(--bs-secondary-rgb), 0.8);
    --bs-btn-hover-border-color: rgba(var(--bs-secondary-rgb), 0.8);
    --bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb);
    --bs-btn-active-bg: rgba(var(--bs-secondary-rgb), 0.7);
    --bs-btn-active-border-color: rgba(var(--bs-secondary-rgb), 0.7);
    --bs-btn-disabled-bg: var(--bs-secondary);
    --bs-btn-disabled-border-color: var(--bs-secondary);
}

.btn-outline-secondary {
    --bs-btn-color: var(--bs-secondary);
    --bs-btn-border-color: var(--bs-secondary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-secondary);
    --bs-btn-hover-border-color: var(--bs-secondary);
    --bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-secondary);
    --bs-btn-active-border-color: var(--bs-secondary);
    --bs-btn-disabled-color: var(--bs-secondary);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-secondary);
    --bs-gradient: none;
}

.btn-accent {
    --bs-btn-color: #000;
    --bs-btn-bg: var(--bs-accent);
    --bs-btn-border-color: var(--bs-accent);
    --bs-btn-hover-bg: #25cc9f;
    --bs-btn-hover-border-color: #25cc9f;
    --bs-btn-focus-shadow-rgb: var(--bs-accent-rgb);
    --bs-btn-active-bg: #1fa883;
    --bs-btn-active-border-color: #1fa883;
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: var(--bs-accent);
    --bs-btn-disabled-border-color: var(--bs-accent);
}

.btn-outline-accent {
    --bs-btn-color: var(--bs-accent);
    --bs-btn-border-color: var(--bs-accent);
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: var(--bs-accent);
    --bs-btn-hover-border-color: var(--bs-accent);
    --bs-btn-focus-shadow-rgb: var(--bs-accent-rgb);
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: var(--bs-accent);
    --bs-btn-active-border-color: var(--bs-accent);
    --bs-btn-disabled-color: var(--bs-accent);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-accent);
    --bs-gradient: none;
}

.btn-success {
    --bs-btn-bg: var(--bs-success);
    --bs-btn-border-color: var(--bs-success);
    --bs-btn-hover-bg: #157347;
    --bs-btn-hover-border-color: #146c43;
    --bs-btn-focus-shadow-rgb: var(--bs-success-rgb);
    --bs-btn-active-bg: #146c43;
    --bs-btn-active-border-color: #13653f;
    --bs-btn-disabled-bg: var(--bs-success);
    --bs-btn-disabled-border-color: var(--bs-success);
}

.btn-outline-success {
    --bs-btn-color: var(--bs-success);
    --bs-btn-border-color: var(--bs-success);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-success);
    --bs-btn-hover-border-color: var(--bs-success);
    --bs-btn-focus-shadow-rgb: var(--bs-success-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-success);
    --bs-btn-active-border-color: var(--bs-success);
    --bs-btn-disabled-color: var(--bs-success);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-success);
    --bs-gradient: none;
}

.btn-info {
    --bs-btn-color: #000;
    --bs-btn-bg: var(--bs-info);
    --bs-btn-border-color: var(--bs-info);
    --bs-btn-hover-bg: #31d2f2;
    --bs-btn-hover-border-color: #25cff2;
    --bs-btn-focus-shadow-rgb: var(--bs-info-rgb);
    --bs-btn-active-bg: #25cff2;
    --bs-btn-active-border-color: #11cdef;
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: var(--bs-info);
    --bs-btn-disabled-border-color: var(--bs-info);
}

.btn-outline-info {
    --bs-btn-color: var(--bs-info);
    --bs-btn-border-color: var(--bs-info);
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: var(--bs-info);
    --bs-btn-hover-border-color: var(--bs-info);
    --bs-btn-focus-shadow-rgb: var(--bs-info-rgb);
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: var(--bs-info);
    --bs-btn-active-border-color: var(--bs-info);
    --bs-btn-disabled-color: var(--bs-info);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-info);
    --bs-gradient: none;
}

.btn-warning {
    --bs-btn-color: #000;
    --bs-btn-bg: var(--bs-warning);
    --bs-btn-border-color: var(--bs-warning);
    --bs-btn-hover-bg: #ffcd39;
    --bs-btn-hover-border-color: #ffca2c;
    --bs-btn-focus-shadow-rgb: var(--bs-warning-rgb);
    --bs-btn-active-bg: #ffca2c;
    --bs-btn-active-border-color: #ffc720;
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: var(--bs-warning);
    --bs-btn-disabled-border-color: var(--bs-warning);
}

.btn-outline-warning {
    --bs-btn-color: var(--bs-warning);
    --bs-btn-border-color: var(--bs-warning);
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: var(--bs-warning);
    --bs-btn-hover-border-color: var(--bs-warning);
    --bs-btn-focus-shadow-rgb: var(--bs-warning-rgb);
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: var(--bs-warning);
    --bs-btn-active-border-color: var(--bs-warning);
    --bs-btn-disabled-color: var(--bs-warning);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-warning);
    --bs-gradient: none;
}

.btn-danger, .btn-danger-info {
    --bs-btn-bg: var(--bs-danger);
    --bs-btn-border-color: var(--bs-danger);
    --bs-btn-hover-bg: #bb2d3b;
    --bs-btn-hover-border-color: #b02a37;
    --bs-btn-focus-shadow-rgb: var(--bs-danger-rgb);
    --bs-btn-active-bg: #b02a37;
    --bs-btn-active-border-color: #a52834;
    --bs-btn-disabled-bg: var(--bs-danger);
    --bs-btn-disabled-border-color: var(--bs-danger);
}

.btn-outline-danger {
    --bs-btn-color: var(--bs-danger);
    --bs-btn-border-color: var(--bs-danger);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-danger);
    --bs-btn-hover-border-color: var(--bs-danger);
    --bs-btn-focus-shadow-rgb: var(--bs-danger-rgb);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-danger);
    --bs-btn-active-border-color: var(--bs-danger);
    --bs-btn-disabled-color: var(--bs-danger);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-danger);
    --bs-gradient: none;
}


.ts-control, .ts-control input, .ts-dropdown {
    color: inherit;
}

#loading, #closing.active {
    position: fixed;
    inset: 0;
    display: grid;
    align-items: center;
    justify-content: center;
    background-color: var(--bs-body-bg);
    z-index: 1111;
    opacity: 0.5;
}

#closing {
    display: none;
}