/*!
* Version: 1.0.0
* Spellinfo Technologies
* Author: Spellinfo Technologies
* Design and Developed by: spellinfo
* NOTE: This file contains the styling
*
*/
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap");

:root {
    /* Mac OS Inspired Color Palette */
    --bs-blue: #007AFF;
    --bs-indigo: #5856D6;
    --bs-purple: #AF52DE;
    --bs-pink: #FF2D55;
    --bs-red: #FF3B30;
    --bs-orange: #FF9500;
    --bs-yellow: #FFCC00;
    --bs-green: #34C759;
    --bs-teal: #5AC8FA;
    --bs-cyan: #32ADE6;

    /* Primary Semantics */
    --bs-primary: #0071e3;
    --bs-primary-rgb: 0, 113, 227;
    --bs-secondary: #86868b;
    --bs-success: #34c759;
    --bs-info: #007aff;
    --bs-warning: #ff9f0a;
    --bs-danger: #ff3b30;
    --bs-light: #f5f5f7;
    --bs-dark: #1d1d1f;

    /* Glassmorphism Variables */
    --glass-bg: rgba(255, 255, 255, 0.65);
    --glass-border: rgba(255, 255, 255, 0.4);
    --glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.05);
    --glass-blur: blur(24px);

    /* Layout Colors */
    --bs-body-bg: #f5f5f7;
    --bs-body-color: #1d1d1f;
    --bs-card-bg: #ffffff;

    /* Typography */
    --bs-font-sans-serif: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 0.938rem;
    --bs-body-line-height: 1.5;

    /* Borders & Radius */
    --bs-border-colors: #d2d2d7;
    --bs-border-radius: 12px;
    --bs-border-radius-lg: 16px;
    --bs-border-radius-xl: 20px;

    /* Custom Prefix */
    --prefix: bs-;
}

/* Global Reset & Body */
*,
*::before,
*::after {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size);
    font-weight: 400;
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    background-image: radial-gradient(circle at 50% 0%, #ffffff 0%, #f5f5f7 100%);
    -webkit-font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent;
}

/* Typography Gradient Headers */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: #1d1d1f;
}

h1,
.h1 {
    font-size: 2rem;
}

h2,
.h2 {
    font-size: 2rem;
}

h3,
.h3 {
    font-size: 1.75rem;
}

h4,
.h4 {
    font-size: 1.5rem;
}

h5,
.h5 {
    font-size: 1.25rem;
}

h6,
.h6 {
    font-size: 1rem;
}

/* Mac OS Style Scrollbar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
}

/* Link Styling */
a {
    color: var(--bs-primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover {
    color: #005bb5;
}






h5,
.h5 {
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 600;
    color: #fff;

}


h1,
.h1 {
    font-size: -webkit-calc(1.2978rem + 0.5736vw);
    font-size: calc(1.2978rem + 0.5736vw);
}

@media (min-width: 1200px) {

    h1,
    .h1 {
        font-size: 2rem;
    }
}

h2,
.h2 {
    font-size: -webkit-calc(1.3324rem + 0.9888vw);
    font-size: calc(1.3324rem + 0.9888vw);
}

@media (min-width: 1200px) {

    h2,
    .h2 {
        font-size: 2.074rem;
    }
}

h3,
.h3 {
    font-size: -webkit-calc(1.2978rem + 0.5736vw);
    font-size: calc(1.2978rem + 0.5736vw);
}

@media (min-width: 1200px) {

    h3,
    .h3 {
        font-size: 1.728rem;
    }
}

h4,
.h4 {
    font-size: -webkit-calc(1.269rem + 0.228vw);
    font-size: calc(1.269rem + 0.228vw);
}

@media (min-width: 1200px) {

    h4,
    .h4 {
        font-size: 1.44rem;
    }
}

h5,
.h5 {
    font-size: 1.2rem;
}

h6,
.h6 {
    font-size: 1rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

abbr[title] {
    -webkit-text-decoration: underline dotted;
    -moz-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

ol,
ul {
    padding-left: 2rem;
}

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0;
}

dt {
    font-weight: 700;
}

dd {
    margin-bottom: 0.5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small,
.small {
    font-size: 0.75em;
}

mark,
.mark {
    padding: 0.1875em;
    background-color: var(--bs-highlight-bg);
}

sub,
sup {
    position: relative;
    font-size: 0.75em;
    line-height: 0;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

a {
    text-decoration: none;
    color: #d63384;
}

a:hover {
    color: var(--bs-link-hover-color);
}

a {
    color: var(--bs-link-color);
    text-decoration: none;
    transition:
        color 0.3s ease,
        background 0.3s ease;
}

a:hover {
    color: var(--bs-link-hover-color);
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}

pre,
code,
kbd,
samp {
    font-family: var(--bs-font-monospace);
    font-size: 1em;
}

pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: 0.75em;
}

pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal;
}

code {
    font-size: 0.75em;
    color: var(--bs-code-color);
    word-wrap: break-word;
}

a>code {
    color: inherit;
}

kbd {
    padding: 0.2rem 0.4rem;
    font-size: 0.75em;
    color: var(--bs-body-bg);
    background-color: var(--bs-body-color);
    -webkit-border-radius: 0.125rem;
    border-radius: 0.125rem;
}

kbd kbd {
    padding: 0;
    font-size: 1em;
}

figure {
    margin: 0 0 1rem;
}

img,
svg {
    vertical-align: middle;
}

caption {
    padding-top: 1rem;
    padding-bottom: 1rem;
    color: #aca4bc;
    text-align: left;
}

label {
    display: inline-block;
}

button {
    -webkit-border-radius: 0;
    border-radius: 0;
}

button:focus:not(:focus-visible) {
    outline: 0;
}

input,
button,
select,
optgroup,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button,
select {
    text-transform: none;
}

[role="button"] {
    cursor: pointer;
}

select {
    word-wrap: normal;
}

select:disabled {
    opacity: 1;
}

[list]:not([type="date"]):not([type="datetime-local"]):not([type="month"]):not([type="week"]):not([type="time"])::-webkit-calendar-picker-indicator {
    display: none !important;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
    appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
    cursor: pointer;
}

::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

textarea {
    resize: vertical;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: 0.5rem;
    font-size: -webkit-calc(1.275rem + 0.3vw);
    font-size: calc(1.275rem + 0.3vw);
    line-height: inherit;
}

@media (min-width: 1200px) {
    legend {
        font-size: 1.5rem;
    }
}

legend+* {
    clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
    padding: 0;
}

::-webkit-inner-spin-button {
    height: auto;
}

[type="search"] {
    outline-offset: -2px;
    -webkit-appearance: textfield;
    appearance: textfield;
}

::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none;
}

::-webkit-color-swatch-wrapper {
    padding: 0;
}

::file-selector-button {
    font: inherit;
    -webkit-appearance: button;
    appearance: button;
}

output {
    display: inline-block;
}

iframe {
    border: 0;
}

summary {
    display: list-item;
    cursor: pointer;
}

progress {
    vertical-align: baseline;
}

[hidden] {
    display: none !important;
}

.lead {
    font-size: 1.25rem;
    font-weight: 300;
}

.display-1 {
    font-size: -webkit-calc(1.625rem + 4.5vw);
    font-size: calc(1.625rem + 4.5vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-1 {
        font-size: 5rem;
    }
}

.display-2 {
    font-size: -webkit-calc(1.575rem + 3.9vw);
    font-size: calc(1.575rem + 3.9vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-2 {
        font-size: 4.5rem;
    }
}

.display-3 {
    font-size: -webkit-calc(1.525rem + 3.3vw);
    font-size: calc(1.525rem + 3.3vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-3 {
        font-size: 4rem;
    }
}

.display-4 {
    font-size: -webkit-calc(1.475rem + 2.7vw);
    font-size: calc(1.475rem + 2.7vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-4 {
        font-size: 3.5rem;
    }
}

.display-5 {
    font-size: -webkit-calc(1.425rem + 2.1vw);
    font-size: calc(1.425rem + 2.1vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-5 {
        font-size: 3rem;
    }
}

.display-6 {
    font-size: -webkit-calc(1.375rem + 1.5vw);
    font-size: calc(1.375rem + 1.5vw);
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 1200px) {
    .display-6 {
        font-size: 2.5rem;
    }
}

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

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

.list-inline-item {
    display: inline-block;
}

.list-inline-item:not(:last-child) {
    margin-right: 0.5rem;
}

.initialism {
    font-size: 0.75em;
    text-transform: uppercase;
}

.blockquote {
    margin-bottom: 1rem;
    font-size: 1.25rem;
}

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

.blockquote-footer {
    margin-top: -1rem;
    margin-bottom: 1rem;
    font-size: 0.75em;
    color: #aca4bc;
}

.blockquote-footer::before {
    content: "— ";
}

.img-fluid {
    max-width: 100%;
    height: auto;
}

.img-thumbnail {
    padding: 0.25rem;
    background-color: #f3f3f3;
    border: 1px solid var(--bs-border-color);
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
    -webkit-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.1);
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.1);
    max-width: 100%;
    height: auto;
}

.figure {
    display: inline-block;
}

.figure-img {
    margin-bottom: 0.5rem;
    line-height: 1;
}

.figure-caption {
    font-size: 0.75em;
    color: #aca4bc;
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
    --bs-gutter-x: 1rem;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: -webkit-calc(var(--bs-gutter-x) * 0.5);
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: -webkit-calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {

    .container-sm,
    .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {

    .container-md,
    .container-sm,
    .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {

    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {

    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: 1140px;
    }
}

@media (min-width: 1600px) {

    .container-xxl,
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        max-width: 1320px;
    }
}

.row {
    --bs-gutter-x: 2rem;
    --bs-gutter-y: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: -webkit-calc(-1 * var(--bs-gutter-y));
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-right: -webkit-calc(-0.5 * var(--bs-gutter-x));
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: -webkit-calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
}

.row>* {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: -webkit-calc(var(--bs-gutter-x) * 0.5);
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: -webkit-calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-top: var(--bs-gutter-y);
}

.col {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 0%;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
}

.row-cols-auto>* {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
}

.row-cols-1>* {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
}

.row-cols-2>* {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 50%;
}

.row-cols-3>* {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.3333333333%;
}

.row-cols-4>* {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 25%;
}

.row-cols-5>* {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 20%;
}

.row-cols-6>* {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 16.6666666667%;
}

.col-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
}

.col-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 8.33333333%;
}

.col-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 16.66666667%;
}

.col-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 25%;
}

.col-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 33.33333333%;
}

.col-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 41.66666667%;
}

.col-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 50%;
}

.col-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 58.33333333%;
}

.col-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 66.66666667%;
}

.col-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 75%;
}

.col-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 83.33333333%;
}

.col-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 91.66666667%;
}

.col-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
}

.offset-1 {
    margin-left: 8.33333333%;
}

.offset-2 {
    margin-left: 16.66666667%;
}

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

.offset-4 {
    margin-left: 33.33333333%;
}

.offset-5 {
    margin-left: 41.66666667%;
}

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

.offset-7 {
    margin-left: 58.33333333%;
}

.offset-8 {
    margin-left: 66.66666667%;
}

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

.offset-10 {
    margin-left: 83.33333333%;
}

.offset-11 {
    margin-left: 91.66666667%;
}

.g-0,
.gx-0 {
    --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
    --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
    --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
    --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
    --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
    --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
    --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
    --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
    --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
    --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
    --bs-gutter-x: 2rem;
}

.g-5,
.gy-5 {
    --bs-gutter-y: 2rem;
}

@media (min-width: 576px) {
    .col-sm {
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 0%;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-sm-auto>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-sm-1>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-sm-2>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-sm-3>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-sm-4>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-sm-5>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-sm-6>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-sm-auto {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-sm-1 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-sm-2 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-sm-3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-sm-4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-sm-5 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-sm-6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-sm-7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-sm-8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-sm-9 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-sm-10 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-sm-11 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-sm-12 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-sm-0 {
        margin-left: 0;
    }

    .offset-sm-1 {
        margin-left: 8.33333333%;
    }

    .offset-sm-2 {
        margin-left: 16.66666667%;
    }

    .offset-sm-3 {
        margin-left: 25%;
    }

    .offset-sm-4 {
        margin-left: 33.33333333%;
    }

    .offset-sm-5 {
        margin-left: 41.66666667%;
    }

    .offset-sm-6 {
        margin-left: 50%;
    }

    .offset-sm-7 {
        margin-left: 58.33333333%;
    }

    .offset-sm-8 {
        margin-left: 66.66666667%;
    }

    .offset-sm-9 {
        margin-left: 75%;
    }

    .offset-sm-10 {
        margin-left: 83.33333333%;
    }

    .offset-sm-11 {
        margin-left: 91.66666667%;
    }

    .g-sm-0,
    .gx-sm-0 {
        --bs-gutter-x: 0;
    }

    .g-sm-0,
    .gy-sm-0 {
        --bs-gutter-y: 0;
    }

    .g-sm-1,
    .gx-sm-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-sm-1,
    .gy-sm-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-sm-2,
    .gx-sm-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-sm-2,
    .gy-sm-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-sm-3,
    .gx-sm-3 {
        --bs-gutter-x: 1rem;
    }

    .g-sm-3,
    .gy-sm-3 {
        --bs-gutter-y: 1rem;
    }

    .g-sm-4,
    .gx-sm-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-sm-4,
    .gy-sm-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-sm-5,
    .gx-sm-5 {
        --bs-gutter-x: 2rem;
    }

    .g-sm-5,
    .gy-sm-5 {
        --bs-gutter-y: 2rem;
    }
}

@media (min-width: 768px) {
    .col-md {
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 0%;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-md-auto>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-md-1>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-md-2>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-md-3>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-md-4>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-md-5>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-md-6>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-md-auto {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-md-1 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-md-2 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-md-3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-md-4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-md-5 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-md-6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-md-7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-md-8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-md-9 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-md-10 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-md-11 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-md-12 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-md-0 {
        margin-left: 0;
    }

    .offset-md-1 {
        margin-left: 8.33333333%;
    }

    .offset-md-2 {
        margin-left: 16.66666667%;
    }

    .offset-md-3 {
        margin-left: 25%;
    }

    .offset-md-4 {
        margin-left: 33.33333333%;
    }

    .offset-md-5 {
        margin-left: 41.66666667%;
    }

    .offset-md-6 {
        margin-left: 50%;
    }

    .offset-md-7 {
        margin-left: 58.33333333%;
    }

    .offset-md-8 {
        margin-left: 66.66666667%;
    }

    .offset-md-9 {
        margin-left: 75%;
    }

    .offset-md-10 {
        margin-left: 83.33333333%;
    }

    .offset-md-11 {
        margin-left: 91.66666667%;
    }

    .g-md-0,
    .gx-md-0 {
        --bs-gutter-x: 0;
    }

    .g-md-0,
    .gy-md-0 {
        --bs-gutter-y: 0;
    }

    .g-md-1,
    .gx-md-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-md-1,
    .gy-md-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-md-2,
    .gx-md-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-md-2,
    .gy-md-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-md-3,
    .gx-md-3 {
        --bs-gutter-x: 1rem;
    }

    .g-md-3,
    .gy-md-3 {
        --bs-gutter-y: 1rem;
    }

    .g-md-4,
    .gx-md-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-md-4,
    .gy-md-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-md-5,
    .gx-md-5 {
        --bs-gutter-x: 2rem;
    }

    .g-md-5,
    .gy-md-5 {
        --bs-gutter-y: 2rem;
    }
}

@media (min-width: 992px) {
    .col-lg {
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 0%;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-lg-auto>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-lg-1>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-lg-2>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-lg-3>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-lg-4>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-lg-5>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-lg-6>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-lg-auto {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-lg-1 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-lg-2 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-lg-3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-lg-4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-lg-5 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-lg-6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-lg-7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-lg-8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-lg-9 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-lg-10 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-lg-11 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-lg-12 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-lg-0 {
        margin-left: 0;
    }

    .offset-lg-1 {
        margin-left: 8.33333333%;
    }

    .offset-lg-2 {
        margin-left: 16.66666667%;
    }

    .offset-lg-3 {
        margin-left: 25%;
    }

    .offset-lg-4 {
        margin-left: 33.33333333%;
    }

    .offset-lg-5 {
        margin-left: 41.66666667%;
    }

    .offset-lg-6 {
        margin-left: 50%;
    }

    .offset-lg-7 {
        margin-left: 58.33333333%;
    }

    .offset-lg-8 {
        margin-left: 66.66666667%;
    }

    .offset-lg-9 {
        margin-left: 75%;
    }

    .offset-lg-10 {
        margin-left: 83.33333333%;
    }

    .offset-lg-11 {
        margin-left: 91.66666667%;
    }

    .g-lg-0,
    .gx-lg-0 {
        --bs-gutter-x: 0;
    }

    .g-lg-0,
    .gy-lg-0 {
        --bs-gutter-y: 0;
    }

    .g-lg-1,
    .gx-lg-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-lg-1,
    .gy-lg-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-lg-2,
    .gx-lg-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-lg-2,
    .gy-lg-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-lg-3,
    .gx-lg-3 {
        --bs-gutter-x: 1rem;
    }

    .g-lg-3,
    .gy-lg-3 {
        --bs-gutter-y: 1rem;
    }

    .g-lg-4,
    .gx-lg-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-lg-4,
    .gy-lg-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-lg-5,
    .gx-lg-5 {
        --bs-gutter-x: 2rem;
    }

    .g-lg-5,
    .gy-lg-5 {
        --bs-gutter-y: 2rem;
    }
}

@media (min-width: 1200px) {
    .col-xl {
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 0%;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-xl-auto>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-xl-1>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-xl-2>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-xl-3>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-xl-4>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-xl-5>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-xl-6>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-xl-auto {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-xl-1 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xl-2 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xl-3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xl-4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xl-5 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xl-6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xl-7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xl-8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xl-9 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xl-10 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xl-11 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xl-12 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xl-0 {
        margin-left: 0;
    }

    .offset-xl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xl-2 {
        margin-left: 16.66666667%;
    }

    .offset-xl-3 {
        margin-left: 25%;
    }

    .offset-xl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xl-5 {
        margin-left: 41.66666667%;
    }

    .offset-xl-6 {
        margin-left: 50%;
    }

    .offset-xl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xl-8 {
        margin-left: 66.66666667%;
    }

    .offset-xl-9 {
        margin-left: 75%;
    }

    .offset-xl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xl-11 {
        margin-left: 91.66666667%;
    }

    .g-xl-0,
    .gx-xl-0 {
        --bs-gutter-x: 0;
    }

    .g-xl-0,
    .gy-xl-0 {
        --bs-gutter-y: 0;
    }

    .g-xl-1,
    .gx-xl-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-xl-1,
    .gy-xl-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-xl-2,
    .gx-xl-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-xl-2,
    .gy-xl-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-xl-3,
    .gx-xl-3 {
        --bs-gutter-x: 1rem;
    }

    .g-xl-3,
    .gy-xl-3 {
        --bs-gutter-y: 1rem;
    }

    .g-xl-4,
    .gx-xl-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-xl-4,
    .gy-xl-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-xl-5,
    .gx-xl-5 {
        --bs-gutter-x: 2rem;
    }

    .g-xl-5,
    .gy-xl-5 {
        --bs-gutter-y: 2rem;
    }
}

@media (min-width: 1600px) {
    .col-xxl {
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 0%;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .row-cols-xxl-auto>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .row-cols-xxl-1>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .row-cols-xxl-2>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .row-cols-xxl-3>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.3333333333%;
    }

    .row-cols-xxl-4>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .row-cols-xxl-5>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 20%;
    }

    .row-cols-xxl-6>* {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.6666666667%;
    }

    .col-xxl-auto {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: auto;
    }

    .col-xxl-1 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-xxl-2 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-xxl-3 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 25%;
    }

    .col-xxl-4 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-xxl-5 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-xxl-6 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }

    .col-xxl-7 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-xxl-8 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-xxl-9 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 75%;
    }

    .col-xxl-10 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-xxl-11 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 91.66666667%;
    }

    .col-xxl-12 {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
    }

    .offset-xxl-0 {
        margin-left: 0;
    }

    .offset-xxl-1 {
        margin-left: 8.33333333%;
    }

    .offset-xxl-2 {
        margin-left: 16.66666667%;
    }

    .offset-xxl-3 {
        margin-left: 25%;
    }

    .offset-xxl-4 {
        margin-left: 33.33333333%;
    }

    .offset-xxl-5 {
        margin-left: 41.66666667%;
    }

    .offset-xxl-6 {
        margin-left: 50%;
    }

    .offset-xxl-7 {
        margin-left: 58.33333333%;
    }

    .offset-xxl-8 {
        margin-left: 66.66666667%;
    }

    .offset-xxl-9 {
        margin-left: 75%;
    }

    .offset-xxl-10 {
        margin-left: 83.33333333%;
    }

    .offset-xxl-11 {
        margin-left: 91.66666667%;
    }

    .g-xxl-0,
    .gx-xxl-0 {
        --bs-gutter-x: 0;
    }

    .g-xxl-0,
    .gy-xxl-0 {
        --bs-gutter-y: 0;
    }

    .g-xxl-1,
    .gx-xxl-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-xxl-1,
    .gy-xxl-1 {
        --bs-gutter-y: 0.25rem;
    }

    .g-xxl-2,
    .gx-xxl-2 {
        --bs-gutter-x: 0.5rem;
    }

    .g-xxl-2,
    .gy-xxl-2 {
        --bs-gutter-y: 0.5rem;
    }

    .g-xxl-3,
    .gx-xxl-3 {
        --bs-gutter-x: 1rem;
    }

    .g-xxl-3,
    .gy-xxl-3 {
        --bs-gutter-y: 1rem;
    }

    .g-xxl-4,
    .gx-xxl-4 {
        --bs-gutter-x: 1.5rem;
    }

    .g-xxl-4,
    .gy-xxl-4 {
        --bs-gutter-y: 1.5rem;
    }

    .g-xxl-5,
    .gx-xxl-5 {
        --bs-gutter-x: 2rem;
    }

    .g-xxl-5,
    .gy-xxl-5 {
        --bs-gutter-y: 2rem;
    }
}

/* General Table Styling */
.table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    background-color: rgba(255,
            255,
            255,
            0.95);
    /* Light white with subtle transparency */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border-radius: 12px;
    transition: all 0.3s ease-in-out;
}

.table td.pro-part-name {
    /* color: #d63384; */
    white-space: nowrap;
    /* Prevent text from wrapping */
    overflow: hidden;
    /* Hide overflow if the text is too long */
    text-overflow: ellipsis;
    /* Add "..." if text is truncated */
}

/* Table Header Styling */
.table thead th {
    background-color: rgba(240, 240, 240, 0.95) !important;
    /* Light grey */
    color: #333 !important;
    /* Dark grey */
    text-align: left !important;
    font-weight: bold !important;
    padding: 0.5rem 0.5rem !important;
    /* Reduced from 10px 6px to 0.5rem 0.5rem (8px) */
    /* border-bottom: 2px solid rgba(200, 200, 200, 0.9) !important; Soft grey border */
    letter-spacing: 0.3px !important;
    /* Reduced from 0.6px */
    font-size: 0.8125rem !important;
    /* Reduced from 13px to 0.8125rem */
    text-transform: capitalize !important;
    line-height: 1.1 !important;
    /* Tighter line height */
    transition: background-color 0.3s ease, transform 0.3s ease, color 0.3s ease !important;
}

/* Header Hover Effect */
.table thead th:hover {
    background-color: rgba(230, 230, 230, 0.95);
    /* Slightly darker grey */
    color: #000;
    /* Black */
    cursor: pointer;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
    transform: translateY(-1px);
}

/* Table Body Styling */
.table tbody tr {
    transition:
        background-color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

/* Striped Rows */
/* Light pastel blue for odd rows */
.table tbody tr:nth-of-type(odd) {
    background-color: rgba(235, 245, 255, 0.8);
}

/* Light pastel grey for even rows */
.table tbody tr:nth-of-type(even) {
    background-color: rgba(248,
            248,
            248,
            0.9);
    /* Neutral and minimal contrast */
}

/* Table Cell Styling - Compact & Responsive */
.table tbody tr td {
    padding: 0.35rem 0.5rem !important;
    /* Reduced from 6px 6px to 0.35rem 0.5rem (5.6px 8px) */
    vertical-align: middle !important;
    text-align: left !important;
    font-weight: 800 !important;
    color: #202020 !important;
    /* Dark grey */
    border-bottom: 1px solid rgba(29, 155, 240, 0.2) !important;
    border-right: 1px solid rgba(29, 155, 240, 0.2) !important;
    font-size: 0.8125rem !important;
    /* Reduced from 13px to 0.8125rem (13px ≈ 0.8125rem, but more responsive) */
    line-height: 1.3 !important;
    /* Tighter line height for compact display */
    transition: background-color 0.3s ease, color 0.3s ease !important;
}

/* Table Row Hover Effect - Clear Background */
.table tbody tr:hover td {
    background-color: rgba(200,
            230,
            255,
            0.8);
    /* A slightly bolder pastel blue */
    color: #000;
    /* Black */
    font-weight: 500;
    transform: translateY(-2px);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.07);
    /* Subtle shadow for lift effect */
    transition: all 0.3s ease-in-out;
}

.table tbody tr:hover td:nth-child(-n + 2) a {
    font-weight: bold;
    color: #d63384;
    /* Vibrant pink for links */
    transition:
        color 0.3s ease,
        background 0.3s ease;
}

/* Row Hover Effect */
.table-hover tbody tr:hover {
    background-color: rgba(245, 245, 245, 0.95);
    /* Light grey */
    color: #000;
    /* Black */
    font-weight: 600;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
    transition: all 0.3s ease;
}

/* Table Footer Styling - Compact */
.table tfoot th {
    background-color: rgba(240, 240, 240, 0.95) !important;
    /* Light grey */
    color: #333 !important;
    /* Dark grey */
    text-align: left !important;
    font-weight: bold !important;
    padding: 0.5rem 0.5rem !important;
    /* Reduced from 10px 10px to 0.5rem 0.5rem (8px) */
    letter-spacing: 0.3px !important;
    /* Reduced from 0.6px */
    font-size: 0.8125rem !important;
    /* Reduced from 13px to 0.8125rem */
    text-transform: capitalize !important;
    line-height: 1.3 !important;
    /* Tighter line height */
    transition: background-color 0.3s ease, transform 0.3s ease, color 0.3s ease !important;
    border-top: 2px solid rgba(220, 220, 220, 0.9) !important;
}

.table-footer {
    background-color: rgba(240, 240, 240, 0.95);
    /* Light grey */
    color: #333;
    /* Dark grey */
    text-align: center;
    font-weight: bold;
    padding: 10px 6px;
    letter-spacing: 0.6px;
    font-size: 13px;
    text-transform: capitalize;
    transition:
        background-color 0.3s ease,
        transform 0.3s ease,
        color 0.3s ease;
    border-top: 2px solid rgba(220, 220, 220, 0.9);
}

/* Pagination Styling */
.dataTables_wrapper .dataTables_paginate {
    padding-top: 5px;
    display: flex;
    justify-content: center;
    gap: 0.8rem;
}

/* Pagination Buttons */
#data_fetch_table_paginate .pagination {
    display: flex;
    justify-content: center;
    gap: 0.8rem;
    padding: 0;
    margin: 1.5rem 0;
    list-style: none;
}

#data_fetch_table_paginate .page-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 45px;
    height: 45px;
    padding: 0 16px;
    border: none;
    border-radius: 10px;
    font-size: 0.88rem !important;
    /* Reduced by 20% from 1.1rem (1.1 * 0.8 = 0.88rem) */
    font-weight: 500;
    color: #333;
    /* Dark grey */
    background: rgba(255, 255, 255, 0.95);
    /* Light white */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease-in-out;
    text-decoration: none;
}

/* Hover Effect for Pagination */
#data_fetch_table_paginate .page-link:hover {
    color: #ffffff;
    background-color: #333;
    /* Dark grey */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    transform: translateY(-2px);
}

/* Active Page */
#data_fetch_table_paginate .page-item.active .page-link {
    color: #ffffff;
    background-color: #000;
    /* Black */
    font-weight: bold;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
    transform: translateY(0);
}

/* Disabled Buttons */
#data_fetch_table_paginate .page-item.disabled .page-link {
    color: rgba(189, 189, 189, 0.8);
    background-color: rgba(236, 239, 241, 0.9);
    /* Light grey */
    box-shadow: none;
    cursor: not-allowed;
}

/* Scrollbar Styling - Modern Gradient */
.table-responsive::-webkit-scrollbar {
    width: 12px;
    /* Adjust scrollbar width */
}

.table-responsive::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg,
            rgba(0, 0, 0, 0.8),
            rgba(0, 0, 0, 0.7));
    /* Gradient effect */
    border-radius: 10px;
    box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.2);
    transition:
        background-color 0.3s ease,
        box-shadow 0.3s ease;
}

.table-responsive::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg,
            rgba(0, 0, 0, 0.9),
            rgba(0, 0, 0, 0.8));
    /* Darker gradient on hover */
    box-shadow: inset 0 0 8px rgba(0, 0, 0, 0.3);
}

/* Responsive Adjustments */
@media (max-width: 768px) {

    .table th,
    .table td {
        padding: 10px 12px;
        font-size: 0.8125rem !important;
        /* Reduced from 13px to 0.8125rem */
    }

    #data_fetch_table_paginate .page-link {
        min-width: 35px;
        height: 35px;
        font-size: 0.72rem !important;
        /* Reduced by 20% from 0.9rem (0.9 * 0.8 = 0.72rem) */
    }
}

/* Form label styles consolidated - see form group section (line 14152+) */
.col-form-label {
    padding-top: -webkit-calc(0.5rem + 1px);
    padding-top: calc(0.5rem + 1px);
    padding-bottom: -webkit-calc(0.5rem + 1px);
    padding-bottom: calc(0.5rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
}

.col-form-label-lg {
    padding-top: -webkit-calc(1rem + 1px);
    padding-top: calc(1rem + 1px);
    padding-bottom: -webkit-calc(1rem + 1px);
    padding-bottom: calc(1rem + 1px);
    font-size: 0.95rem !important;
    /* Reduced by 20% from 1.188rem (1.188 * 0.8 = 0.95rem) */
}

.col-form-label-sm {
    padding-top: -webkit-calc(0.25rem + 1px);
    padding-top: calc(0.25rem + 1px);
    padding-bottom: -webkit-calc(0.25rem + 1px);
    padding-bottom: calc(0.25rem + 1px);
    font-size: 0.65rem !important;
    /* Reduced by 20% from 0.813rem (0.813 * 0.8 = 0.65rem) */
}

.form-text {
    margin-top: 0.25rem;
    font-size: 0.75em;
    color: #aca4bc;
}

/* Form control styles consolidated - see advanced form inputs section (line 17360+) */
.form-control::-webkit-date-and-time-value {
    height: 1.5em;
}

.form-control::placeholder {
    color: #6b7280;
    opacity: 0.7;
    font-weight: 400;
}

/* Disabled styles consolidated - see form group section (line 14079+) */
.form-control::file-selector-button {
    padding: 0.5rem 1rem;
    margin: -0.5rem -1rem;
    -webkit-margin-end: 1rem;
    -moz-margin-end: 1rem;
    margin-inline-end: 1rem;
    color: #161d2b;
    background-color: #fff;
    pointer-events: none;
    border-color: inherit;
    border-style: solid;
    border-width: 0;
    border-inline-end-width: 1px;
    -webkit-border-radius: 0;
    border-radius: 0;
    -webkit-transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control::file-selector-button {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
    background-color: #f2f2f2;
}

.form-control-plaintext {
    display: block;
    width: 100%;
    padding: 0.5rem 0;
    margin-bottom: 0;
    line-height: 1.5;
    color: #161d2b;
    background-color: rgba(0, 0, 0, 0);
    border: solid rgba(0, 0, 0, 0);
    border-width: 1px 0;
}

.form-control-plaintext:focus {
    border-color: var(--bs-primary);
}

.form-control-plaintext.form-control-sm,
.form-control-plaintext.form-control-lg {
    padding-right: 0;
    padding-left: 0;
}

.form-control-sm {
    min-height: -webkit-calc(1.5em + 0.5rem + 2px);
    min-height: calc(1.5em + 0.5rem + 2px);
    padding: 0.35rem 0.75rem;
    /* Increased padding for better spacing */
    font-size: 0.78rem !important;
    /* Increased by 20% from 0.65rem (0.65 * 1.2 = 0.78rem) */
    -webkit-border-radius: 0.375rem;
    /* More rounded for modern look */
    border-radius: 0.375rem;
}

.form-control-sm::file-selector-button {
    padding: 0.25rem 0.5rem;
    margin: -0.25rem -0.5rem;
    -webkit-margin-end: 0.5rem;
    -moz-margin-end: 0.5rem;
    margin-inline-end: 0.5rem;
}

.form-control-lg {
    min-height: -webkit-calc(1.5em + 2rem + 2px);
    min-height: calc(1.5em + 2rem + 2px);
    padding: 1.1rem 2.25rem;
    /* Increased padding for better spacing */
    font-size: 1.14rem !important;
    /* Increased by 20% from 0.95rem (0.95 * 1.2 = 1.14rem) */
    -webkit-border-radius: 0.625rem;
    /* More rounded for modern look */
    border-radius: 0.625rem;
}

.form-control-lg::file-selector-button {
    padding: 1rem 2rem;
    margin: -1rem -2rem;
    -webkit-margin-end: 2rem;
    -moz-margin-end: 2rem;
    margin-inline-end: 2rem;
}

textarea.form-control {
    min-height: -webkit-calc(1.5em + 1rem + 2px);
    min-height: calc(1.5em + 1rem + 2px);
}

textarea.form-control-sm {
    min-height: -webkit-calc(1.5em + 0.5rem + 2px);
    min-height: calc(1.5em + 0.5rem + 2px);
}

textarea.form-control-lg {
    min-height: -webkit-calc(1.5em + 2rem + 2px);
    min-height: calc(1.5em + 2rem + 2px);
}

.form-control-color {
    width: 3rem;
    height: -webkit-calc(1.5em + 1rem + 2px);
    height: calc(1.5em + 1rem + 2px);
    padding: 0.5rem;
}

.form-control-color:not(:disabled):not([readonly]) {
    cursor: pointer;
}

.form-control-color::-moz-color-swatch {
    border: 0 !important;
    border-radius: 0.25rem;
}

.form-control-color::-webkit-color-swatch {
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
}

.form-control-color.form-control-sm {
    height: -webkit-calc(1.5em + 0.5rem + 2px);
    height: calc(1.5em + 0.5rem + 2px);
}

.form-control-color.form-control-lg {
    height: -webkit-calc(1.5em + 2rem + 2px);
    height: calc(1.5em + 2rem + 2px);
}

/* Form-select styles consolidated - see advanced form inputs section (line 17360+) */
/* Dropdown arrow and specific select properties */
.form-select {
    -moz-padding-start: calc(1rem - 3px);
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 16px 12px;
}

@media (prefers-reduced-motion: reduce) {
    .form-select {
        transition: none !important;
        transform: none !important;
    }

    .form-select:hover,
    .form-select:focus {
        transform: none !important;
    }
}

.form-select[multiple],
.form-select[size]:not([size="1"]) {
    padding-right: 1rem;
    background-image: none;
}

/* Disabled form-select styles consolidated - see form group section (line 14079+) */
.form-select:-moz-focusring {
    color: rgba(0, 0, 0, 0);
    text-shadow: 0 0 0 #161d2b;
}

.form-select-sm {
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
    padding-left: 0.75rem;
    /* Increased padding for better spacing */
    font-size: 0.78rem !important;
    /* Increased by 20% from 0.65rem (0.65 * 1.2 = 0.78rem) */
    -webkit-border-radius: 0.375rem;
    /* More rounded for modern look */
    border-radius: 0.375rem;
}

.form-select-lg {
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
    padding-left: 2.25rem;
    /* Increased padding for better spacing */
    font-size: 1.14rem !important;
    /* Increased by 20% from 0.95rem (0.95 * 1.2 = 1.14rem) */
    -webkit-border-radius: 0.625rem;
    /* More rounded for modern look */
    border-radius: 0.625rem;
}

.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: 0.125rem;
}

.form-check .form-check-input {
    float: left;
    margin-left: -1.5em;
}

.form-check-reverse {
    padding-right: 1.5em;
    padding-left: 0;
    text-align: right;
}

.form-check-reverse .form-check-input {
    float: right;
    margin-right: -1.5em;
    margin-left: 0;
}

.form-check-input {
    width: 1.5em;
    height: 1.5em;
    margin-top: 0.25em;
    vertical-align: top;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: contain;
    background-size: contain;
    border: 1px solid rgba(0, 0, 0, 0.25);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    print-color-adjust: exact;
}

.form-check-input[type="checkbox"] {
    -webkit-border-radius: 0.25em;
    border-radius: 0.25em;
}

.form-check-input[type="radio"] {
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

.form-check-input:active {
    -webkit-filter: brightness(90%);
    filter: brightness(90%);
}

.form-check-input:focus {
    border-color: #c45a18;
    outline: 0;
    -webkit-box-shadow: 0 0rem 0rem 0rem rgba(112, 22, 208, 0.15);
    box-shadow: 0 0rem 0rem 0rem rgba(112, 22, 208, 0.15);
}

.form-check-input:checked {
    background-color: #0071e3;
    border-color: #0071e3;
}

.form-check-input:checked[type="checkbox"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}

.form-check-input:checked[type="radio"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}

.form-check-input[type="checkbox"]:indeterminate {
    background-color: #0071e3;
    border-color: #0071e3;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}

.form-check-input:disabled {
    pointer-events: none;
    -webkit-filter: none;
    filter: none;
    opacity: 0.5;
}

.form-check-input[disabled]~.form-check-label,
.form-check-input:disabled~.form-check-label {
    cursor: default;
    opacity: 0.5;
}

.form-switch {
    padding-left: 2.5em;
}

.form-switch .form-check-input {
    width: 2em;
    margin-left: -2.5em;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
    background-position: left center;
    -webkit-border-radius: 2em;
    border-radius: 2em;
    -webkit-transition: background-position 0.15s ease-in-out;
    -o-transition: background-position 0.15s ease-in-out;
    transition: background-position 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-switch .form-check-input {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.form-switch .form-check-input:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23c45a18'/%3e%3c/svg%3e");
}

.form-switch .form-check-input:checked {
    background-position: right center;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.form-switch.form-check-reverse {
    padding-right: 2.5em;
    padding-left: 0;
}

.form-switch.form-check-reverse .form-check-input {
    margin-right: -2.5em;
    margin-left: 0;
}

.form-check-inline {
    display: inline-block;
    margin-right: 1rem;
}

.btn-check {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}

.btn-check[disabled]+.btn,
.btn-check:disabled+.btn {
    pointer-events: none;
    -webkit-filter: none;
    filter: none;
    opacity: 0.65;
}

.form-range {
    width: 100%;
    height: 1rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.form-range:focus {
    outline: 0;
}

.form-range:focus::-webkit-slider-thumb {
    -webkit-box-shadow:
        0 0 0 1px #f3f3f3,
        0 0rem 0rem 0rem rgba(112, 22, 208, 0.15);
    box-shadow:
        0 0 0 1px #f3f3f3,
        0 0rem 0rem 0rem rgba(112, 22, 208, 0.15);
}

.form-range:focus::-moz-range-thumb {
    box-shadow:
        0 0 0 1px #f3f3f3,
        0 0rem 0rem 0rem rgba(112, 22, 208, 0.15);
}

.form-range::-moz-focus-outer {
    border: 0;
}

.form-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #0071e3;
    border: 0;
    -webkit-border-radius: 1rem;
    border-radius: 1rem;
    -webkit-box-shadow: 0 0.1rem 0.25rem rgba(0, 0, 0, 0.1);
    box-shadow: 0 0.1rem 0.25rem rgba(0, 0, 0, 0.1);
    -webkit-transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
    -o-transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
    -webkit-appearance: none;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-range::-webkit-slider-thumb {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.form-range::-webkit-slider-thumb:active {
    background-color: #d4b9f1;
}

.form-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: rgba(0, 0, 0, 0);
    cursor: pointer;
    background-color: #dee2e6;
    border-color: rgba(0, 0, 0, 0);
    -webkit-border-radius: 1rem;
    border-radius: 1rem;
    -webkit-box-shadow: inset 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
    box-shadow: inset 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
}

.form-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #0071e3;
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 0.1rem 0.25rem rgba(0, 0, 0, 0.1);
    -webkit-transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
    -o-transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    transition:
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
    -moz-appearance: none;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .form-range::-moz-range-thumb {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.form-range::-moz-range-thumb:active {
    background-color: #d4b9f1;
}

.form-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: rgba(0, 0, 0, 0);
    cursor: pointer;
    background-color: #dee2e6;
    border-color: rgba(0, 0, 0, 0);
    border-radius: 1rem;
    box-shadow: inset 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
}

.form-range:disabled {
    pointer-events: none;
}

.form-range:disabled::-webkit-slider-thumb {
    background-color: #adb5bd;
}

.form-range:disabled::-moz-range-thumb {
    background-color: #adb5bd;
}

.form-floating {
    position: relative;
}

.form-floating>.form-control,
.form-floating>.form-control-plaintext,
.form-floating>.form-select {
    height: -webkit-calc(3.5rem + 2px);
    height: calc(3.5rem + 2px);
    line-height: 1.25;
}

.form-floating>label {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 1rem 1rem;
    overflow: hidden;
    text-align: start;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    border: 1px solid rgba(0, 0, 0, 0);
    -webkit-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transition:
        opacity 0.1s ease-in-out,
        -webkit-transform 0.1s ease-in-out;
    transition:
        opacity 0.1s ease-in-out,
        -webkit-transform 0.1s ease-in-out;
    -o-transition:
        opacity 0.1s ease-in-out,
        transform 0.1s ease-in-out;
    transition:
        opacity 0.1s ease-in-out,
        transform 0.1s ease-in-out;
    transition:
        opacity 0.1s ease-in-out,
        transform 0.1s ease-in-out,
        -webkit-transform 0.1s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-floating>label {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.form-floating>.form-control,
.form-floating>.form-control-plaintext {
    padding: 1rem 1rem;
}

.form-floating>.form-control::placeholder,
.form-floating>.form-control-plaintext::placeholder {
    color: rgba(0, 0, 0, 0);
}

.form-floating>.form-control:focus,
.form-floating>.form-control:not(:placeholder-shown),
.form-floating>.form-control-plaintext:focus,
.form-floating>.form-control-plaintext:not(:placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-control:-webkit-autofill,
.form-floating>.form-control-plaintext:-webkit-autofill {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-select {
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating>.form-control:focus~label,
.form-floating>.form-control:not(:placeholder-shown)~label,
.form-floating>.form-control-plaintext~label,
.form-floating>.form-select~label {
    opacity: 0.65;
    -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    -ms-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating>.form-control:-webkit-autofill~label {
    opacity: 0.65;
    -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}

.form-floating>.form-control-plaintext~label {
    border-width: 1px 0;
}

.input-group {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%;
}

.input-group>.form-control,
.input-group>.form-select,
.input-group>.form-floating {
    position: relative;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}

.input-group>.form-control:focus,
.input-group>.form-select:focus,
.input-group>.form-floating:focus-within {
    z-index: 5;
}

.input-group .btn {
    position: relative;
    z-index: 2;
}

.input-group .btn:focus {
    z-index: 5;
}

.input-group-text {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.5rem 1rem;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
    color: #161d2b;
    text-align: center;
    white-space: nowrap;
    background-color: #fff;
    border: 1px solid #0071e3;
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
}

.input-group-lg>.form-control,
.input-group-lg>.form-select,
.input-group-lg>.input-group-text,
.input-group-lg>.btn {
    padding: 1rem 2rem;
    font-size: 1.188rem;
    -webkit-border-radius: 0.5rem;
    border-radius: 0.5rem;
}

.input-group-sm>.form-control,
.input-group-sm>.form-select,
.input-group-sm>.input-group-text,
.input-group-sm>.btn {
    padding: 0.25rem 0.5rem;
    font-size: 0.813rem;
    -webkit-border-radius: 0.125rem;
    border-radius: 0.125rem;
}

.input-group-lg>.form-select,
.input-group-sm>.form-select {
    padding-right: 4rem;
}

.input-group:not(.has-validation)> :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n + 3),
.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,
.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select {
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group.has-validation> :nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group.has-validation>.dropdown-toggle:nth-last-child(n + 4),
.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-control,
.input-group.has-validation>.form-floating:nth-last-child(n + 3)>.form-select {
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group> :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    margin-left: -1px;
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group>.form-floating:not(:first-child)>.form-control,
.input-group>.form-floating:not(:first-child)>.form-select {
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
}

.valid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.75em;
    color: #1aa053;
}

.valid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.5rem 1rem;
    margin-top: 0.1rem;
    font-size: 0.813rem;
    color: #fff;
    background-color: rgba(26, 160, 83, 0.9);
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
}

.was-validated :valid~.valid-feedback,
.was-validated :valid~.valid-tooltip,
.is-valid~.valid-feedback,
.is-valid~.valid-tooltip {
    display: block;
}

.was-validated .form-control:valid,
.form-control.is-valid {
    border-color: #1aa053;
    padding-right: -webkit-calc(1.5em + 1rem);
    padding-right: calc(1.5em + 1rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%231AA053' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right -webkit-calc(0.375em + 0.25rem) center;
    background-position: right calc(0.375em + 0.25rem) center;
    -webkit-background-size: -webkit-calc(0.75em + 0.5rem) -webkit-calc(0.75em + 0.5rem);
    background-size: calc(0.75em + 0.5rem) calc(0.75em + 0.5rem);
}

.was-validated .form-control:valid:focus,
.form-control.is-valid:focus {
    border-color: #1aa053;
    -webkit-box-shadow: 0 0 0rem 0rem rgba(26, 160, 83, 0.15);
    box-shadow: 0 0 0rem 0rem rgba(26, 160, 83, 0.15);
}

.was-validated textarea.form-control:valid,
textarea.form-control.is-valid {
    padding-right: -webkit-calc(1.5em + 1rem);
    padding-right: calc(1.5em + 1rem);
    background-position: top -webkit-calc(0.375em + 0.25rem) right -webkit-calc(0.375em + 0.25rem);
    background-position: top calc(0.375em + 0.25rem) right calc(0.375em + 0.25rem);
}

.was-validated .form-select:valid,
.form-select.is-valid {
    border-color: #1aa053;
}

.was-validated .form-select:valid:not([multiple]):not([size]),
.was-validated .form-select:valid:not([multiple])[size="1"],
.form-select.is-valid:not([multiple]):not([size]),
.form-select.is-valid:not([multiple])[size="1"] {
    padding-right: 5.5rem;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"),
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%231AA053' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-position:
        right 1rem center,
        center right 3rem;
    -webkit-background-size:
        16px 12px,
        -webkit-calc(0.75em + 0.5rem) -webkit-calc(0.75em + 0.5rem);
    background-size:
        16px 12px,
        calc(0.75em + 0.5rem) calc(0.75em + 0.5rem);
}

.was-validated .form-select:valid:focus,
.form-select.is-valid:focus {
    border-color: #1aa053;
    -webkit-box-shadow: 0 0 0rem 0rem rgba(26, 160, 83, 0.15);
    box-shadow: 0 0 0rem 0rem rgba(26, 160, 83, 0.15);
}

.was-validated .form-control-color:valid,
.form-control-color.is-valid {
    width: -webkit-calc(3rem + -webkit-calc(1.5em + 1rem));
    width: calc(3rem + calc(1.5em + 1rem));
}

.was-validated .form-check-input:valid,
.form-check-input.is-valid {
    border-color: #1aa053;
}

.was-validated .form-check-input:valid:checked,
.form-check-input.is-valid:checked {
    background-color: #1aa053;
}

.was-validated .form-check-input:valid:focus,
.form-check-input.is-valid:focus {
    -webkit-box-shadow: 0 0 0rem 0rem rgba(26, 160, 83, 0.15);
    box-shadow: 0 0 0rem 0rem rgba(26, 160, 83, 0.15);
}

.was-validated .form-check-input:valid~.form-check-label,
.form-check-input.is-valid~.form-check-label {
    color: #1aa053;
}

.form-check-inline .form-check-input~.valid-feedback {
    margin-left: 0.5em;
}

.was-validated .input-group>.form-control:not(:focus):valid,
.input-group>.form-control:not(:focus).is-valid,
.was-validated .input-group>.form-select:not(:focus):valid,
.input-group>.form-select:not(:focus).is-valid,
.was-validated .input-group>.form-floating:not(:focus-within):valid,
.input-group>.form-floating:not(:focus-within).is-valid {
    z-index: 3;
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.75em;
    color: #c03221;
}

.invalid-tooltip {
    position: absolute;
    top: 100%;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.5rem 1rem;
    margin-top: 0.1rem;
    font-size: 0.813rem;
    color: #fff;
    background-color: rgba(192, 50, 33, 0.9);
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
}

.was-validated :invalid~.invalid-feedback,
.was-validated :invalid~.invalid-tooltip,
.is-invalid~.invalid-feedback,
.is-invalid~.invalid-tooltip {
    display: block;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
    border-color: #c03221;
    padding-right: -webkit-calc(1.5em + 1rem);
    padding-right: calc(1.5em + 1rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23C03221'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23C03221' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right -webkit-calc(0.375em + 0.25rem) center;
    background-position: right calc(0.375em + 0.25rem) center;
    -webkit-background-size: -webkit-calc(0.75em + 0.5rem) -webkit-calc(0.75em + 0.5rem);
    background-size: calc(0.75em + 0.5rem) calc(0.75em + 0.5rem);
}

.was-validated .form-control:invalid:focus,
.form-control.is-invalid:focus {
    border-color: #c03221;
    -webkit-box-shadow: 0 0 0rem 0rem rgba(192, 50, 33, 0.15);
    box-shadow: 0 0 0rem 0rem rgba(192, 50, 33, 0.15);
}

.was-validated textarea.form-control:invalid,
textarea.form-control.is-invalid {
    padding-right: -webkit-calc(1.5em + 1rem);
    padding-right: calc(1.5em + 1rem);
    background-position: top -webkit-calc(0.375em + 0.25rem) right -webkit-calc(0.375em + 0.25rem);
    background-position: top calc(0.375em + 0.25rem) right calc(0.375em + 0.25rem);
}

.was-validated .form-select:invalid,
.form-select.is-invalid {
    border-color: #c03221;
}

.was-validated .form-select:invalid:not([multiple]):not([size]),
.was-validated .form-select:invalid:not([multiple])[size="1"],
.form-select.is-invalid:not([multiple]):not([size]),
.form-select.is-invalid:not([multiple])[size="1"] {
    padding-right: 5.5rem;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"),
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23C03221'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23C03221' stroke='none'/%3e%3c/svg%3e");
    background-position:
        right 1rem center,
        center right 3rem;
    -webkit-background-size:
        16px 12px,
        -webkit-calc(0.75em + 0.5rem) -webkit-calc(0.75em + 0.5rem);
    background-size:
        16px 12px,
        calc(0.75em + 0.5rem) calc(0.75em + 0.5rem);
}

.was-validated .form-select:invalid:focus,
.form-select.is-invalid:focus {
    border-color: #c03221;
    -webkit-box-shadow: 0 0 0rem 0rem rgba(192, 50, 33, 0.15);
    box-shadow: 0 0 0rem 0rem rgba(192, 50, 33, 0.15);
}

.was-validated .form-control-color:invalid,
.form-control-color.is-invalid {
    width: -webkit-calc(3rem + -webkit-calc(1.5em + 1rem));
    width: calc(3rem + calc(1.5em + 1rem));
}

.was-validated .form-check-input:invalid,
.form-check-input.is-invalid {
    border-color: #c03221;
}

.was-validated .form-check-input:invalid:checked,
.form-check-input.is-invalid:checked {
    background-color: #c03221;
}

.was-validated .form-check-input:invalid:focus,
.form-check-input.is-invalid:focus {
    -webkit-box-shadow: 0 0 0rem 0rem rgba(192, 50, 33, 0.15);
    box-shadow: 0 0 0rem 0rem rgba(192, 50, 33, 0.15);
}

.was-validated .form-check-input:invalid~.form-check-label,
.form-check-input.is-invalid~.form-check-label {
    color: #c03221;
}

.form-check-inline .form-check-input~.invalid-feedback {
    margin-left: 0.5em;
}

.was-validated .input-group>.form-control:not(:focus):invalid,
.input-group>.form-control:not(:focus).is-invalid,
.was-validated .input-group>.form-select:not(:focus):invalid,
.input-group>.form-select:not(:focus).is-invalid,
.was-validated .input-group>.form-floating:not(:focus-within):invalid,
.input-group>.form-floating:not(:focus-within).is-invalid {
    z-index: 4;
}

/* Universal Button Styling */
.btn {
    --bs-btn-padding-x: 0.8rem;
    --bs-btn-padding-y: 0.5rem;
    --bs-btn-font-family: inherit;
    --bs-btn-font-size: 0.9rem;
    --bs-btn-font-weight: 600;
    --bs-btn-line-height: 1.5;
    --bs-btn-color: #161d2b;
    --bs-btn-bg: transparent;
    --bs-btn-border-width: 1px;
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: 0.25rem;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(0, 0, 0, 0.5);

    display: inline-block;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background-color: var(--bs-btn-bg);
    color: var(--bs-btn-color);
    box-shadow: var(--bs-btn-box-shadow);
    transition: all 0.3s ease-in-out;
}

.btn:hover {
    color: var(--bs-btn-hover-color);
    border: var(--bs-btn-hover-bg);
    background-color: var(--bs-btn-hover-border-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transform: scale(1.01);
}

.btn:focus-visible {
    outline: none;
    box-shadow: var(--bs-btn-focus-box-shadow);
}

.btn:active {
    transform: translateY(1px);
}

.btn:disabled {
    pointer-events: none;
    opacity: var(--bs-btn-disabled-opacity);
}

/* Button Variants */
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #1e88e5;
    --bs-btn-border-color: #1e88e5;
    --bs-btn-hover-bg: #039be5;
    --bs-btn-hover-border-color: #039be5;
    --bs-btn-focus-box-shadow: 0 0 0 3px rgba(3, 155, 229, 0.5);
    --bs-btn-active-bg: #0288d1;
    --bs-btn-active-border-color: #0288d1;
}

.btn-secondary {
    --bs-btn-color: #000;
    --bs-btn-bg: #aca4bc;
    --bs-btn-border-color: #aca4bc;
    --bs-btn-hover-bg: #b8b2c6;
    --bs-btn-hover-border-color: #b4adc3;
    --bs-btn-focus-box-shadow: 0 0 0 3px rgba(146, 139, 160, 0.5);
    --bs-btn-active-bg: #bdb6c9;
    --bs-btn-active-border-color: #b4adc3;
}

.btn-success {
    --bs-btn-color: #fff;
    --bs-btn-bg: #1aa053;
    --bs-btn-border-color: #1aa053;
    --bs-btn-hover-bg: #168847;
    --bs-btn-hover-border-color: #158042;
    --bs-btn-focus-box-shadow: 0 0 0 3px rgba(60, 174, 109, 0.5);
    --bs-btn-active-bg: #158042;
    --bs-btn-active-border-color: #14783e;
}

.btn-info {
    --bs-btn-color: #000;
    --bs-btn-bg: #08b1ba;
    --bs-btn-border-color: #08b1ba;
    --bs-btn-hover-bg: #2dbdc4;
    --bs-btn-hover-border-color: #21b9c1;
    --bs-btn-focus-box-shadow: 0 0 0 3px rgba(7, 150, 158, 0.5);
    --bs-btn-active-bg: #39c1c8;
    --bs-btn-active-border-color: #21b9c1;
}

.btn-warning {
    --bs-btn-color: #fff;
    --bs-btn-bg: #d4aa0f;
    --bs-btn-border-color: #d4aa0f;
    --bs-btn-hover-bg: #f1c40f;
    --bs-btn-hover-border-color: #f1c40f;
    --bs-btn-focus-box-shadow: 0 0 0 3px rgba(243, 128, 61, 0.5);
    --bs-btn-active-bg: #f1c40f;
    --bs-btn-active-border-color: #d4aa0f;
}

.btn-danger {
    --bs-btn-color: #fff;
    --bs-btn-bg: #c03221;
    --bs-btn-border-color: #c03221;
    --bs-btn-hover-bg: #a32b1c;
    --bs-btn-hover-border-color: #9a281a;
    --bs-btn-focus-box-shadow: 0 0 0 3px rgba(201, 81, 66, 0.5);
    --bs-btn-active-bg: #9a281a;
    --bs-btn-active-border-color: #902619;
}

.btn-light {
    --bs-btn-color: #000;
    --bs-btn-bg: #dee2e6;
    --bs-btn-border-color: #dee2e6;
    --bs-btn-hover-bg: #bdc0c4;
    --bs-btn-hover-border-color: #b2b5b8;
    --bs-btn-focus-box-shadow: 0 0 0 3px rgba(189, 192, 196, 0.5);
    --bs-btn-active-bg: #b2b5b8;
    --bs-btn-active-border-color: #a7aaad;
}

.btn-dark {
    --bs-btn-color: #fff;
    --bs-btn-bg: #161d2b;
    --bs-btn-border-color: #161d2b;
    --bs-btn-hover-bg: #393f4b;
    --bs-btn-hover-border-color: #2d3440;
    --bs-btn-focus-box-shadow: 0 0 0 3px rgba(57, 63, 75, 0.5);
    --bs-btn-active-bg: #454a55;
    --bs-btn-active-border-color: #2d3440;
}

.btn-tertiray {
    --bs-btn-color: #000;
    --bs-btn-bg: #3ff0b9;
    --bs-btn-border-color: #3ff0b9;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #5cf2c4;
    --bs-btn-hover-border-color: #52f2c0;
    --bs-btn-focus-shadow-rgb: 54, 204, 157;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #65f3c7;
    --bs-btn-active-border-color: #52f2c0;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #3ff0b9;
    --bs-btn-disabled-border-color: #3ff0b9;
}

.btn-gray {
    --bs-btn-color: #fff;
    --bs-btn-bg: #495057;
    --bs-btn-border-color: #495057;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #3e444a;
    --bs-btn-hover-border-color: #3a4046;
    --bs-btn-focus-shadow-rgb: 100, 106, 112;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #3a4046;
    --bs-btn-active-border-color: #373c41;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #495057;
    --bs-btn-disabled-border-color: #495057;
}

.btn-outline-primary {
    --bs-btn-color: #0071e3;
    --bs-btn-border-color: #0071e3;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #0071e3;
    --bs-btn-hover-border-color: #0071e3;
    --bs-btn-focus-shadow-rgb: 112, 22, 208;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #0071e3;
    --bs-btn-active-border-color: #0071e3;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #0071e3;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #0071e3;
    --bs-gradient: none;
}

.btn-outline-secondary {
    --bs-btn-color: #aca4bc;
    --bs-btn-border-color: #aca4bc;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #aca4bc;
    --bs-btn-hover-border-color: #aca4bc;
    --bs-btn-focus-shadow-rgb: 172, 164, 188;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #aca4bc;
    --bs-btn-active-border-color: #aca4bc;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #aca4bc;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #aca4bc;
    --bs-gradient: none;
}

.btn-outline-success {
    --bs-btn-color: #1aa053;
    --bs-btn-border-color: #1aa053;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #1aa053;
    --bs-btn-hover-border-color: #1aa053;
    --bs-btn-focus-shadow-rgb: 26, 160, 83;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #1aa053;
    --bs-btn-active-border-color: #1aa053;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #1aa053;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #1aa053;
    --bs-gradient: none;
}

.btn-outline-info {
    --bs-btn-color: #08b1ba;
    --bs-btn-border-color: #08b1ba;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #08b1ba;
    --bs-btn-hover-border-color: #08b1ba;
    --bs-btn-focus-shadow-rgb: 8, 177, 186;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #08b1ba;
    --bs-btn-active-border-color: #08b1ba;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #08b1ba;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #08b1ba;
    --bs-gradient: none;
}

.btn-outline-warning {
    --bs-btn-color: #f16a1b;
    --bs-btn-border-color: #f16a1b;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #f16a1b;
    --bs-btn-hover-border-color: #f16a1b;
    --bs-btn-focus-shadow-rgb: 241, 106, 27;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #f16a1b;
    --bs-btn-active-border-color: #f16a1b;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #f16a1b;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #f16a1b;
    --bs-gradient: none;
}

.btn-outline-danger {
    --bs-btn-color: #c03221;
    --bs-btn-border-color: #c03221;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #c03221;
    --bs-btn-hover-border-color: #c03221;
    --bs-btn-focus-shadow-rgb: 192, 50, 33;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #c03221;
    --bs-btn-active-border-color: #c03221;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #c03221;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #c03221;
    --bs-gradient: none;
}

.btn-outline-light {
    --bs-btn-color: #dee2e6;
    --bs-btn-border-color: #dee2e6;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #dee2e6;
    --bs-btn-hover-border-color: #dee2e6;
    --bs-btn-focus-shadow-rgb: 222, 226, 230;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #dee2e6;
    --bs-btn-active-border-color: #dee2e6;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #dee2e6;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #dee2e6;
    --bs-gradient: none;
}

.btn-outline-dark {
    --bs-btn-color: #161d2b;
    --bs-btn-border-color: #161d2b;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #161d2b;
    --bs-btn-hover-border-color: #161d2b;
    --bs-btn-focus-shadow-rgb: 22, 29, 43;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #161d2b;
    --bs-btn-active-border-color: #161d2b;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #161d2b;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #161d2b;
    --bs-gradient: none;
}

.btn-outline-tertiray {
    --bs-btn-color: #3ff0b9;
    --bs-btn-border-color: #3ff0b9;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #3ff0b9;
    --bs-btn-hover-border-color: #3ff0b9;
    --bs-btn-focus-shadow-rgb: 63, 240, 185;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #3ff0b9;
    --bs-btn-active-border-color: #3ff0b9;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #3ff0b9;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #3ff0b9;
    --bs-gradient: none;
}

.btn-outline-gray {
    --bs-btn-color: #495057;
    --bs-btn-border-color: #495057;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #495057;
    --bs-btn-hover-border-color: #495057;
    --bs-btn-focus-shadow-rgb: 73, 80, 87;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #495057;
    --bs-btn-active-border-color: #495057;
    --bs-btn-active-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: #495057;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #495057;
    --bs-gradient: none;
}

.btn-link {
    --bs-btn-font-weight: 600;
    --bs-btn-color: var(--bs-link-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: var(--bs-link-hover-color);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-color: var(--bs-link-hover-color);
    --bs-btn-active-border-color: transparent;
    --bs-btn-disabled-color: #aca4bc;
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-box-shadow: none;
    --bs-btn-focus-shadow-rgb: 133, 57, 215;
    text-decoration: none;
}

.btn-link:focus-visible {
    color: var(--bs-btn-color);
}

.btn-link:hover {
    color: var(--bs-btn-hover-color);
}

.btn-lg,
.btn-group-lg>.btn {
    --bs-btn-padding-y: 1rem;
    --bs-btn-padding-x: 2rem;
    --bs-btn-font-size: 1.188rem;
    --bs-btn-border-radius: 0.5rem;
}

.btn-sm,
.btn-group-sm>.btn {
    --bs-btn-font-size: 0.813rem;
    --bs-btn-border-radius: 0.125rem;
}

.btn-xs,
.btn-group-xs>.btn {
    --bs-btn-font-size: 0.813rem;
    --bs-btn-border-radius: 0.125rem;
}

.fade {
    -webkit-transition: opacity 0.15s linear;
    -o-transition: opacity 0.15s linear;
    transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
    .fade {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.fade:not(.show) {
    opacity: 0;
}

.collapse:not(.show) {
    display: none;
}

.collapsing {
    height: 0;
    overflow: hidden;
    -webkit-transition: height 0.35s ease;
    -o-transition: height 0.35s ease;
    transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
    .collapsing {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.collapsing.collapse-horizontal {
    width: 0;
    height: auto;
    -webkit-transition: width 0.35s ease;
    -o-transition: width 0.35s ease;
    transition: width 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
    .collapsing.collapse-horizontal {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.dropup,
.dropend,
.dropdown,
.dropstart,
.dropup-center,
.dropdown-center {
    position: relative;
}

.dropdown-toggle {
    white-space: nowrap;
}

.dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid rgba(0, 0, 0, 0);
    border-bottom: 0;
    border-left: 0.3em solid rgba(0, 0, 0, 0);
}

.dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropdown-menu {
    --bs-dropdown-zindex: 1000;
    --bs-dropdown-min-width: 10rem;
    --bs-dropdown-padding-x: 0.5rem;
    --bs-dropdown-padding-y: 0.5rem;
    --bs-dropdown-spacer: 0.125rem;
    --bs-dropdown-font-size: 1rem;
    --bs-dropdown-color: #161d2b;
    --bs-dropdown-bg: #fff;
    --bs-dropdown-border-color: rgba(0, 0, 0, 0);
    --bs-dropdown-border-radius: 0.25rem;
    --bs-dropdown-border-width: 1px;
    --bs-dropdown-inner-border-radius: -webkit-calc(0.25rem - 1px);
    --bs-dropdown-inner-border-radius: calc(0.25rem - 1px);
    --bs-dropdown-divider-bg: rgba(0, 0, 0, 0);
    --bs-dropdown-divider-margin-y: 0.5rem;
    --bs-dropdown-box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
        0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --bs-dropdown-link-color: #161d2b;
    --bs-dropdown-link-hover-color: #6514bb;
    --bs-dropdown-link-hover-bg: #f1e8fa;
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: #6514bb;
    --bs-dropdown-link-disabled-color: #adb5bd;
    --bs-dropdown-item-padding-x: 1rem;
    --bs-dropdown-item-padding-y: 0.25rem;
    --bs-dropdown-header-color: #aca4bc;
    --bs-dropdown-header-padding-x: 1rem;
    --bs-dropdown-header-padding-y: 0.5rem;
    position: absolute;
    z-index: var(--bs-dropdown-zindex);
    display: none;
    min-width: var(--bs-dropdown-min-width);
    padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
    margin: 0;
    font-size: var(--bs-dropdown-font-size);
    color: var(--bs-dropdown-color);
    text-align: left;
    list-style: none;
    background-color: var(--bs-dropdown-bg);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
    -webkit-border-radius: var(--bs-dropdown-border-radius);
    border-radius: var(--bs-dropdown-border-radius);
    -webkit-box-shadow: var(--bs-dropdown-box-shadow);
    box-shadow: var(--bs-dropdown-box-shadow);
}

.dropdown-menu[data-bs-popper] {
    top: 100%;
    left: 0;
    margin-top: var(--bs-dropdown-spacer);
}

.dropdown-menu-start {
    --bs-position: start;
}

.dropdown-menu-start[data-bs-popper] {
    right: auto;
    left: 0;
}

.dropdown-menu-end {
    --bs-position: end;
}

.dropdown-menu-end[data-bs-popper] {
    right: 0;
    left: auto;
}

@media (min-width: 576px) {
    .dropdown-menu-sm-start {
        --bs-position: start;
    }

    .dropdown-menu-sm-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-sm-end {
        --bs-position: end;
    }

    .dropdown-menu-sm-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 768px) {
    .dropdown-menu-md-start {
        --bs-position: start;
    }

    .dropdown-menu-md-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-md-end {
        --bs-position: end;
    }

    .dropdown-menu-md-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 992px) {
    .dropdown-menu-lg-start {
        --bs-position: start;
    }

    .dropdown-menu-lg-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-lg-end {
        --bs-position: end;
    }

    .dropdown-menu-lg-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1200px) {
    .dropdown-menu-xl-start {
        --bs-position: start;
    }

    .dropdown-menu-xl-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xl-end {
        --bs-position: end;
    }

    .dropdown-menu-xl-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

@media (min-width: 1600px) {
    .dropdown-menu-xxl-start {
        --bs-position: start;
    }

    .dropdown-menu-xxl-start[data-bs-popper] {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xxl-end {
        --bs-position: end;
    }

    .dropdown-menu-xxl-end[data-bs-popper] {
        right: 0;
        left: auto;
    }
}

.dropup .dropdown-menu[data-bs-popper] {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: var(--bs-dropdown-spacer);
}

.dropup .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0;
    border-right: 0.3em solid rgba(0, 0, 0, 0);
    border-bottom: 0.3em solid;
    border-left: 0.3em solid rgba(0, 0, 0, 0);
}

.dropup .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropend .dropdown-menu[data-bs-popper] {
    top: 0;
    right: auto;
    left: 100%;
    margin-top: 0;
    margin-left: var(--bs-dropdown-spacer);
}

.dropend .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid rgba(0, 0, 0, 0);
    border-right: 0;
    border-bottom: 0.3em solid rgba(0, 0, 0, 0);
    border-left: 0.3em solid;
}

.dropend .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropend .dropdown-toggle::after {
    vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
    top: 0;
    right: 100%;
    left: auto;
    margin-top: 0;
    margin-right: var(--bs-dropdown-spacer);
}

.dropstart .dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
}

.dropstart .dropdown-toggle::after {
    display: none;
}

.dropstart .dropdown-toggle::before {
    display: inline-block;
    margin-right: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid rgba(0, 0, 0, 0);
    border-right: 0.3em solid;
    border-bottom: 0.3em solid rgba(0, 0, 0, 0);
}

.dropstart .dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropstart .dropdown-toggle::before {
    vertical-align: 0;
}

.dropdown-divider {
    height: 0;
    margin: var(--bs-dropdown-divider-margin-y) 0;
    overflow: hidden;
    border-top: 1px solid var(--bs-dropdown-divider-bg);
    opacity: 1;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    clear: both;
    font-weight: 600;
    color: var(--bs-dropdown-link-color);
    text-align: inherit;
    white-space: nowrap;
    background-color: rgba(0, 0, 0, 0);
    border: 0;
}

.dropdown-item:hover,
.dropdown-item:focus {
    color: var(--bs-dropdown-link-hover-color);
    background-color: var(--bs-dropdown-link-hover-bg);
}

.dropdown-item.active,
.dropdown-item:active {
    color: var(--bs-dropdown-link-active-color);
    text-decoration: none;
    background-color: var(--bs-dropdown-link-active-bg);
}

.dropdown-item.disabled,
.dropdown-item:disabled {
    color: var(--bs-dropdown-link-disabled-color);
    pointer-events: none;
    background-color: rgba(0, 0, 0, 0);
}

.dropdown-menu.show {
    display: block;
}

.dropdown-header {
    display: block;
    padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
    margin-bottom: 0;
    font-size: 0.813rem;
    color: var(--bs-dropdown-header-color);
    white-space: nowrap;
}

.dropdown-item-text {
    display: block;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
    --bs-dropdown-color: #dee2e6;
    --bs-dropdown-bg: #343a40;
    --bs-dropdown-border-color: rgba(0, 0, 0, 0);
    --bs-dropdown-box-shadow: ;
    --bs-dropdown-link-color: #dee2e6;
    --bs-dropdown-link-hover-color: #fff;
    --bs-dropdown-divider-bg: rgba(0, 0, 0, 0);
    --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: #6514bb;
    --bs-dropdown-link-disabled-color: #adb5bd;
    --bs-dropdown-header-color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: middle;
}

.btn-group>.btn,
.btn-group-vertical>.btn {
    position: relative;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.btn-group>.btn-check:checked+.btn,
.btn-group>.btn-check:focus+.btn,
.btn-group>.btn:hover,
.btn-group>.btn:focus,
.btn-group>.btn:active,
.btn-group>.btn.active,
.btn-group-vertical>.btn-check:checked+.btn,
.btn-group-vertical>.btn-check:focus+.btn,
.btn-group-vertical>.btn:hover,
.btn-group-vertical>.btn:focus,
.btn-group-vertical>.btn:active,
.btn-group-vertical>.btn.active {
    z-index: 1;
}

.btn-toolbar {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.btn-toolbar .input-group {
    width: auto;
}

.btn-group {
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
}

.btn-group> :not(.btn-check:first-child)+.btn,
.btn-group>.btn-group:not(:first-child) {
    margin-left: -1px;
}

.btn-group>.btn:not(:last-child):not(.dropdown-toggle),
.btn-group>.btn.dropdown-toggle-split:first-child,
.btn-group>.btn-group:not(:last-child)>.btn {
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
}

.btn-group>.btn:nth-child(n + 3),
.btn-group> :not(.btn-check)+.btn,
.btn-group>.btn-group:not(:first-child)>.btn {
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
    padding-right: 1.125rem;
    padding-left: 1.125rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropend .dropdown-toggle-split::after {
    margin-left: 0;
}

.dropstart .dropdown-toggle-split::before {
    margin-right: 0;
}

.btn-sm+.dropdown-toggle-split,
.btn-group-sm>.btn+.dropdown-toggle-split {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
}

.btn-xs+.dropdown-toggle-split,
.btn-group-xs>.btn+.dropdown-toggle-split {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
}

.btn-lg+.dropdown-toggle-split,
.btn-group-lg>.btn+.dropdown-toggle-split {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
}

.btn-group.show .dropdown-toggle {
    -webkit-box-shadow: 0 0px 0px rgba(0, 0, 0, 0);
    box-shadow: 0 0px 0px rgba(0, 0, 0, 0);
}

.btn-group.show .dropdown-toggle.btn-link {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-group-vertical {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.btn-group-vertical>.btn,
.btn-group-vertical>.btn-group {
    width: 100%;
}

.btn-group-vertical>.btn:not(:first-child),
.btn-group-vertical>.btn-group:not(:first-child) {
    margin-top: -1px;
}

.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical>.btn-group:not(:last-child)>.btn {
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
}

.btn-group-vertical>.btn~.btn,
.btn-group-vertical>.btn-group:not(:first-child)>.btn {
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
}

.nav {
    --bs-nav-link-padding-x: 1rem;
    --bs-nav-link-padding-y: 0.5rem;
    --bs-nav-link-font-weight: ;
    --bs-nav-link-color: #0071e3;
    --bs-nav-link-hover-color: #5a12a6;
    --bs-nav-link-disabled-color: #adb5bd;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.nav-link {
    display: block;
    padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
    font-size: var(--bs-nav-link-font-size);
    font-weight: var(--bs-nav-link-font-weight);
    color: var(--bs-nav-link-color);
    -webkit-transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out;
    -o-transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out;
    transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .nav-link {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.nav-link:hover,
.nav-link:focus {
    color: var(--bs-nav-link-hover-color);
}

.nav-link.disabled {
    color: var(--bs-nav-link-disabled-color);
    pointer-events: none;
    cursor: default;
}

.nav-tabs {
    --bs-nav-tabs-border-width: 0;
    --bs-nav-tabs-border-color: #dee2e6;
    --bs-nav-tabs-border-radius: 0.25rem;
    --bs-nav-tabs-link-hover-border-color: #e9ecef #e9ecef #dee2e6;
    --bs-nav-tabs-link-active-color: #fff;
    --bs-nav-tabs-link-active-bg: #0071e3;
    --bs-nav-tabs-link-active-border-color: #dee2e6 #dee2e6 #0071e3;
    border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}

.nav-tabs .nav-link {
    margin-bottom: -webkit-calc(-1 * var(--bs-nav-tabs-border-width));
    margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
    background: none;
    border: var(--bs-nav-tabs-border-width) solid rgba(0, 0, 0, 0);
    -webkit-border-top-left-radius: var(--bs-nav-tabs-border-radius);
    border-top-left-radius: var(--bs-nav-tabs-border-radius);
    -webkit-border-top-right-radius: var(--bs-nav-tabs-border-radius);
    border-top-right-radius: var(--bs-nav-tabs-border-radius);
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
    isolation: isolate;
    border-color: var(--bs-nav-tabs-link-hover-border-color);
}

.nav-tabs .nav-link.disabled,
.nav-tabs .nav-link:disabled {
    color: var(--bs-nav-link-disabled-color);
    background-color: rgba(0, 0, 0, 0);
    border-color: rgba(0, 0, 0, 0);
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    color: var(--bs-nav-tabs-link-active-color);
    background-color: var(--bs-nav-tabs-link-active-bg);
    border-color: var(--bs-nav-tabs-link-active-border-color);
}

.nav-tabs .dropdown-menu {
    margin-top: -webkit-calc(-1 * var(--bs-nav-tabs-border-width));
    margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
}

.nav-pills {
    --bs-nav-pills-border-radius: 50rem;
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-link-active-bg: #0071e3;
}

.nav-pills .nav-link {
    background: none;
    border: 0;
    -webkit-border-radius: var(--bs-nav-pills-border-radius);
    border-radius: var(--bs-nav-pills-border-radius);
}

.nav-pills .nav-link:disabled {
    color: var(--bs-nav-link-disabled-color);
    background-color: rgba(0, 0, 0, 0);
    border-color: rgba(0, 0, 0, 0);
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    color: var(--bs-nav-pills-link-active-color);
    background-color: var(--bs-nav-pills-link-active-bg);
}

.nav-fill>.nav-link,
.nav-fill .nav-item {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    text-align: center;
}

.nav-justified>.nav-link,
.nav-justified .nav-item {
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    text-align: center;
}

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
    width: 100%;
}

.tab-content>.tab-pane {
    display: none;
}

.tab-content>.active {
    display: block;
}

.navbar {
    --bs-navbar-padding-x: 0;
    --bs-navbar-padding-y: 0.5rem;
    --bs-navbar-color: rgba(0, 0, 0, 0.55);
    --bs-navbar-hover-color: rgba(0, 0, 0, 0.7);
    --bs-navbar-disabled-color: rgba(0, 0, 0, 0.3);
    --bs-navbar-active-color: rgba(0, 0, 0, 0.9);
    --bs-navbar-brand-padding-y: 0.359rem;
    --bs-navbar-brand-margin-end: 1rem;
    --bs-navbar-brand-font-size: 1.188rem;
    --bs-navbar-brand-color: rgba(0, 0, 0, 0.9);
    --bs-navbar-brand-hover-color: rgba(0, 0, 0, 0.9);
    --bs-navbar-nav-link-padding-x: 0.5rem;
    --bs-navbar-toggler-padding-y: 0.25rem;
    --bs-navbar-toggler-padding-x: 0.75rem;
    --bs-navbar-toggler-font-size: 1.188rem;
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    --bs-navbar-toggler-border-color: rgba(0, 0, 0, 0.1);
    --bs-navbar-toggler-border-radius: 0.25rem;
    --bs-navbar-toggler-focus-width: 0rem;
    --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
}

.navbar>.container,
.navbar>.container-fluid,
.navbar>.container-sm,
.navbar>.container-md,
.navbar>.container-lg,
.navbar>.container-xl,
.navbar>.container-xxl {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: inherit;
    -ms-flex-wrap: inherit;
    flex-wrap: inherit;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.navbar-brand {
    padding-top: var(--bs-navbar-brand-padding-y);
    padding-bottom: var(--bs-navbar-brand-padding-y);
    margin-right: var(--bs-navbar-brand-margin-end);
    font-size: var(--bs-navbar-brand-font-size);
    color: var(--bs-navbar-brand-color);
    white-space: nowrap;
}

.navbar-brand:hover,
.navbar-brand:focus {
    color: var(--bs-navbar-brand-hover-color);
}

.navbar-nav {
    --bs-nav-link-padding-x: 0;
    --bs-nav-link-padding-y: 0.5rem;
    --bs-nav-link-font-weight: ;
    --bs-nav-link-color: var(--bs-navbar-color);
    --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
    --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.navbar-nav .show>.nav-link,
.navbar-nav .nav-link.active {
    color: var(--bs-navbar-active-color);
}

.navbar-nav .dropdown-menu {
    position: static;
}

.navbar-text {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: var(--bs-navbar-color);
}

.navbar-text a,
.navbar-text a:hover,
.navbar-text a:focus {
    color: var(--bs-navbar-active-color);
}

.navbar-collapse {
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.navbar-toggler {
    padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
    font-size: var(--bs-navbar-toggler-font-size);
    line-height: 1;
    color: var(--bs-navbar-color);
    background-color: rgba(0, 0, 0, 0);
    border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
    -webkit-border-radius: var(--bs-navbar-toggler-border-radius);
    border-radius: var(--bs-navbar-toggler-border-radius);
    -webkit-transition: var(--bs-navbar-toggler-transition);
    -o-transition: var(--bs-navbar-toggler-transition);
    transition: var(--bs-navbar-toggler-transition);
}

@media (prefers-reduced-motion: reduce) {
    .navbar-toggler {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.navbar-toggler:hover {
    text-decoration: none;
}

.navbar-toggler:focus {
    text-decoration: none;
    outline: 0;
    -webkit-box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
    box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
}

.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    background-image: var(--bs-navbar-toggler-icon-bg);
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: 100% 100%;
    background-size: 100%;
}

.navbar-nav-scroll {
    max-height: var(--bs-scroll-height, 75vh);
    overflow-y: auto;
}

@media (min-width: 576px) {
    .navbar-expand-sm {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-sm .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .navbar-expand-sm .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-sm .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-sm .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-sm .navbar-collapse {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

    .navbar-expand-sm .navbar-toggler {
        display: none;
    }

    .navbar-expand-sm .offcanvas {
        position: static;
        z-index: auto;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: rgba(0, 0, 0, 0) !important;
        border: 0 !important;
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }

    .navbar-expand-sm .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-sm .offcanvas .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 768px) {
    .navbar-expand-md {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-md .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .navbar-expand-md .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-md .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-md .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-md .navbar-collapse {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

    .navbar-expand-md .navbar-toggler {
        display: none;
    }

    .navbar-expand-md .offcanvas {
        position: static;
        z-index: auto;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: rgba(0, 0, 0, 0) !important;
        border: 0 !important;
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }

    .navbar-expand-md .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-md .offcanvas .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 992px) {
    .navbar-expand-lg {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-lg .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .navbar-expand-lg .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-lg .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-lg .navbar-collapse {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

    .navbar-expand-lg .navbar-toggler {
        display: none;
    }

    .navbar-expand-lg .offcanvas {
        position: static;
        z-index: auto;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: rgba(0, 0, 0, 0) !important;
        border: 0 !important;
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }

    .navbar-expand-lg .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-lg .offcanvas .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 1200px) {
    .navbar-expand-xl {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-xl .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .navbar-expand-xl .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-xl .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-xl .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-xl .navbar-collapse {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

    .navbar-expand-xl .navbar-toggler {
        display: none;
    }

    .navbar-expand-xl .offcanvas {
        position: static;
        z-index: auto;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: rgba(0, 0, 0, 0) !important;
        border: 0 !important;
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }

    .navbar-expand-xl .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-xl .offcanvas .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

@media (min-width: 1600px) {
    .navbar-expand-xxl {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-xxl .navbar-nav {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .navbar-expand-xxl .navbar-nav .dropdown-menu {
        position: absolute;
    }

    .navbar-expand-xxl .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
    }

    .navbar-expand-xxl .navbar-nav-scroll {
        overflow: visible;
    }

    .navbar-expand-xxl .navbar-collapse {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

    .navbar-expand-xxl .navbar-toggler {
        display: none;
    }

    .navbar-expand-xxl .offcanvas {
        position: static;
        z-index: auto;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: auto !important;
        height: auto !important;
        visibility: visible !important;
        background-color: rgba(0, 0, 0, 0) !important;
        border: 0 !important;
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }

    .navbar-expand-xxl .offcanvas .offcanvas-header {
        display: none;
    }

    .navbar-expand-xxl .offcanvas .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
    }
}

.navbar-expand {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.navbar-expand .navbar-nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
    position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
}

.navbar-expand .navbar-nav-scroll {
    overflow: visible;
}

.navbar-expand .navbar-collapse {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
}

.navbar-expand .navbar-toggler {
    display: none;
}

.navbar-expand .offcanvas {
    position: static;
    z-index: auto;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: rgba(0, 0, 0, 0) !important;
    border: 0 !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-box-shadow: none;
    box-shadow: none;
    transition: none;
}

.navbar-expand .offcanvas .offcanvas-header {
    display: none;
}

.navbar-expand .offcanvas .offcanvas-body {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -webkit-flex-grow: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
}

.navbar-dark {
    --bs-navbar-color: rgba(255, 255, 255, 0.55);
    --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
    --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
    --bs-navbar-active-color: #fff;
    --bs-navbar-brand-color: #fff;
    --bs-navbar-brand-hover-color: #fff;
    --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.card {
    --bs-card-spacer-y: 1.5rem;
    --bs-card-spacer-x: 1.5rem;
    --bs-card-title-spacer-y: 0.5rem;
    --bs-card-border-width: 0;
    --bs-card-border-color: rgba(0, 0, 0, 0.125);
    --bs-card-border-radius: 0.25rem;
    --bs-card-box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.03);
    --bs-card-inner-border-radius: 0.25rem;
    --bs-card-cap-padding-y: 1.5rem;
    --bs-card-cap-padding-x: 1.5rem;
    --bs-card-cap-bg: transparent;
    --bs-card-cap-color: ;
    --bs-card-height: ;
    --bs-card-color: ;
    --bs-card-bg: #fff;
    --bs-card-img-overlay-padding: 1rem;
    --bs-card-group-margin: 1rem;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    height: var(--bs-card-height);
    word-wrap: break-word;
    background-color: var(--bs-card-bg);
    -webkit-background-clip: border-box;
    background-clip: border-box;
    border: var(--bs-card-border-width) solid var(--bs-card-border-color);
    -webkit-border-radius: var(--bs-card-border-radius);
    border-radius: var(--bs-card-border-radius);
    -webkit-box-shadow: var(--bs-card-box-shadow);
    box-shadow: var(--bs-card-box-shadow);
}

.card>hr {
    margin-right: 0;
    margin-left: 0;
}

.card>.list-group {
    border-top: inherit;
    border-bottom: inherit;
}

.card>.list-group:first-child {
    border-top-width: 0;
    -webkit-border-top-left-radius: var(--bs-card-inner-border-radius);
    border-top-left-radius: var(--bs-card-inner-border-radius);
    -webkit-border-top-right-radius: var(--bs-card-inner-border-radius);
    border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card>.list-group:last-child {
    border-bottom-width: 0;
    -webkit-border-bottom-right-radius: var(--bs-card-inner-border-radius);
    border-bottom-right-radius: var(--bs-card-inner-border-radius);
    -webkit-border-bottom-left-radius: var(--bs-card-inner-border-radius);
    border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

.card>.card-header+.list-group,
.card>.list-group+.card-footer {
    border-top: 0;
}

.card-body {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
    color: var(--bs-card-color);
}

.card-title {
    margin-bottom: var(--bs-card-title-spacer-y);
}

.card-subtitle {
    margin-top: -webkit-calc(-0.5 * var(--bs-card-title-spacer-y));
    margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));
    margin-bottom: 0;
}

.card-text:last-child {
    margin-bottom: 0;
}

.card-link+.card-link {
    margin-left: var(--bs-card-spacer-x);
}

.card-header {
    padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
    margin-bottom: 0;
    color: var(--bs-card-cap-color);
    background-color: var(--bs-card-cap-bg);
    border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

.card-header:first-child {
    -webkit-border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
    border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}

.card-footer {
    padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
    color: var(--bs-card-cap-color);
    background-color: var(--bs-card-cap-bg);
    border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
}

.card-footer:last-child {
    -webkit-border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
    border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
}

.card-header-tabs {
    margin-right: -webkit-calc(-0.5 * var(--bs-card-cap-padding-x));
    margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
    margin-bottom: -webkit-calc(-1 * var(--bs-card-cap-padding-y));
    margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
    margin-left: -webkit-calc(-0.5 * var(--bs-card-cap-padding-x));
    margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
    border-bottom: 0;
}

.card-header-tabs .nav-link.active {
    background-color: var(--bs-card-bg);
    border-bottom-color: var(--bs-card-bg);
}

.card-header-pills {
    margin-right: -webkit-calc(-0.5 * var(--bs-card-cap-padding-x));
    margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
    margin-left: -webkit-calc(-0.5 * var(--bs-card-cap-padding-x));
    margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
}

.card-img-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: var(--bs-card-img-overlay-padding);
    -webkit-border-radius: var(--bs-card-inner-border-radius);
    border-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-top,
.card-img-bottom {
    width: 100%;
}

.card-img,
.card-img-top {
    -webkit-border-top-left-radius: var(--bs-card-inner-border-radius);
    border-top-left-radius: var(--bs-card-inner-border-radius);
    -webkit-border-top-right-radius: var(--bs-card-inner-border-radius);
    border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-bottom {
    -webkit-border-bottom-right-radius: var(--bs-card-inner-border-radius);
    border-bottom-right-radius: var(--bs-card-inner-border-radius);
    -webkit-border-bottom-left-radius: var(--bs-card-inner-border-radius);
    border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

.card-group>.card {
    margin-bottom: var(--bs-card-group-margin);
}

@media (min-width: 576px) {
    .card-group {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }

    .card-group>.card {
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 0%;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
        margin-bottom: 0;
    }

    .card-group>.card+.card {
        margin-left: 0;
        border-left: 0;
    }

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

    .card-group>.card:not(:last-child) .card-img-top,
    .card-group>.card:not(:last-child) .card-header {
        -webkit-border-top-right-radius: 0;
        border-top-right-radius: 0;
    }

    .card-group>.card:not(:last-child) .card-img-bottom,
    .card-group>.card:not(:last-child) .card-footer {
        -webkit-border-bottom-right-radius: 0;
        border-bottom-right-radius: 0;
    }

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

    .card-group>.card:not(:first-child) .card-img-top,
    .card-group>.card:not(:first-child) .card-header {
        -webkit-border-top-left-radius: 0;
        border-top-left-radius: 0;
    }

    .card-group>.card:not(:first-child) .card-img-bottom,
    .card-group>.card:not(:first-child) .card-footer {
        -webkit-border-bottom-left-radius: 0;
        border-bottom-left-radius: 0;
    }
}

.accordion {
    --bs-accordion-color: #161d2b;
    --bs-accordion-bg: #f3f3f3;
    --bs-accordion-transition: color 0.15s ease-in-out,
        background-color 0.15s ease-in-out, border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
    --bs-accordion-border-color: rgba(0, 0, 0, 0.125);
    --bs-accordion-border-width: 1px;
    --bs-accordion-border-radius: 0.5rem;
    --bs-accordion-inner-border-radius: -webkit-calc(0.5rem - 1px);
    --bs-accordion-inner-border-radius: calc(0.5rem - 1px);
    --bs-accordion-btn-padding-x: 1.5rem;
    --bs-accordion-btn-padding-y: 1rem;
    --bs-accordion-btn-color: #161d2b;
    --bs-accordion-btn-bg: #f3f3f3;
    --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23161d2b'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-icon-transform: rotate(-180deg);
    --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
    --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236514bb'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    --bs-accordion-btn-focus-border-color: #c45a18;
    --bs-accordion-btn-focus-box-shadow: 0 0rem 0rem 0rem rgba(112, 22, 208, 0.15);
    --bs-accordion-body-padding-x: 1.5rem;
    --bs-accordion-body-padding-y: 1rem;
    --bs-accordion-active-color: #6514bb;
    --bs-accordion-active-bg: #f1e8fa;
}

.accordion-button {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
    font-size: 1rem;
    color: var(--bs-accordion-btn-color);
    text-align: left;
    background-color: var(--bs-accordion-btn-bg);
    border: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    overflow-anchor: none;
    -webkit-transition: var(--bs-accordion-transition);
    -o-transition: var(--bs-accordion-transition);
    transition: var(--bs-accordion-transition);
}

@media (prefers-reduced-motion: reduce) {
    .accordion-button {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.accordion-button:not(.collapsed) {
    color: var(--bs-accordion-active-color);
    background-color: var(--bs-accordion-active-bg);
    -webkit-box-shadow: inset 0 -webkit-calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
    box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}

.accordion-button:not(.collapsed)::after {
    background-image: var(--bs-accordion-btn-active-icon);
    -webkit-transform: var(--bs-accordion-btn-icon-transform);
    -ms-transform: var(--bs-accordion-btn-icon-transform);
    transform: var(--bs-accordion-btn-icon-transform);
}

.accordion-button::after {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: var(--bs-accordion-btn-icon-width);
    height: var(--bs-accordion-btn-icon-width);
    margin-left: auto;
    content: "";
    background-image: var(--bs-accordion-btn-icon);
    background-repeat: no-repeat;
    -webkit-background-size: var(--bs-accordion-btn-icon-width) var(--bs-accordion-btn-icon-width);
    background-size: var(--bs-accordion-btn-icon-width);
    -webkit-transition: var(--bs-accordion-btn-icon-transition);
    -o-transition: var(--bs-accordion-btn-icon-transition);
    transition: var(--bs-accordion-btn-icon-transition);
}

@media (prefers-reduced-motion: reduce) {
    .accordion-button::after {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.accordion-button:hover {
    z-index: 2;
}

.accordion-button:focus {
    z-index: 3;
    border-color: var(--bs-accordion-btn-focus-border-color);
    outline: 0;
    -webkit-box-shadow: var(--bs-accordion-btn-focus-box-shadow);
    box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

.accordion-header {
    margin-bottom: 0;
}

.accordion-item {
    color: var(--bs-accordion-color);
    background-color: var(--bs-accordion-bg);
    border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}

.accordion-item:first-of-type {
    -webkit-border-top-left-radius: var(--bs-accordion-border-radius);
    border-top-left-radius: var(--bs-accordion-border-radius);
    -webkit-border-top-right-radius: var(--bs-accordion-border-radius);
    border-top-right-radius: var(--bs-accordion-border-radius);
}

.accordion-item:first-of-type .accordion-button {
    -webkit-border-top-left-radius: var(--bs-accordion-inner-border-radius);
    border-top-left-radius: var(--bs-accordion-inner-border-radius);
    -webkit-border-top-right-radius: var(--bs-accordion-inner-border-radius);
    border-top-right-radius: var(--bs-accordion-inner-border-radius);
}

.accordion-item:not(:first-of-type) {
    border-top: 0;
}

.accordion-item:last-of-type {
    -webkit-border-bottom-right-radius: var(--bs-accordion-border-radius);
    border-bottom-right-radius: var(--bs-accordion-border-radius);
    -webkit-border-bottom-left-radius: var(--bs-accordion-border-radius);
    border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-item:last-of-type .accordion-button.collapsed {
    -webkit-border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
    border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
    -webkit-border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
    border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}

.accordion-item:last-of-type .accordion-collapse {
    -webkit-border-bottom-right-radius: var(--bs-accordion-border-radius);
    border-bottom-right-radius: var(--bs-accordion-border-radius);
    -webkit-border-bottom-left-radius: var(--bs-accordion-border-radius);
    border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
    padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

.accordion-flush .accordion-collapse {
    border-width: 0;
}

.accordion-flush .accordion-item {
    border-right: 0;
    border-left: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}

.accordion-flush .accordion-item:first-child {
    border-top: 0;
}

.accordion-flush .accordion-item:last-child {
    border-bottom: 0;
}

.accordion-flush .accordion-item .accordion-button,
.accordion-flush .accordion-item .accordion-button.collapsed {
    -webkit-border-radius: 0;
    border-radius: 0;
}

.breadcrumb {
    --bs-breadcrumb-padding-x: 0.75rem;
    --bs-breadcrumb-padding-y: 1rem;
    --bs-breadcrumb-margin-bottom: 1rem;
    --bs-breadcrumb-bg: ;
    --bs-breadcrumb-border-radius: 0.25rem;
    --bs-breadcrumb-divider-color: #adb5bd;
    --bs-breadcrumb-item-padding-x: 0.5rem;
    --bs-breadcrumb-item-active-color: #adb5bd;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
    margin-bottom: var(--bs-breadcrumb-margin-bottom);
    font-size: var(--bs-breadcrumb-font-size);
    list-style: none;
    background-color: var(--bs-breadcrumb-bg);
    -webkit-border-radius: var(--bs-breadcrumb-border-radius);
    border-radius: var(--bs-breadcrumb-border-radius);
}

.breadcrumb-item+.breadcrumb-item {
    padding-left: var(--bs-breadcrumb-item-padding-x);
}

.breadcrumb-item+.breadcrumb-item::before {
    float: left;
    padding-right: var(--bs-breadcrumb-item-padding-x);
    color: var(--bs-breadcrumb-divider-color);
    content: var(--bs-breadcrumb-divider,
            ""
        );
    /* rtl: var(--bs-breadcrumb-divider, "/") */
}

.breadcrumb-item.active {
    color: var(--bs-breadcrumb-item-active-color);
}

.badge {
    --bs-badge-padding-x: 0.5rem;
    --bs-badge-padding-y: 0.25rem;
    --bs-badge-font-size: 0.75em;
    --bs-badge-font-weight: 700;
    --bs-badge-color: #fff;
    --bs-badge-border-radius: 0.25rem;
    display: inline-block;
    padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
    font-size: var(--bs-badge-font-size);
    font-weight: var(--bs-badge-font-weight);
    line-height: 1;
    color: var(--bs-badge-color);
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    -webkit-border-radius: var(--bs-badge-border-radius);
    border-radius: var(--bs-badge-border-radius);
}

.badge:empty {
    display: none;
}

.btn .badge {
    position: relative;
    top: -1px;
}

.alert {
    --bs-alert-bg: transparent;
    --bs-alert-padding-x: 1rem;
    --bs-alert-padding-y: 1rem;
    --bs-alert-margin-bottom: 1rem;
    --bs-alert-color: inherit;
    --bs-alert-border-color: transparent;
    --bs-alert-border: 2px solid var(--bs-alert-border-color);
    --bs-alert-border-radius: 0.25rem;
    position: relative;
    padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
    margin-bottom: var(--bs-alert-margin-bottom);
    color: var(--bs-alert-color);
    background-color: var(--bs-alert-bg);
    border: var(--bs-alert-border);
    -webkit-border-radius: var(--bs-alert-border-radius);
    border-radius: var(--bs-alert-border-radius);
}

.alert-heading {
    color: inherit;
}

.alert-link {
    font-weight: 700;
}

.alert-dismissible {
    padding-right: 3rem;
}

.alert-dismissible .btn-close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    padding: 1.25rem 1rem;
}

.alert-primary {
    --bs-alert-color: #4e0f92;
    --bs-alert-bg: #e2d0f6;
    --bs-alert-border-color: #0071e3;
}

.alert-primary .alert-link {
    color: #3e0c75;
}

.alert-secondary {
    --bs-alert-color: #787384;
    --bs-alert-bg: #eeedf2;
    --bs-alert-border-color: #aca4bc;
}

.alert-secondary .alert-link {
    color: #605c6a;
}

.alert-success {
    --bs-alert-color: #12703a;
    --bs-alert-bg: #d1ecdd;
    --bs-alert-border-color: #1aa053;
}

.alert-success .alert-link {
    color: #0e5a2e;
}

.alert-info {
    --bs-alert-color: #067c82;
    --bs-alert-bg: #ceeff1;
    --bs-alert-border-color: #08b1ba;
}

.alert-info .alert-link {
    color: #056368;
}

.alert-warning {
    --bs-alert-color: #a94a13;
    --bs-alert-bg: #fce1d1;
    --bs-alert-border-color: #f16a1b;
}

.alert-warning .alert-link {
    color: #873b0f;
}

.alert-danger {
    --bs-alert-color: #862317;
    --bs-alert-bg: #f2d6d3;
    --bs-alert-border-color: #c03221;
}

.alert-danger .alert-link {
    color: #6b1c12;
}

.alert-light {
    --bs-alert-color: #434445;
    --bs-alert-bg: #f8f9fa;
    --bs-alert-border-color: #dee2e6;
}

.alert-light .alert-link {
    color: #363637;
}

.alert-dark {
    --bs-alert-color: #0f141e;
    --bs-alert-bg: #d0d2d5;
    --bs-alert-border-color: #161d2b;
}

.alert-dark .alert-link {
    color: #0c1018;
}

.alert-tertiray {
    --bs-alert-color: #134838;
    --bs-alert-bg: #d9fcf1;
    --bs-alert-border-color: #3ff0b9;
}

.alert-tertiray .alert-link {
    color: #0f3a2d;
}

.alert-gray {
    --bs-alert-color: #33383d;
    --bs-alert-bg: #dbdcdd;
    --bs-alert-border-color: #495057;
}

.alert-gray .alert-link {
    color: #292d31;
}

@-webkit-keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem;
    }
}

@keyframes progress-bar-stripes {
    0% {
        background-position-x: 1rem;
    }
}

.progress {
    --bs-progress-height: 1rem;
    --bs-progress-font-size: 0.75rem;
    --bs-progress-bg: #e9ecef;
    --bs-progress-border-radius: 0.25rem;
    --bs-progress-box-shadow: inset 0 0.25rem 0.5rem rgba(0, 0, 0, 0.16);
    --bs-progress-bar-color: #fff;
    --bs-progress-bar-bg: #0071e3;
    --bs-progress-bar-transition: width 0.6s ease;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: var(--bs-progress-height);
    overflow: hidden;
    font-size: var(--bs-progress-font-size);
    background-color: var(--bs-progress-bg);
    -webkit-border-radius: var(--bs-progress-border-radius);
    border-radius: var(--bs-progress-border-radius);
    -webkit-box-shadow: var(--bs-progress-box-shadow);
    box-shadow: var(--bs-progress-box-shadow);
}

.progress-bar {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: hidden;
    color: var(--bs-progress-bar-color);
    text-align: center;
    white-space: nowrap;
    background-color: var(--bs-progress-bar-bg);
    -webkit-transition: var(--bs-progress-bar-transition);
    -o-transition: var(--bs-progress-bar-transition);
    transition: var(--bs-progress-bar-transition);
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.progress-bar-striped {
    background-image: -webkit-linear-gradient(45deg,
            rgba(255, 255, 255, 0.15) 25%,
            transparent 25%,
            transparent 50%,
            rgba(255, 255, 255, 0.15) 50%,
            rgba(255, 255, 255, 0.15) 75%,
            transparent 75%,
            transparent);
    background-image: -o-linear-gradient(45deg,
            rgba(255, 255, 255, 0.15) 25%,
            transparent 25%,
            transparent 50%,
            rgba(255, 255, 255, 0.15) 50%,
            rgba(255, 255, 255, 0.15) 75%,
            transparent 75%,
            transparent);
    background-image: linear-gradient(45deg,
            rgba(255, 255, 255, 0.15) 25%,
            transparent 25%,
            transparent 50%,
            rgba(255, 255, 255, 0.15) 50%,
            rgba(255, 255, 255, 0.15) 75%,
            transparent 75%,
            transparent);
    -webkit-background-size: var(--bs-progress-height) var(--bs-progress-height);
    background-size: var(--bs-progress-height) var(--bs-progress-height);
}

.progress-bar-animated {
    -webkit-animation: 1s linear infinite progress-bar-stripes;
    animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
        -webkit-animation: none;
        animation: none;
    }
}

.list-group {
    --bs-list-group-color: #161d2b;
    --bs-list-group-bg: #fff;
    --bs-list-group-border-color: rgba(0, 0, 0, 0.125);
    --bs-list-group-border-width: 1px;
    --bs-list-group-border-radius: 0.25rem;
    --bs-list-group-item-padding-x: 1rem;
    --bs-list-group-item-padding-y: 0.5rem;
    --bs-list-group-action-color: #495057;
    --bs-list-group-action-hover-color: #495057;
    --bs-list-group-action-hover-bg: #f8f9fa;
    --bs-list-group-action-active-color: #161d2b;
    --bs-list-group-action-active-bg: #e9ecef;
    --bs-list-group-disabled-color: #aca4bc;
    --bs-list-group-disabled-bg: #fff;
    --bs-list-group-active-color: #fff;
    --bs-list-group-active-bg: #0071e3;
    --bs-list-group-active-border-color: #0071e3;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    -webkit-border-radius: var(--bs-list-group-border-radius);
    border-radius: var(--bs-list-group-border-radius);
}

.list-group-numbered {
    list-style-type: none;
    counter-reset: section;
}

.list-group-numbered>.list-group-item::before {
    content: counters(section, ".") ". ";
    counter-increment: section;
}

.list-group-item-action {
    width: 100%;
    color: var(--bs-list-group-action-color);
    text-align: inherit;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
    z-index: 1;
    color: var(--bs-list-group-action-hover-color);
    text-decoration: none;
    background-color: var(--bs-list-group-action-hover-bg);
}

.list-group-item-action:active {
    color: var(--bs-list-group-action-active-color);
    background-color: var(--bs-list-group-action-active-bg);
}

.list-group-item {
    position: relative;
    display: block;
    padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
    color: var(--bs-list-group-color);
    background-color: var(--bs-list-group-bg);
    border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}

.list-group-item:first-child {
    -webkit-border-top-left-radius: inherit;
    border-top-left-radius: inherit;
    -webkit-border-top-right-radius: inherit;
    border-top-right-radius: inherit;
}

.list-group-item:last-child {
    -webkit-border-bottom-right-radius: inherit;
    border-bottom-right-radius: inherit;
    -webkit-border-bottom-left-radius: inherit;
    border-bottom-left-radius: inherit;
}

.list-group-item.disabled,
.list-group-item:disabled {
    color: var(--bs-list-group-disabled-color);
    pointer-events: none;
    background-color: var(--bs-list-group-disabled-bg);
}

.list-group-item.active {
    z-index: 2;
    color: var(--bs-list-group-active-color);
    background-color: var(--bs-list-group-active-bg);
    border-color: var(--bs-list-group-active-border-color);
}

.list-group-item+.list-group-item {
    border-top-width: 0;
}

.list-group-item+.list-group-item.active {
    margin-top: -webkit-calc(-1 * var(--bs-list-group-border-width));
    margin-top: calc(-1 * var(--bs-list-group-border-width));
    border-top-width: var(--bs-list-group-border-width);
}

.list-group-horizontal {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}

.list-group-horizontal>.list-group-item:first-child:not(:last-child) {
    -webkit-border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
}

.list-group-horizontal>.list-group-item:last-child:not(:first-child) {
    -webkit-border-top-right-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: var(--bs-list-group-border-radius);
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
}

.list-group-horizontal>.list-group-item.active {
    margin-top: 0;
}

.list-group-horizontal>.list-group-item+.list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
}

.list-group-horizontal>.list-group-item+.list-group-item.active {
    margin-left: -webkit-calc(-1 * var(--bs-list-group-border-width));
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
}

@media (min-width: 576px) {
    .list-group-horizontal-sm {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .list-group-horizontal-sm>.list-group-item:first-child:not(:last-child) {
        -webkit-border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        -webkit-border-top-right-radius: 0;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-sm>.list-group-item:last-child:not(:first-child) {
        -webkit-border-top-right-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: var(--bs-list-group-border-radius);
        -webkit-border-bottom-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-sm>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-sm>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-sm>.list-group-item+.list-group-item.active {
        margin-left: -webkit-calc(-1 * var(--bs-list-group-border-width));
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

@media (min-width: 768px) {
    .list-group-horizontal-md {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .list-group-horizontal-md>.list-group-item:first-child:not(:last-child) {
        -webkit-border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        -webkit-border-top-right-radius: 0;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-md>.list-group-item:last-child:not(:first-child) {
        -webkit-border-top-right-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: var(--bs-list-group-border-radius);
        -webkit-border-bottom-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-md>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-md>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-md>.list-group-item+.list-group-item.active {
        margin-left: -webkit-calc(-1 * var(--bs-list-group-border-width));
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

@media (min-width: 992px) {
    .list-group-horizontal-lg {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .list-group-horizontal-lg>.list-group-item:first-child:not(:last-child) {
        -webkit-border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        -webkit-border-top-right-radius: 0;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-lg>.list-group-item:last-child:not(:first-child) {
        -webkit-border-top-right-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: var(--bs-list-group-border-radius);
        -webkit-border-bottom-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-lg>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-lg>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-lg>.list-group-item+.list-group-item.active {
        margin-left: -webkit-calc(-1 * var(--bs-list-group-border-width));
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

@media (min-width: 1200px) {
    .list-group-horizontal-xl {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .list-group-horizontal-xl>.list-group-item:first-child:not(:last-child) {
        -webkit-border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        -webkit-border-top-right-radius: 0;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-xl>.list-group-item:last-child:not(:first-child) {
        -webkit-border-top-right-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: var(--bs-list-group-border-radius);
        -webkit-border-bottom-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-xl>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-xl>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-xl>.list-group-item+.list-group-item.active {
        margin-left: -webkit-calc(-1 * var(--bs-list-group-border-width));
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

@media (min-width: 1600px) {
    .list-group-horizontal-xxl {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child) {
        -webkit-border-bottom-left-radius: var(--bs-list-group-border-radius);
        border-bottom-left-radius: var(--bs-list-group-border-radius);
        -webkit-border-top-right-radius: 0;
        border-top-right-radius: 0;
    }

    .list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child) {
        -webkit-border-top-right-radius: var(--bs-list-group-border-radius);
        border-top-right-radius: var(--bs-list-group-border-radius);
        -webkit-border-bottom-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .list-group-horizontal-xxl>.list-group-item.active {
        margin-top: 0;
    }

    .list-group-horizontal-xxl>.list-group-item+.list-group-item {
        border-top-width: var(--bs-list-group-border-width);
        border-left-width: 0;
    }

    .list-group-horizontal-xxl>.list-group-item+.list-group-item.active {
        margin-left: -webkit-calc(-1 * var(--bs-list-group-border-width));
        margin-left: calc(-1 * var(--bs-list-group-border-width));
        border-left-width: var(--bs-list-group-border-width);
    }
}

.list-group-flush {
    -webkit-border-radius: 0;
    border-radius: 0;
}

.list-group-flush>.list-group-item {
    border-width: 0 0 var(--bs-list-group-border-width);
}

.list-group-flush>.list-group-item:last-child {
    border-bottom-width: 0;
}

.list-group-item-primary {
    color: #430d7d;
    background-color: #e2d0f6;
}

.list-group-item-primary.list-group-item-action:hover,
.list-group-item-primary.list-group-item-action:focus {
    color: #430d7d;
    background-color: #cbbbdd;
}

.list-group-item-primary.list-group-item-action.active {
    color: #fff;
    background-color: #430d7d;
    border-color: #430d7d;
}

.list-group-item-secondary {
    color: #676271;
    background-color: #eeedf2;
}

.list-group-item-secondary.list-group-item-action:hover,
.list-group-item-secondary.list-group-item-action:focus {
    color: #676271;
    background-color: #d6d5da;
}

.list-group-item-secondary.list-group-item-action.active {
    color: #fff;
    background-color: #676271;
    border-color: #676271;
}

.list-group-item-success {
    color: #106032;
    background-color: #d1ecdd;
}

.list-group-item-success.list-group-item-action:hover,
.list-group-item-success.list-group-item-action:focus {
    color: #106032;
    background-color: #bcd4c7;
}

.list-group-item-success.list-group-item-action.active {
    color: #fff;
    background-color: #106032;
    border-color: #106032;
}

.list-group-item-info {
    color: #056a70;
    background-color: #ceeff1;
}

.list-group-item-info.list-group-item-action:hover,
.list-group-item-info.list-group-item-action:focus {
    color: #056a70;
    background-color: #b9d7d9;
}

.list-group-item-info.list-group-item-action.active {
    color: #fff;
    background-color: #056a70;
    border-color: #056a70;
}

.list-group-item-warning {
    color: #914010;
    background-color: #fce1d1;
}

.list-group-item-warning.list-group-item-action:hover,
.list-group-item-warning.list-group-item-action:focus {
    color: #914010;
    background-color: #e3cbbc;
}

.list-group-item-warning.list-group-item-action.active {
    color: #fff;
    background-color: #914010;
    border-color: #914010;
}

.list-group-item-danger {
    color: #731e14;
    background-color: #f2d6d3;
}

.list-group-item-danger.list-group-item-action:hover,
.list-group-item-danger.list-group-item-action:focus {
    color: #731e14;
    background-color: #dac1be;
}

.list-group-item-danger.list-group-item-action.active {
    color: #fff;
    background-color: #731e14;
    border-color: #731e14;
}

.list-group-item-light {
    color: #85888a;
    background-color: #f8f9fa;
}

.list-group-item-light.list-group-item-action:hover,
.list-group-item-light.list-group-item-action:focus {
    color: #85888a;
    background-color: #dfe0e1;
}

.list-group-item-light.list-group-item-action.active {
    color: #fff;
    background-color: #85888a;
    border-color: #85888a;
}

.list-group-item-dark {
    color: #0d111a;
    background-color: #d0d2d5;
}

.list-group-item-dark.list-group-item-action:hover,
.list-group-item-dark.list-group-item-action:focus {
    color: #0d111a;
    background-color: #bbbdc0;
}

.list-group-item-dark.list-group-item-action.active {
    color: #fff;
    background-color: #0d111a;
    border-color: #0d111a;
}

.list-group-item-tertiray {
    color: #26906f;
    background-color: #d9fcf1;
}

.list-group-item-tertiray.list-group-item-action:hover,
.list-group-item-tertiray.list-group-item-action:focus {
    color: #26906f;
    background-color: #c3e3d9;
}

.list-group-item-tertiray.list-group-item-action.active {
    color: #fff;
    background-color: #26906f;
    border-color: #26906f;
}

.list-group-item-gray {
    color: #2c3034;
    background-color: #dbdcdd;
}

.list-group-item-gray.list-group-item-action:hover,
.list-group-item-gray.list-group-item-action:focus {
    color: #2c3034;
    background-color: #c5c6c7;
}

.list-group-item-gray.list-group-item-action.active {
    color: #fff;
    background-color: #2c3034;
    border-color: #2c3034;
}

.btn-close {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    width: 1em;
    height: 1em;
    padding: 0.25em 0.25em;
    color: #000;
    background: rgba(0, 0, 0, 0) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    border: 0;
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
    opacity: 0.5;
}

.btn-close:hover {
    color: #000;
    text-decoration: none;
    opacity: 0.75;
}

.btn-close:focus {
    outline: 0;
    -webkit-box-shadow: 0 0rem 0rem 0rem rgba(112, 22, 208, 0.15);
    box-shadow: 0 0rem 0rem 0rem rgba(112, 22, 208, 0.15);
    opacity: 1;
}

.btn-close:disabled,
.btn-close.disabled {
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    opacity: 0.25;
}

.btn-close-white {
    -webkit-filter: invert(1) grayscale(100%) brightness(200%);
    filter: invert(1) grayscale(100%) brightness(200%);
}

.toast {
    --bs-toast-zindex: 1090;
    --bs-toast-padding-x: 0.75rem;
    --bs-toast-padding-y: 0.5rem;
    --bs-toast-spacing: 1rem;
    --bs-toast-max-width: 350px;
    --bs-toast-font-size: 0.875rem;
    --bs-toast-color: ;
    --bs-toast-bg: rgba(255, 255, 255, 0.85);
    --bs-toast-border-width: 1px;
    --bs-toast-border-color: var(--bs-border-color-translucent);
    --bs-toast-border-radius: 0.25rem;
    --bs-toast-box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.03);
    --bs-toast-header-color: #aca4bc;
    --bs-toast-header-bg: rgba(255, 255, 255, 0.85);
    --bs-toast-header-border-color: rgba(0, 0, 0, 0.05);
    width: var(--bs-toast-max-width);
    max-width: 100%;
    font-size: var(--bs-toast-font-size);
    color: var(--bs-toast-color);
    pointer-events: auto;
    background-color: var(--bs-toast-bg);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
    -webkit-box-shadow: var(--bs-toast-box-shadow);
    box-shadow: var(--bs-toast-box-shadow);
    -webkit-border-radius: var(--bs-toast-border-radius);
    border-radius: var(--bs-toast-border-radius);
}

.toast.showing {
    opacity: 0;
}

.toast:not(.show) {
    display: none;
}

.toast-container {
    --bs-toast-zindex: 1090;
    position: absolute;
    z-index: var(--bs-toast-zindex);
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    pointer-events: none;
}

.toast-container> :not(:last-child) {
    margin-bottom: var(--bs-toast-spacing);
}

.toast-header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
    color: var(--bs-toast-header-color);
    background-color: var(--bs-toast-header-bg);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
    -webkit-border-top-left-radius: -webkit-calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
    border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
    -webkit-border-top-right-radius: -webkit-calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
    border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
}

.toast-header .btn-close {
    margin-right: -webkit-calc(-0.5 * var(--bs-toast-padding-x));
    margin-right: calc(-0.5 * var(--bs-toast-padding-x));
    margin-left: var(--bs-toast-padding-x);
}

.toast-body {
    padding: var(--bs-toast-padding-x);
    word-wrap: break-word;
}

.modal {
    --bs-modal-zindex: 1055;
    --bs-modal-width: 500px;
    --bs-modal-padding: 1rem;
    --bs-modal-margin: 0.5rem;
    --bs-modal-color: ;
    --bs-modal-bg: #fff;
    --bs-modal-border-color: var(--bs-border-color-translucent);
    --bs-modal-border-width: 1px;
    --bs-modal-border-radius: 0.5rem;
    --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.1);
    --bs-modal-inner-border-radius: -webkit-calc(0.5rem - 1px);
    --bs-modal-inner-border-radius: calc(0.5rem - 1px);
    --bs-modal-header-padding-x: 1rem;
    --bs-modal-header-padding-y: 1rem;
    --bs-modal-header-padding: 1rem 1rem;
    --bs-modal-header-border-color: var(--bs-border-color);
    --bs-modal-header-border-width: 1px;
    --bs-modal-title-line-height: 1.5;
    --bs-modal-footer-gap: 0.5rem;
    --bs-modal-footer-bg: ;
    --bs-modal-footer-border-color: var(--bs-border-color);
    --bs-modal-footer-border-width: 1px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--bs-modal-zindex);
    display: none;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    outline: 0;
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: var(--bs-modal-margin);
    pointer-events: none;
}

.modal.fade .modal-dialog {
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: -webkit-transform 0.3s ease-out;
    -o-transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition:
        transform 0.3s ease-out,
        -webkit-transform 0.3s ease-out;
    -webkit-transform: translate(0, -50px);
    -ms-transform: translate(0, -50px);
    transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
    .modal.fade .modal-dialog {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.modal.show .modal-dialog {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
}

.modal.modal-static .modal-dialog {
    -webkit-transform: scale(1.02);
    -ms-transform: scale(1.02);
    transform: scale(1.02);
}

.modal-dialog-scrollable {
    height: -webkit-calc(100% - var(--bs-modal-margin) * 2);
    height: calc(100% - var(--bs-modal-margin) * 2);
}

.modal-dialog-scrollable .modal-content {
    max-height: 100%;
    overflow: hidden;
}

.modal-dialog-scrollable .modal-body {
    overflow-y: auto;
}

.modal-dialog-centered {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: -webkit-calc(100% - var(--bs-modal-margin) * 2);
    min-height: calc(100% - var(--bs-modal-margin) * 2);
}

.modal-content {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    color: var(--bs-modal-color);
    pointer-events: auto;
    background-color: var(--bs-modal-bg);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
    -webkit-border-radius: var(--bs-modal-border-radius);
    border-radius: var(--bs-modal-border-radius);
    -webkit-box-shadow: var(--bs-modal-box-shadow);
    box-shadow: var(--bs-modal-box-shadow);
    outline: 0;
}

.modal-backdrop {
    --bs-backdrop-zindex: 1050;
    --bs-backdrop-bg: #000;
    --bs-backdrop-opacity: 0.5;
    position: fixed;
    top: 0;
    left: 0;
    z-index: var(--bs-backdrop-zindex);
    width: 100vw;
    height: 100vh;
    background-color: var(--bs-backdrop-bg);
}

.modal-backdrop.fade {
    opacity: 0;
}

.modal-backdrop.show {
    opacity: var(--bs-backdrop-opacity);
}

.modal-header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: var(--bs-modal-header-padding);
    border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
    -webkit-border-top-left-radius: var(--bs-modal-inner-border-radius);
    border-top-left-radius: var(--bs-modal-inner-border-radius);
    -webkit-border-top-right-radius: var(--bs-modal-inner-border-radius);
    border-top-right-radius: var(--bs-modal-inner-border-radius);
}

.modal-header .btn-close {
    padding: -webkit-calc(var(--bs-modal-header-padding-y) * 0.5) -webkit-calc(var(--bs-modal-header-padding-x) * 0.5);
    padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
    margin: -webkit-calc(-0.5 * var(--bs-modal-header-padding-y)) -webkit-calc(-0.5 * var(--bs-modal-header-padding-x)) -webkit-calc(-0.5 * var(--bs-modal-header-padding-y)) auto;
    margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;
}

.modal-title {
    margin-bottom: 0;
    line-height: var(--bs-modal-title-line-height);
}

.modal-body {
    position: relative;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: var(--bs-modal-padding);
}

.modal-footer {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: -webkit-calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
    padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
    background-color: var(--bs-modal-footer-bg);
    border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
    -webkit-border-bottom-right-radius: var(--bs-modal-inner-border-radius);
    border-bottom-right-radius: var(--bs-modal-inner-border-radius);
    -webkit-border-bottom-left-radius: var(--bs-modal-inner-border-radius);
    border-bottom-left-radius: var(--bs-modal-inner-border-radius);
}

.modal-footer>* {
    margin: -webkit-calc(var(--bs-modal-footer-gap) * 0.5);
    margin: calc(var(--bs-modal-footer-gap) * 0.5);
}

@media (min-width: 576px) {
    .modal {
        --bs-modal-margin: 1.75rem;
        --bs-modal-box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.03);
    }

    .modal-dialog {
        max-width: var(--bs-modal-width);
        margin-right: auto;
        margin-left: auto;
    }

    .modal-sm {
        --bs-modal-width: 300px;
    }
}

@media (min-width: 992px) {

    .modal-lg,
    .modal-xl {
        --bs-modal-width: 800px;
    }
}

@media (min-width: 1200px) {
    .modal-xl {
        --bs-modal-width: 1140px;
    }
}

.modal-fullscreen {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
}

.modal-fullscreen .modal-content {
    height: 100%;
    border: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
}

.modal-fullscreen .modal-header,
.modal-fullscreen .modal-footer {
    -webkit-border-radius: 0;
    border-radius: 0;
}

.modal-fullscreen .modal-body {
    overflow-y: auto;
}

@media (max-width: 575.98px) {
    .modal-fullscreen-sm-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-sm-down .modal-content {
        height: 100%;
        border: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-sm-down .modal-header,
    .modal-fullscreen-sm-down .modal-footer {
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-sm-down .modal-body {
        overflow-y: auto;
    }
}

@media (max-width: 767.98px) {
    .modal-fullscreen-md-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-md-down .modal-content {
        height: 100%;
        border: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-md-down .modal-header,
    .modal-fullscreen-md-down .modal-footer {
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-md-down .modal-body {
        overflow-y: auto;
    }
}

@media (max-width: 991.98px) {
    .modal-fullscreen-lg-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-lg-down .modal-content {
        height: 100%;
        border: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-lg-down .modal-header,
    .modal-fullscreen-lg-down .modal-footer {
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-lg-down .modal-body {
        overflow-y: auto;
    }
}

@media (max-width: 1199.98px) {
    .modal-fullscreen-xl-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-xl-down .modal-content {
        height: 100%;
        border: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-xl-down .modal-header,
    .modal-fullscreen-xl-down .modal-footer {
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-xl-down .modal-body {
        overflow-y: auto;
    }
}

@media (max-width: 1399.98px) {
    .modal-fullscreen-xxl-down {
        width: 100vw;
        max-width: none;
        height: 100%;
        margin: 0;
    }

    .modal-fullscreen-xxl-down .modal-content {
        height: 100%;
        border: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-xxl-down .modal-header,
    .modal-fullscreen-xxl-down .modal-footer {
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .modal-fullscreen-xxl-down .modal-body {
        overflow-y: auto;
    }
}

.tooltip {
    --bs-tooltip-zindex: 1080;
    --bs-tooltip-max-width: 200px;
    --bs-tooltip-padding-x: 1rem;
    --bs-tooltip-padding-y: 0.5rem;
    --bs-tooltip-margin: 0;
    --bs-tooltip-font-size: 0.813rem;
    --bs-tooltip-color: #fff;
    --bs-tooltip-bg: #000;
    --bs-tooltip-border-radius: 0.25rem;
    --bs-tooltip-opacity: 0.9;
    --bs-tooltip-arrow-width: 0.8rem;
    --bs-tooltip-arrow-height: 0.4rem;
    z-index: var(--bs-tooltip-zindex);
    display: block;
    padding: var(--bs-tooltip-arrow-height);
    margin: var(--bs-tooltip-margin);
    font-family: var(--bs-font-sans-serif);
    font-style: normal;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    white-space: normal;
    word-spacing: normal;
    line-break: auto;
    font-size: var(--bs-tooltip-font-size);
    word-wrap: break-word;
    opacity: 0;
}

.tooltip.show {
    opacity: var(--bs-tooltip-opacity);
}

.tooltip .tooltip-arrow {
    display: block;
    width: var(--bs-tooltip-arrow-width);
    height: var(--bs-tooltip-arrow-height);
}

.tooltip .tooltip-arrow::before {
    position: absolute;
    content: "";
    border-color: rgba(0, 0, 0, 0);
    border-style: solid;
}

.bs-tooltip-top .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow {
    bottom: 0;
}

.bs-tooltip-top .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before {
    top: -1px;
    border-width: var(--bs-tooltip-arrow-height) -webkit-calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
    border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
    border-top-color: var(--bs-tooltip-bg);
}

.bs-tooltip-end .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow {
    left: 0;
    width: var(--bs-tooltip-arrow-height);
    height: var(--bs-tooltip-arrow-width);
}

.bs-tooltip-end .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before {
    right: -1px;
    border-width: -webkit-calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) -webkit-calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
    border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
    border-right-color: var(--bs-tooltip-bg);
}

.bs-tooltip-bottom .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow {
    top: 0;
}

.bs-tooltip-bottom .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^="bottom"] .tooltip-arrow::before {
    bottom: -1px;
    border-width: 0 -webkit-calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
    border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
    border-bottom-color: var(--bs-tooltip-bg);
}

.bs-tooltip-start .tooltip-arrow,
.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow {
    right: 0;
    width: var(--bs-tooltip-arrow-height);
    height: var(--bs-tooltip-arrow-width);
}

.bs-tooltip-start .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^="left"] .tooltip-arrow::before {
    left: -1px;
    border-width: -webkit-calc(var(--bs-tooltip-arrow-width) * 0.5) 0 -webkit-calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
    border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
    border-left-color: var(--bs-tooltip-bg);
}

.tooltip-inner {
    max-width: var(--bs-tooltip-max-width);
    padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
    color: var(--bs-tooltip-color);
    text-align: center;
    background-color: var(--bs-tooltip-bg);
    -webkit-border-radius: var(--bs-tooltip-border-radius);
    border-radius: var(--bs-tooltip-border-radius);
}

.popover {
    --bs-popover-zindex: 1070;
    --bs-popover-max-width: 276px;
    --bs-popover-font-size: 0.813rem;
    --bs-popover-bg: #fff;
    --bs-popover-border-width: 1px;
    --bs-popover-border-color: var(--bs-border-color-translucent);
    --bs-popover-border-radius: 0.5rem;
    --bs-popover-inner-border-radius: -webkit-calc(0.5rem - 1px);
    --bs-popover-inner-border-radius: calc(0.5rem - 1px);
    --bs-popover-box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.03);
    --bs-popover-header-padding-x: 1rem;
    --bs-popover-header-padding-y: 0.5rem;
    --bs-popover-header-font-size: 1rem;
    --bs-popover-header-color: var(--bs-heading-color);
    --bs-popover-header-bg: #f0f0f0;
    --bs-popover-body-padding-x: 1rem;
    --bs-popover-body-padding-y: 1rem;
    --bs-popover-body-color: #161d2b;
    --bs-popover-arrow-width: 1rem;
    --bs-popover-arrow-height: 0.5rem;
    --bs-popover-arrow-border: var(--bs-popover-border-color);
    z-index: var(--bs-popover-zindex);
    display: block;
    max-width: var(--bs-popover-max-width);
    font-family: var(--bs-font-sans-serif);
    font-style: normal;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    white-space: normal;
    word-spacing: normal;
    line-break: auto;
    font-size: var(--bs-popover-font-size);
    word-wrap: break-word;
    background-color: var(--bs-popover-bg);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
    -webkit-border-radius: var(--bs-popover-border-radius);
    border-radius: var(--bs-popover-border-radius);
    -webkit-box-shadow: var(--bs-popover-box-shadow);
    box-shadow: var(--bs-popover-box-shadow);
}

.popover .popover-arrow {
    display: block;
    width: var(--bs-popover-arrow-width);
    height: var(--bs-popover-arrow-height);
}

.popover .popover-arrow::before,
.popover .popover-arrow::after {
    position: absolute;
    display: block;
    content: "";
    border-color: rgba(0, 0, 0, 0);
    border-style: solid;
    border-width: 0;
}

.bs-popover-top>.popover-arrow,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow {
    bottom: -webkit-calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
    bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}

.bs-popover-top>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before,
.bs-popover-top>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after {
    border-width: var(--bs-popover-arrow-height) -webkit-calc(var(--bs-popover-arrow-width) * 0.5) 0;
    border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}

.bs-popover-top>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::before {
    bottom: 0;
    border-top-color: var(--bs-popover-arrow-border);
}

.bs-popover-top>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="top"]>.popover-arrow::after {
    bottom: var(--bs-popover-border-width);
    border-top-color: var(--bs-popover-bg);
}

.bs-popover-end>.popover-arrow,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow {
    left: -webkit-calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
    left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
    width: var(--bs-popover-arrow-height);
    height: var(--bs-popover-arrow-width);
}

.bs-popover-end>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before,
.bs-popover-end>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after {
    border-width: -webkit-calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) -webkit-calc(var(--bs-popover-arrow-width) * 0.5) 0;
    border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}

.bs-popover-end>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::before {
    left: 0;
    border-right-color: var(--bs-popover-arrow-border);
}

.bs-popover-end>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="right"]>.popover-arrow::after {
    left: var(--bs-popover-border-width);
    border-right-color: var(--bs-popover-bg);
}

.bs-popover-bottom>.popover-arrow,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow {
    top: -webkit-calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
    top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}

.bs-popover-bottom>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before,
.bs-popover-bottom>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after {
    border-width: 0 -webkit-calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
    border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}

.bs-popover-bottom>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::before {
    top: 0;
    border-bottom-color: var(--bs-popover-arrow-border);
}

.bs-popover-bottom>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="bottom"]>.popover-arrow::after {
    top: var(--bs-popover-border-width);
    border-bottom-color: var(--bs-popover-bg);
}

.bs-popover-bottom .popover-header::before,
.bs-popover-auto[data-popper-placement^="bottom"] .popover-header::before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: var(--bs-popover-arrow-width);
    margin-left: -webkit-calc(-0.5 * var(--bs-popover-arrow-width));
    margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
    content: "";
    border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
}

.bs-popover-start>.popover-arrow,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow {
    right: -webkit-calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
    right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
    width: var(--bs-popover-arrow-height);
    height: var(--bs-popover-arrow-width);
}

.bs-popover-start>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before,
.bs-popover-start>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after {
    border-width: -webkit-calc(var(--bs-popover-arrow-width) * 0.5) 0 -webkit-calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
    border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}

.bs-popover-start>.popover-arrow::before,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::before {
    right: 0;
    border-left-color: var(--bs-popover-arrow-border);
}

.bs-popover-start>.popover-arrow::after,
.bs-popover-auto[data-popper-placement^="left"]>.popover-arrow::after {
    right: var(--bs-popover-border-width);
    border-left-color: var(--bs-popover-bg);
}

.popover-header {
    padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
    margin-bottom: 0;
    font-size: var(--bs-popover-header-font-size);
    color: var(--bs-popover-header-color);
    background-color: var(--bs-popover-header-bg);
    border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
    -webkit-border-top-left-radius: var(--bs-popover-inner-border-radius);
    border-top-left-radius: var(--bs-popover-inner-border-radius);
    -webkit-border-top-right-radius: var(--bs-popover-inner-border-radius);
    border-top-right-radius: var(--bs-popover-inner-border-radius);
}

.popover-header:empty {
    display: none;
}

.popover-body {
    padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
    color: var(--bs-popover-body-color);
}

.carousel {
    position: relative;
}

.carousel.pointer-event {
    -ms-touch-action: pan-y;
    touch-action: pan-y;
}

.carousel-inner {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.carousel-inner::after {
    display: block;
    clear: both;
    content: "";
}

.carousel-item {
    position: relative;
    display: none;
    float: left;
    width: 100%;
    margin-right: -100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    transition: -webkit-transform 0.6s ease-in-out;
    -o-transition: transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    transition:
        transform 0.6s ease-in-out,
        -webkit-transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-item {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
    display: block;
}

.carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-end),
.active.carousel-item-start {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
}

.carousel-fade .carousel-item {
    opacity: 0;
    -webkit-transition-property: opacity;
    -o-transition-property: opacity;
    transition-property: opacity;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
    z-index: 1;
    opacity: 1;
}

.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
    z-index: 0;
    opacity: 0;
    -webkit-transition: opacity 0s 0.6s;
    -o-transition: opacity 0s 0.6s;
    transition: opacity 0s 0.6s;
}

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

    .carousel-fade .active.carousel-item-start,
    .carousel-fade .active.carousel-item-end {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.carousel-control-prev,
.carousel-control-next {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 15%;
    padding: 0;
    color: #fff;
    text-align: center;
    background: none;
    border: 0;
    opacity: 0.5;
    -webkit-transition: opacity 0.15s ease;
    -o-transition: opacity 0.15s ease;
    transition: opacity 0.15s ease;
}

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

    .carousel-control-prev,
    .carousel-control-next {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    opacity: 0.9;
}

.carousel-control-prev {
    left: 0;
}

.carousel-control-next {
    right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-repeat: no-repeat;
    background-position: 50%;
    -webkit-background-size: 100% 100%;
    background-size: 100% 100%;
}

.carousel-control-prev-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0;
    margin-right: 15%;
    margin-bottom: 1rem;
    margin-left: 15%;
    list-style: none;
}

.carousel-indicators [data-bs-target] {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: 20px;
    height: 20px;
    padding: 0;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 0;
    border-top: 0px solid rgba(0, 0, 0, 0);
    border-bottom: 0px solid rgba(0, 0, 0, 0);
    opacity: 0.5;
    -webkit-transition: opacity 0.6s ease;
    -o-transition: opacity 0.6s ease;
    transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
    .carousel-indicators [data-bs-target] {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.carousel-indicators .active {
    opacity: 1;
}

.carousel-caption {
    position: absolute;
    right: 15%;
    bottom: 1.25rem;
    left: 15%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    color: #fff;
    text-align: center;
}

.carousel-dark .carousel-control-prev-icon,
.carousel-dark .carousel-control-next-icon {
    -webkit-filter: invert(1) grayscale(100);
    filter: invert(1) grayscale(100);
}

.carousel-dark .carousel-indicators [data-bs-target] {
    background-color: #000;
}

.carousel-dark .carousel-caption {
    color: #000;
}

.spinner-grow,
.spinner-border {
    display: inline-block;
    width: var(--bs-spinner-width);
    height: var(--bs-spinner-height);
    vertical-align: var(--bs-spinner-vertical-align);
    -webkit-border-radius: 50%;
    border-radius: 50%;
    -webkit-animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
    animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@-webkit-keyframes spinner-border {
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
        /* rtl:ignore */
    }
}

@keyframes spinner-border {
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
        /* rtl:ignore */
    }
}

.spinner-border {
    --bs-spinner-width: 2rem;
    --bs-spinner-height: 2rem;
    --bs-spinner-vertical-align: -0.125em;
    --bs-spinner-border-width: 0.25em;
    --bs-spinner-animation-speed: 0.75s;
    --bs-spinner-animation-name: spinner-border;
    border: var(--bs-spinner-border-width) solid currentcolor;
    border-right-color: rgba(0, 0, 0, 0);
}

.spinner-border-sm {
    --bs-spinner-width: 1rem;
    --bs-spinner-height: 1rem;
    --bs-spinner-border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    50% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes spinner-grow {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    50% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.spinner-grow {
    --bs-spinner-width: 2rem;
    --bs-spinner-height: 2rem;
    --bs-spinner-vertical-align: -0.125em;
    --bs-spinner-animation-speed: 0.75s;
    --bs-spinner-animation-name: spinner-grow;
    background-color: currentcolor;
    opacity: 0;
}

.spinner-grow-sm {
    --bs-spinner-width: 1rem;
    --bs-spinner-height: 1rem;
}

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

    .spinner-border,
    .spinner-grow {
        --bs-spinner-animation-speed: 1.5s;
    }
}

.offcanvas,
.offcanvas-xxl,
.offcanvas-xl,
.offcanvas-lg,
.offcanvas-md,
.offcanvas-sm {
    --bs-offcanvas-zindex: 1045;
    --bs-offcanvas-width: 600px;
    --bs-offcanvas-height: 30vh;
    --bs-offcanvas-padding-x: 1rem;
    --bs-offcanvas-padding-y: 1rem;
    --bs-offcanvas-color: ;
    --bs-offcanvas-bg: #fff;
    --bs-offcanvas-border-width: 1px;
    --bs-offcanvas-border-color: var(--bs-border-color-translucent);
    --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.1);
}

@media (max-width: 575.98px) {
    .offcanvas-sm {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        outline: 0;
        -webkit-box-shadow: var(--bs-offcanvas-box-shadow);
        box-shadow: var(--bs-offcanvas-box-shadow);
        -webkit-transition: -webkit-transform 0.3s ease-in-out;
        transition: -webkit-transform 0.3s ease-in-out;
        -o-transition: transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out;
        transition:
            transform 0.3s ease-in-out,
            -webkit-transform 0.3s ease-in-out;
    }
}

@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-sm {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
    }
}

@media (max-width: 575.98px) {
    .offcanvas-sm.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%);
    }
}

@media (max-width: 575.98px) {

    .offcanvas-sm.showing,
    .offcanvas-sm.show:not(.hiding) {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
}

@media (max-width: 575.98px) {

    .offcanvas-sm.showing,
    .offcanvas-sm.hiding,
    .offcanvas-sm.show {
        visibility: visible;
    }
}

@media (min-width: 576px) {
    .offcanvas-sm {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: rgba(0, 0, 0, 0) !important;
    }

    .offcanvas-sm .offcanvas-header {
        display: none;
    }

    .offcanvas-sm .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
        background-color: rgba(0, 0, 0, 0) !important;
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        outline: 0;
        -webkit-box-shadow: var(--bs-offcanvas-box-shadow);
        box-shadow: var(--bs-offcanvas-box-shadow);
        -webkit-transition: -webkit-transform 0.3s ease-in-out;
        transition: -webkit-transform 0.3s ease-in-out;
        -o-transition: transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out;
        transition:
            transform 0.3s ease-in-out,
            -webkit-transform 0.3s ease-in-out;
    }
}

@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-md {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
    }
}

@media (max-width: 767.98px) {
    .offcanvas-md.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%);
    }
}

@media (max-width: 767.98px) {

    .offcanvas-md.showing,
    .offcanvas-md.show:not(.hiding) {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
}

@media (max-width: 767.98px) {

    .offcanvas-md.showing,
    .offcanvas-md.hiding,
    .offcanvas-md.show {
        visibility: visible;
    }
}

@media (min-width: 768px) {
    .offcanvas-md {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: rgba(0, 0, 0, 0) !important;
    }

    .offcanvas-md .offcanvas-header {
        display: none;
    }

    .offcanvas-md .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
        background-color: rgba(0, 0, 0, 0) !important;
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        outline: 0;
        -webkit-box-shadow: var(--bs-offcanvas-box-shadow);
        box-shadow: var(--bs-offcanvas-box-shadow);
        -webkit-transition: -webkit-transform 0.3s ease-in-out;
        transition: -webkit-transform 0.3s ease-in-out;
        -o-transition: transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out;
        transition:
            transform 0.3s ease-in-out,
            -webkit-transform 0.3s ease-in-out;
    }
}

@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-lg {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
    }
}

@media (max-width: 991.98px) {
    .offcanvas-lg.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%);
    }
}

@media (max-width: 991.98px) {

    .offcanvas-lg.showing,
    .offcanvas-lg.show:not(.hiding) {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
}

@media (max-width: 991.98px) {

    .offcanvas-lg.showing,
    .offcanvas-lg.hiding,
    .offcanvas-lg.show {
        visibility: visible;
    }
}

@media (min-width: 992px) {
    .offcanvas-lg {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: rgba(0, 0, 0, 0) !important;
    }

    .offcanvas-lg .offcanvas-header {
        display: none;
    }

    .offcanvas-lg .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
        background-color: rgba(0, 0, 0, 0) !important;
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        outline: 0;
        -webkit-box-shadow: var(--bs-offcanvas-box-shadow);
        box-shadow: var(--bs-offcanvas-box-shadow);
        -webkit-transition: -webkit-transform 0.3s ease-in-out;
        transition: -webkit-transform 0.3s ease-in-out;
        -o-transition: transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out;
        transition:
            transform 0.3s ease-in-out,
            -webkit-transform 0.3s ease-in-out;
    }
}

@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-xl {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
    }
}

@media (max-width: 1199.98px) {
    .offcanvas-xl.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%);
    }
}

@media (max-width: 1199.98px) {

    .offcanvas-xl.showing,
    .offcanvas-xl.show:not(.hiding) {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
}

@media (max-width: 1199.98px) {

    .offcanvas-xl.showing,
    .offcanvas-xl.hiding,
    .offcanvas-xl.show {
        visibility: visible;
    }
}

@media (min-width: 1200px) {
    .offcanvas-xl {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: rgba(0, 0, 0, 0) !important;
    }

    .offcanvas-xl .offcanvas-header {
        display: none;
    }

    .offcanvas-xl .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
        background-color: rgba(0, 0, 0, 0) !important;
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl {
        position: fixed;
        bottom: 0;
        z-index: var(--bs-offcanvas-zindex);
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        max-width: 100%;
        color: var(--bs-offcanvas-color);
        visibility: hidden;
        background-color: var(--bs-offcanvas-bg);
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
        outline: 0;
        -webkit-box-shadow: var(--bs-offcanvas-box-shadow);
        box-shadow: var(--bs-offcanvas-box-shadow);
        -webkit-transition: -webkit-transform 0.3s ease-in-out;
        transition: -webkit-transform 0.3s ease-in-out;
        -o-transition: transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out;
        transition:
            transform 0.3s ease-in-out,
            -webkit-transform 0.3s ease-in-out;
    }
}

@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
    .offcanvas-xxl {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-start {
        top: 0;
        left: 0;
        width: var(--bs-offcanvas-width);
        border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-end {
        top: 0;
        right: 0;
        width: var(--bs-offcanvas-width);
        border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-top {
        top: 0;
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
    }
}

@media (max-width: 1399.98px) {
    .offcanvas-xxl.offcanvas-bottom {
        right: 0;
        left: 0;
        height: var(--bs-offcanvas-height);
        max-height: 100%;
        border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
        -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%);
    }
}

@media (max-width: 1399.98px) {

    .offcanvas-xxl.showing,
    .offcanvas-xxl.show:not(.hiding) {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
}

@media (max-width: 1399.98px) {

    .offcanvas-xxl.showing,
    .offcanvas-xxl.hiding,
    .offcanvas-xxl.show {
        visibility: visible;
    }
}

@media (min-width: 1600px) {
    .offcanvas-xxl {
        --bs-offcanvas-height: auto;
        --bs-offcanvas-border-width: 0;
        background-color: rgba(0, 0, 0, 0) !important;
    }

    .offcanvas-xxl .offcanvas-header {
        display: none;
    }

    .offcanvas-xxl .offcanvas-body {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 0;
        -webkit-flex-grow: 0;
        -ms-flex-positive: 0;
        flex-grow: 0;
        padding: 0;
        overflow-y: visible;
        background-color: rgba(0, 0, 0, 0) !important;
    }
}

.offcanvas {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    outline: 0;
    -webkit-box-shadow: var(--bs-offcanvas-box-shadow);
    box-shadow: var(--bs-offcanvas-box-shadow);
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: -webkit-transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition:
        transform 0.3s ease-in-out,
        -webkit-transform 0.3s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .offcanvas {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.offcanvas.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
}

.offcanvas.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
}

.offcanvas.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}

.offcanvas.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
}

.offcanvas.showing,
.offcanvas.show:not(.hiding) {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
}

.offcanvas.showing,
.offcanvas.hiding,
.offcanvas.show {
    visibility: visible;
}

.offcanvas-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background-color: #000;
}

.offcanvas-backdrop.fade {
    opacity: 0;
}

.offcanvas-backdrop.show {
    opacity: 0.5;
}

.offcanvas-header {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}

.offcanvas-header .btn-close {
    padding: -webkit-calc(var(--bs-offcanvas-padding-y) * 0.5) -webkit-calc(var(--bs-offcanvas-padding-x) * 0.5);
    padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
    margin-top: -webkit-calc(-0.5 * var(--bs-offcanvas-padding-y));
    margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
    margin-right: -webkit-calc(-0.5 * var(--bs-offcanvas-padding-x));
    margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
    margin-bottom: -webkit-calc(-0.5 * var(--bs-offcanvas-padding-y));
    margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
}

.offcanvas-title {
    margin-bottom: 0;
    line-height: 1.5;
}

.offcanvas-body {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
    overflow-y: auto;
}

.clearfix::after {
    display: block;
    clear: both;
    content: "";
}

.text-bg-primary {
    color: #fff !important;
    background-color: RGBA(112, 22, 208, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-secondary {
    color: #000 !important;
    background-color: RGBA(172, 164, 188, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
    color: #fff !important;
    background-color: RGBA(26, 160, 83, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-info {
    color: #000 !important;
    background-color: RGBA(8, 177, 186, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
    color: #fff !important;
    background-color: RGBA(241, 106, 27, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
    color: #fff !important;
    background-color: RGBA(192, 50, 33, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-light {
    color: #000 !important;
    background-color: RGBA(222, 226, 230, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-dark {
    color: #fff !important;
    background-color: RGBA(22, 29, 43, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-tertiray {
    color: #000 !important;
    background-color: RGBA(63, 240, 185, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-gray {
    color: #fff !important;
    background-color: RGBA(73, 80, 87, var(--bs-bg-opacity, 1)) !important;
}

.link-primary {
    color: #0071e3 !important;
}

.link-primary:hover,
.link-primary:focus {
    color: #5a12a6 !important;
}

.link-secondary {
    color: #aca4bc !important;
}

.link-secondary:hover,
.link-secondary:focus {
    color: #bdb6c9 !important;
}

.link-success {
    color: #1aa053 !important;
}

.link-success:hover,
.link-success:focus {
    color: #158042 !important;
}

.link-info {
    color: #08b1ba !important;
}

.link-info:hover,
.link-info:focus {
    color: #39c1c8 !important;
}

.link-warning {
    color: #f16a1b !important;
}

.link-warning:hover,
.link-warning:focus {
    color: #c15516 !important;
}

.link-danger {
    color: #c03221 !important;
}

.link-danger:hover,
.link-danger:focus {
    color: #9a281a !important;
}

.link-light {
    color: #dee2e6 !important;
}

.link-light:hover,
.link-light:focus {
    color: #e5e8eb !important;
}

.link-dark {
    color: #161d2b !important;
}

.link-dark:hover,
.link-dark:focus {
    color: #121722 !important;
}

.link-tertiray {
    color: #3ff0b9 !important;
}

.link-tertiray:hover,
.link-tertiray:focus {
    color: #65f3c7 !important;
}

.link-gray {
    color: #495057 !important;
}

.link-gray:hover,
.link-gray:focus {
    color: #3a4046 !important;
}

.ratio {
    position: relative;
    width: 100%;
}

.ratio::before {
    display: block;
    padding-top: var(--bs-aspect-ratio);
    content: "";
}

.ratio>* {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ratio-1x1 {
    --bs-aspect-ratio: 100%;
}

.ratio-4x3 {
    --bs-aspect-ratio: 75%;
}

.ratio-16x9 {
    --bs-aspect-ratio: 56.25%;
}

.ratio-21x9 {
    --bs-aspect-ratio: 42.8571428571%;
}

.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}

.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
}

.sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
}

.sticky-bottom {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    z-index: 1020;
}

@media (min-width: 576px) {
    .sticky-sm-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-sm-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 768px) {
    .sticky-md-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-md-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 992px) {
    .sticky-lg-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-lg-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 1200px) {
    .sticky-xl-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-xl-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

@media (min-width: 1600px) {
    .sticky-xxl-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .sticky-xxl-bottom {
        position: -webkit-sticky;
        position: sticky;
        bottom: 0;
        z-index: 1020;
    }
}

.hstack {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

.vstack {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

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

.stretched-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: "";
}

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

.vr {
    display: inline-block;
    -webkit-align-self: stretch;
    -ms-flex-item-align: stretch;
    align-self: stretch;
    width: 1px;
    min-height: 1em;
    background-color: currentcolor;
    opacity: 0.25;
}

.align-baseline {
    vertical-align: baseline !important;
}

.align-top {
    vertical-align: top !important;
}

.align-middle {
    vertical-align: middle !important;
}

.align-bottom {
    vertical-align: bottom !important;
}

.align-text-bottom {
    vertical-align: text-bottom !important;
}

.align-text-top {
    vertical-align: text-top !important;
}

.float-start {
    float: left !important;
}

.float-end {
    float: right !important;
}

.float-none {
    float: none !important;
}

.opacity-0 {
    opacity: 0 !important;
}

.opacity-25 {
    opacity: 0.25 !important;
}

.opacity-50 {
    opacity: 0.5 !important;
}

.opacity-75 {
    opacity: 0.75 !important;
}

.opacity-100 {
    opacity: 1 !important;
}

.overflow-auto {
    overflow: auto !important;
}

.overflow-hidden {
    overflow: hidden !important;
}

.overflow-visible {
    overflow: visible !important;
}

.overflow-scroll {
    overflow: scroll !important;
}

.d-inline {
    display: inline !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-block {
    display: block !important;
}

.d-grid {
    display: grid !important;
}

.d-table {
    display: table !important;
}

.d-table-row {
    display: table-row !important;
}

.d-table-cell {
    display: table-cell !important;
}

.d-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

.d-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
}

.d-none {
    display: none !important;
}

.shadow {
    -webkit-box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.03) !important;
    box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.03) !important;
}

.shadow-sm {
    -webkit-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.1) !important;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.1) !important;
}

.shadow-lg {
    -webkit-box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.05) !important;
    box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.05) !important;
}

.shadow-none {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.position-static {
    position: static !important;
}

.position-relative {
    position: relative !important;
}

.position-absolute {
    position: absolute !important;
}

.position-fixed {
    position: fixed !important;
}

.position-sticky {
    position: -webkit-sticky !important;
    position: sticky !important;
}

.top-0 {
    top: 0 !important;
}

.top-50 {
    top: 50% !important;
}

.top-100 {
    top: 100% !important;
}

.bottom-0 {
    bottom: 0 !important;
}

.bottom-50 {
    bottom: 50% !important;
}

.bottom-100 {
    bottom: 100% !important;
}

.start-0 {
    left: 0 !important;
}

.start-50 {
    left: 50% !important;
}

.start-100 {
    left: 100% !important;
}

.end-0 {
    right: 0 !important;
}

.end-50 {
    right: 50% !important;
}

.end-100 {
    right: 100% !important;
}

.translate-middle {
    -webkit-transform: translate(-50%, -50%) !important;
    -ms-transform: translate(-50%, -50%) !important;
    transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
    -webkit-transform: translateX(-50%) !important;
    -ms-transform: translateX(-50%) !important;
    transform: translateX(-50%) !important;
}

.translate-middle-y {
    -webkit-transform: translateY(-50%) !important;
    -ms-transform: translateY(-50%) !important;
    transform: translateY(-50%) !important;
}

.border {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-0 {
    border: 0 !important;
}

.border-top {
    border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-top-0 {
    border-top: 0 !important;
}

.border-end {
    border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-end-0 {
    border-right: 0 !important;
}

.border-bottom {
    border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-bottom-0 {
    border-bottom: 0 !important;
}

.border-start {
    border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-start-0 {
    border-left: 0 !important;
}

.border-primary {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-primary-rgb),
            var(--bs-border-opacity)) !important;
}

.border-secondary {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-secondary-rgb),
            var(--bs-border-opacity)) !important;
}

.border-success {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-success-rgb),
            var(--bs-border-opacity)) !important;
}

.border-info {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
}

.border-warning {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-warning-rgb),
            var(--bs-border-opacity)) !important;
}

.border-danger {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-danger-rgb),
            var(--bs-border-opacity)) !important;
}

.border-light {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-light-rgb),
            var(--bs-border-opacity)) !important;
}

.border-dark {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}

.border-tertiray {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-tertiray-rgb),
            var(--bs-border-opacity)) !important;
}

.border-gray {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-gray-rgb), var(--bs-border-opacity)) !important;
}

.border-white {
    --bs-border-opacity: 1;
    border-color: rgba(var(--bs-white-rgb),
            var(--bs-border-opacity)) !important;
}

.border-1 {
    --bs-border-width: 1px;
}

.border-2 {
    --bs-border-width: 2px;
}

.border-3 {
    --bs-border-width: 3px;
}

.border-4 {
    --bs-border-width: 4px;
}

.border-5 {
    --bs-border-width: 5px;
}

.border-opacity-10 {
    --bs-border-opacity: 0.1;
}

.border-opacity-25 {
    --bs-border-opacity: 0.25;
}

.border-opacity-50 {
    --bs-border-opacity: 0.5;
}

.border-opacity-75 {
    --bs-border-opacity: 0.75;
}

.border-opacity-100 {
    --bs-border-opacity: 1;
}

.w-25 {
    width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-75 {
    width: 75% !important;
}

.w-100 {
    width: 100% !important;
}

.w-auto {
    width: auto !important;
}

.mw-100 {
    max-width: 100% !important;
}

.vw-100 {
    width: 100vw !important;
}

.min-vw-100 {
    min-width: 100vw !important;
}

.h-25 {
    height: 25% !important;
}

.h-50 {
    height: 50% !important;
}

.h-75 {
    height: 75% !important;
}

.h-100 {
    height: 100% !important;
}

.h-auto {
    height: auto !important;
}

.mh-100 {
    max-height: 100% !important;
}

.vh-100 {
    height: 100vh !important;
}

.min-vh-100 {
    min-height: 100vh !important;
}

.flex-fill {
    -webkit-box-flex: 1 !important;
    -webkit-flex: 1 1 auto !important;
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
}

.flex-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
}

.flex-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
}

.flex-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
}

.flex-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
}

.flex-grow-0 {
    -webkit-box-flex: 0 !important;
    -webkit-flex-grow: 0 !important;
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
}

.flex-grow-1 {
    -webkit-box-flex: 1 !important;
    -webkit-flex-grow: 1 !important;
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    -webkit-flex-shrink: 0 !important;
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
}

.flex-shrink-1 {
    -webkit-flex-shrink: 1 !important;
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
}

.flex-wrap {
    -webkit-flex-wrap: wrap !important;
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
}

.flex-nowrap {
    -webkit-flex-wrap: nowrap !important;
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
}

.justify-content-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
}

.justify-content-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
}

.justify-content-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
}

.justify-content-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
}

.justify-content-around {
    -webkit-justify-content: space-around !important;
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
}

.justify-content-evenly {
    -webkit-box-pack: space-evenly !important;
    -webkit-justify-content: space-evenly !important;
    -ms-flex-pack: space-evenly !important;
    justify-content: space-evenly !important;
}

.align-items-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
    -ms-flex-align: start !important;
    align-items: flex-start !important;
}

.align-items-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
    -ms-flex-align: end !important;
    align-items: flex-end !important;
}

.align-items-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
}

.align-items-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
}

.align-items-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
}

.align-content-start {
    -webkit-align-content: flex-start !important;
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
}

.align-content-end {
    -webkit-align-content: flex-end !important;
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
}

.align-content-center {
    -webkit-align-content: center !important;
    -ms-flex-line-pack: center !important;
    align-content: center !important;
}

.align-content-between {
    -webkit-align-content: space-between !important;
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
}

.align-content-around {
    -webkit-align-content: space-around !important;
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
}

.align-content-stretch {
    -webkit-align-content: stretch !important;
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
}

.align-self-auto {
    -webkit-align-self: auto !important;
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
}

.align-self-start {
    -webkit-align-self: flex-start !important;
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
}

.align-self-end {
    -webkit-align-self: flex-end !important;
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
}

.align-self-center {
    -webkit-align-self: center !important;
    -ms-flex-item-align: center !important;
    align-self: center !important;
}

.align-self-baseline {
    -webkit-align-self: baseline !important;
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
}

.align-self-stretch {
    -webkit-align-self: stretch !important;
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
}

.order-first {
    -webkit-box-ordinal-group: 0 !important;
    -webkit-order: -1 !important;
    -ms-flex-order: -1 !important;
    order: -1 !important;
}

.order-0 {
    -webkit-box-ordinal-group: 1 !important;
    -webkit-order: 0 !important;
    -ms-flex-order: 0 !important;
    order: 0 !important;
}

.order-1 {
    -webkit-box-ordinal-group: 2 !important;
    -webkit-order: 1 !important;
    -ms-flex-order: 1 !important;
    order: 1 !important;
}

.order-2 {
    -webkit-box-ordinal-group: 3 !important;
    -webkit-order: 2 !important;
    -ms-flex-order: 2 !important;
    order: 2 !important;
}

.order-3 {
    -webkit-box-ordinal-group: 4 !important;
    -webkit-order: 3 !important;
    -ms-flex-order: 3 !important;
    order: 3 !important;
}

.order-4 {
    -webkit-box-ordinal-group: 5 !important;
    -webkit-order: 4 !important;
    -ms-flex-order: 4 !important;
    order: 4 !important;
}

.order-5 {
    -webkit-box-ordinal-group: 6 !important;
    -webkit-order: 5 !important;
    -ms-flex-order: 5 !important;
    order: 5 !important;
}

.order-last {
    -webkit-box-ordinal-group: 7 !important;
    -webkit-order: 6 !important;
    -ms-flex-order: 6 !important;
    order: 6 !important;
}

.m-0 {
    margin: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.m-5 {
    margin: 2rem !important;
}

.m-auto {
    margin: auto !important;
}

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

.mx-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
}

.mx-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
}

.mx-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
}

.mx-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
}

.mx-5 {
    margin-right: 2rem !important;
    margin-left: 2rem !important;
}

.mx-auto {
    margin-right: auto !important;
    margin-left: auto !important;
}

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

.my-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
}

.my-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}

.my-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
}

.my-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
}

.my-5 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
}

.my-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt-1 {
    margin-top: 0.25rem !important;
}

.mt-2 {
    margin-top: 0.5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mt-4 {
    margin-top: 1.5rem !important;
}

.mt-5 {
    margin-top: 2rem !important;
}

.mt-auto {
    margin-top: auto !important;
}

.me-0 {
    margin-right: 0 !important;
}

.me-1 {
    margin-right: 0.25rem !important;
}

.me-2 {
    margin-right: 0.5rem !important;
}

.me-3 {
    margin-right: 1rem !important;
}

.me-4 {
    margin-right: 1.5rem !important;
}

.me-5 {
    margin-right: 2rem !important;
}

.me-auto {
    margin-right: auto !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-1 {
    margin-bottom: 0.25rem !important;
}

.mb-2 {
    margin-bottom: 0.5rem !important;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

.mb-4 {
    margin-bottom: 1.5rem !important;
}

.mb-5 {
    margin-bottom: 2rem !important;
}

.mb-auto {
    margin-bottom: auto !important;
}

.ms-0 {
    margin-left: 0 !important;
}

.ms-1 {
    margin-left: 0.25rem !important;
}

.ms-2 {
    margin-left: 0.5rem !important;
}

.ms-3 {
    margin-left: 1rem !important;
}

.ms-4 {
    margin-left: 1.5rem !important;
}

.ms-5 {
    margin-left: 2rem !important;
}

.ms-auto {
    margin-left: auto !important;
}

.p-0 {
    padding: 0 !important;
}

.p-1 {
    padding: 0.25rem !important;
}

.p-2 {
    padding: 0.5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.p-5 {
    padding: 2rem !important;
}

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

.px-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
}

.px-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
}

.px-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
}

.px-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
}

.px-5 {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
}

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

.py-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
}

.py-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

.py-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

.py-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
}

.py-5 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pt-1 {
    padding-top: 0.25rem !important;
}

.pt-2 {
    padding-top: 0.5rem !important;
}

.pt-3 {
    padding-top: 1rem !important;
}

.pt-4 {
    padding-top: 1.5rem !important;
}

.pt-5 {
    padding-top: 2rem !important;
}

.pe-0 {
    padding-right: 0 !important;
}

.pe-1 {
    padding-right: 0.15rem !important;
}

.pe-2 {
    padding-right: 0.5rem !important;
}

.pe-3 {
    padding-right: 1rem !important;
}

.pe-4 {
    padding-right: 1.5rem !important;
}

.pe-5 {
    padding-right: 2rem !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pb-1 {
    padding-bottom: 0.25rem !important;
}

.pb-2 {
    padding-bottom: 0.5rem !important;
}

.pb-3 {
    padding-bottom: 1rem !important;
}

.pb-4 {
    padding-bottom: 1.5rem !important;
}

.pb-5 {
    padding-bottom: 2rem !important;
}

.ps-0 {
    padding-left: 0 !important;
}

.ps-1 {
    padding-left: 0.25rem !important;
}

.ps-2 {
    padding-left: 0.5rem !important;
}

.ps-3 {
    padding-left: 1rem !important;
}

.ps-4 {
    padding-left: 1.5rem !important;
}

.ps-5 {
    padding-left: 2rem !important;
}

.gap-0 {
    gap: 0 !important;
}

.gap-1 {
    gap: 0.25rem !important;
}

.gap-2 {
    gap: 0.5rem !important;
}

.gap-3 {
    gap: 1rem !important;
}

.gap-4 {
    gap: 1.5rem !important;
}

.gap-5 {
    gap: 2rem !important;
}

.font-monospace {
    font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
    font-size: -webkit-calc(1.3738rem + 1.4856vw) !important;
    font-size: calc(1.3738rem + 1.4856vw) !important;
}

.fs-2 {
    font-size: -webkit-calc(1.3324rem + 0.9888vw) !important;
    font-size: calc(1.3324rem + 0.9888vw) !important;
}

.fs-3 {
    font-size: -webkit-calc(1.2978rem + 0.5736vw) !important;
    font-size: calc(1.2978rem + 0.5736vw) !important;
}

.fs-4 {
    font-size: -webkit-calc(1.269rem + 0.228vw) !important;
    font-size: calc(1.269rem + 0.228vw) !important;
}

.fs-5 {
    font-size: 1.2rem !important;
}

.fs-6 {
    font-size: 1rem !important;
}

.fst-italic {
    font-style: italic !important;
}

.fst-normal {
    font-style: normal !important;
}

.fw-light {
    font-weight: 300 !important;
}

.fw-lighter {
    font-weight: lighter !important;
}

.fw-normal {
    font-weight: 600 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

.fw-semibold {
    font-weight: 600 !important;
}

.fw-bolder {
    font-weight: bolder !important;
}

.lh-1 {
    line-height: 1 !important;
}

.lh-sm {
    line-height: 1.25 !important;
}

.lh-base {
    line-height: 1.5 !important;
}

.lh-lg {
    line-height: 2 !important;
}

.text-start {
    text-align: left !important;
}

.text-end {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

.text-decoration-none {
    text-decoration: none !important;
}

.text-decoration-underline {
    text-decoration: underline !important;
}

.text-decoration-line-through {
    text-decoration: line-through !important;
}

.text-lowercase {
    text-transform: lowercase !important;
}

.text-uppercase {
    text-transform: uppercase !important;
}

.text-capitalize {
    text-transform: capitalize !important;
}

.text-wrap {
    white-space: normal !important;
}

.text-nowrap {
    white-space: nowrap !important;
}

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

.text-info23 {
    --bs-text-opacity: 1;
    color: #eee5da;
}

.text-primary23 {
    --bs-text-opacity: 1;
    color: rgb(75 78 201) !important;
}

/* }
.text-primary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}
.text-secondary {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
}
.text-success {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
}
.text-info {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
}



.text-warning {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-dark-shade), var(--bs-text-opacity)) !important;
}
.text-danger {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
}
.text-light {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
}
.text-dark {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
} 
.text-tertiray {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-tertiray-rgb), var(--bs-text-opacity)) !important;
} */
.text-gray {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-gray-rgb), var(--bs-text-opacity)) !important;
}

.text-black {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-body {
    --bs-text-opacity: 1;
    color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;
}

.text-muted {
    --bs-text-opacity: 1;
    color: #aca4bc !important;
}

.text-black-50 {
    --bs-text-opacity: 1;
    color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
    --bs-text-opacity: 1;
    color: rgba(255, 255, 255, 0.5) !important;
}

.text-reset {
    --bs-text-opacity: 1;
    color: inherit !important;
}

.text-opacity-25 {
    --bs-text-opacity: 0.25;
}

.text-opacity-50 {
    --bs-text-opacity: 0.5;
}

.text-opacity-75 {
    --bs-text-opacity: 0.75;
}

.text-opacity-100 {
    --bs-text-opacity: 1;
}

/* ============================================
   PREMIUM BACKGROUND UTILITIES
   Modern gradients with depth and sophistication
   ============================================ */

.bg-primary {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}

.bg-primary-soft {
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.12) 0%, rgba(118, 75, 162, 0.08) 100%) !important;
    border: 1px solid rgba(102, 126, 234, 0.15);
}

.bg-secondary {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%) !important;
    box-shadow: 0 4px 15px rgba(108, 117, 125, 0.25);
}

.bg-secondary-soft {
    background: linear-gradient(135deg, rgba(108, 117, 125, 0.1) 0%, rgba(73, 80, 87, 0.06) 100%) !important;
    border: 1px solid rgba(108, 117, 125, 0.12);
}

.bg-success {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%) !important;
    box-shadow: 0 4px 15px rgba(17, 153, 142, 0.35);
}

.bg-success-soft {
    background: linear-gradient(135deg, rgba(17, 153, 142, 0.12) 0%, rgba(56, 239, 125, 0.08) 100%) !important;
    border: 1px solid rgba(17, 153, 142, 0.18);
}

.bg-info {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%) !important;
    box-shadow: 0 4px 15px rgba(79, 172, 254, 0.35);
}

.bg-info-soft {
    background: linear-gradient(135deg, rgba(79, 172, 254, 0.12) 0%, rgba(0, 242, 254, 0.08) 100%) !important;
    border: 1px solid rgba(79, 172, 254, 0.18);
}

.bg-warning {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%) !important;
    box-shadow: 0 4px 15px rgba(240, 147, 251, 0.35);
}

.bg-warning-soft {
    background: linear-gradient(135deg, rgba(245, 87, 108, 0.1) 0%, rgba(240, 147, 251, 0.08) 100%) !important;
    border: 1px solid rgba(245, 87, 108, 0.15);
}

.bg-danger {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #ff416c 0%, #ff4b2b 100%) !important;
    box-shadow: 0 4px 15px rgba(255, 65, 108, 0.4);
}

.bg-danger-soft {
    background: linear-gradient(135deg, rgba(255, 65, 108, 0.12) 0%, rgba(255, 75, 43, 0.08) 100%) !important;
    border: 1px solid rgba(255, 65, 108, 0.18);
}

.bg-light {
    --bs-bg-opacity: 1;
    background: linear-gradient(180deg, #ffffff 0%, #f8f9fa 100%) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.bg-dark {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #232526 0%, #414345 100%) !important;
    box-shadow: 0 4px 15px rgba(35, 37, 38, 0.4);
}

.bg-dark-soft {
    background: linear-gradient(135deg, rgba(35, 37, 38, 0.08) 0%, rgba(65, 67, 69, 0.05) 100%) !important;
    border: 1px solid rgba(35, 37, 38, 0.1);
}

.bg-tertiray {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #a18cd1 0%, #fbc2eb 100%) !important;
    box-shadow: 0 4px 15px rgba(161, 140, 209, 0.3);
}

.bg-gray {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #868f96 0%, #596164 100%) !important;
    box-shadow: 0 4px 12px rgba(134, 143, 150, 0.25);
}

.bg-gray-soft {
    background: linear-gradient(135deg, rgba(134, 143, 150, 0.1) 0%, rgba(89, 97, 100, 0.06) 100%) !important;
    border: 1px solid rgba(134, 143, 150, 0.12);
}

.bg-black {
    --bs-bg-opacity: 1;
    background: linear-gradient(135deg, #0f0c29 0%, #302b63 50%, #24243e 100%) !important;
    box-shadow: 0 4px 20px rgba(15, 12, 41, 0.5);
}

.bg-white {
    --bs-bg-opacity: 1;
    background: linear-gradient(180deg, #ffffff 0%, #fafbfc 100%) !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);
}

/* Premium Glass Effect Backgrounds */
.bg-glass {
    background: rgba(255, 255, 255, 0.85) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

.bg-glass-dark {
    background: rgba(30, 30, 40, 0.75) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.bg-glass-primary {
    background: rgba(102, 126, 234, 0.15) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(102, 126, 234, 0.2);
    box-shadow: 0 8px 32px rgba(102, 126, 234, 0.15);
}

/* Premium Gradient Presets */
.bg-gradient-royal {
    background: linear-gradient(135deg, #141e30 0%, #243b55 100%) !important;
    box-shadow: 0 4px 20px rgba(20, 30, 48, 0.4);
}

.bg-gradient-ocean {
    background: linear-gradient(135deg, #2193b0 0%, #6dd5ed 100%) !important;
    box-shadow: 0 4px 15px rgba(33, 147, 176, 0.35);
}

.bg-gradient-sunset {
    background: linear-gradient(135deg, #ff6a00 0%, #ee0979 100%) !important;
    box-shadow: 0 4px 15px rgba(238, 9, 121, 0.35);
}

.bg-gradient-aurora {
    background: linear-gradient(135deg, #00c6fb 0%, #005bea 100%) !important;
    box-shadow: 0 4px 15px rgba(0, 91, 234, 0.35);
}

.bg-gradient-forest {
    background: linear-gradient(135deg, #134e5e 0%, #71b280 100%) !important;
    box-shadow: 0 4px 15px rgba(19, 78, 94, 0.35);
}

.bg-gradient-midnight {
    background: linear-gradient(135deg, #232526 0%, #414345 100%) !important;
    box-shadow: 0 4px 20px rgba(35, 37, 38, 0.4);
}

.bg-gradient-candy {
    background: linear-gradient(135deg, #d299c2 0%, #fef9d7 100%) !important;
    box-shadow: 0 4px 15px rgba(210, 153, 194, 0.25);
}

.bg-gradient-flame {
    background: linear-gradient(135deg, #f12711 0%, #f5af19 100%) !important;
    box-shadow: 0 4px 15px rgba(241, 39, 17, 0.35);
}

/* Animated Gradient Backgrounds */
.bg-gradient-animated {
    background: linear-gradient(-45deg, #667eea, #764ba2, #f093fb, #4facfe);
    background-size: 400% 400%;
    animation: gradientShift 8s ease infinite;
}

@keyframes gradientShift {
    0% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }

    100% {
        background-position: 0% 50%;
    }
}

.bg-body {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-body-bg-rgb),
            var(--bs-bg-opacity)) !important;
}

.bg-transparent {
    --bs-bg-opacity: 1;
    background-color: rgba(0, 0, 0, 0) !important;
}

.bg-opacity-10 {
    --bs-bg-opacity: 0.1;
}

.bg-opacity-25 {
    --bs-bg-opacity: 0.25;
}

.bg-opacity-50 {
    --bs-bg-opacity: 0.5;
}

.bg-opacity-75 {
    --bs-bg-opacity: 0.75;
}

.bg-opacity-100 {
    --bs-bg-opacity: 1;
}

.bg-gradient {
    background-image: var(--bs-gradient) !important;
}

.user-select-all {
    -webkit-user-select: all !important;
    -moz-user-select: all !important;
    -ms-user-select: all !important;
    user-select: all !important;
}

.user-select-auto {
    -webkit-user-select: auto !important;
    -moz-user-select: auto !important;
    -ms-user-select: auto !important;
    user-select: auto !important;
}

.user-select-none {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
}

.pe-none {
    pointer-events: none !important;
}

.pe-auto {
    pointer-events: auto !important;
}

.rounded {
    -webkit-border-radius: var(--bs-border-radius) !important;
    border-radius: var(--bs-border-radius) !important;
}

.rounded-0 {
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
}

.rounded-1 {
    -webkit-border-radius: var(--bs-border-radius-sm) !important;
    border-radius: var(--bs-border-radius-sm) !important;
}

.rounded-2 {
    -webkit-border-radius: var(--bs-border-radius) !important;
    border-radius: var(--bs-border-radius) !important;
}

.rounded-3 {
    -webkit-border-radius: var(--bs-border-radius-lg) !important;
    border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 {
    -webkit-border-radius: var(--bs-border-radius-xl) !important;
    border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 {
    -webkit-border-radius: var(--bs-border-radius-2xl) !important;
    border-radius: var(--bs-border-radius-2xl) !important;
}

.rounded-circle {
    -webkit-border-radius: 50% !important;
    border-radius: 50% !important;
}

.rounded-pill {
    -webkit-border-radius: var(--bs-border-radius-pill) !important;
    border-radius: var(--bs-border-radius-pill) !important;
}

.rounded-top {
    -webkit-border-top-left-radius: var(--bs-border-radius) !important;
    border-top-left-radius: var(--bs-border-radius) !important;
    -webkit-border-top-right-radius: var(--bs-border-radius) !important;
    border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-end {
    -webkit-border-top-right-radius: var(--bs-border-radius) !important;
    border-top-right-radius: var(--bs-border-radius) !important;
    -webkit-border-bottom-right-radius: var(--bs-border-radius) !important;
    border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-bottom {
    -webkit-border-bottom-right-radius: var(--bs-border-radius) !important;
    border-bottom-right-radius: var(--bs-border-radius) !important;
    -webkit-border-bottom-left-radius: var(--bs-border-radius) !important;
    border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-start {
    -webkit-border-bottom-left-radius: var(--bs-border-radius) !important;
    border-bottom-left-radius: var(--bs-border-radius) !important;
    -webkit-border-top-left-radius: var(--bs-border-radius) !important;
    border-top-left-radius: var(--bs-border-radius) !important;
}

.visible {
    visibility: visible !important;
}

.invisible {
    visibility: hidden !important;
}

@media (min-width: 576px) {
    .float-sm-start {
        float: left !important;
    }

    .float-sm-end {
        float: right !important;
    }

    .float-sm-none {
        float: none !important;
    }

    .d-sm-inline {
        display: inline !important;
    }

    .d-sm-inline-block {
        display: inline-block !important;
    }

    .d-sm-block {
        display: block !important;
    }

    .d-sm-grid {
        display: grid !important;
    }

    .d-sm-table {
        display: table !important;
    }

    .d-sm-table-row {
        display: table-row !important;
    }

    .d-sm-table-cell {
        display: table-cell !important;
    }

    .d-sm-flex {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-sm-inline-flex {
        display: -webkit-inline-box !important;
        display: -webkit-inline-flex !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    .d-sm-none {
        display: none !important;
    }

    .flex-sm-fill {
        -webkit-box-flex: 1 !important;
        -webkit-flex: 1 1 auto !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
    }

    .flex-sm-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .flex-sm-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .flex-sm-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
    }

    .flex-sm-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
    }

    .flex-sm-grow-0 {
        -webkit-box-flex: 0 !important;
        -webkit-flex-grow: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
    }

    .flex-sm-grow-1 {
        -webkit-box-flex: 1 !important;
        -webkit-flex-grow: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
    }

    .flex-sm-shrink-0 {
        -webkit-flex-shrink: 0 !important;
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
    }

    .flex-sm-shrink-1 {
        -webkit-flex-shrink: 1 !important;
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
    }

    .flex-sm-wrap {
        -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }

    .flex-sm-nowrap {
        -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
    }

    .flex-sm-wrap-reverse {
        -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-sm-start {
        -webkit-box-pack: start !important;
        -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important;
    }

    .justify-content-sm-end {
        -webkit-box-pack: end !important;
        -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
    }

    .justify-content-sm-center {
        -webkit-box-pack: center !important;
        -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .justify-content-sm-between {
        -webkit-box-pack: justify !important;
        -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .justify-content-sm-around {
        -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
    }

    .justify-content-sm-evenly {
        -webkit-box-pack: space-evenly !important;
        -webkit-justify-content: space-evenly !important;
        -ms-flex-pack: space-evenly !important;
        justify-content: space-evenly !important;
    }

    .align-items-sm-start {
        -webkit-box-align: start !important;
        -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important;
    }

    .align-items-sm-end {
        -webkit-box-align: end !important;
        -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important;
    }

    .align-items-sm-center {
        -webkit-box-align: center !important;
        -webkit-align-items: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .align-items-sm-baseline {
        -webkit-box-align: baseline !important;
        -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important;
    }

    .align-items-sm-stretch {
        -webkit-box-align: stretch !important;
        -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important;
    }

    .align-content-sm-start {
        -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
    }

    .align-content-sm-end {
        -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
    }

    .align-content-sm-center {
        -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
        align-content: center !important;
    }

    .align-content-sm-between {
        -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
    }

    .align-content-sm-around {
        -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
    }

    .align-content-sm-stretch {
        -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
    }

    .align-self-sm-auto {
        -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
        align-self: auto !important;
    }

    .align-self-sm-start {
        -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
        align-self: flex-start !important;
    }

    .align-self-sm-end {
        -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
        align-self: flex-end !important;
    }

    .align-self-sm-center {
        -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
        align-self: center !important;
    }

    .align-self-sm-baseline {
        -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
    }

    .align-self-sm-stretch {
        -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important;
    }

    .order-sm-first {
        -webkit-box-ordinal-group: 0 !important;
        -webkit-order: -1 !important;
        -ms-flex-order: -1 !important;
        order: -1 !important;
    }

    .order-sm-0 {
        -webkit-box-ordinal-group: 1 !important;
        -webkit-order: 0 !important;
        -ms-flex-order: 0 !important;
        order: 0 !important;
    }

    .order-sm-1 {
        -webkit-box-ordinal-group: 2 !important;
        -webkit-order: 1 !important;
        -ms-flex-order: 1 !important;
        order: 1 !important;
    }

    .order-sm-2 {
        -webkit-box-ordinal-group: 3 !important;
        -webkit-order: 2 !important;
        -ms-flex-order: 2 !important;
        order: 2 !important;
    }

    .order-sm-3 {
        -webkit-box-ordinal-group: 4 !important;
        -webkit-order: 3 !important;
        -ms-flex-order: 3 !important;
        order: 3 !important;
    }

    .order-sm-4 {
        -webkit-box-ordinal-group: 5 !important;
        -webkit-order: 4 !important;
        -ms-flex-order: 4 !important;
        order: 4 !important;
    }

    .order-sm-5 {
        -webkit-box-ordinal-group: 6 !important;
        -webkit-order: 5 !important;
        -ms-flex-order: 5 !important;
        order: 5 !important;
    }

    .order-sm-last {
        -webkit-box-ordinal-group: 7 !important;
        -webkit-order: 6 !important;
        -ms-flex-order: 6 !important;
        order: 6 !important;
    }

    .m-sm-0 {
        margin: 0 !important;
    }

    .m-sm-1 {
        margin: 0.25rem !important;
    }

    .m-sm-2 {
        margin: 0.5rem !important;
    }

    .m-sm-3 {
        margin: 1rem !important;
    }

    .m-sm-4 {
        margin: 1.5rem !important;
    }

    .m-sm-5 {
        margin: 2rem !important;
    }

    .m-sm-auto {
        margin: auto !important;
    }

    .mx-sm-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-sm-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-sm-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-sm-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-sm-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

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

    .mx-sm-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-sm-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-sm-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-sm-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-sm-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-sm-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

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

    .my-sm-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-sm-0 {
        margin-top: 0 !important;
    }

    .mt-sm-1 {
        margin-top: 0.25rem !important;
    }

    .mt-sm-2 {
        margin-top: 0.5rem !important;
    }

    .mt-sm-3 {
        margin-top: 1rem !important;
    }

    .mt-sm-4 {
        margin-top: 1.5rem !important;
    }

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

    .mt-sm-auto {
        margin-top: auto !important;
    }

    .me-sm-0 {
        margin-right: 0 !important;
    }

    .me-sm-1 {
        margin-right: 0.25rem !important;
    }

    .me-sm-2 {
        margin-right: 0.5rem !important;
    }

    .me-sm-3 {
        margin-right: 1rem !important;
    }

    .me-sm-4 {
        margin-right: 1.5rem !important;
    }

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

    .me-sm-auto {
        margin-right: auto !important;
    }

    .mb-sm-0 {
        margin-bottom: 0 !important;
    }

    .mb-sm-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-sm-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-sm-3 {
        margin-bottom: 1rem !important;
    }

    .mb-sm-4 {
        margin-bottom: 1.5rem !important;
    }

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

    .mb-sm-auto {
        margin-bottom: auto !important;
    }

    .ms-sm-0 {
        margin-left: 0 !important;
    }

    .ms-sm-1 {
        margin-left: 0.25rem !important;
    }

    .ms-sm-2 {
        margin-left: 0.5rem !important;
    }

    .ms-sm-3 {
        margin-left: 1rem !important;
    }

    .ms-sm-4 {
        margin-left: 1.5rem !important;
    }

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

    .ms-sm-auto {
        margin-left: auto !important;
    }

    .p-sm-0 {
        padding: 0 !important;
    }

    .p-sm-1 {
        padding: 0.25rem !important;
    }

    .p-sm-2 {
        padding: 0.5rem !important;
    }

    .p-sm-3 {
        padding: 1rem !important;
    }

    .p-sm-4 {
        padding: 1.5rem !important;
    }

    .p-sm-5 {
        padding: 2rem !important;
    }

    .px-sm-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-sm-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-sm-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-sm-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-sm-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

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

    .py-sm-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-sm-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-sm-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-sm-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-sm-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

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

    .pt-sm-0 {
        padding-top: 0 !important;
    }

    .pt-sm-1 {
        padding-top: 0.25rem !important;
    }

    .pt-sm-2 {
        padding-top: 0.5rem !important;
    }

    .pt-sm-3 {
        padding-top: 1rem !important;
    }

    .pt-sm-4 {
        padding-top: 1.5rem !important;
    }

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

    .pe-sm-0 {
        padding-right: 0 !important;
    }

    .pe-sm-1 {
        padding-right: 0.25rem !important;
    }

    .pe-sm-2 {
        padding-right: 0.5rem !important;
    }

    .pe-sm-3 {
        padding-right: 1rem !important;
    }

    .pe-sm-4 {
        padding-right: 1.5rem !important;
    }

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

    .pb-sm-0 {
        padding-bottom: 0 !important;
    }

    .pb-sm-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-sm-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-sm-3 {
        padding-bottom: 1rem !important;
    }

    .pb-sm-4 {
        padding-bottom: 1.5rem !important;
    }

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

    .ps-sm-0 {
        padding-left: 0 !important;
    }

    .ps-sm-1 {
        padding-left: 0.25rem !important;
    }

    .ps-sm-2 {
        padding-left: 0.5rem !important;
    }

    .ps-sm-3 {
        padding-left: 1rem !important;
    }

    .ps-sm-4 {
        padding-left: 1.5rem !important;
    }

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

    .gap-sm-0 {
        gap: 0 !important;
    }

    .gap-sm-1 {
        gap: 0.25rem !important;
    }

    .gap-sm-2 {
        gap: 0.5rem !important;
    }

    .gap-sm-3 {
        gap: 1rem !important;
    }

    .gap-sm-4 {
        gap: 1.5rem !important;
    }

    .gap-sm-5 {
        gap: 2rem !important;
    }

    .text-sm-start {
        text-align: left !important;
    }

    .text-sm-end {
        text-align: right !important;
    }

    .text-sm-center {
        text-align: center !important;
    }
}

@media (min-width: 768px) {
    .float-md-start {
        float: left !important;
    }

    .float-md-end {
        float: right !important;
    }

    .float-md-none {
        float: none !important;
    }

    .d-md-inline {
        display: inline !important;
    }

    .d-md-inline-block {
        display: inline-block !important;
    }

    .d-md-block {
        display: block !important;
    }

    .d-md-grid {
        display: grid !important;
    }

    .d-md-table {
        display: table !important;
    }

    .d-md-table-row {
        display: table-row !important;
    }

    .d-md-table-cell {
        display: table-cell !important;
    }

    .d-md-flex {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-md-inline-flex {
        display: -webkit-inline-box !important;
        display: -webkit-inline-flex !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    .d-md-none {
        display: none !important;
    }

    .flex-md-fill {
        -webkit-box-flex: 1 !important;
        -webkit-flex: 1 1 auto !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
    }

    .flex-md-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .flex-md-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .flex-md-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
    }

    .flex-md-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
    }

    .flex-md-grow-0 {
        -webkit-box-flex: 0 !important;
        -webkit-flex-grow: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
    }

    .flex-md-grow-1 {
        -webkit-box-flex: 1 !important;
        -webkit-flex-grow: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
    }

    .flex-md-shrink-0 {
        -webkit-flex-shrink: 0 !important;
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
    }

    .flex-md-shrink-1 {
        -webkit-flex-shrink: 1 !important;
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
    }

    .flex-md-wrap {
        -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }

    .flex-md-nowrap {
        -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
    }

    .flex-md-wrap-reverse {
        -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-md-start {
        -webkit-box-pack: start !important;
        -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important;
    }

    .justify-content-md-end {
        -webkit-box-pack: end !important;
        -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
    }

    .justify-content-md-center {
        -webkit-box-pack: center !important;
        -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .justify-content-md-between {
        -webkit-box-pack: justify !important;
        -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .justify-content-md-around {
        -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
    }

    .justify-content-md-evenly {
        -webkit-box-pack: space-evenly !important;
        -webkit-justify-content: space-evenly !important;
        -ms-flex-pack: space-evenly !important;
        justify-content: space-evenly !important;
    }

    .align-items-md-start {
        -webkit-box-align: start !important;
        -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important;
    }

    .align-items-md-end {
        -webkit-box-align: end !important;
        -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important;
    }

    .align-items-md-center {
        -webkit-box-align: center !important;
        -webkit-align-items: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .align-items-md-baseline {
        -webkit-box-align: baseline !important;
        -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important;
    }

    .align-items-md-stretch {
        -webkit-box-align: stretch !important;
        -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important;
    }

    .align-content-md-start {
        -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
    }

    .align-content-md-end {
        -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
    }

    .align-content-md-center {
        -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
        align-content: center !important;
    }

    .align-content-md-between {
        -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
    }

    .align-content-md-around {
        -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
    }

    .align-content-md-stretch {
        -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
    }

    .align-self-md-auto {
        -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
        align-self: auto !important;
    }

    .align-self-md-start {
        -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
        align-self: flex-start !important;
    }

    .align-self-md-end {
        -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
        align-self: flex-end !important;
    }

    .align-self-md-center {
        -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
        align-self: center !important;
    }

    .align-self-md-baseline {
        -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
    }

    .align-self-md-stretch {
        -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important;
    }

    .order-md-first {
        -webkit-box-ordinal-group: 0 !important;
        -webkit-order: -1 !important;
        -ms-flex-order: -1 !important;
        order: -1 !important;
    }

    .order-md-0 {
        -webkit-box-ordinal-group: 1 !important;
        -webkit-order: 0 !important;
        -ms-flex-order: 0 !important;
        order: 0 !important;
    }

    .order-md-1 {
        -webkit-box-ordinal-group: 2 !important;
        -webkit-order: 1 !important;
        -ms-flex-order: 1 !important;
        order: 1 !important;
    }

    .order-md-2 {
        -webkit-box-ordinal-group: 3 !important;
        -webkit-order: 2 !important;
        -ms-flex-order: 2 !important;
        order: 2 !important;
    }

    .order-md-3 {
        -webkit-box-ordinal-group: 4 !important;
        -webkit-order: 3 !important;
        -ms-flex-order: 3 !important;
        order: 3 !important;
    }

    .order-md-4 {
        -webkit-box-ordinal-group: 5 !important;
        -webkit-order: 4 !important;
        -ms-flex-order: 4 !important;
        order: 4 !important;
    }

    .order-md-5 {
        -webkit-box-ordinal-group: 6 !important;
        -webkit-order: 5 !important;
        -ms-flex-order: 5 !important;
        order: 5 !important;
    }

    .order-md-last {
        -webkit-box-ordinal-group: 7 !important;
        -webkit-order: 6 !important;
        -ms-flex-order: 6 !important;
        order: 6 !important;
    }

    .m-md-0 {
        margin: 0 !important;
    }

    .m-md-1 {
        margin: 0.25rem !important;
    }

    .m-md-2 {
        margin: 0.5rem !important;
    }

    .m-md-3 {
        margin: 1rem !important;
    }

    .m-md-4 {
        margin: 1.5rem !important;
    }

    .m-md-5 {
        margin: 2rem !important;
    }

    .m-md-auto {
        margin: auto !important;
    }

    .mx-md-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

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

    .mx-md-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

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

    .mx-md-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-md-5 {
        margin-right: 2rem !important;
        margin-left: 2rem !important;
    }

    .mx-md-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-md-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

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

    .my-md-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

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

    .my-md-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-md-5 {
        margin-top: 2rem !important;
        margin-bottom: 2rem !important;
    }

    .my-md-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-md-0 {
        margin-top: 0 !important;
    }

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

    .mt-md-2 {
        margin-top: 0.5rem !important;
    }

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

    .mt-md-4 {
        margin-top: 1.5rem !important;
    }

    .mt-md-5 {
        margin-top: 2rem !important;
    }

    .mt-md-auto {
        margin-top: auto !important;
    }

    .me-md-0 {
        margin-right: 0 !important;
    }

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

    .me-md-2 {
        margin-right: 0.5rem !important;
    }

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

    .me-md-4 {
        margin-right: 1.5rem !important;
    }

    .me-md-5 {
        margin-right: 2rem !important;
    }

    .me-md-auto {
        margin-right: auto !important;
    }

    .mb-md-0 {
        margin-bottom: 0 !important;
    }

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

    .mb-md-2 {
        margin-bottom: 0.5rem !important;
    }

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

    .mb-md-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-md-5 {
        margin-bottom: 2rem !important;
    }

    .mb-md-auto {
        margin-bottom: auto !important;
    }

    .ms-md-0 {
        margin-left: 0 !important;
    }

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

    .ms-md-2 {
        margin-left: 0.5rem !important;
    }

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

    .ms-md-4 {
        margin-left: 1.5rem !important;
    }

    .ms-md-5 {
        margin-left: 2rem !important;
    }

    .ms-md-auto {
        margin-left: auto !important;
    }

    .p-md-0 {
        padding: 0 !important;
    }

    .p-md-1 {
        padding: 0.25rem !important;
    }

    .p-md-2 {
        padding: 0.5rem !important;
    }

    .p-md-3 {
        padding: 1rem !important;
    }

    .p-md-4 {
        padding: 1.5rem !important;
    }

    .p-md-5 {
        padding: 2rem !important;
    }

    .px-md-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

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

    .px-md-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

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

    .px-md-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-md-5 {
        padding-right: 2rem !important;
        padding-left: 2rem !important;
    }

    .py-md-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

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

    .py-md-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

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

    .py-md-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-md-5 {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }

    .pt-md-0 {
        padding-top: 0 !important;
    }

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

    .pt-md-2 {
        padding-top: 0.5rem !important;
    }

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

    .pt-md-4 {
        padding-top: 1.5rem !important;
    }

    .pt-md-5 {
        padding-top: 2rem !important;
    }

    .pe-md-0 {
        padding-right: 0 !important;
    }

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

    .pe-md-2 {
        padding-right: 0.5rem !important;
    }

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

    .pe-md-4 {
        padding-right: 1.5rem !important;
    }

    .pe-md-5 {
        padding-right: 2rem !important;
    }

    .pb-md-0 {
        padding-bottom: 0 !important;
    }

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

    .pb-md-2 {
        padding-bottom: 0.5rem !important;
    }

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

    .pb-md-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-md-5 {
        padding-bottom: 2rem !important;
    }

    .ps-md-0 {
        padding-left: 0 !important;
    }

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

    .ps-md-2 {
        padding-left: 0.5rem !important;
    }

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

    .ps-md-4 {
        padding-left: 1.5rem !important;
    }

    .ps-md-5 {
        padding-left: 2rem !important;
    }

    .gap-md-0 {
        gap: 0 !important;
    }

    .gap-md-1 {
        gap: 0.25rem !important;
    }

    .gap-md-2 {
        gap: 0.5rem !important;
    }

    .gap-md-3 {
        gap: 1rem !important;
    }

    .gap-md-4 {
        gap: 1.5rem !important;
    }

    .gap-md-5 {
        gap: 2rem !important;
    }

    .text-md-start {
        text-align: left !important;
    }

    .text-md-end {
        text-align: right !important;
    }

    .text-md-center {
        text-align: center !important;
    }
}

@media (min-width: 992px) {
    .float-lg-start {
        float: left !important;
    }

    .float-lg-end {
        float: right !important;
    }

    .float-lg-none {
        float: none !important;
    }

    .d-lg-inline {
        display: inline !important;
    }

    .d-lg-inline-block {
        display: inline-block !important;
    }

    .d-lg-block {
        display: block !important;
    }

    .d-lg-grid {
        display: grid !important;
    }

    .d-lg-table {
        display: table !important;
    }

    .d-lg-table-row {
        display: table-row !important;
    }

    .d-lg-table-cell {
        display: table-cell !important;
    }

    .d-lg-flex {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-lg-inline-flex {
        display: -webkit-inline-box !important;
        display: -webkit-inline-flex !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    .d-lg-none {
        display: none !important;
    }

    .flex-lg-fill {
        -webkit-box-flex: 1 !important;
        -webkit-flex: 1 1 auto !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
    }

    .flex-lg-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .flex-lg-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .flex-lg-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
    }

    .flex-lg-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
    }

    .flex-lg-grow-0 {
        -webkit-box-flex: 0 !important;
        -webkit-flex-grow: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
    }

    .flex-lg-grow-1 {
        -webkit-box-flex: 1 !important;
        -webkit-flex-grow: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
    }

    .flex-lg-shrink-0 {
        -webkit-flex-shrink: 0 !important;
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
    }

    .flex-lg-shrink-1 {
        -webkit-flex-shrink: 1 !important;
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
    }

    .flex-lg-wrap {
        -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }

    .flex-lg-nowrap {
        -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
    }

    .flex-lg-wrap-reverse {
        -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-lg-start {
        -webkit-box-pack: start !important;
        -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important;
    }

    .justify-content-lg-end {
        -webkit-box-pack: end !important;
        -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
    }

    .justify-content-lg-center {
        -webkit-box-pack: center !important;
        -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .justify-content-lg-between {
        -webkit-box-pack: justify !important;
        -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .justify-content-lg-around {
        -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
    }

    .justify-content-lg-evenly {
        -webkit-box-pack: space-evenly !important;
        -webkit-justify-content: space-evenly !important;
        -ms-flex-pack: space-evenly !important;
        justify-content: space-evenly !important;
    }

    .align-items-lg-start {
        -webkit-box-align: start !important;
        -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important;
    }

    .align-items-lg-end {
        -webkit-box-align: end !important;
        -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important;
    }

    .align-items-lg-center {
        -webkit-box-align: center !important;
        -webkit-align-items: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .align-items-lg-baseline {
        -webkit-box-align: baseline !important;
        -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important;
    }

    .align-items-lg-stretch {
        -webkit-box-align: stretch !important;
        -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important;
    }

    .align-content-lg-start {
        -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
    }

    .align-content-lg-end {
        -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
    }

    .align-content-lg-center {
        -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
        align-content: center !important;
    }

    .align-content-lg-between {
        -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
    }

    .align-content-lg-around {
        -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
    }

    .align-content-lg-stretch {
        -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
    }

    .align-self-lg-auto {
        -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
        align-self: auto !important;
    }

    .align-self-lg-start {
        -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
        align-self: flex-start !important;
    }

    .align-self-lg-end {
        -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
        align-self: flex-end !important;
    }

    .align-self-lg-center {
        -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
        align-self: center !important;
    }

    .align-self-lg-baseline {
        -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
    }

    .align-self-lg-stretch {
        -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important;
    }

    .order-lg-first {
        -webkit-box-ordinal-group: 0 !important;
        -webkit-order: -1 !important;
        -ms-flex-order: -1 !important;
        order: -1 !important;
    }

    .order-lg-0 {
        -webkit-box-ordinal-group: 1 !important;
        -webkit-order: 0 !important;
        -ms-flex-order: 0 !important;
        order: 0 !important;
    }

    .order-lg-1 {
        -webkit-box-ordinal-group: 2 !important;
        -webkit-order: 1 !important;
        -ms-flex-order: 1 !important;
        order: 1 !important;
    }

    .order-lg-2 {
        -webkit-box-ordinal-group: 3 !important;
        -webkit-order: 2 !important;
        -ms-flex-order: 2 !important;
        order: 2 !important;
    }

    .order-lg-3 {
        -webkit-box-ordinal-group: 4 !important;
        -webkit-order: 3 !important;
        -ms-flex-order: 3 !important;
        order: 3 !important;
    }

    .order-lg-4 {
        -webkit-box-ordinal-group: 5 !important;
        -webkit-order: 4 !important;
        -ms-flex-order: 4 !important;
        order: 4 !important;
    }

    .order-lg-5 {
        -webkit-box-ordinal-group: 6 !important;
        -webkit-order: 5 !important;
        -ms-flex-order: 5 !important;
        order: 5 !important;
    }

    .order-lg-last {
        -webkit-box-ordinal-group: 7 !important;
        -webkit-order: 6 !important;
        -ms-flex-order: 6 !important;
        order: 6 !important;
    }

    .m-lg-0 {
        margin: 0 !important;
    }

    .m-lg-1 {
        margin: 0.25rem !important;
    }

    .m-lg-2 {
        margin: 0.5rem !important;
    }

    .m-lg-3 {
        margin: 1rem !important;
    }

    .m-lg-4 {
        margin: 1.5rem !important;
    }

    .m-lg-5 {
        margin: 2rem !important;
    }

    .m-lg-auto {
        margin: auto !important;
    }

    .mx-lg-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-lg-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

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

    .mx-lg-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-lg-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

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

    .mx-lg-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-lg-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-lg-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

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

    .my-lg-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-lg-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

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

    .my-lg-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-lg-0 {
        margin-top: 0 !important;
    }

    .mt-lg-1 {
        margin-top: 0.25rem !important;
    }

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

    .mt-lg-3 {
        margin-top: 1rem !important;
    }

    .mt-lg-4 {
        margin-top: 1.5rem !important;
    }

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

    .mt-lg-auto {
        margin-top: auto !important;
    }

    .me-lg-0 {
        margin-right: 0 !important;
    }

    .me-lg-1 {
        margin-right: 0.25rem !important;
    }

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

    .me-lg-3 {
        margin-right: 1rem !important;
    }

    .me-lg-4 {
        margin-right: 1.5rem !important;
    }

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

    .me-lg-auto {
        margin-right: auto !important;
    }

    .mb-lg-0 {
        margin-bottom: 0 !important;
    }

    .mb-lg-1 {
        margin-bottom: 0.25rem !important;
    }

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

    .mb-lg-3 {
        margin-bottom: 1rem !important;
    }

    .mb-lg-4 {
        margin-bottom: 1.5rem !important;
    }

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

    .mb-lg-auto {
        margin-bottom: auto !important;
    }

    .ms-lg-0 {
        margin-left: 0 !important;
    }

    .ms-lg-1 {
        margin-left: 0.25rem !important;
    }

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

    .ms-lg-3 {
        margin-left: 1rem !important;
    }

    .ms-lg-4 {
        margin-left: 1.5rem !important;
    }

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

    .ms-lg-auto {
        margin-left: auto !important;
    }

    .p-lg-0 {
        padding: 0 !important;
    }

    .p-lg-1 {
        padding: 0.25rem !important;
    }

    .p-lg-2 {
        padding: 0.5rem !important;
    }

    .p-lg-3 {
        padding: 1rem !important;
    }

    .p-lg-4 {
        padding: 1.5rem !important;
    }

    .p-lg-5 {
        padding: 2rem !important;
    }

    .px-lg-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-lg-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

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

    .px-lg-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-lg-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

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

    .py-lg-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-lg-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

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

    .py-lg-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-lg-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

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

    .pt-lg-0 {
        padding-top: 0 !important;
    }

    .pt-lg-1 {
        padding-top: 0.25rem !important;
    }

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

    .pt-lg-3 {
        padding-top: 1rem !important;
    }

    .pt-lg-4 {
        padding-top: 1.5rem !important;
    }

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

    .pe-lg-0 {
        padding-right: 0 !important;
    }

    .pe-lg-1 {
        padding-right: 0.25rem !important;
    }

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

    .pe-lg-3 {
        padding-right: 1rem !important;
    }

    .pe-lg-4 {
        padding-right: 1.5rem !important;
    }

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

    .pb-lg-0 {
        padding-bottom: 0 !important;
    }

    .pb-lg-1 {
        padding-bottom: 0.25rem !important;
    }

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

    .pb-lg-3 {
        padding-bottom: 1rem !important;
    }

    .pb-lg-4 {
        padding-bottom: 1.5rem !important;
    }

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

    .ps-lg-0 {
        padding-left: 0 !important;
    }

    .ps-lg-1 {
        padding-left: 0.25rem !important;
    }

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

    .ps-lg-3 {
        padding-left: 1rem !important;
    }

    .ps-lg-4 {
        padding-left: 1.5rem !important;
    }

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

    .gap-lg-0 {
        gap: 0 !important;
    }

    .gap-lg-1 {
        gap: 0.25rem !important;
    }

    .gap-lg-2 {
        gap: 0.5rem !important;
    }

    .gap-lg-3 {
        gap: 1rem !important;
    }

    .gap-lg-4 {
        gap: 1.5rem !important;
    }

    .gap-lg-5 {
        gap: 2rem !important;
    }

    .text-lg-start {
        text-align: left !important;
    }

    .text-lg-end {
        text-align: right !important;
    }

    .text-lg-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .float-xl-start {
        float: left !important;
    }

    .float-xl-end {
        float: right !important;
    }

    .float-xl-none {
        float: none !important;
    }

    .d-xl-inline {
        display: inline !important;
    }

    .d-xl-inline-block {
        display: inline-block !important;
    }

    .d-xl-block {
        display: block !important;
    }

    .d-xl-grid {
        display: grid !important;
    }

    .d-xl-table {
        display: table !important;
    }

    .d-xl-table-row {
        display: table-row !important;
    }

    .d-xl-table-cell {
        display: table-cell !important;
    }

    .d-xl-flex {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-xl-inline-flex {
        display: -webkit-inline-box !important;
        display: -webkit-inline-flex !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    .d-xl-none {
        display: none !important;
    }

    .flex-xl-fill {
        -webkit-box-flex: 1 !important;
        -webkit-flex: 1 1 auto !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
    }

    .flex-xl-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .flex-xl-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .flex-xl-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
    }

    .flex-xl-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
    }

    .flex-xl-grow-0 {
        -webkit-box-flex: 0 !important;
        -webkit-flex-grow: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
    }

    .flex-xl-grow-1 {
        -webkit-box-flex: 1 !important;
        -webkit-flex-grow: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
    }

    .flex-xl-shrink-0 {
        -webkit-flex-shrink: 0 !important;
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
    }

    .flex-xl-shrink-1 {
        -webkit-flex-shrink: 1 !important;
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
    }

    .flex-xl-wrap {
        -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }

    .flex-xl-nowrap {
        -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
    }

    .flex-xl-wrap-reverse {
        -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-xl-start {
        -webkit-box-pack: start !important;
        -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important;
    }

    .justify-content-xl-end {
        -webkit-box-pack: end !important;
        -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
    }

    .justify-content-xl-center {
        -webkit-box-pack: center !important;
        -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .justify-content-xl-between {
        -webkit-box-pack: justify !important;
        -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .justify-content-xl-around {
        -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
    }

    .justify-content-xl-evenly {
        -webkit-box-pack: space-evenly !important;
        -webkit-justify-content: space-evenly !important;
        -ms-flex-pack: space-evenly !important;
        justify-content: space-evenly !important;
    }

    .align-items-xl-start {
        -webkit-box-align: start !important;
        -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important;
    }

    .align-items-xl-end {
        -webkit-box-align: end !important;
        -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important;
    }

    .align-items-xl-center {
        -webkit-box-align: center !important;
        -webkit-align-items: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .align-items-xl-baseline {
        -webkit-box-align: baseline !important;
        -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important;
    }

    .align-items-xl-stretch {
        -webkit-box-align: stretch !important;
        -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important;
    }

    .align-content-xl-start {
        -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
    }

    .align-content-xl-end {
        -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
    }

    .align-content-xl-center {
        -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
        align-content: center !important;
    }

    .align-content-xl-between {
        -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
    }

    .align-content-xl-around {
        -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
    }

    .align-content-xl-stretch {
        -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
    }

    .align-self-xl-auto {
        -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
        align-self: auto !important;
    }

    .align-self-xl-start {
        -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
        align-self: flex-start !important;
    }

    .align-self-xl-end {
        -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
        align-self: flex-end !important;
    }

    .align-self-xl-center {
        -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
        align-self: center !important;
    }

    .align-self-xl-baseline {
        -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
    }

    .align-self-xl-stretch {
        -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important;
    }

    .order-xl-first {
        -webkit-box-ordinal-group: 0 !important;
        -webkit-order: -1 !important;
        -ms-flex-order: -1 !important;
        order: -1 !important;
    }

    .order-xl-0 {
        -webkit-box-ordinal-group: 1 !important;
        -webkit-order: 0 !important;
        -ms-flex-order: 0 !important;
        order: 0 !important;
    }

    .order-xl-1 {
        -webkit-box-ordinal-group: 2 !important;
        -webkit-order: 1 !important;
        -ms-flex-order: 1 !important;
        order: 1 !important;
    }

    .order-xl-2 {
        -webkit-box-ordinal-group: 3 !important;
        -webkit-order: 2 !important;
        -ms-flex-order: 2 !important;
        order: 2 !important;
    }

    .order-xl-3 {
        -webkit-box-ordinal-group: 4 !important;
        -webkit-order: 3 !important;
        -ms-flex-order: 3 !important;
        order: 3 !important;
    }

    .order-xl-4 {
        -webkit-box-ordinal-group: 5 !important;
        -webkit-order: 4 !important;
        -ms-flex-order: 4 !important;
        order: 4 !important;
    }

    .order-xl-5 {
        -webkit-box-ordinal-group: 6 !important;
        -webkit-order: 5 !important;
        -ms-flex-order: 5 !important;
        order: 5 !important;
    }

    .order-xl-last {
        -webkit-box-ordinal-group: 7 !important;
        -webkit-order: 6 !important;
        -ms-flex-order: 6 !important;
        order: 6 !important;
    }

    .m-xl-0 {
        margin: 0 !important;
    }

    .m-xl-1 {
        margin: 0.25rem !important;
    }

    .m-xl-2 {
        margin: 0.5rem !important;
    }

    .m-xl-3 {
        margin: 1rem !important;
    }

    .m-xl-4 {
        margin: 1.5rem !important;
    }

    .m-xl-5 {
        margin: 2rem !important;
    }

    .m-xl-auto {
        margin: auto !important;
    }

    .mx-xl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-xl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-xl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-xl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-xl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

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

    .mx-xl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-xl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-xl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-xl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-xl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-xl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

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

    .my-xl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-xl-0 {
        margin-top: 0 !important;
    }

    .mt-xl-1 {
        margin-top: 0.25rem !important;
    }

    .mt-xl-2 {
        margin-top: 0.5rem !important;
    }

    .mt-xl-3 {
        margin-top: 1rem !important;
    }

    .mt-xl-4 {
        margin-top: 1.5rem !important;
    }

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

    .mt-xl-auto {
        margin-top: auto !important;
    }

    .me-xl-0 {
        margin-right: 0 !important;
    }

    .me-xl-1 {
        margin-right: 0.25rem !important;
    }

    .me-xl-2 {
        margin-right: 0.5rem !important;
    }

    .me-xl-3 {
        margin-right: 1rem !important;
    }

    .me-xl-4 {
        margin-right: 1.5rem !important;
    }

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

    .me-xl-auto {
        margin-right: auto !important;
    }

    .mb-xl-0 {
        margin-bottom: 0 !important;
    }

    .mb-xl-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-xl-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-xl-3 {
        margin-bottom: 1rem !important;
    }

    .mb-xl-4 {
        margin-bottom: 1.5rem !important;
    }

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

    .mb-xl-auto {
        margin-bottom: auto !important;
    }

    .ms-xl-0 {
        margin-left: 0 !important;
    }

    .ms-xl-1 {
        margin-left: 0.25rem !important;
    }

    .ms-xl-2 {
        margin-left: 0.5rem !important;
    }

    .ms-xl-3 {
        margin-left: 1rem !important;
    }

    .ms-xl-4 {
        margin-left: 1.5rem !important;
    }

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

    .ms-xl-auto {
        margin-left: auto !important;
    }

    .p-xl-0 {
        padding: 0 !important;
    }

    .p-xl-1 {
        padding: 0.25rem !important;
    }

    .p-xl-2 {
        padding: 0.5rem !important;
    }

    .p-xl-3 {
        padding: 1rem !important;
    }

    .p-xl-4 {
        padding: 1.5rem !important;
    }

    .p-xl-5 {
        padding: 2rem !important;
    }

    .px-xl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-xl-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-xl-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-xl-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-xl-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

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

    .py-xl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-xl-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-xl-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-xl-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-xl-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

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

    .pt-xl-0 {
        padding-top: 0 !important;
    }

    .pt-xl-1 {
        padding-top: 0.25rem !important;
    }

    .pt-xl-2 {
        padding-top: 0.5rem !important;
    }

    .pt-xl-3 {
        padding-top: 1rem !important;
    }

    .pt-xl-4 {
        padding-top: 1.5rem !important;
    }

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

    .pe-xl-0 {
        padding-right: 0 !important;
    }

    .pe-xl-1 {
        padding-right: 0.25rem !important;
    }

    .pe-xl-2 {
        padding-right: 0.5rem !important;
    }

    .pe-xl-3 {
        padding-right: 1rem !important;
    }

    .pe-xl-4 {
        padding-right: 1.5rem !important;
    }

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

    .pb-xl-0 {
        padding-bottom: 0 !important;
    }

    .pb-xl-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-xl-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-xl-3 {
        padding-bottom: 1rem !important;
    }

    .pb-xl-4 {
        padding-bottom: 1.5rem !important;
    }

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

    .ps-xl-0 {
        padding-left: 0 !important;
    }

    .ps-xl-1 {
        padding-left: 0.25rem !important;
    }

    .ps-xl-2 {
        padding-left: 0.5rem !important;
    }

    .ps-xl-3 {
        padding-left: 1rem !important;
    }

    .ps-xl-4 {
        padding-left: 1.5rem !important;
    }

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

    .gap-xl-0 {
        gap: 0 !important;
    }

    .gap-xl-1 {
        gap: 0.25rem !important;
    }

    .gap-xl-2 {
        gap: 0.5rem !important;
    }

    .gap-xl-3 {
        gap: 1rem !important;
    }

    .gap-xl-4 {
        gap: 1.5rem !important;
    }

    .gap-xl-5 {
        gap: 2rem !important;
    }

    .text-xl-start {
        text-align: left !important;
    }

    .text-xl-end {
        text-align: right !important;
    }

    .text-xl-center {
        text-align: center !important;
    }
}

@media (min-width: 1600px) {
    .float-xxl-start {
        float: left !important;
    }

    .float-xxl-end {
        float: right !important;
    }

    .float-xxl-none {
        float: none !important;
    }

    .d-xxl-inline {
        display: inline !important;
    }

    .d-xxl-inline-block {
        display: inline-block !important;
    }

    .d-xxl-block {
        display: block !important;
    }

    .d-xxl-grid {
        display: grid !important;
    }

    .d-xxl-table {
        display: table !important;
    }

    .d-xxl-table-row {
        display: table-row !important;
    }

    .d-xxl-table-cell {
        display: table-cell !important;
    }

    .d-xxl-flex {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-xxl-inline-flex {
        display: -webkit-inline-box !important;
        display: -webkit-inline-flex !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    .d-xxl-none {
        display: none !important;
    }

    .flex-xxl-fill {
        -webkit-box-flex: 1 !important;
        -webkit-flex: 1 1 auto !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important;
    }

    .flex-xxl-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important;
    }

    .flex-xxl-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
    }

    .flex-xxl-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important;
    }

    .flex-xxl-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important;
    }

    .flex-xxl-grow-0 {
        -webkit-box-flex: 0 !important;
        -webkit-flex-grow: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important;
    }

    .flex-xxl-grow-1 {
        -webkit-box-flex: 1 !important;
        -webkit-flex-grow: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important;
    }

    .flex-xxl-shrink-0 {
        -webkit-flex-shrink: 0 !important;
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important;
    }

    .flex-xxl-shrink-1 {
        -webkit-flex-shrink: 1 !important;
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important;
    }

    .flex-xxl-wrap {
        -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important;
    }

    .flex-xxl-nowrap {
        -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important;
    }

    .flex-xxl-wrap-reverse {
        -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important;
    }

    .justify-content-xxl-start {
        -webkit-box-pack: start !important;
        -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important;
    }

    .justify-content-xxl-end {
        -webkit-box-pack: end !important;
        -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
    }

    .justify-content-xxl-center {
        -webkit-box-pack: center !important;
        -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .justify-content-xxl-between {
        -webkit-box-pack: justify !important;
        -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .justify-content-xxl-around {
        -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important;
    }

    .justify-content-xxl-evenly {
        -webkit-box-pack: space-evenly !important;
        -webkit-justify-content: space-evenly !important;
        -ms-flex-pack: space-evenly !important;
        justify-content: space-evenly !important;
    }

    .align-items-xxl-start {
        -webkit-box-align: start !important;
        -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important;
    }

    .align-items-xxl-end {
        -webkit-box-align: end !important;
        -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important;
    }

    .align-items-xxl-center {
        -webkit-box-align: center !important;
        -webkit-align-items: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .align-items-xxl-baseline {
        -webkit-box-align: baseline !important;
        -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important;
    }

    .align-items-xxl-stretch {
        -webkit-box-align: stretch !important;
        -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important;
    }

    .align-content-xxl-start {
        -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important;
    }

    .align-content-xxl-end {
        -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important;
    }

    .align-content-xxl-center {
        -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
        align-content: center !important;
    }

    .align-content-xxl-between {
        -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important;
    }

    .align-content-xxl-around {
        -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important;
    }

    .align-content-xxl-stretch {
        -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important;
    }

    .align-self-xxl-auto {
        -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
        align-self: auto !important;
    }

    .align-self-xxl-start {
        -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
        align-self: flex-start !important;
    }

    .align-self-xxl-end {
        -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
        align-self: flex-end !important;
    }

    .align-self-xxl-center {
        -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
        align-self: center !important;
    }

    .align-self-xxl-baseline {
        -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important;
    }

    .align-self-xxl-stretch {
        -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important;
    }

    .order-xxl-first {
        -webkit-box-ordinal-group: 0 !important;
        -webkit-order: -1 !important;
        -ms-flex-order: -1 !important;
        order: -1 !important;
    }

    .order-xxl-0 {
        -webkit-box-ordinal-group: 1 !important;
        -webkit-order: 0 !important;
        -ms-flex-order: 0 !important;
        order: 0 !important;
    }

    .order-xxl-1 {
        -webkit-box-ordinal-group: 2 !important;
        -webkit-order: 1 !important;
        -ms-flex-order: 1 !important;
        order: 1 !important;
    }

    .order-xxl-2 {
        -webkit-box-ordinal-group: 3 !important;
        -webkit-order: 2 !important;
        -ms-flex-order: 2 !important;
        order: 2 !important;
    }

    .order-xxl-3 {
        -webkit-box-ordinal-group: 4 !important;
        -webkit-order: 3 !important;
        -ms-flex-order: 3 !important;
        order: 3 !important;
    }

    .order-xxl-4 {
        -webkit-box-ordinal-group: 5 !important;
        -webkit-order: 4 !important;
        -ms-flex-order: 4 !important;
        order: 4 !important;
    }

    .order-xxl-5 {
        -webkit-box-ordinal-group: 6 !important;
        -webkit-order: 5 !important;
        -ms-flex-order: 5 !important;
        order: 5 !important;
    }

    .order-xxl-last {
        -webkit-box-ordinal-group: 7 !important;
        -webkit-order: 6 !important;
        -ms-flex-order: 6 !important;
        order: 6 !important;
    }

    .m-xxl-0 {
        margin: 0 !important;
    }

    .m-xxl-1 {
        margin: 0.25rem !important;
    }

    .m-xxl-2 {
        margin: 0.5rem !important;
    }

    .m-xxl-3 {
        margin: 1rem !important;
    }

    .m-xxl-4 {
        margin: 1.5rem !important;
    }

    .m-xxl-5 {
        margin: 2rem !important;
    }

    .m-xxl-auto {
        margin: auto !important;
    }

    .mx-xxl-0 {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .mx-xxl-1 {
        margin-right: 0.25rem !important;
        margin-left: 0.25rem !important;
    }

    .mx-xxl-2 {
        margin-right: 0.5rem !important;
        margin-left: 0.5rem !important;
    }

    .mx-xxl-3 {
        margin-right: 1rem !important;
        margin-left: 1rem !important;
    }

    .mx-xxl-4 {
        margin-right: 1.5rem !important;
        margin-left: 1.5rem !important;
    }

    .mx-xxl-5 {
        margin-right: 2rem !important;
        margin-left: 2rem !important;
    }

    .mx-xxl-auto {
        margin-right: auto !important;
        margin-left: auto !important;
    }

    .my-xxl-0 {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .my-xxl-1 {
        margin-top: 0.25rem !important;
        margin-bottom: 0.25rem !important;
    }

    .my-xxl-2 {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .my-xxl-3 {
        margin-top: 1rem !important;
        margin-bottom: 1rem !important;
    }

    .my-xxl-4 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }

    .my-xxl-5 {
        margin-top: 2rem !important;
        margin-bottom: 2rem !important;
    }

    .my-xxl-auto {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .mt-xxl-0 {
        margin-top: 0 !important;
    }

    .mt-xxl-1 {
        margin-top: 0.25rem !important;
    }

    .mt-xxl-2 {
        margin-top: 0.5rem !important;
    }

    .mt-xxl-3 {
        margin-top: 1rem !important;
    }

    .mt-xxl-4 {
        margin-top: 1.5rem !important;
    }

    .mt-xxl-5 {
        margin-top: 2rem !important;
    }

    .mt-xxl-auto {
        margin-top: auto !important;
    }

    .me-xxl-0 {
        margin-right: 0 !important;
    }

    .me-xxl-1 {
        margin-right: 0.25rem !important;
    }

    .me-xxl-2 {
        margin-right: 0.5rem !important;
    }

    .me-xxl-3 {
        margin-right: 1rem !important;
    }

    .me-xxl-4 {
        margin-right: 1.5rem !important;
    }

    .me-xxl-5 {
        margin-right: 2rem !important;
    }

    .me-xxl-auto {
        margin-right: auto !important;
    }

    .mb-xxl-0 {
        margin-bottom: 0 !important;
    }

    .mb-xxl-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-xxl-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-xxl-3 {
        margin-bottom: 1rem !important;
    }

    .mb-xxl-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-xxl-5 {
        margin-bottom: 2rem !important;
    }

    .mb-xxl-auto {
        margin-bottom: auto !important;
    }

    .ms-xxl-0 {
        margin-left: 0 !important;
    }

    .ms-xxl-1 {
        margin-left: 0.25rem !important;
    }

    .ms-xxl-2 {
        margin-left: 0.5rem !important;
    }

    .ms-xxl-3 {
        margin-left: 1rem !important;
    }

    .ms-xxl-4 {
        margin-left: 1.5rem !important;
    }

    .ms-xxl-5 {
        margin-left: 2rem !important;
    }

    .ms-xxl-auto {
        margin-left: auto !important;
    }

    .p-xxl-0 {
        padding: 0 !important;
    }

    .p-xxl-1 {
        padding: 0.25rem !important;
    }

    .p-xxl-2 {
        padding: 0.5rem !important;
    }

    .p-xxl-3 {
        padding: 1rem !important;
    }

    .p-xxl-4 {
        padding: 1.5rem !important;
    }

    .p-xxl-5 {
        padding: 2rem !important;
    }

    .px-xxl-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-xxl-1 {
        padding-right: 0.25rem !important;
        padding-left: 0.25rem !important;
    }

    .px-xxl-2 {
        padding-right: 0.5rem !important;
        padding-left: 0.5rem !important;
    }

    .px-xxl-3 {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .px-xxl-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-xxl-5 {
        padding-right: 2rem !important;
        padding-left: 2rem !important;
    }

    .py-xxl-0 {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .py-xxl-1 {
        padding-top: 0.25rem !important;
        padding-bottom: 0.25rem !important;
    }

    .py-xxl-2 {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }

    .py-xxl-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-xxl-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-xxl-5 {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }

    .pt-xxl-0 {
        padding-top: 0 !important;
    }

    .pt-xxl-1 {
        padding-top: 0.25rem !important;
    }

    .pt-xxl-2 {
        padding-top: 0.5rem !important;
    }

    .pt-xxl-3 {
        padding-top: 1rem !important;
    }

    .pt-xxl-4 {
        padding-top: 1.5rem !important;
    }

    .pt-xxl-5 {
        padding-top: 2rem !important;
    }

    .pe-xxl-0 {
        padding-right: 0 !important;
    }

    .pe-xxl-1 {
        padding-right: 0.25rem !important;
    }

    .pe-xxl-2 {
        padding-right: 0.5rem !important;
    }

    .pe-xxl-3 {
        padding-right: 1rem !important;
    }

    .pe-xxl-4 {
        padding-right: 1.5rem !important;
    }

    .pe-xxl-5 {
        padding-right: 2rem !important;
    }

    .pb-xxl-0 {
        padding-bottom: 0 !important;
    }

    .pb-xxl-1 {
        padding-bottom: 0.25rem !important;
    }

    .pb-xxl-2 {
        padding-bottom: 0.5rem !important;
    }

    .pb-xxl-3 {
        padding-bottom: 1rem !important;
    }

    .pb-xxl-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-xxl-5 {
        padding-bottom: 2rem !important;
    }

    .ps-xxl-0 {
        padding-left: 0 !important;
    }

    .ps-xxl-1 {
        padding-left: 0.25rem !important;
    }

    .ps-xxl-2 {
        padding-left: 0.5rem !important;
    }

    .ps-xxl-3 {
        padding-left: 1rem !important;
    }

    .ps-xxl-4 {
        padding-left: 1.5rem !important;
    }

    .ps-xxl-5 {
        padding-left: 2rem !important;
    }

    .gap-xxl-0 {
        gap: 0 !important;
    }

    .gap-xxl-1 {
        gap: 0.25rem !important;
    }

    .gap-xxl-2 {
        gap: 0.5rem !important;
    }

    .gap-xxl-3 {
        gap: 1rem !important;
    }

    .gap-xxl-4 {
        gap: 1.5rem !important;
    }

    .gap-xxl-5 {
        gap: 2rem !important;
    }

    .text-xxl-start {
        text-align: left !important;
    }

    .text-xxl-end {
        text-align: right !important;
    }

    .text-xxl-center {
        text-align: center !important;
    }
}

@media (min-width: 1200px) {
    .fs-1 {
        font-size: 2.488rem !important;
    }

    .fs-2 {
        font-size: 2.074rem !important;
    }

    .fs-3 {
        font-size: 1.728rem !important;
    }

    .fs-4 {
        font-size: 1.44rem !important;
    }
}

@media print {
    .d-print-inline {
        display: inline !important;
    }

    .d-print-inline-block {
        display: inline-block !important;
    }

    .d-print-block {
        display: block !important;
    }

    .d-print-grid {
        display: grid !important;
    }

    .d-print-table {
        display: table !important;
    }

    .d-print-table-row {
        display: table-row !important;
    }

    .d-print-table-cell {
        display: table-cell !important;
    }

    .d-print-flex {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-print-inline-flex {
        display: -webkit-inline-box !important;
        display: -webkit-inline-flex !important;
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    .d-print-none {
        display: none !important;
    }
}

.theme-fs-sm {
    font-size: 14px;
}

.theme-fs-md {
    font-size: 16px;
}

.theme-fs-lg {
    font-size: 18px;
}

.custom-accordion .accordion-button {
    border: 0;
    background: inherit;
}

.custom-accordion .accordion-button:not(.collapsed) {
    background: inherit;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.custom-accordion .accordion-button:focus {
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: inherit;
}

.custom-accordion.iq-accordion-card .accordion-button {
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
}

.custom-accordion.iq-accordion-card .accordion-item {
    margin-bottom: 2rem;
}

.custom-accordion .accordion-item {
    border: 0;
    background: #fff;
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
}

.accordion .accordion-item .accordion-header {
    -webkit-border-radius: 0.6rem;
    border-radius: 0.6rem;
}

.alert-primary {
    --bs-alert-color: #4e0f92;
    --bs-alert-bg: #e2d0f6;
    --bs-alert-border-color: #0071e3;
}

.alert-primary .alert-link {
    color: #3e0c75;
}

.alert-secondary {
    --bs-alert-color: #787384;
    --bs-alert-bg: #eeedf2;
    --bs-alert-border-color: #aca4bc;
}

.alert-secondary .alert-link {
    color: #605c6a;
}

.alert-success {
    --bs-alert-color: #12703a;
    --bs-alert-bg: #d1ecdd;
    --bs-alert-border-color: #1aa053;
}

.alert-success .alert-link {
    color: #0e5a2e;
}

.alert-info {
    --bs-alert-color: #067c82;
    --bs-alert-bg: #ceeff1;
    --bs-alert-border-color: #08b1ba;
}

.alert-info .alert-link {
    color: #056368;
}

.alert-warning {
    --bs-alert-color: #a94a13;
    --bs-alert-bg: #fce1d1;
    --bs-alert-border-color: #f16a1b;
}

.alert-warning .alert-link {
    color: #873b0f;
}

.alert-danger {
    --bs-alert-color: #862317;
    --bs-alert-bg: #f2d6d3;
    --bs-alert-border-color: #c03221;
}

.alert-danger .alert-link {
    color: #6b1c12;
}

.alert-light {
    --bs-alert-color: #434445;
    --bs-alert-bg: #f8f9fa;
    --bs-alert-border-color: #dee2e6;
}

.alert-light .alert-link {
    color: #363637;
}

.alert-dark {
    --bs-alert-color: #0f141e;
    --bs-alert-bg: #d0d2d5;
    --bs-alert-border-color: #161d2b;
}

.alert-dark .alert-link {
    color: #0c1018;
}

.alert-tertiray {
    --bs-alert-color: #134838;
    --bs-alert-bg: #d9fcf1;
    --bs-alert-border-color: #3ff0b9;
}

.alert-tertiray .alert-link {
    color: #0f3a2d;
}

.alert-gray {
    --bs-alert-color: #33383d;
    --bs-alert-bg: #dbdcdd;
    --bs-alert-border-color: #495057;
}

.alert-gray .alert-link {
    color: #292d31;
}

.alert-solid.alert-primary {
    --bs-alert-color: #fff;
    --bs-alert-bg: #0071e3;
    --bs-alert-border-color: #0071e3;
}

.alert-solid.alert-primary .alert-link {
    color: #ccc;
}

.alert-solid.alert-secondary {
    --bs-alert-color: #fff;
    --bs-alert-bg: #aca4bc;
    --bs-alert-border-color: #aca4bc;
}

.alert-solid.alert-secondary .alert-link {
    color: #ccc;
}

.alert-solid.alert-success {
    --bs-alert-color: #fff;
    --bs-alert-bg: #1aa053;
    --bs-alert-border-color: #1aa053;
}

.alert-solid.alert-success .alert-link {
    color: #ccc;
}

.alert-solid.alert-info {
    --bs-alert-color: #fff;
    --bs-alert-bg: #08b1ba;
    --bs-alert-border-color: #08b1ba;
}

.alert-solid.alert-info .alert-link {
    color: #ccc;
}

.alert-solid.alert-warning {
    --bs-alert-color: #fff;
    --bs-alert-bg: #f16a1b;
    --bs-alert-border-color: #f16a1b;
}

.alert-solid.alert-warning .alert-link {
    color: #ccc;
}

.alert-solid.alert-danger {
    --bs-alert-color: #fff;
    --bs-alert-bg: #c03221;
    --bs-alert-border-color: #c03221;
}

.alert-solid.alert-danger .alert-link {
    color: #ccc;
}

.alert-solid.alert-light {
    --bs-alert-color: #fff;
    --bs-alert-bg: #dee2e6;
    --bs-alert-border-color: #dee2e6;
}

.alert-solid.alert-light .alert-link {
    color: #ccc;
}

.alert-solid.alert-dark {
    --bs-alert-color: #fff;
    --bs-alert-bg: #161d2b;
    --bs-alert-border-color: #161d2b;
}

.alert-solid.alert-dark .alert-link {
    color: #ccc;
}

.alert-solid.alert-tertiray {
    --bs-alert-color: #fff;
    --bs-alert-bg: #3ff0b9;
    --bs-alert-border-color: #3ff0b9;
}

.alert-solid.alert-tertiray .alert-link {
    color: #ccc;
}

.alert-solid.alert-gray {
    --bs-alert-color: #fff;
    --bs-alert-bg: #495057;
    --bs-alert-border-color: #495057;
}

.alert-solid.alert-gray .alert-link {
    color: #ccc;
}

.alert-left {
    border: 0;
    border-left: 4px solid;
}

.alert-left.alert-primary {
    border-color: #0071e3;
}

.alert-left.alert-secondary {
    border-color: #aca4bc;
}

.alert-left.alert-success {
    border-color: #1aa053;
}

.alert-left.alert-info {
    border-color: #08b1ba;
}

.alert-left.alert-warning {
    border-color: #f16a1b;
}

.alert-left.alert-danger {
    border-color: #c03221;
}

.alert-left.alert-light {
    border-color: #dee2e6;
}

.alert-left.alert-dark {
    border-color: #161d2b;
}

.alert-left.alert-tertiray {
    border-color: #3ff0b9;
}

.alert-left.alert-gray {
    border-color: #495057;
}

.alert-top {
    border: 0;
    border-top: 4px solid;
}

.alert-top.alert-primary {
    border-color: #0071e3;
}

.alert-top.alert-secondary {
    border-color: #aca4bc;
}

.alert-top.alert-success {
    border-color: #1aa053;
}

.alert-top.alert-info {
    border-color: #08b1ba;
}

.alert-top.alert-warning {
    border-color: #f16a1b;
}

.alert-top.alert-danger {
    border-color: #c03221;
}

.alert-top.alert-light {
    border-color: #dee2e6;
}

.alert-top.alert-dark {
    border-color: #161d2b;
}

.alert-top.alert-tertiray {
    border-color: #3ff0b9;
}

.alert-top.alert-gray {
    border-color: #495057;
}

.alert-right {
    border: 0;
    border-right: 4px solid;
}

.alert-right.alert-primary {
    border-color: #0071e3;
}

.alert-right.alert-secondary {
    border-color: #aca4bc;
}

.alert-right.alert-success {
    border-color: #1aa053;
}

.alert-right.alert-info {
    border-color: #08b1ba;
}

.alert-right.alert-warning {
    border-color: #f16a1b;
}

.alert-right.alert-danger {
    border-color: #c03221;
}

.alert-right.alert-light {
    border-color: #dee2e6;
}

.alert-right.alert-dark {
    border-color: #161d2b;
}

.alert-right.alert-tertiray {
    border-color: #3ff0b9;
}

.alert-right.alert-gray {
    border-color: #495057;
}

.alert-bottom {
    border: 0;
    border-bottom: 4px solid;
}

.alert-bottom.alert-primary {
    border-color: #0071e3;
}

.alert-bottom.alert-secondary {
    border-color: #aca4bc;
}

.alert-bottom.alert-success {
    border-color: #1aa053;
}

.alert-bottom.alert-info {
    border-color: #08b1ba;
}

.alert-bottom.alert-warning {
    border-color: #f16a1b;
}

.alert-bottom.alert-danger {
    border-color: #c03221;
}

.alert-bottom.alert-light {
    border-color: #dee2e6;
}

.alert-bottom.alert-dark {
    border-color: #161d2b;
}

.alert-bottom.alert-tertiray {
    border-color: #3ff0b9;
}

.alert-bottom.alert-gray {
    border-color: #495057;
}

.iq-custom-badge {
    position: relative;
    padding: 0 1rem;
    font-size: 1rem;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 1rem;
}

.iq-custom-badge:last-child {
    margin-right: 0;
}

.iq-custom-badge .iq-cancel-btn {
    position: absolute;
    top: auto;
    right: -0.5rem;
    padding: 0;
    line-height: 0;
}

.carousel-indicators [data-bs-target] {
    -webkit-border-radius: 50rem;
    border-radius: 50rem;
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    -webkit-transition: all 600ms ease;
    -o-transition: all 600ms ease;
    transition: all 600ms ease;
}

.carousel-indicators [data-bs-target].active {
    -webkit-transition: all 600ms ease;
    -o-transition: all 600ms ease;
    transition: all 600ms ease;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

/* Base card styles consolidated - see premium cards section (line 17753+) */
.card .card-header {
    border: 0;
    border-bottom: 1px solid #eee;
}

.card .card-header .header-title .card-title {
    margin-bottom: 0;
}

.card-header .card-title {
    margin-bottom: 0;
}

.card-block {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

.card-block.card-stretch {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
}

.card-block.card-height-half {
    height: -webkit-calc(50% - 2rem);
    height: calc(50% - 2rem);
}

.card-block.card-height {
    height: -webkit-calc(100% - 2rem);
    height: calc(100% - 2rem);
}

.icon-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(9rem, 1fr));
    grid-gap: 1rem;
    color: #aca4bc;
}

.icon-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    border: 1px solid #eee;
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
    cursor: pointer;
    position: relative;
    height: 90px;
    text-align: center;
}

.icon-box .overlay {
    position: absolute;
    display: grid;
    place-content: center;
    height: 100%;
    width: 100%;
    background-color: #fff;
    z-index: 1;
    opacity: 0;
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.icon-box:hover .overlay {
    opacity: 1;
    -webkit-transition: opacity 300ms ease-in-out;
    -o-transition: opacity 300ms ease-in-out;
    transition: opacity 300ms ease-in-out;
}

.card-deck {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

.card-deck .card {
    margin-bottom: 1rem;
}

@media (min-width: 576px) {
    .card-deck {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        margin-right: -1rem;
        margin-left: -1rem;
    }

    .card-deck .card {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-flex: 1;
        -webkit-flex: 1 0 0%;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-right: 1rem;
        margin-bottom: 0;
        margin-left: 1rem;
    }
}

.card-transparent .card,
.card-transparent .card-header,
.card-transparent .card-footer,
.card-transparent .card .nav,
.card-transparent .card.card-folder:before {
    background-color: rgba(0, 0, 0, 0);
    -webkit-box-shadow: unset !important;
    box-shadow: unset !important;
}

.card-transparent .card {
    border: 1px solid #eee;
}

.card-transparent .card.card-folder:before {
    border: 1px solid #fff;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-bottom: unset;
}

.card-glass {
    background-image: url(../images/glass-card.png);
    background-attachment: fixed;
    -webkit-background-size: cover;
    background-size: cover;
}

.card-glass .card,
.card-glass .card-header,
.card-glass .card-footer,
.card-glass .card .nav,
.card-glass .card.card-folder:before {
    background-color: rgba(255, 255, 255, 0.1);
}

.card-glass .card {
    border: 1px solid #fff;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.card-glass .card.card-folder:before {
    border: 1px solid #fff;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-bottom: unset;
}


.btn {
    --card-btn-padding-x: 0.8rem;
    --card-btn-padding-y: 0.5rem;
    --card-btn-font-family: ;
    --card-btn-font-size: 0.9rem;
    --card-btn-font-weight: 600;
    --card-btn-line-height: 1.5;
    --card-btn-color: #161d2b;
    --card-btn-bg: transparent;
    --card-position: relative;
    --card-btn-border-width: 1px;
    --card-btn-border-color: transparent;
    --card-btn-border-radius: 0.25rem;
    --card-btn-box-shadow: 0 0px 0px 0 rgba(0, 0, 0, 0);
    --card-btn-disabled-opacity: 0.65;
    --card-btn-focus-box-shadow: 0 0 0 0rem rgba(var(--card-btn-focus-shadow-rgb), 0.5);
    display: inline-block;
    padding: var(--card-btn-padding-y) var(--card-btn-padding-x);
    font-family: var(--card-btn-font-family);
    font-size: var(--card-btn-font-size);
    font-weight: var(--card-btn-font-weight);
    line-height: var(--card-btn-line-height);
    color: var(--card-btn-color);
    text-align: center;
    position: var(--card-position);
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: var(--card-btn-border-width) solid var(--card-btn-border-color);
    -webkit-border-radius: var(--card-btn-border-radius);
    border-radius: var(--card-btn-border-radius);
    background-color: var(--card-btn-bg);
    -webkit-box-shadow: var(--card-btn-box-shadow);
    box-shadow: var(--card-btn-box-shadow);
    -webkit-transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
    transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
    -o-transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out,
        -webkit-box-shadow 0.15s ease-in-out;
}

.btn:hover {
    color: var(--card-btn-hover-color);
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
}

@media (prefers-reduced-motion: reduce) {
    .btn {
        -webkit-transition: none;
        -o-transition: none;
        transition: none;
    }
}

.btn-link {
    --bs-btn-font-weight: 600;
    --bs-btn-color: var(--bs-link-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: var(--bs-link-hover-color);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-color: var(--bs-link-hover-color);
    --bs-btn-active-border-color: transparent;
    --bs-btn-disabled-color: #aca4bc;
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-box-shadow: none;
    --bs-btn-focus-shadow-rgb: 133, 57, 215;
    text-decoration: none;
}

.btn-link:focus-visible {
    color: var(--bs-btn-color);
}

.btn-link:hover {
    color: var(--bs-btn-hover-color);
}

.btn-lg,
.btn-group-lg>.btn {
    --bs-btn-padding-y: 1rem;
    --bs-btn-padding-x: 2rem;
    --bs-btn-font-size: 1.188rem;
    --bs-btn-border-radius: 0.5rem;
}

.btn-sm,
.btn-group-sm>.btn {
    --bs-btn-font-size: 0.813rem;
    --bs-btn-border-radius: 0.125rem;
}

.btn-xs,
.btn-group-xs>.btn {
    --bs-btn-font-size: 0.613rem;
    --bs-btn-border-radius: 0.125rem;
}

.fade {
    -webkit-transition: opacity 0.15s linear;
    -o-transition: opacity 0.15s linear;
    transition: opacity 0.15s linear;
}

.btn:hover {
    color: var(--card-btn-hover-color);
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
}

.btn-check:focus+.btn,
.btn:focus {
    color: var(--card-btn-hover-color);
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    outline: 0;
    -webkit-box-shadow: var(--card-btn-box-shadow),
        var(--card-btn-focus-box-shadow);
    box-shadow: var(--card-btn-box-shadow), var(--card-btn-focus-box-shadow);
}

.btn-check:checked+.btn,
.btn-check:active+.btn,
.btn:active,
.btn.active,
.btn.show {
    color: var(--card-btn-active-color);
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    -webkit-box-shadow: var(--card-btn-active-shadow);
    box-shadow: var(--card-btn-active-shadow);
}

.btn-check:checked+.btn:focus,
.btn-check:active+.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.show:focus {
    -webkit-box-shadow: var(--card-btn-active-shadow),
        var(--card-btn-focus-box-shadow);
    box-shadow: var(--card-btn-active-shadow), var(--card-btn-focus-box-shadow);
}

.btn:disabled,
.btn.disabled,
fieldset:disabled .btn {
    color: var(--card-btn-disabled-color);
    pointer-events: none;
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    opacity: var(--card-btn-disabled-opacity);
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-primary {
    --card-btn-color: #1d9bf0;
    /* Soft, modern Apple-inspired blue for text */
    --card-btn-bg: rgba(29,
            155,
            240,
            0.08);
    /* Soft blue background with slight transparency */
    --card-btn-border-color: rgba(29,
            155,
            240,
            1);
    /* Slightly desaturated blue for the border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover for contrast */
    --card-btn-hover-bg: rgba(29,
            155,
            240,
            0.3);
    /* Slightly stronger blue for hover background */
    --card-btn-hover-border-color: rgba(29,
            155,
            240,
            0.8);
    /* Slightly darker blue for border on hover */

    --card-btn-focus-shadow-rgb: 29, 155, 240;
    /* Blue focus shadow to match button color */

    --card-btn-active-color: #ffffff;
    /* White text color on active */
    --card-btn-active-bg: rgba(29,
            155,
            240,
            1);
    /* Stronger blue for active state background */
    --card-btn-active-border-color: rgba(29,
            155,
            240,
            1);
    /* Active border with same blue shade */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray for the disabled background */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Light gray for disabled border */
}

/* Hover effect (Smooth transition for hover state) */
.btn-primary:hover {
    background-color: rgba(29,
            155,
            240,
            1);
    /* Stronger blue for active state background */
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Enhanced shadow effect for depth */
    transform: translateY(-2px);
    /* Subtle lift effect on hover */
    transition: all 0.2s ease-in-out;
    /* Smooth transition */
}

/* Active effect (Pressed down effect with inner shadow) */
.btn-primary:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect for pressed look */
    transform: translateY(1px);
    /* Slight press down effect */
}

/* Disabled state (No hover or active effect, softer colors) */
.btn-primary:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

.btn-secondary {
    --card-btn-color: #fff;
    --card-btn-bg: #8ab0ab;
    /* Subtle and attractive muted teal */
    --card-btn-border-color: #8ab0ab;
    --card-btn-hover-color: #fff;
    --card-btn-hover-bg: #718b87;
    /* Slightly darker teal for hover effect */
    --card-btn-hover-border-color: #718b87;
    --card-btn-focus-shadow-rgb: 113, 139, 135;
    /* Adjusted to match hover color */
    --card-btn-active-color: #fff;
    --card-btn-active-bg: #718b87;
    --card-btn-active-border-color: #718b87;
    --card-btn-disabled-color: #fff;
    --card-btn-disabled-bg: #8ab0ab;
    --card-btn-disabled-border-color: #8ab0ab;
}

.btn-secondary:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
}

.btn-success {
    --card-btn-color: #fff;
    --card-btn-bg: #27ae60;
    --card-btn-border-color: #27ae60;
    --card-btn-hover-color: #fff;
    --card-btn-hover-bg: #229954;
    --card-btn-hover-border-color: #229954;
    --card-btn-focus-shadow-rgb: 39, 174, 96;
    --card-btn-active-color: #fff;
    --card-btn-active-bg: #229954;
    --card-btn-active-border-color: #229954;
    --card-btn-disabled-color: #fff;
    --card-btn-disabled-bg: #27ae60;
    --card-btn-disabled-border-color: #27ae60;
}

.btn-info {
    --card-btn-color: #fff;
    --card-btn-bg: #3498db;
    --card-btn-border-color: #3498db;
    --card-btn-hover-color: #fff;
    --card-btn-hover-bg: #2980b9;
    --card-btn-hover-border-color: #2980b9;
    --card-btn-focus-shadow-rgb: 52, 152, 219;
    --card-btn-active-color: #fff;
    --card-btn-active-bg: #2980b9;
    --card-btn-active-border-color: #2980b9;
    --card-btn-disabled-color: #fff;
    --card-btn-disabled-bg: #3498db;
    --card-btn-disabled-border-color: #3498db;
}

.btn-warning {
    --card-btn-color: #fff;
    --card-btn-bg: #f5a623;
    /* Bright and soft orange for warning color */
    --card-btn-border-color: #f5a623;
    --card-btn-hover-color: #fff;
    --card-btn-hover-bg: #e68a00;
    /* Slightly darker orange for hover effect */
    --card-btn-hover-border-color: #e68a00;
    --card-btn-focus-shadow-rgb: 230, 138, 0;
    /* Adjusted to match hover color */
    --card-btn-active-color: #fff;
    --card-btn-active-bg: #e68a00;
    --card-btn-active-border-color: #e68a00;
    --card-btn-disabled-color: #fff;
    --card-btn-disabled-bg: #f5a623;
    --card-btn-disabled-border-color: #f5a623;
}

.btn-warning:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
}

.btn-danger {
    --card-btn-color: #fff;
    --card-btn-bg: #e74c3c;
    --card-btn-border-color: #e74c3c;
    --card-btn-hover-color: #fff;
    --card-btn-hover-bg: #cb4335;
    --card-btn-hover-border-color: #cb4335;
    --card-btn-focus-shadow-rgb: 231, 76, 60;
    --card-btn-active-color: #fff;
    --card-btn-active-bg: #cb4335;
    --card-btn-active-border-color: #cb4335;
    --card-btn-disabled-color: #fff;
    --card-btn-disabled-bg: #e74c3c;
    --card-btn-disabled-border-color: #e74c3c;
}

.btn-light {
    --card-btn-color: #000;
    --card-btn-bg: #ecf0f1;
    --card-btn-border-color: #ecf0f1;
    --card-btn-hover-color: #000;
    --card-btn-hover-bg: #d5dbdb;
    --card-btn-hover-border-color: #d5dbdb;
    --card-btn-focus-shadow-rgb: 236, 240, 241;
    --card-btn-active-color: #000;
    --card-btn-active-bg: #d5dbdb;
    --card-btn-active-border-color: #d5dbdb;
    --card-btn-disabled-color: #000;
    --card-btn-disabled-bg: #ecf0f1;
    --card-btn-disabled-border-color: #ecf0f1;
}

.btn-dark {
    --card-btn-color: #fff;
    --card-btn-bg: #2c3e50;
    --card-btn-border-color: #2c3e50;
    --card-btn-hover-color: #fff;
    --card-btn-hover-bg: #1f2d3a;
    --card-btn-hover-border-color: #1f2d3a;
    --card-btn-focus-shadow-rgb: 44, 62, 80;
    --card-btn-active-color: #fff;
    --card-btn-active-bg: #1f2d3a;
    --card-btn-active-border-color: #1f2d3a;
    --card-btn-disabled-color: #fff;
    --card-btn-disabled-bg: #2c3e50;
    --card-btn-disabled-border-color: #2c3e50;
}

/* Smaller Icon Buttons with Transitions */
.btn-icon {
    height: 2.5rem;
    width: 2.5rem;
    padding: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    transition: transform 0.2s ease;
    /* Added smooth icon button transition */
}

.btn-icon:hover {
    transform: scale(1.1);
    /* Slightly scale up on hover */
}

/* Fixed Buttons (space-saving for positioning) */
.btn.btn-fixed-end,
.btn.btn-fixed-start,
.btn.btn-fixed-top,
.btn.btn-fixed-bottom {
    position: fixed;
    z-index: 1000;
    padding: 0.5rem;
    transition: all 0.3s ease;
    /* Transition for positioning effects */
}

/* Border Style Buttons */
.btn.btn-border {
    --card-btn-color: #fff;
    --card-btn-border-color: #0071e3;
    /* Adjusted to better contrast */
    --card-btn-hover-color: #fff;
    --card-btn-hover-bg: #0071e3;
    --card-btn-focus-shadow-rgb: 85, 48, 131;
    --card-btn-active-color: #fff;
    --card-btn-active-bg: #0071e3;
    --card-btn-disabled-color: #0071e3;
    --card-btn-disabled-bg: transparent;
    color: #aca4bc;
    border: 2px solid #eee;
    padding: 0.5rem 1rem;
    transition: all 0.3s ease;
    /* Transition for smooth hover and active effects */
}

.btn.btn-border:hover {
    background: rgba(0, 0, 0, 0);
    border-color: #0071e3;
    color: #fff;
}

/* More interactive hover effects */
.btn-check:checked+.btn.btn-border,
.btn-check:active+.btn.btn-border,
.btn.btn-border:active,
.btn.btn-border.active {
    background: #0071e3;
    color: #fff;
    border-color: #0071e3;
}

/* Slider Thumb */
.form-range::-webkit-slider-thumb {
    cursor: pointer;
}

/* Form Group Styling */
.form-group {
    margin-bottom: 0.5rem;
}

.form-group .form-label {
    color: var(--bs-body-color);
    font-weight: 500;
    margin-bottom: 0.2rem;
    font-size: 0.7rem !important;
    /* Reduced by 30% - responsive base size */
}

.form-label {
    color: var(--bs-body-color);
    font-weight: 500;
    margin-bottom: 0.2rem;
    font-size: 0.7rem !important;
    /* Reduced by 30% - responsive base size */
}

.form-group .input-group-text {
    color: var(--bs-gray);
    background-color: var(--bs-gray-light);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
}

/* Input Group Custom Styling */
.form-group .input-group {
    color: var(--bs-body-color);
    background-color: var(--bs-light);
    border: 1.1px solid #4788ff59;
    border-radius: var(--bs-border-radius);
    transition: border-color 0.2s ease-in-out;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.1);
}

.form-group .input-group .input-group-text {
    color: var(--bs-gray);
    background-color: var(--bs-gray-light);
}

.form-group .input-group:focus-within {
    border-color: var(--bs-primary);
    box-shadow: 0 0.125rem 0.25rem var(--bs-primary-tint);
}

/* Form control styles consolidated - see advanced form inputs section (line 17382+) */
/* Validation states kept for form-group context */
.form-group .form-control.is-valid {
    border-color: var(--bs-success) !important;
    box-shadow: 0 0.125rem 0.25rem var(--bs-success-tint) !important;
}

.form-group .form-control.is-invalid {
    border-color: var(--bs-danger) !important;
    box-shadow: 0 0.125rem 0.25rem var(--bs-danger-tint) !important;
}

/* Readonly Form Controls */
.form-control[readonly] {
    background-color: var(--bs-gray-light);
    color: var(--bs-gray-dark);
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.1);
}

/* Checkbox and Radio Styling */
.form-check-input {
    width: 1.25rem;
    height: 1.25rem;
    background-color: var(--bs-light);
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease;
}

.form-check-input:checked {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

.form-check-input:focus {
    box-shadow: 0 0 0 0.2rem var(--bs-primary-tint);
}

/* Disabled Inputs */
.form-control:disabled,
.form-select:disabled,
.form-check-input:disabled {
    background-color: var(--bs-gray-light);
    color: var(--bs-gray);
    border-color: var(--bs-border-color);
    opacity: 0.65;
}

.col-auto {
    grid-column: auto;
}

.col-span-full {
    grid-column: 1/-1;
}

.col-start-auto {
    grid-column-start: auto;
}

.col-end-auto {
    grid-column-end: auto;
}

.grid-rows-none {
    grid-template-rows: none;
}

.gap {
    gap: 2rem;
}

.gap-card {
    gap: 1.5rem;
}

.grid-flow-col {
    grid-auto-flow: column;
}

.gap-column-3 {
    row-gap: 3rem;
}

.grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.col-span-1 {
    grid-column: span 1 / span 1;
}

.col-start-1 {
    grid-column-start: 1;
}

.col-end-1 {
    grid-column-end: 1;
}

.grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.col-span-2 {
    grid-column: span 2 / span 2;
}

.col-start-2 {
    grid-column-start: 2;
}

.col-end-2 {
    grid-column-end: 2;
}

.grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.col-span-3 {
    grid-column: span 3 / span 3;
}

.col-start-3 {
    grid-column-start: 3;
}

.col-end-3 {
    grid-column-end: 3;
}

.grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.col-span-4 {
    grid-column: span 4 / span 4;
}

.col-start-4 {
    grid-column-start: 4;
}

.col-end-4 {
    grid-column-end: 4;
}

.grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.col-span-5 {
    grid-column: span 5 / span 5;
}

.col-start-5 {
    grid-column-start: 5;
}

.col-end-5 {
    grid-column-end: 5;
}

.grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.col-span-6 {
    grid-column: span 6 / span 6;
}

.col-start-6 {
    grid-column-start: 6;
}

.col-end-6 {
    grid-column-end: 6;
}

.grid-cols-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.col-span-7 {
    grid-column: span 7 / span 7;
}

.col-start-7 {
    grid-column-start: 7;
}

.col-end-7 {
    grid-column-end: 7;
}

.grid-cols-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
}

.col-span-8 {
    grid-column: span 8 / span 8;
}

.col-start-8 {
    grid-column-start: 8;
}

.col-end-8 {
    grid-column-end: 8;
}

.grid-cols-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
}

.col-span-9 {
    grid-column: span 9 / span 9;
}

.col-start-9 {
    grid-column-start: 9;
}

.col-end-9 {
    grid-column-end: 9;
}

.grid-cols-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
}

.col-span-10 {
    grid-column: span 10 / span 10;
}

.col-start-10 {
    grid-column-start: 10;
}

.col-end-10 {
    grid-column-end: 10;
}

.grid-cols-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
}

.col-span-11 {
    grid-column: span 11 / span 11;
}

.col-start-11 {
    grid-column-start: 11;
}

.col-end-11 {
    grid-column-end: 11;
}

.grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.col-span-12 {
    grid-column: span 12 / span 12;
}

.col-start-12 {
    grid-column-start: 12;
}

.col-end-12 {
    grid-column-end: 12;
}

.h-10 {
    height: 10rem;
}

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

.max-17 {
    max-height: 17rem;
    overflow: auto;
    overflow-y: scroll;
}

.icon-10 {
    height: 0.625rem;
    width: 0.625rem;
}

.icon-14 {
    height: 0.875rem;
    width: 0.875rem;
}

.icon-16 {
    height: 1rem;
    width: 1rem;
}

.icon-18 {
    height: 1.125rem;
    width: 1.125rem;
}

.icon-20 {
    height: 1.25rem;
    width: 1.25rem;
}

.icon-22 {
    height: 1.375rem;
    width: 1.375rem;
}

.icon-24 {
    height: 1.5rem;
    width: 1.5rem;
}

.icon-30 {
    height: 1.875rem;
    width: 1.875rem;
}

.icon-32 {
    height: 2rem;
    width: 2rem;
}

.icon-35 {
    height: 2.1875rem;
    width: 2.1875rem;
}

.icon-40 {
    height: 2.5rem;
    width: 2.5rem;
}

.icon-44 {
    height: 2.75rem;
    width: 2.75rem;
}

.bg-soft-primary:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
}

.bg-soft-primary:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect */
    transform: translateY(1px);
    /* Slight press-down effect */
}

.bg-soft-primary:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

/* Secondary Color Styling */
.bg-soft-secondary {
    --card-btn-color: #8d6e63;
    /* Secondary text color */
    --card-btn-bg: rgba(141, 110, 99, 0.1);
    /* Light secondary background */
    --card-btn-border-color: rgba(141, 110, 99, 0.5);
    /* Secondary border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover */
    --card-btn-hover-bg: rgba(141,
            110,
            99,
            0.6);
    /* Stronger background for hover state */
    --card-btn-hover-border-color: #8d6e63;
    /* Border color for hover */

    --card-btn-focus-shadow-rgb: 141, 110, 99;
    /* Focus shadow color */

    --card-btn-active-color: #ffffff;
    /* White text on active */
    --card-btn-active-bg: rgba(141,
            110,
            99,
            1);
    /* Stronger background for active state */
    --card-btn-active-border-color: rgba(141,
            110,
            99,
            1);
    /* Active state border color */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray background for disabled state */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Disabled border color */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.bg-soft-secondary:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
}

.bg-soft-secondary:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect */
    transform: translateY(1px);
    /* Slight press-down effect */
}

.bg-soft-secondary:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

/* Success Color Styling */
/* Success Color Styling */
.bg-soft-success {
    --card-btn-color: #6b9e5e;
    /* Soft success green text */
    --card-btn-bg: rgba(107,
            158,
            94,
            0.1);
    /* Light green background with slight transparency */
    --card-btn-border-color: rgba(107,
            158,
            94,
            0.8);
    /* Slightly desaturated green for the border */

    --card-btn-hover-color: #ffffff;
    /* White text color for hover */
    --card-btn-hover-bg: rgba(107,
            158,
            94,
            0.9);
    /* Slightly stronger green for hover background */
    --card-btn-hover-border-color: rgba(107,
            158,
            94,
            0.8);
    /* Slightly darker green for border on hover */

    --card-btn-focus-shadow-rgb: 107, 158, 94;
    /* Green focus shadow to match button color */

    --card-btn-active-color: #ffffff;
    /* White text color on active */
    --card-btn-active-bg: rgba(107,
            158,
            94,
            1);
    /* Stronger green for active state background */
    --card-btn-active-border-color: rgba(107,
            158,
            94,
            1);
    /* Active border with same green shade */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray for the disabled background */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Light gray for disabled border */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

/* Hover effect (Smooth transition for hover state) */
.bg-soft-success:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Enhanced shadow effect for depth */
    transform: translateY(-2px);
    /* Subtle lift effect on hover */
    transition: all 0.2s ease-in-out;
    /* Smooth transition */
}

/* Active effect (Pressed down effect with inner shadow) */
.bg-soft-success:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text color on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect for pressed look */
    transform: translateY(1px);
    /* Slight press down effect */
}

/* Disabled state (No hover or active effect, softer colors) */
.bg-soft-success:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
    /* Disabled text color */
}

/* Info Color Styling */
.bg-soft-info23 {
    color: #eee5da;
    background-color: rgb(0 232 255 / 16%) !important;
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease;
}

/* Info Color Styling */
.bg-soft-info {
    --card-btn-color: #24757c;
    /* Info text color */
    --card-btn-bg: rgba(0,
            232,
            255,
            0.22);
    /* Light info background with slight transparency */
    --card-btn-border-color: rgba(0,
            232,
            255,
            0.7);
    /* Slightly desaturated blue for border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover */
    --card-btn-hover-bg: rgba(92,
            143,
            148,
            0.7);
    /* Stronger background for hover state */
    --card-btn-hover-border-color: #24757c;
    /* Border color for hover */

    --card-btn-focus-shadow-rgb: 92, 143, 148;
    /* Focus shadow color */

    --card-btn-active-color: #ffffff;
    /* White text color on active */
    --card-btn-active-bg: rgba(92,
            143,
            148,
            1);
    /* Stronger background for active state */
    --card-btn-active-border-color: rgba(92,
            143,
            148,
            1);
    /* Active state border color */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray background for disabled state */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Disabled border color */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

/* Hover effect */
.bg-soft-info:hover {
    background-color: #0c98a5;
    --card-btn-border-color: rgba(0,
            232,
            255,
            0.7);
    /* Slightly desaturated blue for border */

    color: #ffffff;
    /* White text color on active */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
    /* Smooth transition */
}

/* Active effect (pressed state) */
.bg-soft-info:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect for pressed look */
    transform: translateY(1px);
    /* Slight press-down effect */
}

/* Disabled state (when button is disabled) */
.bg-soft-info:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
    /* Disabled text color */
}

/* Warning Color Styling */
.bg-soft-warning {
    --card-btn-color: #e0a10d;
    /* Warning text color */
    --card-btn-bg: rgba(224,
            161,
            13,
            0.2);
    /* Light warning background with slight transparency */
    --card-btn-border-color: rgba(224,
            161,
            13,
            0.7);
    /* Slightly desaturated yellow for border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover */
    --card-btn-hover-bg: rgba(224,
            161,
            13,
            0.7);
    /* Stronger background for hover state */
    --card-btn-hover-border-color: #e0a10d;
    /* Border color for hover */

    --card-btn-focus-shadow-rgb: 224, 161, 13;
    /* Focus shadow color */

    --card-btn-active-color: #ffffff;
    /* White text on active */
    --card-btn-active-bg: rgba(224,
            161,
            13,
            1);
    /* Stronger background for active state */
    --card-btn-active-border-color: rgba(224,
            161,
            13,
            1);
    /* Active state border color */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray background for disabled state */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Disabled border color */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.bg-soft-warning:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
}

.bg-soft-warning:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect */
    transform: translateY(1px);
    /* Slight press-down effect */
}

.bg-soft-warning:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

/* Danger Color Styling */
.bg-soft-danger {
    --card-btn-color: #ad1505;
    /* Danger text color */
    --card-btn-bg: rgba(255, 14, 0, 0.12);
    /* Light danger background */
    --card-btn-border-color: rgba(255, 14, 0, 0.6);
    /* Stronger red border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover */
    --card-btn-hover-bg: rgba(185,
            78,
            72,
            0.9);
    /* Stronger background for hover state */
    --card-btn-hover-border-color: #b94e48;
    /* Darker border color on hover */

    --card-btn-focus-shadow-rgb: 185, 78, 72;
    /* Focus shadow color */

    --card-btn-active-color: #ffffff;
    /* White text on active */
    --card-btn-active-bg: rgba(185,
            78,
            72,
            1);
    /* Stronger background for active state */
    --card-btn-active-border-color: rgba(185,
            78,
            72,
            1);
    /* Active border color */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray background for disabled state */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Disabled border color */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.bg-soft-danger:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
}

.bg-soft-danger:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect */
    transform: translateY(1px);
    /* Slight press-down effect */
}

.bg-soft-danger:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

/* Light Color Styling */
.bg-soft-light {
    --card-btn-color: #f7f4e6;
    /* Light text color */
    --card-btn-bg: rgba(247, 244, 230, 0.1);
    /* Light background */
    --card-btn-border-color: rgba(247, 244, 230, 0.5);
    /* Light border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover */
    --card-btn-hover-bg: rgba(247,
            244,
            230,
            0.7);
    /* Stronger background for hover state */
    --card-btn-hover-border-color: #f7f4e6;
    /* Border color for hover */

    --card-btn-focus-shadow-rgb: 247, 244, 230;
    /* Focus shadow color */

    --card-btn-active-color: #ffffff;
    /* White text on active */
    --card-btn-active-bg: rgba(247,
            244,
            230,
            1);
    /* Stronger background for active state */
    --card-btn-active-border-color: rgba(247,
            244,
            230,
            1);
    /* Active state border color */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray background for disabled state */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Disabled border color */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.bg-soft-light:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
}

.bg-soft-light:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect */
    transform: translateY(1px);
    /* Slight press-down effect */
}

.bg-soft-light:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

/* Dark Color Styling */
.bg-soft-dark {
    --card-btn-color: #3e2723;
    /* Dark text color */
    --card-btn-bg: rgba(62, 39, 35, 0.1);
    /* Light dark background */
    --card-btn-border-color: rgba(62, 39, 35, 0.5);
    /* Slightly darker border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover */
    --card-btn-hover-bg: rgba(62,
            39,
            35,
            0.6);
    /* Stronger background for hover state */
    --card-btn-hover-border-color: #3e2723;
    /* Border color for hover */

    --card-btn-focus-shadow-rgb: 62, 39, 35;
    /* Focus shadow color */

    --card-btn-active-color: #ffffff;
    /* White text on active */
    --card-btn-active-bg: rgba(62,
            39,
            35,
            1);
    /* Stronger background for active state */
    --card-btn-active-border-color: rgba(62,
            39,
            35,
            1);
    /* Active state border color */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray background for disabled state */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Disabled border color */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.bg-soft-dark:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
}

.bg-soft-dark:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect */
    transform: translateY(1px);
    /* Slight press-down effect */
}

.bg-soft-dark:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

/* Tertiary Color Styling */
.bg-soft-tertiary {
    --card-btn-color: #8d6e63;
    /* Tertiary text color */
    --card-btn-bg: rgba(141, 110, 99, 0.1);
    /* Light tertiary background */
    --card-btn-border-color: rgba(141, 110, 99, 0.5);
    /* Tertiary border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover */
    --card-btn-hover-bg: rgba(141,
            110,
            99,
            0.6);
    /* Stronger background for hover state */
    --card-btn-hover-border-color: #8d6e63;
    /* Border color for hover */

    --card-btn-focus-shadow-rgb: 141, 110, 99;
    /* Focus shadow color */

    --card-btn-active-color: #ffffff;
    /* White text on active */
    --card-btn-active-bg: rgba(141,
            110,
            99,
            1);
    /* Stronger background for active state */
    --card-btn-active-border-color: rgba(141,
            110,
            99,
            1);
    /* Active state border color */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray background for disabled state */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Disabled border color */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.bg-soft-tertiary:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
}

.bg-soft-tertiary:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect */
    transform: translateY(1px);
    /* Slight press-down effect */
}

.bg-soft-tertiary:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

/* Gray Color Styling */
.bg-soft-gray {
    --card-btn-color: #4e342e;
    /* Gray text color */
    --card-btn-bg: rgba(78, 52, 46, 0.1);
    /* Light gray background */
    --card-btn-border-color: rgba(78, 52, 46, 0.5);
    /* Light gray border */

    --card-btn-hover-color: #ffffff;
    /* White text color on hover */
    --card-btn-hover-bg: rgba(78,
            52,
            46,
            0.6);
    /* Stronger background for hover state */
    --card-btn-hover-border-color: #4e342e;
    /* Border color for hover */

    --card-btn-focus-shadow-rgb: 78, 52, 46;
    /* Focus shadow color */

    --card-btn-active-color: #ffffff;
    /* White text on active */
    --card-btn-active-bg: rgba(78,
            52,
            46,
            1);
    /* Stronger background for active state */
    --card-btn-active-border-color: rgba(78,
            52,
            46,
            1);
    /* Active state border color */

    --card-btn-disabled-color: #cccccc;
    /* Light gray for disabled text */
    --card-btn-disabled-bg: rgba(200,
            200,
            200,
            0.5);
    /* Light gray background for disabled state */
    --card-btn-disabled-border-color: rgba(200,
            200,
            200,
            1);
    /* Disabled border color */

    color: var(--card-btn-color);
    background-color: var(--card-btn-bg);
    border: 1px solid var(--card-btn-border-color);
    border-radius: 5px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.bg-soft-gray:hover {
    background-color: var(--card-btn-hover-bg);
    border-color: var(--card-btn-hover-border-color);
    color: var(--card-btn-hover-color);
    /* White text color on hover */
    box-shadow:
        0 4px 8px rgba(var(--card-btn-focus-shadow-rgb), 0.3),
        0 2px 4px rgba(0, 0, 0, 0.2);
    /* Shadow effect */
    transform: translateY(-2px);
    /* Slight lift effect on hover */
    transition: all 0.2s ease-in-out;
}

.bg-soft-gray:active {
    background-color: var(--card-btn-active-bg);
    border-color: var(--card-btn-active-border-color);
    color: var(--card-btn-active-color);
    /* White text on active */
    box-shadow: inset 0 2px 4px rgba(var(--card-btn-focus-shadow-rgb), 0.3);
    /* Inner shadow effect */
    transform: translateY(1px);
    /* Slight press-down effect */
}

.bg-soft-gray:disabled {
    background-color: var(--card-btn-disabled-bg);
    border-color: var(--card-btn-disabled-border-color);
    color: var(--card-btn-disabled-color);
}

.hr-horizontal {
    background: rgba(0, 0, 0, 0);
    border: 0;
    height: 1px;
    margin: 0.5rem 0;
    background-image: -webkit-gradient(linear,
            left top,
            right top,
            from(transparent),
            color-stop(rgba(0, 0, 0, 0.4)),
            to(transparent));
    background-image: -webkit-linear-gradient(left,
            transparent,
            rgba(0, 0, 0, 0.4),
            transparent);
    background-image: -o-linear-gradient(left,
            transparent,
            rgba(0, 0, 0, 0.4),
            transparent);
    background-image: linear-gradient(90deg,
            transparent,
            rgba(0, 0, 0, 0.4),
            transparent);
}

.hr-vertial {
    width: 1px;
    height: auto !important;
    margin: 0 0.5rem;
    background: rgba(0, 0, 0, 0);
    background-image: -webkit-gradient(linear,
            left top,
            left bottom,
            from(transparent),
            color-stop(rgba(0, 0, 0, 0.4)),
            to(transparent));
    background-image: -webkit-linear-gradient(top,
            transparent,
            rgba(0, 0, 0, 0.4),
            transparent);
    background-image: -o-linear-gradient(top,
            transparent,
            rgba(0, 0, 0, 0.4),
            transparent);
    background-image: linear-gradient(180deg,
            transparent,
            rgba(0, 0, 0, 0.4),
            transparent);
}

@-webkit-keyframes animScaleX {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.175);
        transform: scale(1.175);
    }

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

@keyframes animScaleX {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.175);
        transform: scale(1.175);
    }

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

@-webkit-keyframes animScale {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.175);
        transform: scale(1.175);
    }

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

@keyframes animScale {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.175);
        transform: scale(1.175);
    }

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

@-webkit-keyframes animRotate {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

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

@keyframes animRotate {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

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

.animated-scaleX {
    -webkit-animation: animScale 45s 1s ease-in-out infinite;
    animation: animScale 45s 1s ease-in-out infinite;
}

.animated-scale {
    -webkit-animation: animScale 45s 1s ease-in-out infinite;
    animation: animScale 45s 1s ease-in-out infinite;
}

.animated-rotate {
    -webkit-animation: animRotate 8s 0s ease-in-out infinite;
    animation: animRotate 8s 0s ease-in-out infinite;
}

.animate\:hover-media .animate\:hover-media-wrap {
    -webkit-border-radius: inherit;
    border-radius: inherit;
    overflow: hidden;
}

.animate\:hover-media .hover-media {
    -webkit-transition: -webkit-transform 0.2s ease-in-out;
    transition: -webkit-transform 0.2s ease-in-out;
    -o-transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
    transition:
        transform 0.2s ease-in-out,
        -webkit-transform 0.2s ease-in-out;
}

.animate\:hover-media:hover .hover-media {
    overflow: hidden;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

.dark .mode.light-img {
    display: none;
}

.dark .mode.dark-img {
    display: block;
}

[dir="rtl"] .mode.rtl-img {
    display: block;
}

.mode {
    display: none;
}

.mode.light-img {
    display: block;
}

.mode.ltr-img {
    display: block;
}

.general-zindex {
    z-index: 900;
}

.border-dashed {
    border-style: dashed !important;
}

.border-dotted {
    border-style: dotted !important;
}

.text-ellipsis {
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

/* .text-ellipsis.short-1 {
    -webkit-line-clamp: 1;
}
.text-ellipsis.short-2 {
    -webkit-line-clamp: 2;
}
.text-ellipsis.short-3 {
    -webkit-line-clamp: 3;
}
.text-ellipsis.short-4 {
    -webkit-line-clamp: 4;
}
.text-ellipsis.short-5 {
    -webkit-line-clamp: 5;
}
.text-ellipsis.short-6 {
    -webkit-line-clamp: 6;
}
.text-ellipsis.short-7 {
    -webkit-line-clamp: 7;
}
.text-ellipsis.short-8 {
    -webkit-line-clamp: 8;
}
.text-ellipsis.short-9 {
    -webkit-line-clamp: 9;
}
.text-ellipsis.short-10 {
    -webkit-line-clamp: 10;
} */
.card-thumbnail {
    padding: 1rem 1rem;
}

.apexcharts-radialbar-area {
    stroke-linecap: round;
}

.shepherd-element {
    z-index: 10000;
    -webkit-box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.03);
    box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.03);
}

.shepherd-element :after,
.shepherd-element :before,
.shepherd-element * {
    max-width: 350px;
}

.shepherd-element.shepherd-has-title[data-popper-placement^="bottom"]>.shepherd-arrow:before {
    height: 20px;
    width: 20px;
    background-color: var(--bs-white);
    border-left: 1px solid rgba(0, 0, 0, 0);
    border-top: 1px solid rgba(0, 0, 0, 0);
}

.shepherd-element[data-popper-placement^="bottom"]>.shepherd-arrow {
    z-index: 10;
}

.shepherd-element .shepherd-button {
    padding: 0.25rem 0.5rem;
    color: var(--bs-white);
    background: var(--bs-secondary);
}

.shepherd-element .shepherd-button:not(:disabled):hover {
    background-color: var(--bs-secondary);
}

.shepherd-element .shepherd-button.shepherd-button-secondary {
    color: var(--bs-white);
}

.shepherd-element .shepherd-button.shepherd-button-secondary:not(:disabled) {
    background: var(--bs-secondary);
    border: var(--bs-secondary);
}

.shepherd-element .shepherd-button.shepherd-button-secondary:not(:disabled):hover {
    background: var(--bs-secondary);
    color: var(--bs-white);
}

.shepherd-element .shepherd-button:not(:disabled) {
    background: var(--bs-secondary);
}

.shepherd-element .shepherd-button:not(:disabled):hover {
    color: var(--bs-white);
}

.shepherd-element .shepherd-text {
    padding: 1rem;
}

.shepherd-element .shepherd-text p:last-child {
    color: var(--bs-body-color);
}

.shepherd-element .shepherd-content {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    word-wrap: 0;
    word-wrap: break-word;
    background-color: var(--bs-white);
    -webkit-background-clip: border-box;
    background-clip: border-box;
    -webkit-border-radius: 0.5rem;
    border-radius: 0.5rem;
    max-height: 230px;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.shepherd-element .shepherd-footer {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-bottom: 1rem;
    margin: 0;
}

.shepherd-element .shepherd-footer .shepherd-button:last-child {
    background: var(--bs-primary);
}

.shepherd-element .shepherd-footer .shepherd-button:last-child:hover {
    background: var(--bs-primary-shade-20);
    color: var(--bs-white);
}

.shepherd-header,
.shepherd-text,
.shepherd-footer {
    -webkit-border-radius: 0.5rem;
    border-radius: 0.5rem;
}

.shepherd-has-title .shepherd-content .shepherd-header {
    background: var(--bs-white);
    padding: 1rem;
    padding-bottom: 0;
}

.shepherd-modal-overlay-container.shepherd-modal-is-visible {
    opacity: 0.1;
}

.shepherd-button:not(:disabled):hover {
    background-color: var(--bs-secondary);
}

.shepherd-button {
    color: #fff;
}

.shepherd-button {
    background: var(--bs-secondary);
}

.shepherd-text p:last-child {
    color: #6c757d;
}

.shepherd-footer {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 10px;
}

.shepherd-content {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    word-wrap: 0;
    word-wrap: break-word;
    background-color: #fff;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    -webkit-border-radius: 0.5rem;
    border-radius: 0.5rem;
    max-height: 230px;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.shepherd-element,
.shepherd-element *,
.shepherd-element :after,
.shepherd-element :before {
    max-width: 350px;
}

.shepherd-button.shepherd-button-secondary:not(:disabled) {
    background: var(--bs-secondary);
    border: var(--bs-secondary);
}

.shepherd-footer .shepherd-button:last-child {
    background: var(--bs-primary);
}

.shepherd-footer .shepherd-button:last-child:hover {
    background: var(--bs-primary-shade-20);
    color: #fff;
}

.shepherd-button:not(:disabled) {
    background: var(--bs-secondary);
}

.shepherd-button:not(:disabled):hover {
    color: #fff;
}

.shepherd-element[data-popper-placement^="bottom"]>.shepherd-arrow {
    z-index: 10;
}

.shepherd-has-title .shepherd-content .shepherd-header {
    background: #fff;
}

.shepherd-button.shepherd-button-secondary:not(:disabled):hover {
    background: var(--bs-secondary);
    color: #fff;
}

.shepherd-button.shepherd-button-secondary {
    color: #fff;
}

.shepherd-element.shepherd-has-title[data-popper-placement^="bottom"]>.shepherd-arrow:before {
    height: 20px;
    width: 20px;
    background-color: #fff;
    border-left: 1px solid #eee;
    border-top: 1px solid #eee;
}

.hvr-border-fade:hover,
.hvr-border-fade:focus,
.hvr-border-fade:active {
    -webkit-box-shadow:
        inset 0 0 0 4px var(--bs-primary-shade-40),
        0 0 1px;
    box-shadow:
        inset 0 0 0 4px var(--bs-primary-shade-40),
        0 0 1px;
}

.hvr-back-pulse {
    background-color: var(--bs-primary-shade-40);
}

.hvr-sweep-to-right:before {
    background: var(--bs-primary-shade-40);
}

.hvr-sweep-to-left:before {
    background: var(--bs-primary-shade-40);
}

.hvr-sweep-to-bottom:before {
    background: var(--bs-primary-shade-40);
}

.hvr-sweep-to-top:before {
    background: var(--bs-primary-shade-40);
}

.hvr-sweep-to-top:before {
    background: var(--bs-primary-shade-40);
}

.hvr-bounce-to-right:before {
    background: var(--bs-primary-shade-40);
}

.hvr-bounce-to-left:before {
    background: var(--bs-primary-shade-40);
}

.hvr-bounce-to-bottom:before {
    background: var(--bs-primary-shade-40);
}

.hvr-bounce-to-top:before {
    background: var(--bs-primary-shade-40);
}

.hvr-rectangle-out:before {
    background: var(--bs-primary-shade-40);
}

.hvr-shutter-out-horizontal:before {
    background: var(--bs-primary-shade-40);
}

.hvr-radial-out:before {
    background: var(--bs-primary-shade-40);
}

.hvr-shutter-out-vertical:before {
    background: var(--bs-primary-shade-40);
}

.hvr-underline-from-left:before {
    background: var(--bs-primary-shade-40);
}

.hvr-underline-from-center:before {
    background: var(--bs-primary-shade-40);
}

.hvr-underline-from-right:before {
    background: var(--bs-primary-shade-40);
}

.hvr-reveal:before {
    border-color: var(--bs-primary-shade-40);
}

.hvr-reveal:active {
    background: var(--bs-primary-shade-40);
    border-color: var(--bs-primary-shade-40);
}

.hvr-underline-reveal:before {
    background: var(--bs-primary-shade-40);
}

.hvr-overline-reveal:before {
    background: var(--bs-primary-shade-40);
}

.hvr-overline-from-left:before {
    background: var(--bs-primary-shade-40);
}

.hvr-overline-from-center:before {
    background: var(--bs-primary-shade-40);
}

.hvr-overline-from-right:before {
    background: var(--bs-primary-shade-40);
}

.hvr-trim:before {
    border: var(--bs-primary-shade-40) solid 4px;
}

.hvr-ripple-out:active {
    border: var(--bs-primary-shade-40) solid 4px;
}

.hvr-outline-out:active {
    border: var(--bs-primary-shade-40) solid 4px;
}

.hvr-ripple-in:before {
    border: var(--bs-primary) solid 4px;
    -webkit-border-radius: 6px;
    border-radius: 6px;
}

.hvr-outline-in:before {
    border: var(--bs-primary) solid 4px;
    -webkit-border-radius: 6px;
    border-radius: 6px;
}

.hvr-ripple-out:before {
    border: var(--bs-primary) solid 4px;
    -webkit-border-radius: 6px;
    border-radius: 6px;
}

.hvr-outline-out:before {
    border-color: var(--bs-primary) solid 4px;
    border: var(--bs-primary) solid 4px;
    -webkit-border-radius: 6px;
    border-radius: 6px;
}

.hvr-shadow {
    border: var(--bs-primary-shade-80);
}

.hvr-glow {
    border: var(--bs-primary-shade-80);
}

.hvr-bubble-top:before {
    border-width: 0 8px 8px 8px;
}

.hvr-bubble-right:before {
    border-width: 8px 0 8px 8px;
}

.hvr-bubble-bottom:before {
    border-width: 8px 8px 0 8px;
}

.hvr-bubble-left:before {
    border-width: 8px 8px 8px 0;
}

.hvr-bubble-float-top:before {
    border-width: 0 8px 8px 8px;
}

.hvr-bubble-float-right:before {
    border-width: 8px 0 8px 8px;
}

.hvr-bubble-float-bottom:before {
    border-width: 8px 8px 0 8px;
}

.hvr-bubble-float-left:before {
    border-width: 8px 8px 8px 0;
}

.hrv-curl .btn:hover,
.hrv-curl .btn:focus,
.hrv-curl .btn:active {
    border: unset;
    border-color: unset !important;
    -webkit-box-shadow: unset !important;
    box-shadow: unset !important;
}

.iq-plugins-btn .btn {
    margin: 0 1rem 1rem 0;
}

.size-28 {
    width: 22px;
}

.fc-unthemed .fc-toolbar .fc-button {
    text-transform: capitalize;
}

.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-row,
.fc-unthemed .fc-content,
.fc-unthemed .fc-popover,
.fc-unthemed .fc-list-view,
.fc-unthemed .fc-list-heading td {
    border-color: #eee !important;
}

.fc-other-month.fc-past,
.fc-other-month.fc-future {
    background: #f8f8f8;
}

.fc-unthemed td.fc-today {
    background: rgba(112, 22, 208, 0.04) !important;
}

.countdown {
    margin: 30px 0;
    padding: 0;
}

.countdown li span {
    font-size: 30px;
    display: inline-block;
    width: 100%;
}

.countdown li:last-child {
    margin-right: 0;
}

.iq-comingsoon-form {
    position: relative;
}

.iq-comingsoon-form button {
    position: absolute;
    right: 0;
    top: 0;
    padding: 11px 30px;
}

.is-disabled .choices__list--multiple .choices__item {
    background-color: var(--bs-primary);
    border: 1px solid var(--bs-primary);
}

.choices[data-type*="select-multiple"] .choices__button,
.choices[data-type*="text"] .choices__button {
    border: 1px solid #000;
}

.choices__list--multiple .choices__item {
    background-color: var(--bs-primary);
    border: 1px solid var(--bs-primary);
}

.choices__list--multiple .choices__item.is-highlighted {
    background-color: var(--bs-primary);
    border: 1px solid var(--bs-primary);
}

.choices[data-type*="select-multiple"] .choices__button,
.choices[data-type*="text"] .choices__button {
    border: 0px;
}

.choices__list--dropdown .choices__item--selectable.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
    background-color: var(--bs-primary);
    color: #fff;
}

.choices__list--dropdown .choices__item--selectable:active {
    color: #fff;
}

.choices__item--selectable:hover {
    border-color: var(--bs-primary);
}

.choices__item--selectable:active {
    border-color: var(--bs-primary);
}

.choices__inner:hover {
    border-color: var(--bs-primary);
}

.choices[data-type*="select-one"]:hover {
    border-color: var(--bs-primary);
}

.choices.is-disabled .choices__inner,
.choices.is-disabled .choices__input {
    background-color: #f9f9f9;
}

.choices[data-type*="select-one"]:active {
    border-color: var(--bs-primary);
}

.choices__list--multiple .choices__item {
    margin-bottom: unset;
}

.choices__inner,
.choices__input {
    background-color: #fff;
}

.choices__input {
    margin-bottom: unset;
}

.choices__inner,
.choices[data-type*="select-one"] .choices__inner {
    padding: 0.5rem 1rem;
    -webkit-border-radius: 0.25rem;
    border-radius: 0.25rem;
}

.choices__list--single,
.choices__input {
    padding: 0;
}

.choices__inner {
    min-height: unset;
}

.flatpicker-shadow-none+.flatpickr-calendar.inline {
    margin: auto;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.flatpickr-day.endRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.endRange.nextMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.endRange:focus,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected,
.flatpickr-day.selected.inRange,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.selected:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.startRange:focus,
.flatpickr-day.startRange:hover {
    background: var(--bs-primary);
    border-color: var(--bs-primary);
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.flatpickr-calendar {
    font-size: 16px;
}

.flatpickr-months .flatpickr-next-month:hover svg,
.flatpickr-months .flatpickr-prev-month:hover svg {
    fill: #161d2b;
}

.course-picker .flatpickr-calendar {
    width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.course-picker .flatpickr-innerContainer {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.course-picker .flatpickr-innerContainer .flatpickr-days {
    width: 100%;
}

.course-picker .flatpickr-innerContainer .flatpickr-days .dayContainer {
    width: 100%;
}

.course-picker .flatpickr-innerContainer .flatpickr-rContainer {
    width: 100%;
}

.course-picker .flatpickr-months .flatpickr-current-month {
    padding-top: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.course-picker .flatpickr-months .flatpickr-next-month,
.course-picker .flatpickr-months .flatpickr-prev-month {
    padding: 0 0.5rem;
    color: var(--bs-primary) !important;
    fill: var(--bs-primary) !important;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.course-picker .flatpickr-months .flatpickr-next-month svg,
.course-picker .flatpickr-months .flatpickr-prev-month svg {
    width: 24px;
    height: 24px;
    border: 1px solid;
    padding: 6px;
    -webkit-border-radius: 50rem;
    border-radius: 50rem;
}

.course-picker .flatpickr-months .flatpickr-next-month.flatpickr-disabled,
.course-picker .flatpickr-months .flatpickr-prev-month.flatpickr-disabled {
    display: none;
}

.course-picker .flatpickr-months .flatpickr-next-month:hover svg,
.course-picker .flatpickr-months .flatpickr-prev-month:hover svg {
    fill: var(--bs-primary) !important;
}

.course-picker .flatpickr-innerContainer .flatpickr-days .dayContainer {
    max-width: 100%;
    min-width: 290px;
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.course-picker .flatpickr-day {
    width: 100% !important;
    margin: auto !important;
}

.course-picker .flatpickr-current-month {
    font-size: 16px;
}

.course-picker .flatpickr-current-month {
    left: 13.5%;
}

@media (min-width: 1600px) {
    .course-picker .flatpickr-innerContainer .flatpickr-days .dayContainer {
        max-width: 100%;
        min-width: 260px;
    }
}

.iq-fslightbox-img a img.img-fluid {
    width: 100%;
    height: 100%;
}

.image-popup-vertical-fit {
    cursor: -webkit-zoom-in;
    cursor: zoom-in;
}

.grid-m {
    margin-bottom: 30px;
}

.grid-m:nth-last-child(-n + 4) {
    margin-bottom: 0;
}

.g-box {
    background: #f3f3f3;
}

.g-desc {
    border: 1px solid rgba(210, 201, 255, 0.4);
}

.masonry .item {
    width: 25%;
    padding: 10px;
    display: block;
}

.masonry .item a {
    cursor: -webkit-zoom-in;
    cursor: zoom-in;
}

.masonry .item img {
    width: 100%;
}

.grid-sizer {
    width: 25%;
    padding: 10px;
    display: block;
}

.b-radius-top {
    -webkit-border-radius: 0.25rem 0.25rem 0 0;
    border-radius: 0.25rem 0.25rem 0 0;
}

.b-radius-bottom {
    -webkit-border-radius: 0 0 0.25rem 0.25rem;
    border-radius: 0 0 0.25rem 0.25rem;
}

.hover-effects {
    overflow: hidden;
    position: relative;
}

.hover-effects a {
    cursor: pointer;
}

.hover-effects:hover .effect-1 {
    -webkit-transform: scale3d(1.2, 1.2, 1);
    -ms-transform: scale3d(1.2, 1.2, 1);
    transform: scale3d(1.2, 1.2, 1);
}

.hover-effects:hover .effect-2 {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.hover-effects:hover .effect-3 {
    margin-left: 0;
}

.hover-effects:hover .effect-4 {
    -webkit-transform: rotate(0) scale(1);
    -ms-transform: rotate(0) scale(1);
    transform: rotate(0) scale(1);
}

.hover-effects:hover .ovrlay-1-a {
    left: 0;
    top: 0;
}

.hover-effects:hover .ovrlay-1-b {
    left: 0;
    top: 0;
}

.hover-effects:hover .ovrlay-2-a {
    left: 0;
}

.hover-effects:hover .ovrlay-2-b {
    left: 0;
}

.hover-effects:hover .ovrlay-3-a {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.hover-effects:hover .ovrlay-3-b {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.hover-effects:hover .ovrlay-4-a {
    top: 0;
}

.hover-effects:hover .ovrlay-4-b {
    top: 0;
}

.hover-effects:hover .ovrlay-5 {
    left: 0;
    opacity: 1;
    visibility: visible;
}

.hover-effects:hover .ovrlay-6 {
    visibility: visible;
    -webkit-transform: perspective(600px) rotateX(0deg);
    -ms-transform: perspective(600px) rotateX(0deg);
    transform: perspective(600px) rotateX(0deg);
}

.hover-effects:hover .ovrlay-7 {
    opacity: 1;
    -webkit-transform: perspective(600px) rotateX(0deg);
    -ms-transform: perspective(600px) rotateX(0deg);
    transform: perspective(600px) rotateX(0deg);
}

.hover-effects:hover .ovrlay-8 {
    right: 0;
}

.hover-effects:hover .effect-8 {
    right: 40px;
}

.effect-1 {
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.effect-2 {
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}

.effect-3 {
    margin-left: 30px;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    -webkit-transform: scale(1.3);
    -ms-transform: scale(1.3);
    transform: scale(1.3);
}

.effect-4 {
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    -webkit-transform: rotate(12deg) scale(1.4);
    -ms-transform: rotate(12deg) scale(1.4);
    transform: rotate(12deg) scale(1.4);
}

.ovrlay-1-a {
    background: rgba(0, 0, 0, 0.25);
    height: 100%;
    position: absolute;
    width: 100%;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    left: -100%;
    top: -100%;
}

.ovrlay-1-b {
    background: rgba(0, 0, 0, 0.25);
    height: 100%;
    position: absolute;
    width: 100%;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    left: 100%;
    top: 100%;
}

.ovrlay-2-a {
    background: rgba(0, 0, 0, 0.25);
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    left: -100%;
}

.ovrlay-2-b {
    background: rgba(0, 0, 0, 0.25);
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    left: 100%;
}

.ovrlay-3-a {
    position: absolute;
    background: rgba(0, 0, 0, 0.25);
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    top: 100%;
}

.ovrlay-3-a .ovrlay-3-b {
    position: absolute;
    background: rgba(0, 0, 0, 0.25);
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.ovrlay-3-a .ovrlay-4-a {
    background: rgba(0, 0, 0, 0.25);
    height: 100%;
    position: absolute;
    left: 0;
    width: 100%;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    top: -100%;
}

.ovrlay-3-a .ovrlay-4-b {
    background: rgba(0, 0, 0, 0.25);
    height: 100%;
    position: absolute;
    left: 0;
    width: 100%;
}

.ovrlay-5 {
    position: absolute;
    background: var(--bs-primary);
    width: 100%;
    height: 100%;
    top: 0;
    padding: 0 15px 0 15px;
    left: -100%;
    z-index: 1;
    overflow: auto;
    visibility: hidden;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    color: #fff;
}

.ovrlay-5 h4,
.ovrlay-5 .h4 {
    color: #fff;
}

.ovrlay-6 {
    background: var(--bs-primary);
    width: 100%;
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    overflow: auto;
    visibility: hidden;
    padding: 0 15px;
    -webkit-transform: perspective(600px) rotateX(-90deg);
    -ms-transform: perspective(600px) rotateX(-90deg);
    transform: perspective(600px) rotateX(-90deg);
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.ovrlay-6 h4,
.ovrlay-6 .h4 {
    color: #fff;
}

.ovrlay-6 p {
    color: #fff;
}

.ovrlay-8 {
    background: var(--bs-primary);
    width: 40%;
    height: 100%;
    top: 0;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    position: absolute;
    right: -40%;
    overflow: auto;
    padding: 0 10px;
}

.ovrlay-8 h4,
.ovrlay-8 .h4 {
    color: #fff;
}

.ovrlay-8 .i-btn {
    position: absolute;
    bottom: 10px;
    right: 10%;
    width: 40px;
    height: 40px;
    line-height: 40px;
    font-size: 17px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    border: 1px solid #fff;
    background: rgba(0, 0, 0, 0);
    text-align: center;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #fff !important;
}

.ovrlay-7 {
    position: absolute;
    background: rgba(0, 0, 0, 0.8);
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    -webkit-opacity: 0;
    -moz-opacity: 0;
    -ms-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -webkit-transform: perspective(600px) rotateX(-90deg);
    -ms-transform: perspective(600px) rotateX(-90deg);
    transform: perspective(600px) rotateX(-90deg);
    -webkit-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.ovrlay-7 .button {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #fff;
    text-align: center;
    line-height: 40px;
}

.ovrlay-7 .button i {
    color: var(--bs-primary);
}

.effect-8 {
    width: 100%;
    position: relative;
    right: 0;
    top: 0;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.data-table .table th {
    border-bottom-width: 1px;
    border-top: none;
}

.dataTables_filter .form-control:focus {
    background-color: #f3f3f3;
    border-color: var(--bs-primary);
}

.dataTables_length .form-control:focus {
    background-color: #f3f3f3;
    border-color: var(--bs-primary);
}

@media (max-width: 991px) {
    .masonry .item {
        width: 33.33%;
    }

    .masonry .grid-sizer {
        width: 33.33%;
    }
}

@media (max-width: 767px) {
    .masonry .item {
        width: 100%;
        padding: 0 0 18px 0;
    }

    .masonry .grid-sizer {
        width: 100%;
        padding: 0 0 18px 0;
    }
}

.croppy-round .cropper-view-box,
.croppy-round .cropper-face {
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

.swal2-styled {
    margin: 0px;
}

.swal2-close:active {
    border: hidden;
}

.swal2-loader {
    border-color: var(--bs-primary);
    background-color: var(--bs-primary);
}

.swal2-styled:focus {
    -webkit-box-shadow: unset !important;
    box-shadow: unset !important;
}

.swal2-styled.swal2-confirm {
    background-color: var(--bs-primary);
    border: var(--bs-primary);
    display: inline-block;
    -webkit-border-radius: 0.25em;
    border-radius: 0.25em;
    padding: 0.625em 1.1em;
}

.swal2-styled.swal2-cancel {
    border: var(--bs-secondary);
    background-color: var(--bs-secondary);
    -webkit-border-radius: 0.25em;
    border-radius: 0.25em;
    padding: 0.625em 1.1em;
}

.swal2-styled.swal2-deny {
    background-color: var(--bs-danger);
    border: var(--bs-danger);
    -webkit-border-radius: 0.25em;
    border-radius: 0.25em;
}

.swal2-styled {
    margin: 0.3125em;
    padding: 0.625em 1.1em;
    -webkit-transition: -webkit-box-shadow 0.1s;
    transition: -webkit-box-shadow 0.1s;
    -o-transition: box-shadow 0.1s;
    transition: box-shadow 0.1s;
    transition:
        box-shadow 0.1s,
        -webkit-box-shadow 0.1s;
    -webkit-box-shadow: 0 0 0 3px rgba(0, 0, 0, 0);
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0);
    font-weight: 500;
}

.swal2-icon.swal2-warning {
    border-color: var(--bs-warning);
    color: var(--bs-warning);
}

.swal2-icon .swal2-icon-content {
    border-color: var(--bs-warning);
    color: var(--bs-warning);
}

.swal2-icon.swal2-info {
    border-color: var(--bs-warning);
    color: var(--bs-warning);
}

.swal2-icon.swal2-error {
    border-color: var(--bs-danger);
    color: var(--bs-danger);
}

.swal2-icon.swal2-error [class^="swal2-x-mark-line"] {
    background-color: var(--bs-danger);
}

.swal2-icon.swal2-success [class^="swal2-success-line"] {
    background-color: var(--bs-success);
}

.swal2-icon.swal2-success {
    border-color: var(--bs-success);
    color: var(--bs-success);
}

.swal2-icon.swal2-success:hover {
    border-color: var(--bs-success);
    color: var(--bs-success);
}

.swal2-icon.swal2-success .swal2-success-ring {
    border-color: var(--bs-success);
    color: var(--bs-success);
}

.swal2-icon.swal2-success .swal2-success-fix {
    border-color: var(--bs-success);
    color: var(--bs-success);
}

.swal2-icon.swal2-success [class^="swal2-success-circular-line"] {
    border-color: var(--bs-success);
    color: var(--bs-success);
}

.swal2-icon.swal2-success.swal2-icon-show .swal2-success-circular-line-right {
    border-color: var(--bs-success);
    color: var(--bs-success);
}

.swal2-close {
    background-color: var(--bs-secondary);
    border: 0px;
    background: none;
    color: var(--bs-secondary);
    border-color: #fff;
    -webkit-border-radius: 0px;
    border-radius: 0px;
}

.swal2-close:hover {
    color: var(--bs-secondary);
}

.swal2-actions {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.uppy-Dashboard-browse {
    color: var(--bs-primary);
}

.uppy-Dashboard-inner {
    width: 100% !important;
}

table.dataTable.table-striped>tbody>tr.odd>* {
    -webkit-box-shadow: unset;
    box-shadow: unset;
}

/* ============================================
   PREMIUM RICH THEME - Complete Redesign
   Elegant, Compact, Premium Feel
   ============================================ */

/* Premium Sidebar - Water-like Fluid Theme - FIXED POSITION */
.premium-sidebar {
    width: 260px !important;
    min-width: 260px !important;
    max-width: 260px !important;
    height: 100vh !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1000 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    background: linear-gradient(180deg,
            rgba(15, 23, 42, 0.75) 0%,
            rgba(30, 41, 59, 0.70) 50%,
            rgba(15, 23, 42, 0.75) 100%) !important;
    backdrop-filter: blur(80px) saturate(200%) !important;
    -webkit-backdrop-filter: blur(80px) saturate(200%) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow:
        4px 0 80px rgba(0, 0, 0, 0.4),
        0 0 0 1px rgba(255, 255, 255, 0.08) inset,
        0 0 100px rgba(59, 130, 246, 0.2),
        inset -1px 0 0 rgba(255, 255, 255, 0.05) !important;
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        width 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.premium-sidebar::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background:
        radial-gradient(circle at 20% 30%, rgba(59, 130, 246, 0.15) 0%, transparent 50%),
        radial-gradient(circle at 80% 70%, rgba(139, 92, 246, 0.12) 0%, transparent 50%) !important;
    pointer-events: none !important;
    animation: waterFlow 4s ease-in-out infinite !important;
    will-change: opacity, transform !important;
    z-index: 0 !important;
}

@keyframes waterFlow {

    0%,
    100% {
        opacity: 0.6;
        transform: translateY(0) scale(1);
    }

    50% {
        opacity: 0.8;
        transform: translateY(-10px) scale(1.02);
    }
}

.premium-sidebar.collapsed {
    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
}

.premium-sidebar.hidden {
    transform: translateX(-100%) !important;
}

.premium-sidebar.show {
    transform: translateX(0) !important;
}

/* Sidebar Logo Section - Premium */
.sidebar-logo {
    padding: 20px 16px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    min-height: 68px !important;
    flex-shrink: 0 !important;
    background: linear-gradient(135deg,
            rgba(59, 130, 246, 0.08) 0%,
            rgba(139, 92, 246, 0.05) 100%) !important;
    position: relative !important;
    overflow: hidden !important;
    z-index: 1 !important;
}

.sidebar-logo::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background: linear-gradient(90deg,
            transparent 0%,
            rgba(59, 130, 246, 0.4) 50%,
            transparent 100%) !important;
}

.premium-sidebar.collapsed .sidebar-logo {
    justify-content: center !important;
    padding: var(--space-4) !important;
}

.sidebar-logo-icon {
    width: 44px !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg,
            rgba(59, 130, 246, 0.2) 0%,
            rgba(139, 92, 246, 0.15) 100%) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow:
        0 4px 12px rgba(0, 0, 0, 0.2),
        0 0 0 1px rgba(255, 255, 255, 0.05) inset,
        0 0 20px rgba(59, 130, 246, 0.2) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.sidebar-logo:hover .sidebar-logo-icon {
    transform: scale(1.05) rotate(2deg) !important;
    box-shadow:
        0 6px 20px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(255, 255, 255, 0.1) inset,
        0 0 30px rgba(59, 130, 246, 0.3) !important;
}

.sidebar-logo-icon img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    border-radius: var(--macos-radius-md) !important;
}

.sidebar-logo-text {
    font-family: "Space Grotesk", "Inter", sans-serif !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 0.95) 0%,
            rgba(255, 255, 255, 0.85) 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    letter-spacing: -0.01em !important;
    white-space: nowrap !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-shadow: 0 0 30px rgba(59, 130, 246, 0.3) !important;
    position: relative !important;
    z-index: 1 !important;
}

.premium-sidebar.collapsed .sidebar-logo-text {
    opacity: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
}

/* Sidebar Navigation Container - Compact Elegant */
.sidebar-nav {
    flex: 1 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 16px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Custom Scrollbar for Sidebar */
.sidebar-nav::-webkit-scrollbar {
    width: 6px !important;
}

.sidebar-nav::-webkit-scrollbar-track {
    background: transparent !important;
}

.sidebar-nav::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.2) !important;
    border-radius: 3px !important;
    transition: background var(--duration-fast) !important;
}

.sidebar-nav::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.3) !important;
}

/* Navigation Section */
.nav-section {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--space-2) !important;
}

/* Section Title - Premium Typography */
.nav-section-title {
    font-family: "Inter", sans-serif !important;
    font-size: 0.6875rem !important;
    font-weight: 700 !important;
    color: rgba(255, 255, 255, 0.4) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    padding: 8px 16px 6px !important;
    margin-bottom: 4px !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    z-index: 1 !important;
}

.nav-section-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 16px !important;
    right: 16px !important;
    height: 1px !important;
    background: linear-gradient(90deg,
            transparent 0%,
            rgba(255, 255, 255, 0.1) 50%,
            transparent 100%) !important;
}

.premium-sidebar.collapsed .nav-section-title {
    opacity: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

/* Navigation Item */
.nav-item {
    display: flex !important;
    flex-direction: column !important;
}

/* Navigation Link - Premium Rich Design */
.premium-sidebar .nav-link {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 14px !important;
    margin: 2px 0 !important;
    border-radius: 10px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    text-decoration: none !important;
    font-family: "Inter", sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    overflow: visible !important;
    white-space: nowrap !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    z-index: 1 !important;
    cursor: pointer !important;
    user-select: none !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
}

.premium-sidebar.collapsed .nav-link {
    justify-content: center !important;
    padding: var(--space-3) !important;
}

/* Navigation Link Icon - Elegant */
.premium-sidebar .nav-link i {
    width: 20px !important;
    height: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0.9375rem !important;
    flex-shrink: 0 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    color: rgba(255, 255, 255, 0.65) !important;
    position: relative !important;
    z-index: 1 !important;
}

.premium-sidebar .nav-link:hover i {
    transform: scale(1.2) translateY(-2px) !important;
    color: rgba(255, 255, 255, 1) !important;
    filter: drop-shadow(0 3px 6px rgba(59, 130, 246, 0.5)) !important;
}

.premium-sidebar .nav-link.active i {
    color: rgba(255, 255, 255, 1) !important;
    filter: drop-shadow(0 2px 8px rgba(59, 130, 246, 0.6)) !important;
    transform: scale(1.15) !important;
}

/* Navigation Link Text */
.nav-link-text {
    flex: 1 !important;
    transition: opacity var(--duration-fast) var(--ease-standard) !important;
}

.premium-sidebar.collapsed .nav-link-text {
    opacity: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
}

/* Navigation Link Hover State - Premium Interactive */
.premium-sidebar .nav-link::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(135deg,
            rgba(59, 130, 246, 0.2) 0%,
            rgba(139, 92, 246, 0.15) 100%) !important;
    border-radius: 10px !important;
    opacity: 0 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 0 !important;
}

.premium-sidebar .nav-link::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 3px !important;
    height: 0 !important;
    background: linear-gradient(180deg,
            rgba(59, 130, 246, 1) 0%,
            rgba(139, 92, 246, 1) 100%) !important;
    border-radius: 0 3px 3px 0 !important;
    box-shadow: 0 0 12px rgba(59, 130, 246, 0.6) !important;
    transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 2 !important;
}

.premium-sidebar .nav-link:hover {
    color: rgba(255, 255, 255, 1) !important;
    transform: translateX(4px) scale(1.02) !important;
    border-color: rgba(59, 130, 246, 0.4) !important;
    box-shadow:
        0 6px 20px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(59, 130, 246, 0.3) inset,
        0 0 30px rgba(59, 130, 246, 0.2) !important;
    background: linear-gradient(135deg,
            rgba(59, 130, 246, 0.25) 0%,
            rgba(139, 92, 246, 0.2) 100%) !important;
}

.premium-sidebar .nav-link:hover::before {
    opacity: 1 !important;
}

.premium-sidebar .nav-link:hover::after {
    height: 60% !important;
}

.premium-sidebar .nav-link.active {
    color: rgba(255, 255, 255, 1) !important;
    font-weight: 600 !important;
    background: linear-gradient(135deg,
            rgba(59, 130, 246, 0.3) 0%,
            rgba(139, 92, 246, 0.25) 100%) !important;
    border-color: rgba(59, 130, 246, 0.5) !important;
    box-shadow:
        0 8px 24px rgba(0, 0, 0, 0.35),
        0 0 0 1px rgba(59, 130, 246, 0.4) inset,
        0 0 40px rgba(59, 130, 246, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
    transform: translateX(4px) !important;
}

.premium-sidebar .nav-link.active::after {
    height: 70% !important;
    width: 4px !important;
    box-shadow: 0 0 16px rgba(59, 130, 246, 0.8) !important;
}

.premium-sidebar .nav-link.active i {
    color: rgba(255, 255, 255, 1) !important;
    filter: drop-shadow(0 2px 8px rgba(59, 130, 246, 0.6)) !important;
    transform: scale(1.1) !important;
}

.premium-sidebar.collapsed .nav-link:hover {
    transform: translateX(0) scale(1.08) !important;
}

/* Removed duplicate - using premium interactive styles above */

/* Sidebar Overlay (Mobile) */
.sidebar-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0, 0, 0, 0.5) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    z-index: 999 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all var(--duration-base) var(--ease-standard) !important;
}

.sidebar-overlay.show {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Responsive Sidebar */
@media (max-width: 1024px) {
    .premium-sidebar {
        transform: translateX(-100%) !important;
        position: fixed !important;
    }

    .premium-sidebar.show {
        transform: translateX(0) !important;
        position: fixed !important;
    }

    .premium-sidebar.collapsed {
        width: 72px !important;
        min-width: 72px !important;
        max-width: 72px !important;
    }
}

/* Main Content Adjustment - Proper Layout Positioning */
.premium-main {
    margin-left: 200px !important;
    transition: margin-left 0.2s cubic-bezier(0.4, 0, 0.2, 1),
        width 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    will-change: margin-left, width !important;
    padding-top: 80px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    background: linear-gradient(135deg,
            rgba(248, 250, 252, 0.6) 0%,
            rgba(241, 245, 249, 0.8) 50%,
            rgba(255, 255, 255, 0.95) 100%) !important;
    min-height: 100vh !important;
    width: calc(100% - 200px) !important;
    overflow-x: hidden !important;
    position: relative !important;
    box-sizing: border-box !important;
}

.premium-main>.content-inner {
    padding: 14px 12px !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

.sidebar-collapsed .premium-main {
    margin-left: 72px !important;
    width: calc(100% - 72px) !important;
}

.sidebar-hidden .premium-main {
    margin-left: 0 !important;
    width: 100% !important;
}

/* Premium Header - Rich Glass Design - Fixed Position */
.premium-header {
    position: fixed !important;
    top: 0 !important;
    left: 200px !important;
    right: 0 !important;
    z-index: 998 !important;
    transition: left 0.2s cubic-bezier(0.4, 0, 0.2, 1),
        width 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    will-change: left, width !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 24px !important;
    min-height: 68px !important;
    width: calc(100% - 200px) !important;
    box-sizing: border-box !important;
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 0.98) 0%,
            rgba(255, 255, 255, 0.95) 100%) !important;
    backdrop-filter: blur(40px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(40px) saturate(180%) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
    box-shadow:
        0 1px 3px rgba(0, 0, 0, 0.05),
        0 0 0 1px rgba(0, 0, 0, 0.02) inset !important;
}

.sidebar-collapsed .premium-header {
    left: 72px !important;
    width: calc(100% - 72px) !important;
}

.sidebar-hidden .premium-header {
    left: 0 !important;
    width: 100% !important;
}

/* Responsive Layout - Consolidated */
@media (max-width: 1024px) {

    .premium-main,
    .premium-header {
        margin-left: 0 !important;
        left: 0 !important;
        width: 100% !important;
    }

    .premium-main>.content-inner {
        padding: 16px !important;
    }
}

/* Header Content */
.header-left {
    display: flex !important;
    align-items: center !important;
    gap: var(--space-4) !important;
}

.sidebar-toggle {
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 0.9) 0%,
            rgba(248, 250, 252, 0.9) 100%) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    border-radius: 9px !important;
    color: #1E293B !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04) inset !important;
}

.sidebar-toggle:hover {
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(241, 245, 249, 1) 100%) !important;
    transform: scale(1.05) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.06) inset !important;
    border-color: rgba(0, 0, 0, 0.12) !important;
}

.sidebar-toggle:active {
    transform: scale(0.98) !important;
}

.header-title {
    font-family: "Space Grotesk", "Inter", sans-serif !important;
    font-size: 1.375rem !important;
    font-weight: 700 !important;
    background: linear-gradient(270deg,
            rgb(157, 32, 242),
            rgb(156, 33, 242),
            rgb(154, 34, 242),
            rgb(151, 35, 242),
            rgb(146, 38, 242),
            rgb(140, 40, 241),
            rgb(133, 44, 241),
            rgb(125, 48, 241),
            rgb(115, 52, 241),
            rgb(105, 57, 241),
            rgb(94, 62, 241),
            rgb(82, 68, 241),
            rgb(69, 74, 240),
            rgb(55, 80, 240),
            rgb(41, 87, 240),
            rgb(26, 94, 240));
    /* color: #0F172A !important; */
    letter-spacing: -0.02em !important;
    margin: 0 !important;
    /* background: linear-gradient(135deg, #0F172A 0%, #1E293B 100%) !important; */
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

.header-right {
    display: flex !important;
    align-items: center !important;
    gap: var(--space-2) !important;
}

.header-icon-btn {
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 0.9) 0%,
            rgba(248, 250, 252, 0.9) 100%) !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    border-radius: 9px !important;
    color: #475569 !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04) inset !important;
}

.header-icon-btn:hover {
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(241, 245, 249, 1) 100%) !important;
    transform: scale(1.08) translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.06) inset !important;
    border-color: rgba(0, 0, 0, 0.12) !important;
    color: #1E293B !important;
}

.header-icon-btn:active {
    transform: scale(1.02) translateY(0) !important;
}

.header-icon-btn .badge {
    position: absolute !important;
    top: -2px !important;
    right: -2px !important;
    background: linear-gradient(135deg, #EF4444 0%, #DC2626 100%) !important;
    color: white !important;
    font-size: 0.625rem !important;
    font-weight: 700 !important;
    padding: 3px 6px !important;
    border-radius: 10px !important;
    min-width: 18px !important;
    height: 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow:
        0 2px 8px rgba(239, 68, 68, 0.4),
        0 0 0 2px rgba(255, 255, 255, 1) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
}

/* ============================================
   FUTURISTIC DESIGN SYSTEM - COMPLETE
   Water-like transparency, Advanced Glassmorphism
   ============================================ */

/* ============================================
   MODERN TYPOGRAPHY - Inter & Space Grotesk
   ============================================ */
body,
html {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-weight: 400 !important;
    font-size: 0.9375rem !important;
    line-height: 1.6 !important;
    letter-spacing: -0.01em !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    text-rendering: optimizeLegibility !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: "Space Grotesk", "Inter", sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
}

/* ============================================
   BUTTON SIZES - sm, md, lg, xl
   ============================================ */
.btn-sm {
    padding: 6px 14px !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    border-radius: 8px !important;
    min-height: 32px !important;
}

.btn-xs {
    padding: 8px 12px !important;
    font-size: 0.6125rem !important;
    font-weight: 500 !important;
    border-radius: 8px !important;
    min-height: 28px !important;
}

.btn-md,
.btn {
    padding: 10px 20px !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    border-radius: 10px !important;
    min-height: 40px !important;
}

.btn-lg {
    padding: 14px 28px !important;
    font-size: 0.9375rem !important;
    font-weight: 600 !important;
    border-radius: 12px !important;
    min-height: 48px !important;
}

.btn-xl {
    padding: 18px 36px !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    border-radius: 14px !important;
    min-height: 56px !important;
}

/* ============================================
   BG-SOFT UTILITY CLASSES
   ============================================ */
.bg-soft-primary {
    background: linear-gradient(135deg,
            rgba(59, 130, 246, 0.12) 0%,
            rgba(59, 130, 246, 0.08) 100%) !important;
    color: #1E40AF !important;
    border: 1px solid rgba(59, 130, 246, 0.2) !important;
}

.bg-soft-info {
    background: linear-gradient(135deg,
            rgba(6, 182, 212, 0.12) 0%,
            rgba(6, 182, 212, 0.08) 100%) !important;
    color: #0E7490 !important;
    border: 1px solid rgba(6, 182, 212, 0.2) !important;
}

.bg-soft-success {
    background: linear-gradient(135deg,
            rgba(16, 185, 129, 0.12) 0%,
            rgba(16, 185, 129, 0.08) 100%) !important;
    color: #047857 !important;
    border: 1px solid rgba(16, 185, 129, 0.2) !important;
}

.bg-soft-warning {
    background: linear-gradient(135deg,
            rgba(245, 158, 11, 0.12) 0%,
            rgba(245, 158, 11, 0.08) 100%) !important;
    color: #92400E !important;
    border: 1px solid rgba(245, 158, 11, 0.2) !important;
}

.bg-soft-danger {
    background: linear-gradient(135deg,
            rgba(239, 68, 68, 0.12) 0%,
            rgba(239, 68, 68, 0.08) 100%) !important;
    color: #991B1B !important;
    border: 1px solid rgba(239, 68, 68, 0.2) !important;
}

.bg-soft-secondary {
    background: linear-gradient(135deg,
            rgba(100, 116, 139, 0.12) 0%,
            rgba(100, 116, 139, 0.08) 100%) !important;
    color: #475569 !important;
    border: 1px solid rgba(100, 116, 139, 0.2) !important;
}

/* ============================================
   PREMIUM SIDEBAR - Interactive & Rich Colors
   Based on libs.min.css integration
   ============================================ */
/* Premium Sidebar - Fixed Position (Override any relative positioning) */
.premium-sidebar {
    width: 200px !important;
    min-width: 200px !important;
    max-width: 200px !important;
    height: 100vh !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1000 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    background: linear-gradient(180deg,
            rgba(15, 23, 42, 0.98) 0%,
            rgba(30, 41, 59, 0.96) 50%,
            rgba(15, 23, 42, 0.98) 100%) !important;
    backdrop-filter: blur(70px) saturate(200%) !important;
    -webkit-backdrop-filter: blur(70px) saturate(200%) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.15) !important;
    box-shadow:
        4px 0 70px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(255, 255, 255, 0.12) inset,
        0 0 90px rgba(59, 130, 246, 0.3),
        inset -1px 0 0 rgba(255, 255, 255, 0.08) !important;
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
        width 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.premium-sidebar::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background:
        radial-gradient(circle at 20% 30%, rgba(59, 130, 246, 0.18) 0%, transparent 55%),
        radial-gradient(circle at 80% 70%, rgba(139, 92, 246, 0.15) 0%, transparent 55%),
        linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, transparent 50%) !important;
    pointer-events: none !important;
    animation: waterFlow 10s ease-in-out infinite !important;
    z-index: 0 !important;
}

@keyframes waterFlow {

    0%,
    100% {
        opacity: 0.7;
        transform: translateY(0) scale(1);
    }

    50% {
        opacity: 0.9;
        transform: translateY(-12px) scale(1.02);
    }
}

.premium-sidebar .nav-link {
    position: relative !important;
    overflow: visible !important;
}

.premium-sidebar .nav-link::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    width: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg,
            rgba(59, 130, 246, 0.8) 0%,
            rgba(139, 92, 246, 0.8) 100%) !important;
    transform: translateY(-50%) !important;
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    border-radius: 2px !important;
    box-shadow: 0 0 10px rgba(59, 130, 246, 0.5) !important;
}

/* Removed duplicate - using premium interactive styles above */

/* ============================================
   ADVANCED FORM INPUTS - Futuristic
   ============================================ */
.form-control,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="date"],
input[type="time"],
input[type="datetime-local"],
textarea,
select,
.form-select {
    font-family: "Inter", sans-serif !important;
    font-weight: 500 !important;
    font-size: 0.6125rem !important;
    /* Reduced by 30% from 0.875rem (0.875 * 0.7 = 0.6125rem) */
    border-radius: 12px !important;
    border: 1.5px solid rgba(0, 0, 0, 0.08) !important;
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 0.95) 0%,
            rgba(255, 255, 255, 0.90) 100%) !important;
    backdrop-filter: blur(30px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(30px) saturate(180%) !important;
    padding: 8.4px 12.6px !important;
    /* Reduced by 30% from 12px 18px */
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow:
        0 2px 10px rgba(0, 0, 0, 0.04),
        0 0 0 1px rgba(0, 0, 0, 0.02) inset,
        0 1px 0 rgba(255, 255, 255, 0.9) inset !important;
    color: #0F172A !important;
    outline: none !important;
}

/* Form Control Modifier Classes - Consolidated */
.form-control.bg-soft-primary,
.modal .form-control.bg-soft-primary,
input.bg-soft-primary,
textarea.bg-soft-primary,
select.bg-soft-primary,
.form-select.bg-soft-primary {
    color: rgba(85, 100, 255, 0.5) !important;
    background: rgba(85, 100, 255, 0.1) !important;
    border-color: rgba(85, 100, 255, 0.5) !important;
}

.form-control.bg-soft-info,
.modal .form-control.bg-soft-info,
input.bg-soft-info,
textarea.bg-soft-info,
select.bg-soft-info,
.form-select.bg-soft-info {
    color: rgba(41, 182, 246, 0.5) !important;
    background: rgba(41, 182, 246, 0.1) !important;
    border-color: rgba(41, 182, 246, 0.5) !important;
}

.form-control.bg-soft-warning,
.modal .form-control.bg-soft-warning,
input.bg-soft-warning,
textarea.bg-soft-warning,
select.bg-soft-warning,
.form-select.bg-soft-warning {
    color: rgba(255, 179, 0, 0.5) !important;
    background: rgba(255, 179, 0, 0.1) !important;
    border-color: rgba(255, 179, 0, 0.5) !important;
}

.form-control.bg-soft-danger,
.modal .form-control.bg-soft-danger,
input.bg-soft-danger,
textarea.bg-soft-danger,
select.bg-soft-danger,
.form-select.bg-soft-danger {
    color: rgba(229, 57, 53, 0.5) !important;
    background: rgba(229, 57, 53, 0.1) !important;
    border-color: rgba(229, 57, 53, 0.5) !important;
}

.form-control.bg-soft-light,
.modal .form-control.bg-soft-light,
input.bg-soft-light,
textarea.bg-soft-light,
select.bg-soft-light,
.form-select.bg-soft-light {
    color: rgba(245, 245, 245, 0.5) !important;
    background: rgba(245, 245, 245, 0.5) !important;
    border-color: rgba(245, 245, 245, 0.7) !important;
}

.form-control.bg-soft-dark,
.modal .form-control.bg-soft-dark,
input.bg-soft-dark,
textarea.bg-soft-dark,
select.bg-soft-dark,
.form-select.bg-soft-dark {
    color: rgba(33, 33, 33, 0.5) !important;
    background: rgba(33, 33, 33, 0.1) !important;
    border-color: rgba(33, 33, 33, 0.5) !important;
}

/* Hover and Focus States - Modernized */
.form-control:hover:not(:disabled):not([readonly]) {
    background-color: #fafbfc;
    /* Subtle background change on hover */
    border-color: rgba(71, 136, 255, 0.6);
    /* Enhanced border on hover */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.06), 0 2px 4px rgba(0, 0, 0, 0.08);
    /* Enhanced shadow on hover */
    transform: translateY(-1px);
    /* Subtle lift effect */
}

/* Hover states for modifier classes - Consolidated */
.form-control.bg-soft-primary:hover:not(:disabled):not([readonly]),
input.bg-soft-primary:hover:not(:disabled):not([readonly]),
textarea.bg-soft-primary:hover:not(:disabled):not([readonly]),
select.bg-soft-primary:hover:not(:disabled):not([readonly]),
.form-select.bg-soft-primary:hover:not(:disabled):not([readonly]) {
    background: rgba(85, 100, 255, 0.15) !important;
    border-color: rgba(85, 100, 255, 0.7) !important;
}

.form-control.bg-soft-info:hover:not(:disabled):not([readonly]),
input.bg-soft-info:hover:not(:disabled):not([readonly]),
textarea.bg-soft-info:hover:not(:disabled):not([readonly]),
select.bg-soft-info:hover:not(:disabled):not([readonly]),
.form-select.bg-soft-info:hover:not(:disabled):not([readonly]) {
    background: rgba(41, 182, 246, 0.15) !important;
    border-color: rgba(41, 182, 246, 0.7) !important;
}

.form-control.bg-soft-warning:hover:not(:disabled):not([readonly]),
input.bg-soft-warning:hover:not(:disabled):not([readonly]),
textarea.bg-soft-warning:hover:not(:disabled):not([readonly]),
select.bg-soft-warning:hover:not(:disabled):not([readonly]),
.form-select.bg-soft-warning:hover:not(:disabled):not([readonly]) {
    background: rgba(255, 179, 0, 0.15) !important;
    border-color: rgba(255, 179, 0, 0.7) !important;
}

.form-control.bg-soft-danger:hover:not(:disabled):not([readonly]),
input.bg-soft-danger:hover:not(:disabled):not([readonly]),
textarea.bg-soft-danger:hover:not(:disabled):not([readonly]),
select.bg-soft-danger:hover:not(:disabled):not([readonly]),
.form-select.bg-soft-danger:hover:not(:disabled):not([readonly]) {
    background: rgba(229, 57, 53, 0.15) !important;
    border-color: rgba(229, 57, 53, 0.7) !important;
}

.form-control.bg-soft-light:hover:not(:disabled):not([readonly]),
input.bg-soft-light:hover:not(:disabled):not([readonly]),
textarea.bg-soft-light:hover:not(:disabled):not([readonly]),
select.bg-soft-light:hover:not(:disabled):not([readonly]),
.form-select.bg-soft-light:hover:not(:disabled):not([readonly]) {
    background: rgba(245, 245, 245, 0.6) !important;
    border-color: rgba(245, 245, 245, 0.8) !important;
}

.form-control.bg-soft-dark:hover:not(:disabled):not([readonly]),
input.bg-soft-dark:hover:not(:disabled):not([readonly]),
textarea.bg-soft-dark:hover:not(:disabled):not([readonly]),
select.bg-soft-dark:hover:not(:disabled):not([readonly]),
.form-select.bg-soft-dark:hover:not(:disabled):not([readonly]) {
    background: rgba(33, 33, 33, 0.15) !important;
    border-color: rgba(33, 33, 33, 0.7) !important;
}

/* Focus states for modifier classes - Consolidated */
.form-control.bg-soft-primary:focus,
.modal .form-control.bg-soft-primary:focus,
input.bg-soft-primary:focus,
textarea.bg-soft-primary:focus,
select.bg-soft-primary:focus,
.form-select.bg-soft-primary:focus {
    background: rgba(85, 100, 255, 0.2) !important;
    border-color: rgba(85, 100, 255, 0.8) !important;
    box-shadow: 0 0 0 5px rgba(85, 100, 255, 0.15), 0 6px 20px rgba(85, 100, 255, 0.12) !important;
}

.form-control.bg-soft-info:focus,
.modal .form-control.bg-soft-info:focus,
input.bg-soft-info:focus,
textarea.bg-soft-info:focus,
select.bg-soft-info:focus,
.form-select.bg-soft-info:focus {
    background: rgba(41, 182, 246, 0.2) !important;
    border-color: rgba(41, 182, 246, 0.8) !important;
    box-shadow: 0 0 0 5px rgba(41, 182, 246, 0.15), 0 6px 20px rgba(41, 182, 246, 0.12) !important;
}

.form-control.bg-soft-warning:focus,
.modal .form-control.bg-soft-warning:focus,
input.bg-soft-warning:focus,
textarea.bg-soft-warning:focus,
select.bg-soft-warning:focus,
.form-select.bg-soft-warning:focus {
    background: rgba(255, 179, 0, 0.2) !important;
    border-color: rgba(255, 179, 0, 0.8) !important;
    box-shadow: 0 0 0 5px rgba(255, 179, 0, 0.15), 0 6px 20px rgba(255, 179, 0, 0.12) !important;
}

.form-control.bg-soft-danger:focus,
.modal .form-control.bg-soft-danger:focus,
input.bg-soft-danger:focus,
textarea.bg-soft-danger:focus,
select.bg-soft-danger:focus,
.form-select.bg-soft-danger:focus {
    background: rgba(229, 57, 53, 0.2) !important;
    border-color: rgba(229, 57, 53, 0.8) !important;
    box-shadow: 0 0 0 5px rgba(229, 57, 53, 0.15), 0 6px 20px rgba(229, 57, 53, 0.12) !important;
}

.form-control.bg-soft-light:focus,
.modal .form-control.bg-soft-light:focus,
input.bg-soft-light:focus,
textarea.bg-soft-light:focus,
select.bg-soft-light:focus,
.form-select.bg-soft-light:focus {
    background: rgba(245, 245, 245, 0.7) !important;
    border-color: rgba(245, 245, 245, 0.9) !important;
    box-shadow: 0 0 0 5px rgba(245, 245, 245, 0.3), 0 6px 20px rgba(0, 0, 0, 0.1) !important;
}

.form-control.bg-soft-dark:focus,
.modal .form-control.bg-soft-dark:focus,
input.bg-soft-dark:focus,
textarea.bg-soft-dark:focus,
select.bg-soft-dark:focus,
.form-select.bg-soft-dark:focus {
    background: rgba(33, 33, 33, 0.2) !important;
    border-color: rgba(33, 33, 33, 0.8) !important;
    box-shadow: 0 0 0 5px rgba(33, 33, 33, 0.15), 0 6px 20px rgba(33, 33, 33, 0.12) !important;
}

/* Modal Specific Form Controls */
.modal .form-control {
    display: block;
    width: 100%;
    padding: 0.385rem 0.7rem !important;
    font-size: 0.6048rem !important;
    font-weight: 500;
    color: #161d2b;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0.5rem;
    border: 1.5px solid rgba(71, 136, 255, 0.35);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.06);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.form-control:focus,
input:focus,
textarea:focus,
select:focus,
.form-select:focus {
    border-color: #3B82F6 !important;
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(255, 255, 255, 0.98) 100%) !important;
    box-shadow:
        0 0 0 5px rgba(59, 130, 246, 0.12),
        0 6px 20px rgba(59, 130, 246, 0.15),
        0 0 0 1px rgba(59, 130, 246, 0.3) inset,
        0 1px 0 rgba(255, 255, 255, 0.95) inset,
        0 0 40px rgba(59, 130, 246, 0.08) !important;
    transform: translateY(-2px) !important;
}


/* Responsive Form Controls - Mobile First Approach */
@media (max-width: 575.98px) {

    .form-control,
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="number"],
    input[type="tel"],
    input[type="url"],
    input[type="date"],
    input[type="time"],
    input[type="datetime-local"],
    textarea,
    select,
    .form-select {
        font-size: 0.55rem !important;
        /* Further reduced for mobile */
        padding: 7px 10px !important;
    }

    .form-label,
    .form-group .form-label {
        font-size: 0.75rem !important;
        /* Slightly larger for readability on mobile */
    }

    .modal .form-control {
        font-size: 0.55rem !important;
        padding: 0.35rem 0.6rem !important;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {

    .form-control,
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="number"],
    input[type="tel"],
    input[type="url"],
    input[type="date"],
    input[type="time"],
    input[type="datetime-local"],
    textarea,
    select,
    .form-select {
        font-size: 0.68rem !important;
        padding: 7.5px 11px !important;
    }

    .form-label,
    .form-group .form-label {
        font-size: 0.78rem !important;
    }

    .modal .form-control {
        font-size: 0.68rem !important;
        padding: 0.36rem 0.65rem !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {

    .form-control,
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="number"],
    input[type="tel"],
    input[type="url"],
    input[type="date"],
    input[type="time"],
    input[type="datetime-local"],
    textarea,
    select,
    .form-select {
        font-size: 0.7rem !important;
        padding: 8px 12px !important;
    }

    .form-label,
    .form-group .form-label {
        font-size: 0.79rem !important;
    }

    .modal .form-control {
        font-size: 0.7rem !important;
        padding: 0.38rem 0.68rem !important;
    }
}

@media (min-width: 992px) {

    .form-control,
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="number"],
    input[type="tel"],
    input[type="url"],
    input[type="date"],
    input[type="time"],
    input[type="datetime-local"],
    textarea,
    select,
    .form-select {
        font-size: 0.7125rem !important;
        /* Base size for desktop */
        padding: 8.4px 12.6px !important;
    }

    .form-label,
    .form-group .form-label {
        font-size: 0.8rem !important;
        /* Base size for desktop */
    }

    .modal .form-control {
        font-size: 0.7048rem !important;
        padding: 0.385rem 0.7rem !important;
    }
}

/* ============================================
   PREMIUM CARDS - Advanced Glassmorphism
   ============================================ */
.card,
.iq-card {
    border-radius: 16px !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.08),
        0 0 0 1px rgba(0, 0, 0, 0.03) inset,
        0 1px 0 rgba(255, 255, 255, 0.95) inset !important;
    background: linear-gradient(135deg,
            rgba(255, 255, 255, 0.95) 0%,
            rgba(255, 255, 255, 0.90) 100%) !important;
    backdrop-filter: blur(50px) saturate(200%) !important;
    -webkit-backdrop-filter: blur(50px) saturate(200%) !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    will-change: transform, opacity !important;
    overflow: hidden !important;
    position: relative !important;
    padding: 24px !important;
}

.card::before,
.iq-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(135deg,
            rgba(59, 130, 246, 0.04) 0%,
            rgba(139, 92, 246, 0.03) 50%,
            transparent 100%) !important;
    opacity: 0 !important;
    transition: opacity 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    pointer-events: none !important;
}

.card:hover::before,
.iq-card:hover::before {
    opacity: 1 !important;
}

.card:hover,
.iq-card:hover {
    transform: translateY(-6px) !important;
    box-shadow:
        0 16px 40px rgba(0, 0, 0, 0.12),
        0 0 0 1px rgba(0, 0, 0, 0.05) inset,
        0 1px 0 rgba(255, 255, 255, 0.98) inset,
        0 0 60px rgba(59, 130, 246, 0.12) !important;
    border-color: rgba(0, 0, 0, 0.1) !important;
}

/* ============================================
   DATATABLE PROFESSIONAL STYLING
   ============================================ */

/* Compact Action Buttons */
.compact-btn {
    min-width: 28px !important;
    height: 28px !important;
    padding: 0.2rem 0.4rem !important;
    font-size: 0.65rem !important;
    line-height: 1.2 !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.compact-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

.compact-btn i {
    margin: 0 !important;
}

/* DataTable Excel Filter Controls - Professional Compact Design */
.dtcc {
    display: inline-flex !important;
    gap: 3px !important;
    align-items: center !important;
    vertical-align: middle !important;
}

/* Header Content Container */
.th-header-content {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    padding-right: 50px !important;
    min-height: 20px !important;
}

.dtcc-button {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    background: rgba(255, 255, 255, 0.9) !important;
    border-radius: 3px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    font-size: 0.7rem !important;
    color: #495057 !important;
}

.dtcc-button:hover {
    background: rgba(59, 130, 246, 0.1) !important;
    border-color: rgba(59, 130, 246, 0.3) !important;
    color: #3B82F6 !important;
    transform: scale(1.05) !important;
}

.dtcc-button:active {
    transform: scale(0.95) !important;
}

.dtcc-button_active {
    background: rgba(59, 130, 246, 0.15) !important;
    border-color: rgba(59, 130, 246, 0.4) !important;
    color: #3B82F6 !important;
}

.dtcc-button-icon,
.dtcc-button-text,
.dtcc-button-state {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.dtcc-button-state svg {
    width: 10px !important;
    height: 10px !important;
}

/* Select2 Filter Optimization - Professional Look */
.select2-multiple {
    font-size: 0.6125rem !important;
    padding: 2px 4px !important;
    min-height: 26px !important;
    width: 100% !important;
}

/* Professional Select2 in table headers - Clean, modern design */
.dataTables_wrapper thead th .select2-container {
    width: 100% !important;
    margin-top: 2px !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple {
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    border-radius: 4px !important;
    min-height: 24px !important;
    max-height: none !important;
    padding: 3px 6px !important;
    background: #ffffff !important;
    line-height: 1.4 !important;
    overflow-y: hidden !important;
    /* No scrollbar */
    overflow-x: hidden !important;
    scrollbar-width: none !important;
    /* Firefox */
    -ms-overflow-style: none !important;
    /* IE/Edge */
    transition: all 0.2s ease !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple:hover {
    border-color: rgba(59, 130, 246, 0.3) !important;
    box-shadow: 0 2px 4px rgba(59, 130, 246, 0.1) !important;
}

.dataTables_wrapper thead th .select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: #3B82F6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
    outline: none !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple::-webkit-scrollbar {
    display: none !important;
    /* Chrome/Safari */
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    display: flex !important;
    flex-direction: column !important;
    /* Vertical stacking */
    flex-wrap: nowrap !important;
    align-content: flex-start !important;
    gap: 3px !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* General Select2 multiple (for other uses) */
.select2-container--default .select2-selection--multiple {
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius: 4px !important;
    min-height: 26px !important;
    padding: 2px 4px !important;
    background: rgba(255, 255, 255, 0.95) !important;
    line-height: 1.4 !important;
}

/* Professional Select2 filter tags in table headers - Clean vertical stacking */
.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(59, 130, 246, 0.08) 100%) !important;
    border: 1px solid rgba(59, 130, 246, 0.2) !important;
    color: #1E40AF !important;
    padding: 3px 8px 3px 8px !important;
    margin: 0 !important;
    font-size: 0.625rem !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    border-radius: 4px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100% !important;
    word-break: break-word !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__choice:hover {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.15) 0%, rgba(59, 130, 246, 0.12) 100%) !important;
    border-color: rgba(59, 130, 246, 0.35) !important;
    box-shadow: 0 2px 4px rgba(59, 130, 246, 0.15) !important;
    transform: translateY(-1px) !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__choice__display {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    flex: 1 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #3B82F6 !important;
    margin-right: 0 !important;
    margin-left: 6px !important;
    font-size: 0.7rem !important;
    line-height: 1 !important;
    padding: 0 2px !important;
    border: none !important;
    cursor: pointer !important;
    opacity: 0.6 !important;
    transition: all 0.15s ease !important;
    font-weight: 600 !important;
    width: 14px !important;
    height: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 2px !important;
    flex-shrink: 0 !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
    opacity: 1 !important;
    color: #DC2626 !important;
    background: rgba(220, 38, 38, 0.1) !important;
    transform: scale(1.1) !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__placeholder {
    color: #9CA3AF !important;
    font-size: 0.625rem !important;
    padding-left: 6px !important;
    font-style: italic !important;
}

/* General Select2 choice styling */
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: rgba(59, 130, 246, 0.12) !important;
    border: 1px solid rgba(59, 130, 246, 0.25) !important;
    color: #2563EB !important;
    padding: 2px 5px 2px 6px !important;
    margin: 1px 1px !important;
    font-size: 0.6rem !important;
    line-height: 1.3 !important;
    border-radius: 3px !important;
    display: inline-flex !important;
    align-items: center !important;
    max-width: 100% !important;
    word-break: break-word !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1.3 !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #2563EB !important;
    margin-right: 4px !important;
    margin-left: 0 !important;
    font-size: 0.65rem !important;
    line-height: 1 !important;
    padding: 0 2px !important;
    border-right: none !important;
    border-left: none !important;
    cursor: pointer !important;
    opacity: 0.7 !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
    opacity: 1 !important;
    color: #1D4ED8 !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
    color: #6c757d !important;
    font-size: 0.6rem !important;
    padding-left: 4px !important;
}

.select2-container--default .select2-dropdown {
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
    margin-top: 2px !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius: 4px !important;
    padding: 4px 8px !important;
    font-size: 0.65rem !important;
}

.select2-container--default .select2-results__option {
    padding: 6px 10px !important;
    font-size: 0.65rem !important;
}

.select2-container--default .select2-results__option--highlighted {
    background-color: rgba(59, 130, 246, 0.1) !important;
    color: #3B82F6 !important;
}

/* DataTable Header Styling */
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select {
    font-size: 0.65rem !important;
    padding: 0px 0px !important;
    border-radius: 4px !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter {
    margin-bottom: 0px !important;
}

/* Align top row controls in single compact row */
.dataTables_wrapper>div.row:first-child {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    margin: 0 !important;
    width: 100% !important;
}

.dataTables_wrapper>div.row:first-child>div:first-child {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    margin: 0 !important;
    flex: 1 1 auto !important;
}

.dataTables_wrapper>div.row:first-child>div:last-child {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
}

/* Compact controls */
.dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label {
    margin: 0 !important;
    white-space: nowrap !important;
    font-size: 0.7rem !important;
}

.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input {
    margin: 0 4px !important;
    font-size: 0.7rem !important;
    padding: 0.25rem 0.5rem !important;
    height: auto !important;
}

/* Table Header Filter Wrapper */
.filter-wrapper {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}

/* Professional Table Header Styling - Clean and Modern */
.dataTables_wrapper thead th {
    padding: 8px 6px !important;
    font-size: 0.7rem !important;
    vertical-align: top !important;
    position: relative !important;
    white-space: normal !important;
    min-width: 100px !important;
    max-width: 200px !important;
    overflow: visible !important;
    /* Allow Select2 dropdown to show */
    text-overflow: ellipsis !important;
    word-wrap: break-word !important;
    box-sizing: border-box !important;
    background: #F9FAFB !important;
    border-bottom: 2px solid #E5E7EB !important;
    transition: background 0.2s ease !important;
}

.dataTables_wrapper thead th:hover {
    background: #F3F4F6 !important;
}

/* Header Content Container */
.dataTables_wrapper thead th>div:first-child,
.dataTables_wrapper thead th>span:first-child {
    display: block !important;
    margin-bottom: 4px !important;
}

.dataTables_wrapper thead th .th-label {
    display: inline-block !important;
    font-weight: 600 !important;
    margin-right: 6px !important;
    line-height: 1.2 !important;
    vertical-align: middle !important;
}

.dataTables_wrapper thead th .dtcc {
    display: inline-flex !important;
    gap: 3px !important;
    vertical-align: middle !important;
    margin-left: 4px !important;
    position: absolute !important;
    top: 6px !important;
    right: 6px !important;
    z-index: 10 !important;
}

.dataTables_wrapper thead th .filter-wrapper {
    width: 100% !important;
    margin-top: 4px !important;
    margin-bottom: 0 !important;
    clear: both !important;
    position: relative !important;
}

/* Professional Select2 container in table headers */
.dataTables_wrapper thead th .select2-container {
    width: 100% !important;
    margin-top: 2px !important;
    position: relative !important;
}

/* Professional Select2 search input in table headers */
.dataTables_wrapper thead th .select2-container--default .select2-search--inline .select2-search__field {
    margin: 0 !important;
    padding: 2px 4px !important;
    font-size: 0.625rem !important;
    line-height: 1.4 !important;
    border: none !important;
    background: transparent !important;
    outline: none !important;
    color: #374151 !important;
    min-width: 20px !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-search--inline .select2-search__field::placeholder {
    color: #9CA3AF !important;
    font-size: 0.625rem !important;
    font-style: italic !important;
}

/* Fix Select2 dropdown z-index and positioning - Simple approach like part.blade.php */
.select2-container--default .select2-dropdown {
    z-index: 99999 !important;
    /* High z-index to appear above everything */
}

.select2-container--open .select2-dropdown {
    z-index: 99999 !important;
}

/* Ensure Select2 closes properly */
.select2-container--default.select2-container--closed .select2-dropdown {
    display: none !important;
}

/* Select2 dropdown positioning for table headers - body parent handles positioning */
body .select2-dropdown {
    z-index: 99999 !important;
}

/* Fix Select2 in modals */
.modal .select2-container {
    z-index: 1055 !important;
}

.modal .select2-dropdown {
    z-index: 1056 !important;
}

/* Fix table body alignment - Prevent overlap with tooltip support */
.dataTables_wrapper tbody td {
    padding: 6px 8px !important;
    font-size: 0.7rem !important;
    vertical-align: middle !important;
    overflow: hidden !important;
    /* Prevent content overflow */
    text-overflow: ellipsis !important;
    /* Show ellipsis for long text */
    white-space: nowrap !important;
    /* Prevent wrapping that causes overlap */
    max-width: 200px !important;
    /* Limit cell width */
    word-wrap: break-word !important;
    /* Break long words */
    position: relative !important;
    /* For tooltip positioning */
}

/* Add tooltip for truncated cells - show full text on hover */
.dataTables_wrapper tbody td[title] {
    cursor: help !important;
}

/* Ensure table columns align properly - Use auto layout to prevent overlap */
.dataTables_wrapper table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    width: 100% !important;
    table-layout: auto !important;
    /* Auto layout prevents column overlap */
}

/* Horizontal scroll synchronization - Header and body scroll together */
/* Hide scrollbar below header but allow scrolling */
.dataTables_wrapper .dataTables_scrollHead {
    overflow-x: hidden !important;
    /* Hide scrollbar but allow programmatic scrolling */
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    /* Firefox */
    -ms-overflow-style: none !important;
    /* IE/Edge */
}

.dataTables_wrapper .dataTables_scrollHead::-webkit-scrollbar {
    display: none !important;
    /* Chrome/Safari */
}

.dataTables_wrapper .dataTables_scrollBody {
    overflow-x: auto !important;
    overflow-y: auto !important;
}

/* Ensure header and body columns have same widths */
.dataTables_wrapper .dataTables_scrollHead table,
.dataTables_wrapper .dataTables_scrollBody table {
    table-layout: auto !important;
    /* Auto layout prevents overlap */
    width: 100% !important;
}

.dataTables_wrapper .dataTables_scrollHead thead th,
.dataTables_wrapper .dataTables_scrollBody tbody td {
    width: auto !important;
    min-width: 100px !important;
    max-width: 200px !important;
    /* Prevent columns from getting too wide */
    box-sizing: border-box !important;
    overflow: hidden !important;
    /* Prevent text overflow */
    text-overflow: ellipsis !important;
    /* Show ellipsis for long text */
    white-space: nowrap !important;
    /* Prevent text wrapping that causes overlap */
    word-wrap: break-word !important;
    /* Break long words if needed */
}

/* Prevent header from scrolling independently */
.dataTables_wrapper .dataTables_scrollHeadInner {
    width: 100% !important;
}

.dataTables_wrapper .dataTables_scrollHeadInner table {
    margin-bottom: 0 !important;
}

/* Fix column width calculation */
.dataTables_wrapper .dataTable {
    width: 100% !important;
    margin: 0 auto !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .compact-btn {
        min-width: 24px !important;
        height: 24px !important;
        font-size: 0.6rem !important;
    }

    .dtcc-button {
        width: 18px !important;
        height: 18px !important;
        font-size: 0.65rem !important;
    }

    .select2-multiple {
        font-size: 0.55rem !important;
    }

    .dataTables_wrapper thead th {
        padding: 6px 4px !important;
        font-size: 0.65rem !important;
    }

    .dataTables_wrapper thead th .th-header-content {
        padding-right: 40px !important;
    }
}

table.dataTable td.dt-control {
    text-align: center;
    cursor: pointer;
}

table.dataTable td.dt-control:before {
    height: 1em;
    width: 1em;
    margin-top: -9px;
    display: inline-block;
    color: #fff;
    border: 0.15em solid #fff;
    -webkit-border-radius: 1em;
    border-radius: 1em;
    -webkit-box-shadow: 0 0 0.2em #444;
    box-shadow: 0 0 0.2em #444;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    text-align: center;
    text-indent: 0 !important;
    font-family: "Courier New", Courier, monospace;
    line-height: 1em;
    content: "+";
    background-color: #31b131;
}

table.dataTable tr.dt-hasChild td.dt-control:before {
    content: "-";
    background-color: #d33333;
}

table.dataTable thead>tr>td.sorting,
table.dataTable thead>tr>td.sorting_asc,
table.dataTable thead>tr>td.sorting_asc_disabled,
table.dataTable thead>tr>td.sorting_desc,
table.dataTable thead>tr>td.sorting_desc_disabled,
table.dataTable thead>tr>th.sorting,
table.dataTable thead>tr>th.sorting_asc,
table.dataTable thead>tr>th.sorting_asc_disabled,
table.dataTable thead>tr>th.sorting_desc,
table.dataTable thead>tr>th.sorting_desc_disabled {
    cursor: pointer;
    position: relative;
    padding-right: 26px;
}

table.dataTable thead>tr>td.sorting:after,
table.dataTable thead>tr>td.sorting:before,
table.dataTable thead>tr>td.sorting_asc:after,
table.dataTable thead>tr>td.sorting_asc:before,
table.dataTable thead>tr>td.sorting_asc_disabled:after,
table.dataTable thead>tr>td.sorting_asc_disabled:before,
table.dataTable thead>tr>td.sorting_desc:after,
table.dataTable thead>tr>td.sorting_desc:before,
table.dataTable thead>tr>td.sorting_desc_disabled:after,
table.dataTable thead>tr>td.sorting_desc_disabled:before,
table.dataTable thead>tr>th.sorting:after,
table.dataTable thead>tr>th.sorting:before,
table.dataTable thead>tr>th.sorting_asc:after,
table.dataTable thead>tr>th.sorting_asc:before,
table.dataTable thead>tr>th.sorting_asc_disabled:after,
table.dataTable thead>tr>th.sorting_asc_disabled:before,
table.dataTable thead>tr>th.sorting_desc:after,
table.dataTable thead>tr>th.sorting_desc:before,
table.dataTable thead>tr>th.sorting_desc_disabled:after,
table.dataTable thead>tr>th.sorting_desc_disabled:before {
    position: absolute;
    display: block;
    opacity: 0.125;
    right: 10px;
    line-height: 9px;
    font-size: 0.8em;
}

table.dataTable thead>tr>td.sorting:before,
table.dataTable thead>tr>td.sorting_asc:before,
table.dataTable thead>tr>td.sorting_asc_disabled:before,
table.dataTable thead>tr>td.sorting_desc:before,
table.dataTable thead>tr>td.sorting_desc_disabled:before,
table.dataTable thead>tr>th.sorting:before,
table.dataTable thead>tr>th.sorting_asc:before,
table.dataTable thead>tr>th.sorting_asc_disabled:before,
table.dataTable thead>tr>th.sorting_desc:before,
table.dataTable thead>tr>th.sorting_desc_disabled:before {
    bottom: 50%;
    content: "▲";
}

table.dataTable thead>tr>td.sorting:after,
table.dataTable thead>tr>td.sorting_asc:after,
table.dataTable thead>tr>td.sorting_asc_disabled:after,
table.dataTable thead>tr>td.sorting_desc:after,
table.dataTable thead>tr>td.sorting_desc_disabled:after,
table.dataTable thead>tr>th.sorting:after,
table.dataTable thead>tr>th.sorting_asc:after,
table.dataTable thead>tr>th.sorting_asc_disabled:after,
table.dataTable thead>tr>th.sorting_desc:after,
table.dataTable thead>tr>th.sorting_desc_disabled:after {
    top: 50%;
    content: "▼";
}

table.dataTable thead>tr>td.sorting_asc:before,
table.dataTable thead>tr>td.sorting_desc:after,
table.dataTable thead>tr>th.sorting_asc:before,
table.dataTable thead>tr>th.sorting_desc:after {
    opacity: 0.6;
}

table.dataTable thead>tr>td.sorting_asc_disabled:before,
table.dataTable thead>tr>td.sorting_desc_disabled:after,
table.dataTable thead>tr>th.sorting_asc_disabled:before,
table.dataTable thead>tr>th.sorting_desc_disabled:after {
    display: none;
}

table.dataTable thead>tr>td:active,
table.dataTable thead>tr>th:active {
    outline: 0;
}

div.dataTables_scrollBody table.dataTable thead>tr>td:after,
div.dataTables_scrollBody table.dataTable thead>tr>td:before,
div.dataTables_scrollBody table.dataTable thead>tr>th:after,
div.dataTables_scrollBody table.dataTable thead>tr>th:before {
    display: none;
}

div.dataTables_processing {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 200px;
    margin-left: -100px;
    margin-top: -26px;
    text-align: center;
    padding: 2px;
}

div.dataTables_processing>div:last-child {
    position: relative;
    width: 80px;
    height: 15px;
    margin: 1em auto;
}

div.dataTables_processing>div:last-child>div {
    position: absolute;
    top: 0;
    width: 13px;
    height: 13px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: rgba(13, 110, 253, 0.9);
    -webkit-animation-timing-function: cubic-bezier(0, 1, 1, 0);
    animation-timing-function: cubic-bezier(0, 1, 1, 0);
}

div.dataTables_processing>div:last-child>div:nth-child(1) {
    left: 8px;
    -webkit-animation: datatables-loader-1 0.6s infinite;
    animation: datatables-loader-1 0.6s infinite;
}

div.dataTables_processing>div:last-child>div:nth-child(2) {
    left: 8px;
    -webkit-animation: datatables-loader-2 0.6s infinite;
    animation: datatables-loader-2 0.6s infinite;
}

div.dataTables_processing>div:last-child>div:nth-child(3) {
    left: 32px;
    -webkit-animation: datatables-loader-2 0.6s infinite;
    animation: datatables-loader-2 0.6s infinite;
}

div.dataTables_processing>div:last-child>div:nth-child(4) {
    left: 56px;
    -webkit-animation: datatables-loader-3 0.6s infinite;
    animation: datatables-loader-3 0.6s infinite;
}

@-webkit-keyframes datatables-loader-1 {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

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

@keyframes datatables-loader-1 {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

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

@-webkit-keyframes datatables-loader-3 {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

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

@keyframes datatables-loader-3 {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

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

@-webkit-keyframes datatables-loader-2 {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    100% {
        -webkit-transform: translate(24px, 0);
        transform: translate(24px, 0);
    }
}

@keyframes datatables-loader-2 {
    0% {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    100% {
        -webkit-transform: translate(24px, 0);
        transform: translate(24px, 0);
    }
}

table.dataTable.nowrap td,
table.dataTable.nowrap th {
    white-space: nowrap;
}

table.dataTable td.dt-left,
table.dataTable th.dt-left {
    text-align: left;
}

table.dataTable td.dataTables_empty,
table.dataTable td.dt-center,
table.dataTable th.dt-center {
    text-align: center;
}

table.dataTable td.dt-right,
table.dataTable th.dt-right {
    text-align: right;
}

table.dataTable td.dt-justify,
table.dataTable th.dt-justify {
    text-align: justify;
}

table.dataTable td.dt-nowrap,
table.dataTable th.dt-nowrap {
    white-space: nowrap;
}

table.dataTable tfoot td,
table.dataTable tfoot th,
table.dataTable thead td,
table.dataTable thead th {
    text-align: left;
}

table.dataTable tfoot td.dt-head-left,
table.dataTable tfoot th.dt-head-left,
table.dataTable thead td.dt-head-left,
table.dataTable thead th.dt-head-left {
    text-align: left;
}

table.dataTable tfoot td.dt-head-center,
table.dataTable tfoot th.dt-head-center,
table.dataTable thead td.dt-head-center,
table.dataTable thead th.dt-head-center {
    text-align: center;
}

table.dataTable tfoot td.dt-head-right,
table.dataTable tfoot th.dt-head-right,
table.dataTable thead td.dt-head-right,
table.dataTable thead th.dt-head-right {
    text-align: right;
}

table.dataTable tfoot td.dt-head-justify,
table.dataTable tfoot th.dt-head-justify,
table.dataTable thead td.dt-head-justify,
table.dataTable thead th.dt-head-justify {
    text-align: justify;
}

table.dataTable tfoot td.dt-head-nowrap,
table.dataTable tfoot th.dt-head-nowrap,
table.dataTable thead td.dt-head-nowrap,
table.dataTable thead th.dt-head-nowrap {
    white-space: nowrap;
}

table.dataTable tbody td.dt-body-left,
table.dataTable tbody th.dt-body-left {
    text-align: left;
}

table.dataTable tbody td.dt-body-center,
table.dataTable tbody th.dt-body-center {
    text-align: center;
}

table.dataTable tbody td.dt-body-right,
table.dataTable tbody th.dt-body-right {
    text-align: right;
}

table.dataTable tbody td.dt-body-justify,
table.dataTable tbody th.dt-body-justify {
    text-align: justify;
}

table.dataTable tbody td.dt-body-nowrap,
table.dataTable tbody th.dt-body-nowrap {
    white-space: nowrap;
}

/*! Bootstrap 5 integration for DataTables
*
* ©2020 SpryMedia Ltd, all rights reserved.
* License: MIT datatables.net/license/mit
*/
div.dataTables_wrapper div.dataTables_length label {
    font-weight: 400;
    text-align: left;
    white-space: nowrap;
}

div.dataTables_wrapper div.dataTables_length select {
    width: auto;
    display: inline-block;
}

div.dataTables_wrapper div.dataTables_filter {
    text-align: right;
}

div.dataTables_wrapper div.dataTables_filter label {
    font-weight: 400;
    white-space: nowrap;
    text-align: left;
}

div.dataTables_wrapper div.dataTables_filter input {
    margin-left: 0.5em;
    display: inline-block;
    width: auto;
}

div.dataTables_wrapper div.dataTables_info {
    padding-top: 0.85em;
}

div.dataTables_wrapper div.dt-row {
    position: relative;
}

div.dataTables_scrollHead table.dataTable {
    margin-bottom: 0 !important;
}

div.dataTables_scrollBody>table {
    border-top: none;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

div.dataTables_scrollBody>table>thead .sorting:after,
div.dataTables_scrollBody>table>thead .sorting:before,
div.dataTables_scrollBody>table>thead .sorting_asc:after,
div.dataTables_scrollBody>table>thead .sorting_asc:before,
div.dataTables_scrollBody>table>thead .sorting_desc:after,
div.dataTables_scrollBody>table>thead .sorting_desc:before {
    display: none;
}

div.dataTables_scrollBody>table>tbody tr:first-child td,
div.dataTables_scrollBody>table>tbody tr:first-child th {
    border-top: none;
}

div.dataTables_scrollFoot>.dataTables_scrollFootInner {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

div.dataTables_scrollFoot>.dataTables_scrollFootInner>table {
    margin-top: 0 !important;
    border-top: none;
}

@media screen and (max-width: 767px) {

    div.dataTables_wrapper div.dataTables_filter,
    div.dataTables_wrapper div.dataTables_info,
    div.dataTables_wrapper div.dataTables_length,
    div.dataTables_wrapper div.dataTables_paginate {
        text-align: center;
    }

    div.dataTables_wrapper div.dataTables_paginate ul.pagination {
        -webkit-box-pack: center !important;
        -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }
}

table.dataTable.table-sm>thead>tr>th:not(.sorting_disabled) {
    padding-right: 20px;
}

table.table-bordered.dataTable {
    border-right-width: 0;
}

table.table-bordered.dataTable thead tr:first-child td,
table.table-bordered.dataTable thead tr:first-child th {
    border-top-width: 1px;
}

table.table-bordered.dataTable td,
table.table-bordered.dataTable th {
    border-left-width: 0;
}

table.table-bordered.dataTable td:first-child,
table.table-bordered.dataTable th:first-child {
    border-left-width: 1px;
}

table.table-bordered.dataTable td:last-child,
table.table-bordered.dataTable th:last-child {
    border-right-width: 1px;
}

table.table-bordered.dataTable td,
table.table-bordered.dataTable th {
    border-bottom-width: 1px;
}

div.dataTables_scrollHead table.table-bordered {
    border-bottom-width: 0;
}

div.table-responsive>div.dataTables_wrapper>div.row {
    margin: 0;
}

div.table-responsive>div.dataTables_wrapper>div.row>div[class^="col-"]:first-child {
    padding-left: 0;
}

div.table-responsive>div.dataTables_wrapper>div.row>div[class^="col-"]:last-child {
    padding-right: 0;
}



/* ============================================
   PREMIUM MODAL STYLING - Clean & Modern
   ============================================ */

/* Premium Modal Container */
.premium-modal .modal-dialog {
    max-height: 98vh;
    margin: 1rem auto;
}

.premium-modal-content {
    border: none !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
    overflow: hidden !important;
}

.premium-modal .modal-header {
    border-bottom: 2px solid rgba(0, 0, 0, 0.1) !important;
    padding: 1rem 1.5rem !important;
    border-radius: 12px 12px 0 0 !important;
}

.premium-modal-body {
    padding: 1.25rem 1.5rem !important;
    max-height: calc(98vh - 100px);
    overflow-y: auto;
    background: #FAFBFC;
}

.premium-modal-footer {
    border-top: 1px solid rgba(0, 0, 0, 0.1) !important;
    padding: 1rem 1.5rem !important;
    background: #F8F9FA;
    border-radius: 0 0 12px 12px;
}

/* Premium Section Styling */
.premium-section {
    background: #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
}

.premium-section:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
    border-color: rgba(0, 0, 0, 0.12);
}

.premium-section-critical {
    border: 2px solid rgba(40, 167, 69, 0.2) !important;
    box-shadow: 0 2px 8px rgba(40, 167, 69, 0.1) !important;
}

.premium-section-header {
    background: linear-gradient(135deg, #F8F9FA 0%, #FFFFFF 100%);
    padding: 0.75rem 1rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    font-size: 0.875rem;
}

.premium-header-success {
    background: linear-gradient(135deg, rgba(40, 167, 69, 0.08) 0%, rgba(40, 167, 69, 0.03) 100%) !important;
    border-bottom-color: rgba(40, 167, 69, 0.2) !important;
}

.premium-header-warning {
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.08) 0%, rgba(255, 193, 7, 0.03) 100%) !important;
    border-bottom-color: rgba(255, 193, 7, 0.2) !important;
}

.premium-header-info {
    background: linear-gradient(135deg, rgba(23, 162, 184, 0.08) 0%, rgba(23, 162, 184, 0.03) 100%) !important;
    border-bottom-color: rgba(23, 162, 184, 0.2) !important;
}

.premium-header-secondary {
    background: linear-gradient(135deg, rgba(108, 117, 125, 0.08) 0%, rgba(108, 117, 125, 0.03) 100%) !important;
    border-bottom-color: rgba(108, 117, 125, 0.2) !important;
}

.premium-section-body {
    padding: 1rem;
}

/* Premium Subsection */
.premium-subsection {
    margin-bottom: 1rem;
}

.premium-subsection:last-child {
    margin-bottom: 0;
}

.premium-subsection-label {
    font-size: 0.8rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 0.5rem;
    display: block;
}

.premium-divider {
    border-top: 1px dashed rgba(0, 0, 0, 0.15) !important;
    margin: 1rem 0 !important;
}

/* Premium Form Labels */
.premium-label {
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    color: #495057 !important;
    margin-bottom: 0.35rem !important;
    display: block;
    line-height: 1.4;
}

/* Premium Input Fields */
.premium-input {
    font-size: 0.8125rem !important;
    padding: 0.5rem 0.75rem !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    background: #FFFFFF !important;
}

.premium-input:focus {
    border-color: #3B82F6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
    outline: none !important;
}

.premium-input-success {
    border-color: rgba(40, 167, 69, 0.3) !important;
    background: rgba(40, 167, 69, 0.05) !important;
}

.premium-input-success:focus {
    border-color: #28A745 !important;
    box-shadow: 0 0 0 3px rgba(40, 167, 69, 0.15) !important;
}

.premium-input-danger {
    border-color: rgba(220, 53, 69, 0.3) !important;
    background: rgba(220, 53, 69, 0.05) !important;
}

.premium-input-danger:focus {
    border-color: #DC3545 !important;
    box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.15) !important;
}

/* Premium Readonly Fields */
.premium-readonly {
    font-size: 0.8125rem !important;
    padding: 0.5rem 0.75rem !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    border-radius: 6px !important;
    background: #F8F9FA !important;
    color: #6C757D !important;
    cursor: not-allowed !important;
}

.premium-readonly-success {
    background: rgba(40, 167, 69, 0.08) !important;
    border-color: rgba(40, 167, 69, 0.2) !important;
    color: #28A745 !important;
}

.premium-readonly-warning {
    background: rgba(255, 193, 7, 0.08) !important;
    border-color: rgba(255, 193, 7, 0.2) !important;
    color: #FFC107 !important;
}

.premium-readonly-info {
    background: rgba(23, 162, 184, 0.08) !important;
    border-color: rgba(23, 162, 184, 0.2) !important;
    color: #17A2B8 !important;
}

/* Premium Select Fields */
.premium-select {
    font-size: 0.8125rem !important;
    padding: 0.5rem 0.75rem !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    background: #FFFFFF !important;
}

.premium-select:focus {
    border-color: #3B82F6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
    outline: none !important;
}

/* Premium Textarea */
.premium-textarea {
    font-size: 0.8125rem !important;
    padding: 0.5rem 0.75rem !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    background: #FFFFFF !important;
    resize: vertical;
}

.premium-textarea:focus {
    border-color: #3B82F6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
    outline: none !important;
}

/* Premium Submit Button */
.premium-submit-btn {
    padding: 0.625rem 1.5rem !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

.premium-submit-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

.premium-submit-btn:active {
    transform: translateY(0) !important;
}

/* Premium Table */
.premium-table {
    border-radius: 6px;
    overflow: hidden;
}

.premium-table table {
    margin-bottom: 0;
}

.premium-table thead th {
    background: #F8F9FA;
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid rgba(0, 0, 0, 0.1);
}

/* Responsive Premium Modal */
@media (max-width: 768px) {
    .premium-modal .modal-dialog {
        margin: 0.5rem;
        max-height: 98vh;
    }

    .premium-modal-body {
        padding: 1rem !important;
    }

    .premium-section-body {
        padding: 0.75rem !important;
    }

    .premium-label {
        font-size: 0.7rem !important;
    }

    .premium-input,
    .premium-select,
    .premium-textarea {
        font-size: 0.75rem !important;
        padding: 0.4rem 0.6rem !important;
    }
}

/* Scrollbar Styling for Premium Modal */
.premium-modal-body::-webkit-scrollbar {
    width: 6px;
}

.premium-modal-body::-webkit-scrollbar-track {
    background: #F1F3F5;
    border-radius: 3px;
}

.premium-modal-body::-webkit-scrollbar-thumb {
    background: #CED4DA;
    border-radius: 3px;
}

.premium-modal-body::-webkit-scrollbar-thumb:hover {
    background: #ADB5BD;
}

/* Premium Time Input Styling */
.premium-time-input {
    font-size: 0.8125rem !important;
    padding: 0.5rem 0.75rem !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    background: #FFFFFF !important;
    text-align: center !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
}

.premium-time-input:focus {
    border-color: #3B82F6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
    outline: none !important;
}

/* Premium Select2 Styling - Match Premium Inputs */
.premium-modal .select2-container--default .select2-selection--single {
    height: auto !important;
    min-height: 38px !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 6px !important;
    background: #FFFFFF !important;
    transition: all 0.2s ease !important;
    padding: 0 !important;
}

.premium-modal .select2-container--default .select2-selection--single:hover {
    border-color: rgba(59, 130, 246, 0.3) !important;
}

.premium-modal .select2-container--default.select2-container--focus .select2-selection--single {
    border-color: #3B82F6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
    outline: none !important;
}

.premium-modal .select2-container--default .select2-selection--single .select2-selection__rendered {
    /* line-height: 38px !important; */
    padding-left: 0.75rem !important;
    padding-right: 20px !important;
    font-size: 0.7125rem !important;
    color: #495057 !important;
}

.premium-modal .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 36px !important;
    right: 8px !important;
    width: 20px !important;
}

.premium-modal .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #6C757D transparent transparent transparent !important;
    border-width: 5px 4px 0 4px !important;
    margin-top: -2px !important;
}

.premium-modal .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent #6C757D transparent !important;
    border-width: 0 4px 5px 4px !important;
    margin-top: -2px !important;
}

.premium-modal .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #9CA3AF !important;
    font-size: 0.7125rem !important;
}

/* Premium Select2 Dropdown Styling */
.premium-modal .select2-dropdown {
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    margin-top: 4px !important;
}

.premium-modal .select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-radius: 4px !important;
    padding: 0.4rem 0.6rem !important;
    font-size: 0.8125rem !important;
    margin: 4px !important;
}

.premium-modal .select2-container--default .select2-search--dropdown .select2-search__field:focus {
    border-color: #3B82F6 !important;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1) !important;
    outline: none !important;
}

.premium-modal .select2-container--default .select2-results__option {
    padding: 0.5rem 0.75rem !important;
    font-size: 0.7125rem !important;
    line-height: 1.5 !important;
}

.premium-modal .select2-container--default .select2-results__option--highlighted {
    background-color: rgba(59, 130, 246, 0.1) !important;
    color: #3B82F6 !important;
}

.premium-modal .select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: rgba(59, 130, 246, 0.15) !important;
    color: #1E40AF !important;
    font-weight: 500 !important;
}

/* Compact Premium Section Spacing */
.premium-section {
    margin-bottom: 0.75rem !important;
}

.premium-section-header {
    padding: 0.5rem 0.75rem !important;
    font-size: 0.8rem !important;
}

.premium-section-body {
    padding: 0.75rem !important;
}

.premium-subsection {
    margin-bottom: 0.75rem !important;
}

.premium-subsection:last-child {
    margin-bottom: 0 !important;
}

/* Compact Form Labels */
.premium-label {
    font-size: 0.7rem !important;
    margin-bottom: 0.25rem !important;
}

.premium-subsection-label {
    font-size: 0.75rem !important;
    margin-bottom: 0.4rem !important;
}

/* Compact Input/Select Padding */
.premium-input,
.premium-select,
.premium-readonly,
.premium-time-input {
    padding: 0.4rem 0.6rem !important;
    font-size: 0.75rem !important;
}

.premium-textarea {
    padding: 0.4rem 0.6rem !important;
    font-size: 0.75rem !important;
    min-height: 60px !important;
}

/* Compact Modal Body */
.premium-modal-body {
    padding: 1rem 1.25rem !important;
}

/* Compact Modal Footer */
.premium-modal-footer {
    padding: 0.75rem 1.25rem !important;
}

/* Flatpickr Time Input Styling in Premium Modal */
.premium-modal .flatpickr-time {
    border-top: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.premium-modal .flatpickr-time input {
    font-size: 0.8125rem !important;
    font-weight: 600 !important;
    text-align: center !important;
    padding: 0.5rem !important;
}

.premium-modal .flatpickr-time .flatpickr-time-separator {
    font-weight: 600 !important;
    color: #495057 !important;
}

/* ============================================
   Premium Analytics Cards Styles
   ============================================ */

.analytics-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.9) 100%);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.analytics-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--gradient-start), var(--gradient-end));
}

.analytics-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.analytics-card .card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 120px;
}

.metric-value {
    font-size: clamp(1.1rem, 2.5vw, 1.5rem);
    font-weight: 700;
    background: linear-gradient(135deg, var(--gradient-start), var(--gradient-end));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1.2;
}

.metric-label {
    font-size: clamp(0.7rem, 1.5vw, 0.85rem);
    color: #6c757d;
    font-weight: 500;
    margin-top: 4px;
}

.metric-detail {
    font-size: 0.65rem;
    color: #6c757d;
    margin-top: 6px;
    line-height: 1.4;
}

.trend-indicator {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 4px;
}

.trend-up {
    background: rgba(25, 135, 84, 0.15);
    color: #28a745;
}

.trend-down {
    background: rgba(220, 53, 69, 0.15);
    color: #dc3545;
}

.detail-row {
    display: flex;
    justify-content: space-between;
    font-size: 0.65rem;
    margin-top: 2px;
    color: #6c757d;
}

.detail-label {
    font-weight: 500;
}

.detail-value {
    font-weight: 600;
    color: #495057;
}

/* Legacy ID-specific overrides removed to allow unified Mac OS system to take effect */


/* ============================================
   MAC OS MATERIAL UI - ADVANCED COMPONENTS
   ============================================ */

/* 1. GLASSMORPHISM UTILITIES */
.glass,
.card,
.analytics-card,
.dropdown-menu,
.modal-content,
.offcanvas {
    background: var(--glass-bg, rgba(255, 255, 255, 0.8));
    backdrop-filter: var(--glass-blur, blur(20px));
    -webkit-backdrop-filter: var(--glass-blur, blur(20px));
    border: 1px solid var(--glass-border, rgba(255, 255, 255, 0.4));
    box-shadow: var(--glass-shadow, 0 8px 32px 0 rgba(31, 38, 135, 0.05));
    border-radius: var(--bs-border-radius-lg);
}

/* 2. BUTTONS (iOS Style) */
.btn {
    border-radius: 999px;
    /* Pill shape */
    font-weight: 500;
    padding: 0.5rem 1.25rem;
    transition: all 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    letter-spacing: 0.01em;
}

.btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.btn-primary {
    background: var(--bs-primary);
    border: none;
}

.btn-primary:hover {
    background: linear-gradient(135deg, var(--bs-blue), var(--bs-indigo));
}

.btn-light {
    background: #ffffff;
    border: 1px solid var(--bs-border-colors);
    color: var(--bs-body-color);
}

/* 3. TABLES (Mac OS Finder Style) */
.table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    margin-bottom: 1rem;
    color: var(--bs-body-color);
}

.table thead th {
    background: rgba(245, 245, 247, 0.95);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--bs-border-colors);
    color: #6e6e73;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    padding: 1rem;
    vertical-align: middle;
}

.table tbody tr {
    transition: background 0.15s;
}

.table tbody tr:hover {
    background-color: rgba(0, 113, 227, 0.03);
}

.table tbody td {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    padding: 1rem;
    vertical-align: middle;
    font-size: 0.9rem;
}

/* Rounded Corners for Table Rows */
.table tbody tr td:first-child {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.table tbody tr td:last-child {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

/* 4. FORMS & INPUTS (UNIFIED SYSTEM) */
:root {
    --input-height: 40px;
    --input-bg: rgba(255, 255, 255, 0.85);
    --input-border: #d2d2d7;
    --input-focus-border: var(--bs-primary);
    --input-focus-shadow: rgba(0, 113, 227, 0.2);
}

.form-control,
.form-select,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
body .select2-container--default .select2-selection--single:not(.compact-input),
body .select2-container--default .select2-selection--multiple:not(.compact-input) {
    min-height: var(--input-height) !important;
    height: var(--input-height) !important;
    background-color: var(--input-bg) !important;
    border: 1px solid var(--input-border) !important;
    border-radius: 10px !important;
    padding: 6px 12px !important;
    font-size: 0.95rem !important;
    color: #1d1d1f !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    display: flex !important;
    align-items: center !important;
}

/* DATA TABLE HEADER SPECIALIZED COMPACT OVERRIDES */
.dataTables_wrapper thead th .select2-container--default .select2-selection--single,
.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple,
.dataTables_wrapper thead th .form-control,
.compact-select2 .select2-selection--single,
.compact-select2 .select2-selection--multiple {
    min-height: 28px !important;
    height: 28px !important;
    border-radius: 6px !important;
    padding: 0 8px !important;
    font-size: 0.75rem !important;
    background-color: rgba(255, 255, 255, 0.7) !important;
}


.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    padding: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: hidden !important;
    align-items: center !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__choice {
    padding: 0 6px !important;
    margin: 2px 2px 0 0 !important;
    font-size: 0.65rem !important;
    height: 20px !important;
    line-height: 20px !important;
}


/* Specific Fixes for Select2 Internal Layout */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding: 0 !important;
    line-height: normal !important;
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    top: 0 !important;
    right: 10px !important;
    display: flex !important;
    align-items: center !important;
}

/* Uniform Focus State */
.form-control:focus,
.form-select:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--open .select2-selection--single,
.select2-container--open .select2-selection--multiple {
    background-color: #ffffff !important;
    border-color: var(--input-focus-border) !important;
    box-shadow: 0 0 0 4px var(--input-focus-shadow) !important;
    outline: none !important;
}

/* Labels */
.form-label,
label {
    font-weight: 500 !important;
    font-size: 0.85rem !important;
    color: #6e6e73 !important;
    margin-bottom: 6px !important;
    letter-spacing: 0.01em !important;
}

/* Date & Number Specifics */
input[type="date"],
input[type="datetime-local"],
input[type="number"] {
    -webkit-appearance: none;
    appearance: none;
}

/* Select2 Dropdown Styling (The floating part) */
.select2-dropdown {
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(25px) !important;
    -webkit-backdrop-filter: blur(25px) !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
    overflow: hidden !important;
    margin-top: 4px !important;
}

.select2-results__option {
    padding: 8px 12px !important;
    font-size: 0.9rem !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

.select2-results__option--highlighted[aria-selected] {
    background-color: var(--bs-primary) !important;
    color: white !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid #d2d2d7 !important;
    border-radius: 6px !important;
    padding: 6px 10px !important;
    margin-bottom: 8px !important;
}

/* CORE SELECT2 FUNCTIONAL OVERRIDES (RESTORED) */
.select2-hidden-accessible {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    -webkit-clip-path: inset(50%) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 5px !important;
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
}

/* Ensure table header multiple selects don't wrap and cause height growth */
.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
}

.dataTables_wrapper thead th .select2-container--default .select2-selection--multiple .select2-selection__rendered::-webkit-scrollbar {
    display: none !important;
}



/* 5. CARDS & SECTIONS */
.card {
    border: none;
    margin-bottom: 1.5rem;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.08);
}

.card-header {
    background: transparent;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    padding: 1.25rem 1.5rem;
}

.card-body {
    padding: 1.5rem;
}

/* 6. MODALS (Advanced Mac Material) */
.modal-content {
    background: var(--glass-bg, rgba(255, 255, 255, 0.85)) !important;
    backdrop-filter: var(--glass-blur, blur(25px)) saturate(180%) !important;
    -webkit-backdrop-filter: var(--glass-blur, blur(25px)) saturate(180%) !important;
    border: 1px solid rgba(255, 255, 255, 0.4) !important;
    border-radius: 20px !important;
    box-shadow: 0 40px 100px rgba(0, 0, 0, 0.25) !important;
    overflow: hidden !important;
}

.modal-header {
    background: rgba(245, 245, 247, 0.5) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
    padding: 1.25rem 1.5rem !important;
    display: flex !important;
    align-items: center !important;
}

/* Neutralize Hardcoded Background Classes in Headers */
.modal-header.bg-primary,
.modal-header.bg-secondary,
.modal-header.bg-success,
.modal-header.bg-danger,
.modal-header.bg-warning,
.modal-header.bg-info,
.modal-header.bg-light,
.modal-header.bg-dark {
    background: rgba(245, 245, 247, 0.6) !important;
}

.modal-header.bg-primary .modal-title,
.modal-header.bg-warning .modal-title,
.modal-header.bg-info .modal-title,
.modal-header.bg-danger .modal-title,
.modal-header.bg-success .modal-title,
.modal-header.bg-dark .modal-title,
.modal-header.text-white .modal-title {
    color: #1d1d1f !important;
}

.modal-header .btn-close {
    filter: none !important;
    /* Ensure close button is visible on light header */
}


.modal-title {
    font-weight: 700 !important;
    font-size: 1.15rem !important;
    color: #1d1d1f !important;
    letter-spacing: -0.02em !important;
}

.modal-footer {
    background: rgba(245, 245, 247, 0.5) !important;
    border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
    padding: 1.25rem 1.5rem !important;
}

/* PREMIUM SECTION SYSTEM (Used in dense modals) */
.premium-section {
    background: rgba(255, 255, 255, 0.4) !important;
    border: 1px solid rgba(0, 0, 0, 0.04) !important;
    border-radius: 14px !important;
    margin-bottom: 1rem !important;
    overflow: hidden !important;
}

.premium-section-header {
    background: rgba(0, 0, 0, 0.02) !important;
    padding: 8px 12px !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
}

.premium-section-header h6 {
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    font-weight: 700 !important;
    color: #86868b !important;
    margin: 0 !important;
}

.premium-section-body {
    padding: 12px !important;
}

.premium-subsection-label {
    font-size: 0.7rem !important;
    font-weight: 700 !important;
    color: var(--bs-primary) !important;
    text-transform: uppercase !important;
    margin-bottom: 8px !important;
    display: block !important;
}


/* 7. ANALYTICS CARDS (Refined) */
/* Select2 Multiple Choice Tags (Mac Style) */
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: var(--bs-primary) !important;
    border: none !important;
    border-radius: 6px !important;
    color: white !important;
    padding: 2px 8px !important;
    margin-top: 4px !important;
    font-size: 0.8rem !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: rgba(255, 255, 255, 0.8) !important;
    border: none !important;
    margin-right: 5px !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: white !important;
    background: transparent !important;
}




/* ============================================
   Premium Analytics Cards Styles
   ============================================ */

.analytics-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.9) 100%);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.analytics-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--gradient-start), var(--gradient-end));
}

.analytics-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.analytics-card .card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 120px;
}

.metric-value {
    font-size: clamp(1.1rem, 2.5vw, 1.5rem);
    font-weight: 700;
    background: linear-gradient(135deg, var(--gradient-start), var(--gradient-end));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1.2;
}

.metric-label {
    font-size: clamp(0.7rem, 1.5vw, 0.85rem);
    color: #6c757d;
    font-weight: 500;
    margin-top: 4px;
}

.metric-detail {
    font-size: 0.65rem;
    color: #6c757d;
    margin-top: 6px;
    line-height: 1.4;
}

.trend-indicator {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 4px;
}

.trend-up {
    background: rgba(25, 135, 84, 0.15);
    color: #28a745;
}

.trend-down {
    background: rgba(220, 53, 69, 0.15);
    color: #dc3545;
}

.detail-row {
    display: flex;
    justify-content: space-between;
    font-size: 0.65rem;
    margin-top: 2px;
    color: #6c757d;
}

.detail-label {
    font-weight: 500;
}

.detail-value {
    font-weight: 600;
    color: #495057;
}

.trend-up {
    background: rgba(52, 199, 89, 0.1);
    color: var(--bs-green);
}

.trend-down {
    background: rgba(255, 59, 48, 0.1);
    color: var(--bs-red);
}

/* 8. BADGES & ALERTS */
.badge {
    padding: 0.4em 0.8em;
    border-radius: 6px;
    font-weight: 600;
    letter-spacing: 0.02em;
}

.badge-soft-primary {
    background: rgba(0, 113, 227, 0.1);
    color: var(--bs-primary);
}

.badge-soft-success {
    background: rgba(52, 199, 89, 0.1);
    color: var(--bs-green);
}

.badge-soft-warning {
    background: rgba(255, 159, 10, 0.1);
    color: var(--bs-warning);
}

.badge-soft-danger {
    background: rgba(255, 59, 48, 0.1);
    color: var(--bs-red);
}

.alert {
    border: none;
    border-radius: 12px;
    backdrop-filter: blur(10px);
}

/* 9. SHADOWS & DEPTH */
.shadow-sm {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

.shadow {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08) !important;
}

.shadow-lg {
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.12) !important;
}

/* 10. GRID & LAYOUT FIXES (Robustness) */
.container,
.container-fluid {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

/* 11. SIDEBAR & NAVIGATION */
.sidebar,
.navbar {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-right: 1px solid rgba(0, 0, 0, 0.05);
}

.nav-link {
    border-radius: 8px;
    transition: all 0.2s ease;
}

.nav-link:hover {
    background: rgba(0, 0, 0, 0.05);
    color: var(--bs-primary);
}

.nav-link.active {
    background: var(--bs-primary);
    color: white;
    box-shadow: 0 4px 12px rgba(0, 113, 227, 0.3);
}

/* 12. INPUT GROUP FIX - Ensure addon and input share space */
.input-group {
    display: flex;
    flex-wrap: nowrap !important;
    align-items: stretch;
    width: 100%;
}

.input-group>.form-control,
.input-group>.form-select {
    width: 1% !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
}

.input-group-text {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
    font-size: 0.938rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    text-align: center;
    white-space: nowrap;
    background-color: #f8f9fa;
    border: 1px solid #d2d2d7;
    border-radius: 8px 0 0 8px;
    flex-shrink: 0;
}

.input-group>.form-control:not(:first-child),
.input-group>.form-select:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.input-group>.form-control:not(:last-child),
.input-group>.form-select:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

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

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

/* Modal specific input-group fix */
.modal .input-group,
.modal-body .input-group {
    flex-wrap: nowrap !important;
}

.modal .input-group>.form-control,
.modal-body .input-group>.form-control {
    width: 1% !important;
    flex: 1 1 auto !important;
}

/* ============================================ */
/* GLOBAL MODAL & UI STYLES                    */
/* ============================================ */

/* Modal Input Group Fixes - Override width: 100% */
.modal .input-group>.form-control,
.modal .input-group>.form-select {
    width: 1% !important;
    flex: 1 1 auto !important;
}

.modal .input-group {
    display: flex !important;
    flex-wrap: nowrap !important;
}

.modal .input-group>.input-group-text {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

/* Dimension input groups styling */
.dimension-input-group .input-group {
    flex-wrap: nowrap !important;
}

.dimension-input-group .form-control {
    width: 1% !important;
    flex: 1 1 auto !important;
}

/* ============================================ */
/* FILE UPLOAD AREA STYLES                     */
/* ============================================ */

.upload-area {
    border: 2px dashed #dee2e6;
    border-radius: 8px;
    padding: 40px;
    text-align: center;
    background-color: #f8f9fa;
    transition: all 0.3s ease;
    cursor: pointer;
}

.upload-area:hover {
    border-color: #007bff;
    background-color: #f0f8ff;
}

.upload-area.drag-over {
    border-color: #28a745;
    background-color: #f0fff0;
    transform: scale(1.02);
}

.upload-content {
    pointer-events: none;
}

.upload-content button {
    pointer-events: auto;
}

.file-item {
    transition: all 0.2s ease;
}

.file-item:hover {
    background-color: #f8f9fa;
    transform: translateX(5px);
}

.file-item .btn-group {
    opacity: 0.7;
    transition: opacity 0.2s ease;
}

.file-item:hover .btn-group {
    opacity: 1;
}

#fileList {
    max-height: 400px;
    overflow-y: auto;
}

.file-item:last-child {
    border-bottom: none !important;
}

/* ============================================ */
/* MODAL Z-INDEX MANAGEMENT                    */
/* ============================================ */

#fileDataModal {
    z-index: 1050 !important;
}

#filePreviewModal {
    z-index: 1060 !important;
}

.modal-backdrop {
    z-index: 1040 !important;
}

#filePreviewModal .modal-backdrop {
    z-index: 1055 !important;
}

.modal-backdrop+.modal-backdrop {
    z-index: 1055 !important;
}

#fileDataModal .modal-backdrop {
    z-index: 1045 !important;
}

#filePreviewModal .modal-content {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

#filePreviewModal .modal-body {
    max-height: 90vh;
    overflow-y: auto;
}

#filePreviewModal iframe {
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

#filePreviewModal img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

/* ============================================ */
/* EXCEL-STYLE FILTER CONTROLS (DTCC)          */
/* ============================================ */

.dtcc {
    position: absolute;
    right: 2px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    gap: 2px;
    z-index: 10;
    align-items: center;
}

.dtcc-button {
    width: 18px;
    height: 18px;
    padding: 0;
    border: 1px solid #dee2e6;
    background: #fff;
    border-radius: 3px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    color: #6c757d;
    transition: all 0.2s;
}

.dtcc-button:hover,
.dtcc-button[aria-expanded="true"] {
    background: #f8f9fa;
    border-color: #adb5bd;
    color: #495057;
}

.dtcc-button_active {
    background: #007bff;
    border-color: #007bff;
    color: #fff;
}

.dtcc-button_active:hover {
    background: #0056b3;
    border-color: #0056b3;
}

/* ============================================ */
/* DATATABLE HEADER STYLING                    */
/* ============================================ */

th {
    position: relative;
}

.th-header-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 5px;
    width: 100%;
    padding-right: 25px;
}

.th-label {
    flex: 1;
    flex-grow: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.filter-wrapper {
    margin-top: 4px;
}

.compact-btn {
    padding: 0.2rem 0.4rem;
    font-size: 0.65rem;
    line-height: 1.2;
}

/* Hide datalist elements */
datalist {
    display: none;
}

/* ============================================ */
/* COMPACT SELECT2 STYLING                     */
/* ============================================ */

.compact-select2 .select2-selection--multiple {
    min-height: 24px !important;
    padding: 0 2px !important;
    border-color: #eee !important;
}

.compact-select2 .select2-selection__choice {
    margin-top: 2px !important;
    padding: 0 4px !important;
    font-size: 0.75rem !important;
}

/* ============================================ */
/* CUSTOM SCROLLBAR FOR FILTER MODAL           */
/* ============================================ */

.model-scrollbar::-webkit-scrollbar {
    width: 6px;
}

.model-scrollbar::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

.model-scrollbar::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 3px;
}

.model-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #bbb;
}