/*---------------------------------------------------
  SASSLements (based on LESS Elements 0.9 http://lesselements.com)
-------------------------------- -------------------
  LESS ELEMENTS made by Dmitry Fadeyev (http://fadeyev.net)
  SASS port by Samuel Beek (http://samuelbeek.com) 
---------------------------------------------------*/
/*------------------------
    Usage

  $color-white: hexToRGBString(#fff) => "255,255,255"
  $color-white: hexToRGBString(rgb(255,255,255)) => "255,255,255"
  $color-white: hexToRGBString(rgba(#fff,1)) => "255,255,255"

------------------------*/
/*------------------------
    Usage

    h1 {
      font-size: rem(32);
    }

    OR:

    h1 {
      font-size: rem(32px);
    }
------------------------*/
/*------------------------
  FADE IN
  e.g. @include fadeIn( 2s );
------------------------*/
/*------------------------
mixin that calculates if text needs to be light or dark
depending on the background color passed.

From this W3C document: http://www.webmasterworld.com/r.cgi?f=88&d=9769&url=http://www.w3.org/TR/AERT#color-contrast

usage:
@include text-contrast($bgcolor)

Color brightness is determined by the following formula: 
((Red value X 299) + (Green value X 587) + (Blue value X 114)) / 1000
------------------------*/
/*------------------------
 color factory 
  eg: contrast-ink($contrastvalue)
------------------------*/
/*------------------------
 color factory 
  eg: @include paint($blue-grey-50, bg-blue-grey-50);
------------------------*/
/* backface visibility */
/* generate theme button */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap");
:root {
    --bs-blue: #5f71bd;
    --bs-indigo: #2a58bf;
    --bs-purple: #767793;
    --bs-pink: #b87b61;
    --bs-red: #ea7954;
    --bs-orange: #ee8959;
    --bs-yellow: #f7be91;
    --bs-green: #7b9f7d;
    --bs-teal: #5085a6;
    --bs-cyan: #6776b3;
    --bs-black: #000;
    --bs-white: #fff;
    --primary-50: #84bae4;
    --primary-100: #70aedf;
    --primary-200: #5ba2db;
    --primary-300: #4696d6;
    --primary-400: #318ad2;
    --primary-500: #2a7dbf;
    --primary-600: #256faa;
    --primary-700: #216295;
    --primary-800: #1c5480;
    --primary-900: #18466b;
    --success-50: #6ed8cb;
    --success-100: #5ad3c4;
    --success-200: #46cebd;
    --success-300: #35c5b4;
    --success-400: #2fb1a1;
    --success-500: #2a9d8f;
    --success-600: #25897d;
    --success-700: #1f756a;
    --success-800: #1a6158;
    --success-900: #144d46;
    --info-50: #c8c4e4;
    --info-100: #b7b2dc;
    --info-200: #a7a1d4;
    --info-300: #978fcc;
    --info-400: #867ec4;
    --info-500: #766cbc;
    --info-600: #665ab4;
    --info-700: #584da8;
    --info-800: #4f4597;
    --info-900: #463d85;
    --warning-50: #fce8d8;
    --warning-100: #fbdac0;
    --warning-200: #f9cca9;
    --warning-300: #f7be91;
    --warning-400: #f6b079;
    --warning-500: #f4a261;
    --warning-600: #f29449;
    --warning-700: #f18631;
    --warning-800: #ef7819;
    --warning-900: #df6b10;
    --danger-50: #f6ccc1;
    --danger-100: #f3b9ab;
    --danger-200: #f0a794;
    --danger-300: #ed947e;
    --danger-400: #ea8267;
    --danger-500: #e76f51;
    --danger-600: #e45c3b;
    --danger-700: #e14a24;
    --danger-800: #cf401d;
    --danger-900: #b93919;
    --fusion-50: #757575;
    --fusion-100: #686868;
    --fusion-200: #5b5b5b;
    --fusion-300: #4e4e4e;
    --fusion-400: #424242;
    --fusion-500: #353535;
    --fusion-600: #282828;
    --fusion-700: #1b1b1b;
    --fusion-800: #0f0f0f;
    --fusion-900: #020202;
    --dark-50: #404040;
    --dark-100: #333333;
    --dark-200: #262626;
    --dark-300: #1a1a1a;
    --dark-400: #0d0d0d;
    --dark-500: #000;
    --dark-600: black;
    --dark-700: black;
    --dark-800: black;
    --dark-900: black;
    --light-50: white;
    --light-100: white;
    --light-200: white;
    --light-300: white;
    --light-400: white;
    --light-500: #fff;
    --light-600: #f2f2f2;
    --light-700: #e6e6e6;
    --light-800: #d9d9d9;
    --light-900: #cccccc;
    --secondary-50: #afb5ba;
    --secondary-100: #a1a8ae;
    --secondary-200: #939ba2;
    --secondary-300: #868e96;
    --secondary-400: #78828a;
    --secondary-500: #6c757d;
    --secondary-600: #60686f;
    --secondary-700: #545b62;
    --secondary-800: #494f54;
    --secondary-900: #3d4246;
    --bs-primary: #2a7dbf;
    --bs-primary-rgb: 42, 125, 191;
    --bs-primary-text-emphasis: #0e2b42;
    --bs-primary-bg-subtle: #99c6e9;
    --bs-primary-border-subtle: #70aedf;
    --bs-success: #2a9d8f;
    --bs-success-rgb: 42, 157, 143;
    --bs-success-text-emphasis: #0a2421;
    --bs-success-bg-subtle: #82ded3;
    --bs-success-border-subtle: #5ad3c4;
    --bs-info: #766cbc;
    --bs-info-rgb: 118, 108, 188;
    --bs-info-text-emphasis: #332d62;
    --bs-info-bg-subtle: #d8d5ec;
    --bs-info-border-subtle: #b7b2dc;
    --bs-warning: #f4a261;
    --bs-warning-rgb: 244, 162, 97;
    --bs-warning-text-emphasis: #b0550c;
    --bs-warning-bg-subtle: #fef6f0;
    --bs-warning-border-subtle: #fbdac0;
    --bs-danger: #e76f51;
    --bs-danger-rgb: 231, 111, 81;
    --bs-danger-text-emphasis: #8c2b13;
    --bs-danger-bg-subtle: #faded7;
    --bs-danger-border-subtle: #f3b9ab;
    --bs-fusion: #353535;
    --bs-fusion-rgb: 53, 53, 53;
    --bs-fusion-text-emphasis: black;
    --bs-fusion-bg-subtle: #818181;
    --bs-fusion-border-subtle: #686868;
    --bs-dark: #000;
    --bs-dark-rgb: 0, 0, 0;
    --bs-dark-text-emphasis: black;
    --bs-dark-bg-subtle: #4d4d4d;
    --bs-dark-border-subtle: #333333;
    --bs-light: #fff;
    --bs-light-rgb: 255, 255, 255;
    --bs-light-text-emphasis: #b3b3b3;
    --bs-light-bg-subtle: white;
    --bs-light-border-subtle: white;
    --bs-secondary: #6c757d;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-secondary-text-emphasis: #25282b;
    --bs-secondary-bg-subtle: #bcc1c6;
    --bs-secondary-border-subtle: #a1a8ae;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-form-valid-color: $ color-success;
    --bs-form-valid-border-color: $ color-success;
    --bs-form-invalid-color: $ color-danger;
    --bs-form-invalid-border-color: $ color-danger;
    --app-nav-link-color: var(--bs-gray-800);
    --app-nav-link-hover-color: #256faa;
    --app-nav-link-active-color: #256faa;
    --app-nav-title-color: #666666;
    --app-nav-border-color: rgba(var(--secondary), 0.3);
    --app-nav-item-hover-bg: rgba(42, 125, 191, 0.045);
    --app-nav-item-active-bg: rgba(var(--secondary), 0.07);
    --app-nav-item-active-indicator: var(--app-nav-link-active-color);
    --app-nav-collapse-sign-color: var(--bs-body-color);
    --bs-link-color: #2a7dbf;
    --bs-link-color-rgb: 42, 125, 191;
    --bs-link-hover-color-rgb: 33, 98, 149;
    --bs-link-decoration: underline;
    --bs-link-hover-color: darken($ color-primary, 10%);
    --bs-code-color: #cf401d;
    --bs-highlight-color: #212529;
    --bs-highlight-bg: #fff3cd;
    --app-header-height: 5.5rem;
    --menu-width: 18rem;
    --right-content-width: 20rem;
    --menu-width-minified: 4.4rem;
    --menu-top-height-minified: 4rem;
    --menu-top-height: 6rem;
    --drawer-width: 24rem;
    --app-header-fixed: 0;
    --app-nav-full: 0;
    --app-header-background: var(--bs-body-bg);
    --app-nav-background: var(--bs-body-bg);
    --app-drawer-background: var(--bs-body-bg);
    --app-content-background: #fdfdfd;
    --logo-width: 11rem;
    --logo-height: 2rem;
    --app-layout-border-color: rgba(0, 0, 0, 0.07);
    --bs-border-color-translucent: rgba(0, 0, 0, 0.1);
    --bs-border-color: #dee2e6;
    --app-nav-svgicon-size: 1.25rem;
    --collapse-icon-border: rgba(0, 0, 0, 0.3);
    --collapse-icon-border-hover: rgba(var(--primary), 0.8);
    --collapse-icon-width: 2.5rem;
    --collapse-icon-height: 1.8rem;
    --primary: 42, 125, 191;
    --secondary: 108, 117, 125;
    --success: 42, 157, 143;
    --warning: 244, 162, 97;
    --info: 118, 108, 188;
    --danger: 231, 111, 81;
    --fusion: 53, 53, 53;
    --disable: 173, 181, 189;
    --white: 255, 255, 255;
    --font-family: "Poppins", sans-serif;
    --direction: ltr;
    --transition: transform 470ms cubic-bezier(.34, 1.25, .3, 1);
    --z-index-master: 999;
    --z-index-slave: 1;
    --content-padding: 1.25rem;
    --menu-icon-size: 1.625rem;
    --settings-disabled: 0.3;
    --bs-body-color: #505050;
    --bs-body-font-size: 0.925rem;
    --bs-form-valid-border-color: #2a9d8f;
    --bs-form-invalid-border-color: #e76f51;
    --bs-form-valid-color: #2a9d8f;
    --bs-form-invalid-color: #e76f51;
    --input-placeholder-color: rgba(112, 112, 112, 0.5);
    --bs-secondary-color: rgba(70, 79, 87, 0.70);
    --scrollbar-width: 8px;
    --scrollbar-color: #f1f1f1;
    --scrollbar-thumb: #888;
    --scrollbar-thumb-hover: #555;
    --border-radius-uniform: 0.375rem;
    --border-radius-uniform-sm: 0.25rem;
    --border-radius-uniform-xs: 0.125rem;
}

.nav-pills {
    --bs-nav-pills-link-active-bg: #2a7dbf;
}

.progress,
.progress-stacked {
    --bs-progress-bar-bg: #2a7dbf;
}

.list-group {
    --bs-list-group-active-bg: #2a7dbf;
    --bs-list-group-active-border-color: #2a7dbf;
}

.form-check-input:checked {
    background-color: #2a7dbf;
    border-color: #2a7dbf;
}

.form-check-input[type=checkbox]:indeterminate {
    background-color: #2a7dbf;
    border-color: #2a7dbf;
}

.list-group-item.active {
    background-color: var(--app-nav-item-active-bg);
    color: var(--bs-body-color);
}

.list-group-item:hover {
    color: var(--app-nav-link-hover-color);
    background-color: var(--app-nav-item-hover-bg);
}

/* keyframes */
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
/* mixins */
@keyframes rotating {
    0% {
        transform: rotate(0deg);
    }
    20% {
        transform: rotate(90deg);
        animation-timing-function: ease-in;
    }
    40% {
        transform: rotate(180deg);
        animation-timing-function: linear;
    }
    60% {
        transform: rotate(270deg);
        animation-timing-function: ease-out;
    }
    80% {
        transform: rotate(360deg);
        animation-timing-function: linear;
    }
    100% {
        transform: rotate(-360deg);
    }
}
@keyframes blob-anim-1 {
    0% {
        d: path("M 100 600 q 0 -700, 500 -500 t 500 500 t -500 500 T 100 600 z");
    }
    30% {
        d: path("M 100 600 q -50 -400, 500 -500 t 450 550 t -500 500 T 100 600 z");
    }
    70% {
        d: path("M 100 600 q 0 -400, 500 -500 t 400 500 t -500 500 T 100 600 z");
    }
    100% {
        d: path("M 150 600 q 0 -600, 500 -500 t 500 550 t -500 500 T 150 600 z");
    }
}
@keyframes blob-anim-2 {
    0% {
        d: path("M 100 600 q 0 -400, 500 -500 t 400 500 t -500 500 T 100 600 z");
    }
    40% {
        d: path("M 150 600 q 0 -600, 500 -500 t 500 550 t -500 500 T 150 600 z");
    }
    80% {
        d: path("M 100 600 q -50 -400, 500 -500 t 450 550 t -500 500 T 100 600 z");
    }
    100% {
        d: path("M 100 600 q 100 -600, 500 -500 t 400 500 t -500 500 T 100 600 z");
    }
}
@keyframes blob-anim-3 {
    0% {
        d: path("M 100 600 q -50 -400, 500 -500 t 450 550 t -500 500 T 100 600 z");
    }
    35% {
        d: path("M 150 600 q 0 -600, 500 -500 t 500 550 t -500 500 T 150 600 z");
    }
    75% {
        d: path("M 100 600 q 100 -600, 500 -500 t 400 500 t -500 500 T 100 600 z");
    }
    100% {
        d: path("M 100 600 q 0 -400, 500 -500 t 400 500 t -500 500 T 100 600 z");
    }
}
@keyframes blob-anim-4 {
    0% {
        d: path("M 150 600 q 0 -600, 500 -500 t 500 550 t -500 500 T 150 600 z");
    }
    30% {
        d: path("M 100 600 q 100 -600, 500 -500 t 400 500 t -500 500 T 100 600 z");
    }
    70% {
        d: path("M 100 600 q -50 -400, 500 -500 t 450 550 t -500 500 T 100 600 z");
    }
    100% {
        d: path("M 150 600 q 0 -600, 500 -500 t 500 550 t -500 500 T 150 600 z");
    }
}
@keyframes rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
@keyframes refresh {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(-360deg);
    }
}
@keyframes widthAnimation {
    0% {
        transform: translate3d(-90%, 0, 0);
    }
    10% {
        transform: translate3d(-90%, 0, 0);
    }
    20% {
        transform: translate3d(-90%, 0, 0);
    }
    30% {
        transform: translate3d(-90%, 0, 0);
    }
    40% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(0, 0, 0);
    }
    60% {
        transform: translate3d(0, 0, 0);
    }
    70% {
        transform: translate3d(-90%, 0, 0);
    }
    80% {
        transform: translate3d(-90%, 0, 0);
    }
    100% {
        transform: translate3d(-90%, 0, 0);
    }
}
@keyframes animateFadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}
@keyframes animateFadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}
@keyframes animateFadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-5px, 0, 0);
        transform: translate3d(-5px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}
@keyframes animateFadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(5px, 0, 0);
        transform: translate3d(5px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}
.fadeinup {
    animation: animateFadeInUp 0.5s;
    -webkit-animation: animateFadeInUp 0.5s;
}

.fadeindown {
    animation: animateFadeInDown 0.5s;
    -webkit-animation: animateFadeInDown 0.5s;
}

.fadeinleft {
    animation: animateFadeInLeft 0.5s;
    -webkit-animation: animateFadeInLeft 0.5s;
}

.fadeinright {
    animation: animateFadeInRight 0.5s;
    -webkit-animation: animateFadeInRight 0.5s;
}

/* 	CSS RESET
	Documentation: This CSS sets the font size to 1rem on the HTML element, sets the
	font family to the variable --font-family on the body element, removes text decoration,
	color, and list style on any a, ol, or ul elements, sets the width of any images to 100%
	and the height to auto, and sets the margin and padding to 0 on all elements, as well
	as making all elements use the border-box box sizing.
*/
html,
body {
    height: 100%;
}

body {
    font-family: var(--font-family);
    --bs-body-font-size: 0.875rem;
}

a {
    text-decoration: none;
}

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

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

button:focus:not(.focus-ring),
input:focus:not(.focus-ring),
textarea:focus:not(.focus-ring),
select:focus:not(.focus-ring),
a:focus:not(.focus-ring) {
    box-shadow: none !important;
}

p {
    margin-bottom: 1.5rem;
}

.subheader-title {
    font-size: 1.75rem;
    font-weight: 500;
    color: var(--page-subheader-color, var(--bs-body-color));
    text-shadow: var(--page-subheader-text-shadow, #fff) 0 1px;
    margin: 0;
}
.subheader-title:not(:has(*)) {
    margin-bottom: 2rem;
}
.subheader-title small {
    color: var(--bs-body-color);
    display: block;
    margin: 0.25rem 0 2rem;
    line-height: 2;
    font-size: 1rem;
    font-weight: 300;
    align-items: center;
}
.subheader-title .badge-subheader {
    font-size: 0.325em;
    font-weight: 400;
    text-shadow: none;
    margin-left: 0.25rem;
    margin-top: 0.25rem;
}

/************************************************************* Rules BELOW this point are set globally*/
.app-debug-mode {
    position: relative;
}
.app-debug-mode .app-header::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    background: rgba(var(--primary), 0.7);
    z-index: 1;
    padding: 2px 4px;
    font-size: 0.5rem;
    color: #fff;
}

/* hide right content */
body:not(.content-has-right) .content-wrapper-right {
    display: none;
}

/* app wrap */
.app-wrap {
    min-height: 100vh;
    display: grid;
    grid-template-columns: var(--menu-width) auto;
    grid-template-rows: var(--app-header-height) auto;
    grid-template-areas: "header header" "sidebar main" "sidebar main";
    gap: 0;
    padding: 0;
    /* changes value on condition */
    padding-top: var(--app-header-fixed);
}

/* app header */
.app-header {
    /* grid area */
    grid-area: header;
    height: var(--app-header-height);
    padding: 0 2rem 0 0;
    border-bottom: 1px solid var(--app-layout-border-color);
    display: flex;
    align-items: center;
    gap: 0.75rem;
    /* changes vale on condition */
    margin-left: var(--app-nav-full);
    background-color: var(--app-header-background, silver);
}
.app-header .app-logo {
    width: var(--menu-width);
    border-right: 1px solid var(--app-header-background);
    margin-right: 2rem;
    will-change: width;
    transition: width 470ms cubic-bezier(0.34, 1.25, 0.3, 1);
    transform: translate3d(0, 0, 0);
}
.app-header .app-search .form-control {
    max-width: 21.875rem;
    height: 2.625rem;
    line-height: normal;
    border-radius: 4px;
    background: 0 0;
    border: 1px solid transparent;
    box-shadow: none;
    font-size: 0.9375rem;
    padding: 0.38rem;
    --bs-secondary-color: var(--input-placeholder-color);
}

/* app sidebar */
.app-sidebar {
    /* grid area */
    grid-area: sidebar;
    width: var(--menu-width);
    padding: 0;
    border-right: 1px solid var(--app-layout-border-color);
    overflow-x: hidden;
    z-index: 10;
    position: relative;
    background: var(--app-nav-background, silver);
    will-change: width;
    transition: width 470ms cubic-bezier(0.34, 1.25, 0.3, 1);
    transform: translate3d(0, 0, 0);
}
.app-sidebar .app-logo {
    display: none;
}
.app-sidebar .app-menu-filter-container {
    width: var(--menu-width);
    position: relative;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

/* app body */
.app-body {
    grid-area: main;
    display: flex;
    flex-flow: column;
    direction: var(--direction);
    max-width: 100%;
    width: 100%;
    overflow-x: auto;
}

/* app nav */
.app-nav {
    overflow-x: auto;
    padding: var(--content-padding);
}

/* app content */
.app-content {
    flex: 1;
    background-color: var(--app-content-background, #fdfdfd);
    display: flex;
}
.app-content .content-wrapper {
    padding: 1.5rem 2rem;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    max-width: 100%;
    position: relative;
    overflow-x: hidden;
}
.app-content .content-wrapper .main-content {
    flex: 1 1 auto;
}
.app-content .content-wrapper-right {
    flex: 0 0 var(--right-content-width);
    border-left: 1px solid var(--app-layout-border-color);
}

/* app footer */
.app-footer,
.nav-footer {
    padding: 1rem 2rem;
    border-top: 1px solid var(--app-layout-border-color);
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.75rem;
}
.app-footer .app-footer-content,
.nav-footer .app-footer-content {
    display: flex;
    align-items: center;
    gap: 0.1875rem;
    font-weight: 900;
}
.app-footer .app-footer-content .logo,
.nav-footer .app-footer-content .logo {
    height: 1.25rem;
}

.hide-page-scrollbar {
    overflow: hidden;
    padding-right: var(--scrollbar-width, 8px);
}

.app-drawer {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    width: var(--drawer-width);
    background: var(--app-drawer-background);
    border-left: 1px solid var(--app-layout-border-color);
    transform: translate3d(calc(var(--drawer-width)), 0, 0);
    transition: var(--transition);
    z-index: calc(var(--z-index-master) + 2);
    display: flex;
    flex-direction: column;
}
.app-drawer > * {
    padding: var(--content-padding);
}
.app-drawer > *:not(.app-drawer-header) {
    overflow-x: auto;
}
.app-drawer .app-drawer-header {
    height: var(--app-header-height);
    min-height: var(--app-header-height);
    display: flex;
    align-items: center;
    background-color: var(--app-header-background);
    border-bottom: 1px solid var(--app-layout-border-color);
}
.app-drawer.open {
    transform: translate3d(0, 0, 0);
}
.app-drawer.open + .backdrop:not([data-toggleclass=app-mobile-menu-open]) {
    display: block;
    opacity: 1;
}

/* app menu and drawer backdrop */
.backdrop {
    display: none;
    position: fixed;
    z-index: calc(var(--z-index-master) + 1);
    background: rgba(0, 0, 0, 0.3);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    animation: fadeIn 0.4s ease-in-out;
    transform: translate3d(0, 0, 0);
}

/* set header fixed: this is global as it transends all levels */
.set-header-fixed {
    /*
  	CSS: incompatibility : .set-nav-full
  	CSS: needs dependency: .set-nav-fixed
  */
}
.set-header-fixed .app-header {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: var(--z-index-master);
}
.set-header-fixed.set-nav-full.set-nav-fixed:not(.set-nav-top):not(.set-nav-collapsed) .app-header {
    position: fixed;
    left: var(--menu-width);
    right: 0;
    top: 0;
}
.set-header-fixed.set-nav-full.set-nav-fixed:not(.set-nav-top):not(.set-nav-collapsed).set-nav-minified .app-header {
    left: var(--menu-width-minified);
    padding-left: 2rem;
}
.set-header-fixed.set-nav-full.set-nav-fixed:not(.set-nav-top):not(.set-nav-collapsed).set-nav-minified .app-header .app-logo {
    display: none;
}
.set-header-fixed:not(.set-nav-fixed) [data-class^=set-nav-full] {
    opacity: var(--settings-disabled);
}
.set-header-fixed:not(.set-nav-fixed) [data-class^=set-nav-full] ~ label {
    opacity: var(--settings-disabled);
}

/************************************************************* Rules ABOVE this point are set globally*/
/**************************************** Rules BELOW this point are set for screen sizes above 992px */
/*	so we take the opportunity to set the responsive rules here as it will apply for larger screens
    but will not apply for smaller less complex screens, if you want certain responsive rules to
    transcent to smaller screens, you can set them above this point for (universal rules)
    or below this point for mobile only rules */
@media (min-width: 992px) {
    /* debug mode */
    .app-debug-mode .app-header::before {
        content: "XXL ";
    }

    /* large screens will hide */
    .hidden-lg {
        display: none !important;
    }

    /* set nav top */
    .set-nav-top {
        /* app wrap */
        /* app sidebar */
        /* app body */
        /*
    	CSS: incompatibility : .set-nav-full .set-nav-collapsed
    	CSS: needs dependency: .set-nav-fixed
    */
        /* set nav full and collapsed */
        /* look for dependency */
    }

    .set-nav-top .app-wrap {
        grid-template-columns: auto auto;
        grid-template-rows: var(--app-header-height) var(--menu-top-height) auto;
        grid-template-areas: "header header " "sidebar sidebar" "main main";
    }

    .set-nav-top .app-sidebar {
        min-height: var(--menu-top-height);
        height: var(--menu-top-height);
        width: auto;
        border-right: 0;
        border-bottom: 2px dashed #333;
    }

    .set-nav-top .app-body {
        width: auto;
    }

    .set-nav-top [data-class^=set-nav-full],
    .set-nav-top [data-class^=set-nav-collapsed] {
        opacity: var(--settings-disabled);
        text-decoration: line-through;
    }

    .set-nav-top [data-class^=set-nav-full] ~ label,
    .set-nav-top [data-class^=set-nav-collapsed] ~ label {
        opacity: var(--settings-disabled);
        text-decoration: line-through;
    }

    .set-nav-top.set-nav-full [data-class^=set-nav-full],
    .set-nav-top.set-nav-full [data-class^=set-nav-collapsed], .set-nav-top.set-nav-collapsed [data-class^=set-nav-full],
    .set-nav-top.set-nav-collapsed [data-class^=set-nav-collapsed] {
        opacity: var(--settings-disabled);
        text-decoration: line-through;
    }

    .set-nav-top.set-nav-full [data-class^=set-nav-full] ~ label,
    .set-nav-top.set-nav-full [data-class^=set-nav-collapsed] ~ label, .set-nav-top.set-nav-collapsed [data-class^=set-nav-full] ~ label,
    .set-nav-top.set-nav-collapsed [data-class^=set-nav-collapsed] ~ label {
        opacity: var(--settings-disabled);
        text-decoration: line-through;
    }

    .set-nav-top:not(.set-header-fixed) [data-class^=set-nav-fixed] {
        opacity: var(--settings-disabled);
    }

    .set-nav-top:not(.set-header-fixed) [data-class^=set-nav-fixed] ~ label {
        opacity: var(--settings-disabled);
    }

    /* set nav minified and not collapsed */
    .set-nav-minified:not(.set-nav-collapsed) {
        /* check if appheader has a sibling app-sidebar that is hovered */
        /* app wrap */
        /* app header */
        /* app sidebar */
        /* change state of the collapse icon in the app-header */
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-header:has(+ .app-sidebar:hover) {
        /* control app logo width from a sub div on hover */
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-header:has(+ .app-sidebar:hover) .app-logo {
        width: calc(var(--menu-width));
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-wrap {
        grid-template-columns: var(--menu-width-minified) auto !important;
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-header .app-logo {
        width: var(--menu-width-minified);
        overflow: hidden;
        margin-right: calc(2rem + 1px);
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-sidebar:not(:hover) {
        width: var(--menu-width-minified);
        /* app menu filter container */
        /* when primary nav is collapsed, hide span */
        /* when nav is collapsed, hide primary nav ul ul */
        /* when nav is collapsed, hide collapse sign */
        /* when nav is collapsed, hide nav title to "..." */
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-sidebar:not(:hover) .app-menu-filter-container #searchInput {
        visibility: hidden;
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-sidebar:not(:hover) .primary-nav ul li a span {
        opacity: 0;
        transition: opacity 0.2s ease-in-out;
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-sidebar:not(:hover) .primary-nav ul ul {
        display: none !important;
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-sidebar:not(:hover) .collapse-sign {
        display: none;
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-sidebar:not(:hover) .nav-title {
        visibility: hidden;
        position: relative;
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-sidebar:not(:hover) .nav-title span {
        display: none;
    }

    .set-nav-minified:not(.set-nav-collapsed) .app-sidebar:not(:hover) .nav-title::before {
        content: "...";
        color: currentColor;
        font-size: inherit;
        visibility: visible;
        display: inline-block;
        bottom: 50%;
        inset-inline-start: 0;
        margin-inline-start: 0.225rem;
        transform: translateX(0%);
    }

    .set-nav-minified:not(.set-nav-collapsed) .collapse-icon svg {
        transform: scaleX(-1);
        margin-left: 0.75rem;
    }

    .set-nav-minified:not(.set-nav-collapsed) .collapse-icon::after {
        width: 0.5625rem;
    }

    .set-nav-minified:not(.set-nav-collapsed) .collapse-icon:hover svg {
        margin-left: 1.125rem;
    }

    .set-nav-minified:not(.set-nav-collapsed) .collapse-icon:hover::after {
        width: 0.875rem;
    }

    /* set nav fixed */
    .set-nav-fixed.set-nav-top.set-header-fixed .app-sidebar {
        position: fixed;
        top: var(--app-header-height);
        left: 0;
        right: 0;
        z-index: var(--z-index-master);
        overflow-y: auto;
        background-color: rgba(var(--danger), 0.9);
    }

    .set-nav-fixed:not(.set-nav-top).set-nav-full:not(.set-header-fixed) .app-sidebar {
        position: fixed;
        top: 0;
        bottom: 0;
        z-index: var(--z-index-master);
    }

    .set-nav-fixed:not(.set-nav-top).set-header-fixed:not(.set-nav-full) .app-sidebar {
        position: fixed;
        top: var(--app-header-height);
        bottom: 0;
        z-index: var(--z-index-master);
        overflow-y: auto;
    }

    .set-nav-fixed:not(.set-nav-top).set-header-fixed.set-nav-full .app-sidebar {
        position: fixed;
        top: 0;
        bottom: 0;
        z-index: var(--z-index-master);
    }

    .set-nav-fixed:not(.set-nav-top).set-header-fixed.set-nav-full .app-sidebar .app-logo {
        display: flex;
    }

    .set-nav-fixed:not(.set-nav-top).set-header-fixed.set-nav-full .app-header {
        padding-left: 2rem;
    }

    .set-nav-fixed:not(.set-nav-top).set-header-fixed.set-nav-full .app-header .app-logo {
        display: none;
    }

    /* set nav collapsed and set nav full but not set nav top */
    .set-nav-collapsed.set-nav-full:not(.set-nav-top) [data-class=set-nav-minified],
    .set-nav-collapsed.set-nav-full:not(.set-nav-top) [data-class^=set-nav-minify] {
        opacity: var(--settings-disabled);
    }

    .set-nav-collapsed.set-nav-full:not(.set-nav-top) [data-class=set-nav-minified] ~ label,
    .set-nav-collapsed.set-nav-full:not(.set-nav-top) [data-class^=set-nav-minify] ~ label {
        opacity: var(--settings-disabled);
    }

    .set-nav-collapsed.set-nav-full:not(.set-nav-top):not(.set-nav-top) .app-wrap {
        grid-template-columns: 0 auto;
    }

    .set-nav-collapsed.set-nav-full:not(.set-nav-top) .app-sidebar {
        transform: translate3d(calc(10px - var(--menu-width)), 0, 0);
        transition: var(--transition);
        z-index: var(--z-index-slave);
        position: relative;
        background-color: var(--app-nav-background);
        overflow-x: visible;
        /* adds an invisible buffer space for better usability*/
    }

    .set-nav-collapsed.set-nav-full:not(.set-nav-top) .app-sidebar:hover {
        transform: translate3d(0, 0, 0);
    }

    .set-nav-collapsed.set-nav-full:not(.set-nav-top) .app-sidebar::after {
        content: "";
        position: absolute;
        display: block;
        z-index: -1;
        top: 0;
        bottom: 0;
        left: -1.25rem;
        background: transparent;
        width: calc(var(--menu-width) + 2.5rem);
    }

    /* set nav full and not set nav top and not set header fixed */
    .set-nav-full:not(.set-nav-top):not(.set-header-fixed) .app-wrap {
        grid-template-columns: var(--menu-width) auto;
        grid-template-rows: var(--app-header-height) auto;
        grid-template-areas: "sidebar header " "sidebar main" "sidebar main";
    }

    .set-nav-full:not(.set-nav-top):not(.set-header-fixed) .app-sidebar .app-logo {
        display: flex;
        width: var(--menu-width);
    }

    .set-nav-full:not(.set-nav-top):not(.set-header-fixed) .app-header {
        padding-left: 2rem;
    }

    .set-nav-full:not(.set-nav-top):not(.set-header-fixed) .app-header .app-logo {
        display: none;
    }
}
/*********************************** Rules BELOW this point are set for screen sizes max-width 1280px */
@media only screen and (max-width: 1280px) {
    /* debug mode */
    .app-debug-mode .app-header::before {
        content: "XL";
    }

    /* make things a little smaller to fit on the screen */
    html {
        font-size: 14px;
        --menu-width: 17rem;
    }
}
/********************************************* Rules BELOW this point are set all screens below 992px */
@media only screen and (max-width: 991.98px) {
    /* debug mode */
    .app-debug-mode {
        position: relative;
    }

    .app-debug-mode .app-header::before {
        content: "LG";
    }

    /* enforced layout changes on mobile */
    .position-on-mobile-absolute {
        position: absolute !important;
    }

    .position-on-mobile-absolute {
        position: absolute !important;
    }

    .position-on-mobile-relative {
        position: relative !important;
    }

    .position-on-mobile-static {
        position: static !important;
    }

    .height-mobile-auto {
        height: auto !important;
        min-height: auto !important;
        max-height: auto !important;
    }

    .width-mobile-auto {
        width: auto !important;
        min-width: auto !important;
        max-width: auto !important;
    }

    .expand-full-height-on-mobile {
        height: calc(100vh - var(--app-header-height)) !important;
    }

    .expand-full-width-on-mobile {
        width: 100vw !important;
        max-width: 100vw !important;
    }

    /* make things a little bigger for mobile */
    html {
        font-size: 17px;
        --menu-width: 18rem;
    }

    /* hide content scrollbar on mobile menu open */
    .app-mobile-menu-open {
        overflow: hidden;
    }

    /* set font size and menu width */
    body {
        --bs-body-font-size: 1rem;
        --mobile-page-padding: 1rem;
        --menu-width: 20rem;
    }

    /* small screens will hide this class */
    .hidden-sm {
        display: none !important;
    }

    /* app sidebar */
    .app-sidebar {
        background: var(--bs-body-bg);
    }

    /* app wrap */
    .app-wrap {
        grid-template-columns: 0 auto;
        grid-template-rows: var(--app-header-height) auto;
        grid-template-areas: "sidebar header " "sidebar main" "sidebar main";
    }

    /* app header */
    .app-header {
        padding: 0 var(--mobile-page-padding) !important;
        gap: 1rem;
        /* app logo */
        /* profile image */
    }

    .app-header .app-logo {
        display: none;
    }

    .app-header .btn-system .profile-image {
        width: 2.8rem;
        height: 2.8rem;
        max-width: 2.8rem;
        max-height: 2.8rem;
    }

    .app-header .btn-system .sa-icon {
        width: 1.8rem;
        height: 1.8rem;
        z-index: 1;
    }

    .app-header .btn-system::before {
        width: 3.5rem;
        height: 3.5rem;
        z-index: 0;
    }

    .app-header .btn-system:hover::before, .app-header .btn-system.show::before {
        background: rgba(var(--primary), 0.1);
    }

    .app-header > .flex-grow-1 {
        flex-grow: 0 !important;
    }

    /* app sidebar */
    .app-sidebar {
        transform: translate3d(calc(0px - var(--menu-width)), 0, 0);
        transition: var(--transition);
        z-index: calc(var(--z-index-master) + 1);
        top: 0;
        bottom: 0;
        position: fixed;
        overflow-y: auto;
        /* app logo */
        /* primary nav */
        /* primary nav title */
        /* search input */
    }

    .app-sidebar .app-logo {
        display: flex;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    }

    .app-sidebar .primary-nav ul li a {
        padding-top: 10px;
        padding-bottom: 10px;
        font-size: 1rem;
    }

    .app-sidebar .primary-nav .nav-title {
        font-size: 0.85rem;
    }

    .app-sidebar #searchInput {
        font-size: 1rem;
        line-height: 2.5rem;
    }

    /* app content */
    .app-content .content-wrapper {
        padding: var(--mobile-page-padding);
    }

    /* app footer */
    .app-footer,
    .nav-footer {
        padding: 1rem var(--mobile-page-padding);
    }

    /* app mobile menu open */
    .btn-system[data-bs-toggle=dropdown] + .dropdown-menu {
        right: var(--mobile-page-padding) !important;
    }

    /* app mobile menu backdrop */
    [data-toggleclass=app-mobile-menu-open].backdrop {
        z-index: var(--z-index-master);
    }

    /* app mobile menu open */
    .app-mobile-menu-open .app-sidebar {
        transform: translate3d(0, 0, 0);
    }

    .app-mobile-menu-open [data-toggleclass=app-mobile-menu-open].backdrop {
        display: block;
        opacity: 1;
    }

    /* set header fixed */
    .set-header-fixed .app-header {
        left: 0 !important;
    }

    /* panel header */
    .panel-hdr h2 {
        font-size: 1rem !important;
    }

    /* panel icon */
    .panel.panel-icon .panel-toolbar [data-action*=panel-]:not(.dropdown-item) .sa-icon {
        width: 1.8rem !important;
        height: 1.8rem !important;
    }
}
/*********************************** Rules BELOW this point are set for screen sizes max-width TABLET */
@media only screen and (max-width: 768px) {
    /* debug mode */
    .app-debug-mode .app-header::before {
        content: "MD";
    }

    /* hide content on tablet */
    .hidden-tablet {
        display: none !important;
    }
}
/*********************************** Rules BELOW this point are set for screen sizes max-width MOBILE */
@media only screen and (max-width: 576px) {
    /* debug mode */
    .app-debug-mode .app-header::before {
        content: "SM";
    }

    /* hide content on mobile */
    .hidden-mobile {
        display: none !important;
    }

    /* make things a little bigger for mobile : aiming for minimum 41px for clickable area */
    html {
        font-size: 16px;
        --menu-width: 18rem;
    }

    /* adataptive vars*/
    :root {
        --scrollbar-width: 0px;
    }

    /* app header */
    .app-header .app-search {
        display: none;
    }

    /* app content */
    .app-content .breadcrumb {
        /* breadcrumb item math: total minimum screen width is 320px */
    }

    .app-content .breadcrumb .breadcrumb-item {
        max-width: 80px !important;
    }

    .app-content .breadcrumb .breadcrumb-item.active {
        max-width: 130px !important;
    }
}
.app-logo {
    padding: 0 1.5rem;
    position: relative;
    height: var(--app-header-height);
    width: var(--menu-width);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}
.app-logo > img,
.app-logo > svg {
    z-index: 2;
    width: var(--logo-width);
    height: var(--logo-height);
    min-width: var(--logo-width);
}
.app-logo > svg {
    fill: none;
    color: currentColor;
    stroke-width: 1px !important;
    --logo-color: rgba(var(--primary), 0.8);
    --logo-color-fill: rgba(var(--white), 0.01);
}
.app-logo::before {
    content: attr(data-prefix);
    position: absolute;
    display: block;
    background: #fafafa;
    padding: 0.0625rem 0.125rem;
    border-radius: 0.3125rem;
    left: 13.4375rem;
    font-size: 0.6rem;
    top: 50%;
    transform: translate(0, -50%);
    line-height: 1.08375rem;
}

.app-logo:hover > .logo-backdrop {
    height: 4.375rem;
    top: 0.625rem;
    left: 0.1875rem;
    opacity: 0.4;
    transition: all 150ms cubic-bezier(0.34, 1.25, 0.3, 1);
}

.app-logo:active > .logo-backdrop {
    height: 5rem;
    top: 0.3125rem;
    left: -0.125rem;
    opacity: 0.2;
    transition: all 550ms cubic-bezier(0.34, 5.25, 0.3, 1);
}

.logo-backdrop {
    --bg-0: var(--bs-body-bg);
    --bg-1: var(--bs-body-bg);
    --blob-1: var(--primary-500);
    --blob-2: var(--primary-200);
    --blob-3: var(--bs-body-bg);
    --blob-4: var(--bs-body-bg);
    width: 3.75rem;
    height: 3.5rem;
    position: absolute;
    opacity: 0.6;
    top: 1.0625rem;
    left: 0.625rem;
    transition: all 750ms cubic-bezier(0.34, 1.25, 0.3, 1);
    z-index: 1;
}

.palette-5 {
    --bg-0: #ffffff;
    --bg-1: #d3f7ff;
    --blob-1: #bb74ff;
    --blob-2: #7c7dff;
    --blob-3: #a0f8ff;
    --blob-4: #ffffff;
}

.blobs {
    width: min(60vw, 60vh);
    height: min(60vw, 60vh);
    max-height: 100%;
    max-width: 100%;
}
.blobs svg {
    position: relative;
    height: 100%;
    z-index: 2;
}
.blobs .blob {
    animation: rotate 25s infinite alternate ease-in-out;
    transform-origin: 50% 50%;
    opacity: 0.7;
}
.blobs .blob path {
    animation: blob-anim-1 5s infinite alternate cubic-bezier(0.45, 0.2, 0.55, 0.8);
    transform-origin: 50% 50%;
    transform: scale(0.8);
    transition: fill 800ms ease;
}
.blobs .blob.alt {
    animation-direction: alternate-reverse;
    opacity: 0.3;
}
.blobs .blob-1 path {
    fill: var(--blob-1);
    filter: blur(1rem);
}
.blobs .blob-2 {
    animation-duration: 18s;
    animation-direction: alternate-reverse;
}
.blobs .blob-2 path {
    fill: var(--blob-2);
    animation-name: blob-anim-2;
    animation-duration: 7s;
    filter: blur(0.75rem);
    transform: scale(0.78);
}
.blobs .blob-2.alt {
    animation-direction: alternate;
}
.blobs .blob-3 {
    animation-duration: 23s;
}
.blobs .blob-3 path {
    fill: var(--blob-3);
    animation-name: blob-anim-3;
    animation-duration: 6s;
    filter: blur(0.5rem);
    transform: scale(0.76);
}
.blobs .blob-4 {
    animation-duration: 31s;
    animation-direction: alternate-reverse;
    opacity: 0.9;
}
.blobs .blob-4 path {
    fill: var(--blob-4);
    animation-name: blob-anim-4;
    animation-duration: 10s;
    filter: blur(10rem);
    transform: scale(0.5);
}
.blobs .blob-4.alt {
    animation-direction: alternate;
    opacity: 0.8;
}

/* Navigation styles */
.primary-nav {
    padding: 0.5rem 1.5rem;
    width: var(--menu-width);
    /* Navigation title */
}
.primary-nav .nav-title {
    text-transform: uppercase;
    margin: 0;
    color: var(--app-nav-title-color);
    padding: 1rem 0;
    margin-top: 0.5rem;
    font-size: 0.7rem;
    letter-spacing: 1px;
    font-weight: 600;
}
.primary-nav .nav-title:first-of-type {
    margin-top: 0rem;
}
.primary-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: none;
    position: relative;
    flex-direction: column;
    gap: 0.125rem;
}
.primary-nav ul ul::before {
    content: "";
    position: absolute;
    border-left: 1px dashed var(--app-nav-border-color);
    display: block;
    top: 0;
    bottom: 0;
    left: 0.55rem;
    z-index: 1;
}
.primary-nav ul ul > li > ul::before {
    content: "";
    left: 2.1rem;
}
.primary-nav ul ul li a {
    line-height: 1.5rem;
    padding-left: calc(1.9rem + 2px);
    border-radius: 0.625rem;
    font-size: 0.85rem;
    font-weight: 400;
}
.primary-nav ul ul li a:only-child:not(.nav-more-link):hover {
    background-color: var(--app-nav-item-hover-bg);
}
.primary-nav ul ul li.active > a {
    color: var(--app-nav-link-color);
}
.primary-nav ul ul li.active > a .badge {
    margin-left: 0.75rem;
}
.primary-nav ul ul li.active:not(.open):not(.has-ul) a:only-child {
    color: var(--app-nav-link-active-color);
    background-color: var(--app-nav-item-active-bg);
}
.primary-nav ul ul li.active:not(.open):not(.has-ul)::before {
    content: "";
    border-radius: 100%;
    width: 0.4375rem;
    height: 0.4375rem;
    background: var(--app-nav-item-active-indicator);
    position: absolute;
    left: 0.375rem;
    top: 50%;
    transform: translate(0, -50%);
    z-index: 1;
}
.primary-nav ul ul ul::before {
    left: 1rem;
}
.primary-nav ul li {
    position: relative;
}
.primary-nav ul li.active:not(.open).has-ul > a .nav-link-text {
    position: relative;
}
.primary-nav ul li.active:not(.open).has-ul > a .nav-link-text::before {
    content: "";
    width: 5px;
    height: 5px;
    background: var(--danger-500);
    position: absolute;
    border-radius: 100%;
    right: -1rem;
    top: 50%;
    transform: translate(0, -50%);
}
.primary-nav ul li.active > a:only-child .nav-link-text {
    position: relative;
}
.primary-nav ul li.active > a:only-child .nav-link-text::before {
    content: "";
    width: 5px;
    height: 5px;
    background: var(--danger-500);
    position: absolute;
    border-radius: 100%;
    right: -1rem;
    top: 50%;
    transform: translate(0, -50%);
}
.primary-nav ul li.active:not(.open):not(.has-ul) a:only-child {
    color: var(--app-nav-link-active-color);
}
.primary-nav ul li:last-child {
    border-bottom: none;
}
.primary-nav ul li a {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0;
    line-height: 2;
    color: var(--app-nav-link-color);
    font-size: 0.875rem;
    position: relative;
    text-decoration: none;
    width: 100%;
    font-weight: 600;
}
.primary-nav ul li a .badge {
    --bs-badge-font-size: 0.55rem;
    font-weight: 600;
    margin-left: -0.25rem;
    border-radius: 3px;
    height: 1rem;
    align-self: center !important;
}
.primary-nav ul li a .sa-icon {
    width: var(--app-nav-svgicon-size);
    height: var(--app-nav-svgicon-size);
}
.primary-nav ul li a:hover {
    color: var(--app-nav-link-hover-color);
}
.primary-nav ul li a:hover .sa-icon {
    fill: var(--app-nav-item-hover-bg);
    stroke: var(--app-nav-link-hover-color);
}
.primary-nav ul li a > i {
    font-size: 1rem;
    width: 1.5rem;
}
.primary-nav ul li a > i::after {
    color: rgba(var(--info), 0.9);
}
.primary-nav ul li a > i::before {
    color: rgba(var(--primary), 0.9);
}

/* Nested submenu styles */
.primary-nav ul > li > ul {
    padding-left: 0;
    gap: 0.25rem;
}
.primary-nav ul > li > ul ul {
    padding-left: 1.55rem;
}
.primary-nav ul > li > ul ul li a {
    padding-left: 1.4rem;
    border-radius: 0.625rem;
    transition: none;
    line-height: 1.5rem;
    font-weight: 400;
}
.primary-nav ul > li > ul ul li a:not(.nav-more-link):hover {
    background-color: var(--app-nav-item-hover-bg);
}
.primary-nav ul > li > ul ul li.active:not(.open) > a {
    background-color: var(--app-nav-item-active-bg);
    color: var(--app-nav-link-active-color);
}

/* Collapse/Expand sign styles */
.collapse-sign {
    position: absolute;
    right: 0.3125rem;
    font-family: monospace;
    color: var(--app-nav-collapse-sign-color);
    font-size: 1rem;
    top: 50%;
    transform: translate(0, -50%);
    font-weight: normal;
}
.collapse-sign::before {
    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;
    background-size: var(--bs-accordion-btn-icon-width);
    transition: var(--bs-accordion-btn-icon-transition);
}

/* List Filter Styles */
.nav-hidden {
    display: none !important;
}

.nav-hidden-container {
    transition: height 0.2s ease-in-out;
    flex-direction: column;
    gap: 0.25rem;
}

.nav-show-more {
    padding: 2px 0;
}
.nav-show-more .nav-more-link {
    color: rgba(var(--bs-body-color-rgb), 0.85);
    font-size: 0.9em;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    font-weight: 400;
    opacity: 0.6;
}
.nav-show-more .nav-more-link > a:hover {
    background-color: none !important;
}
.nav-show-more .nav-more-link:hover {
    color: var(--app-nav-link-hover-color) !important;
    opacity: 0.9;
}
.nav-show-more .nav-more-link.showing-more {
    color: var(--bs-body-color);
    opacity: 0.7;
}
.nav-show-more .nav-more-link.showing-more:hover {
    opacity: 0.9;
}
.nav-show-more .nav-more-link .collapse-sign {
    right: 0.3125rem;
}

.nav-footer {
    padding-left: calc(1.5rem + 2px);
    padding-right: calc(1.5rem + 2px);
}

.badge-end {
    margin-left: auto !important;
    margin-right: 1.5rem !important;
}

.set-nav-fixed:where(.set-nav-full, .set-header-fixed) .primary-nav::before, .set-nav-fixed:where(.set-nav-full, .set-header-fixed) .primary-nav::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    height: 4px;
    background: var(--primary-500);
    z-index: 10;
}
.set-nav-fixed:where(.set-nav-full, .set-header-fixed) .primary-nav::before {
    top: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.03) 100%);
}
.set-nav-fixed:where(.set-nav-full, .set-header-fixed) .primary-nav::after {
    bottom: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0) 100%);
}
.set-nav-fixed:where(.set-nav-full, .set-header-fixed) .nav-footer {
    border-top: 0;
}

.primary-nav .js-filter-hide {
    display: none !important;
}
.primary-nav .js-filter-show {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding-bottom: 0;
}
.primary-nav .js-list-active ul {
    padding-left: 1rem !important;
    display: flex !important;
    flex-direction: column;
}
.primary-nav .js-list-active ul .nav-hidden-container {
    display: flex !important;
    height: unset !important;
    flex-direction: column;
}
.primary-nav .js-list-active ul .nav-show-more {
    display: none !important;
}
.primary-nav .js-list-active ul ul {
    padding-left: 1rem !important;
    display: flex !important;
    height: unset !important;
}
.primary-nav .js-list-active ul::before {
    content: none !important;
}
.primary-nav .js-list-active li.active:not(open)::before {
    content: none !important;
}
.primary-nav .js-list-active a {
    padding-left: 0.625rem;
}
.primary-nav .js-list-active a i,
.primary-nav .js-list-active a svg {
    display: none;
}
.primary-nav .js-list-active .nav-item a {
    padding-left: 0.625rem;
}
.primary-nav .js-list-active .nav-item a i,
.primary-nav .js-list-active .nav-item a svg {
    display: none;
}
.primary-nav .js-list-active .collapse-sign {
    display: none;
}
.primary-nav .js-list-active .nav-title {
    color: var(--bs-link-color);
    font-weight: 600;
}

.nav-filter-msg {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 2rem;
    color: var(--bs-white) !important;
}
.nav-filter-msg:hover {
    background: var(--bs-danger) !important;
}
.nav-filter-msg:hover i {
    width: 0.84375rem;
}

#searchInput {
    border-style: dashed;
    font-size: 0.875rem;
    line-height: 1.5rem;
    position: relative;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.07);
    --bs-secondary-color: var(--input-placeholder-color);
}
#searchInput:focus {
    background-color: rgba(var(--bs-primary-rgb), 0.03);
}

#js-nav-menu:has(li:not(.js-filter-hide)) + .no-results-msg {
    display: none;
}

.set-nav-dark {
    --app-nav-bg: #131a43;
}
.set-nav-dark .app-sidebar {
    --app-nav-item-hover-bg: rgba(245, 245, 245, 0.045);
    --app-nav-item-active-bg: rgba(255, 255, 255, 0.09);
    --app-nav-link-active-color: rgba(255, 255, 255, 1);
    --app-nav-border-color: rgba(255, 255, 255, 0.2);
}
.set-nav-dark .app-header .app-logo .custom-logo,
.set-nav-dark .app-sidebar .app-logo .custom-logo {
    --logo-color: rgba(var(--white), 1);
    --logo-color-fill: none;
    color: #fff;
}
.set-nav-dark .app-header .app-logo .logo-backdrop,
.set-nav-dark .app-sidebar .app-logo .logo-backdrop {
    --bg-0: var(--app-nav-bg);
    --bg-1: var(--app-nav-bg);
    --blob-1: var(--info-500);
    --blob-2: #f882e6;
    --blob-3: var(--app-nav-bg);
    --blob-4: var(--app-nav-bg);
    opacity: 0.7;
}
.set-nav-dark .app-header .app-logo::before,
.set-nav-dark .app-sidebar .app-logo::before {
    background: #2b3362;
    color: #fff;
}
.set-nav-dark .app-header .app-logo {
    background: var(--app-nav-bg);
}
.set-nav-dark .app-sidebar {
    background: var(--app-nav-bg) !important;
}
.set-nav-dark .app-sidebar #searchInput {
    background-color: rgba(255, 255, 255, 0.05);
    color: rgba(255, 255, 255, 0.9);
    border-color: rgba(255, 255, 255, 0.3);
    --bs-secondary-color: rgb(255 255 255 / 40%);
}
.set-nav-dark .app-sidebar #searchInput:focus {
    background-color: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.5);
    outline: 4px solid rgba(255, 255, 255, 0.1);
}
.set-nav-dark .app-sidebar .primary-nav .nav-title {
    color: rgba(255, 255, 255, 0.6);
}
.set-nav-dark .app-sidebar .primary-nav ul li a {
    color: rgba(255, 255, 255, 0.6);
}
.set-nav-dark .app-sidebar .primary-nav ul li a .sa-icon {
    fill: rgb(64, 74, 131);
    stroke: rgb(143, 156, 228);
    flex-shrink: 0;
}
.set-nav-dark .app-sidebar .primary-nav ul li a:hover {
    color: rgba(255, 255, 255, 0.9);
}
.set-nav-dark .app-sidebar .primary-nav ul li a:hover .sa-icon {
    fill: rgba(255, 255, 255, 0.3);
    stroke: rgb(229, 232, 252);
}
.set-nav-dark .app-sidebar .primary-nav li.active.has-ul:not(.open) > a {
    color: rgba(255, 255, 255, 0.9);
}
.set-nav-dark .app-sidebar .primary-nav .nav-show-more .nav-more-link.showing-more,
.set-nav-dark .app-sidebar .primary-nav .nav-show-more .nav-more-link {
    color: rgba(255, 255, 255, 0.4);
}
.set-nav-dark .app-sidebar .slimScrollBar {
    --scrollbar-color: rgba(255, 255, 255, 0.8);
    --scrollbar-hover-color: rgba(255, 255, 255, 1);
}

.js-filter-hide {
    display: none;
}

.js-filter-show {
    display: block;
}

.suggestions-container {
    font-size: 0.9rem;
    color: #666;
}

.suggest-title {
    color: #999;
    margin-right: 0.5rem;
}

.suggestion {
    color: #2196F3;
    cursor: pointer;
    border-radius: 3px;
    transition: background-color 0.2s;
}

.suggestion:hover {
    background-color: rgba(33, 150, 243, 0.1);
}

.did-you-mean {
    font-size: 0.9rem;
    color: #666;
    margin-top: 0.25rem;
}
.did-you-mean a {
    color: #2196F3;
    text-decoration: none;
}
.did-you-mean a:hover {
    text-decoration: underline;
}

.bg-primary-50 {
    background-color: var(--primary-50) !important;
    color: #212121 !important;
}

.bg-primary-100 {
    background-color: var(--primary-100) !important;
    color: #212121 !important;
}

.bg-primary-150 {
    background-color: var(--primary-150) !important;
    color: #212121 !important;
}

.bg-primary-200 {
    background-color: var(--primary-200) !important;
    color: #212121 !important;
}

.bg-primary-250 {
    background-color: var(--primary-250) !important;
    color: #212121 !important;
}

.bg-primary-300 {
    background-color: var(--primary-300) !important;
    color: #212121 !important;
}

.bg-primary-350 {
    background-color: var(--primary-350) !important;
    color: white !important;
}

.bg-primary-400 {
    background-color: var(--primary-400) !important;
    color: white !important;
}

.bg-primary-450 {
    background-color: var(--primary-450) !important;
    color: white !important;
}

.bg-primary-500 {
    background-color: var(--primary-500) !important;
    color: white !important;
}

.bg-primary-550 {
    background-color: var(--primary-550) !important;
    color: white !important;
}

.bg-primary-600 {
    background-color: var(--primary-600) !important;
    color: white !important;
}

.bg-primary-650 {
    background-color: var(--primary-650) !important;
    color: white !important;
}

.bg-primary-700 {
    background-color: var(--primary-700) !important;
    color: white !important;
}

.bg-primary-750 {
    background-color: var(--primary-750) !important;
    color: white !important;
}

.bg-primary-800 {
    background-color: var(--primary-800) !important;
    color: white !important;
}

.bg-primary-850 {
    background-color: var(--primary-850) !important;
    color: white !important;
}

.bg-primary-900 {
    background-color: var(--primary-900) !important;
    color: white !important;
}

.bg-success-50 {
    background-color: var(--success-50) !important;
    color: #212121 !important;
}

.bg-success-100 {
    background-color: var(--success-100) !important;
    color: #212121 !important;
}

.bg-success-150 {
    background-color: var(--success-150) !important;
    color: #212121 !important;
}

.bg-success-200 {
    background-color: var(--success-200) !important;
    color: #212121 !important;
}

.bg-success-250 {
    background-color: var(--success-250) !important;
    color: #212121 !important;
}

.bg-success-300 {
    background-color: var(--success-300) !important;
    color: #212121 !important;
}

.bg-success-350 {
    background-color: var(--success-350) !important;
    color: #212121 !important;
}

.bg-success-400 {
    background-color: var(--success-400) !important;
    color: white !important;
}

.bg-success-450 {
    background-color: var(--success-450) !important;
    color: white !important;
}

.bg-success-500 {
    background-color: var(--success-500) !important;
    color: white !important;
}

.bg-success-550 {
    background-color: var(--success-550) !important;
    color: white !important;
}

.bg-success-600 {
    background-color: var(--success-600) !important;
    color: white !important;
}

.bg-success-650 {
    background-color: var(--success-650) !important;
    color: white !important;
}

.bg-success-700 {
    background-color: var(--success-700) !important;
    color: white !important;
}

.bg-success-750 {
    background-color: var(--success-750) !important;
    color: white !important;
}

.bg-success-800 {
    background-color: var(--success-800) !important;
    color: white !important;
}

.bg-success-850 {
    background-color: var(--success-850) !important;
    color: white !important;
}

.bg-success-900 {
    background-color: var(--success-900) !important;
    color: white !important;
}

.bg-info-50 {
    background-color: var(--info-50) !important;
    color: #212121 !important;
}

.bg-info-100 {
    background-color: var(--info-100) !important;
    color: #212121 !important;
}

.bg-info-150 {
    background-color: var(--info-150) !important;
    color: #212121 !important;
}

.bg-info-200 {
    background-color: var(--info-200) !important;
    color: #212121 !important;
}

.bg-info-250 {
    background-color: var(--info-250) !important;
    color: #212121 !important;
}

.bg-info-300 {
    background-color: var(--info-300) !important;
    color: #212121 !important;
}

.bg-info-350 {
    background-color: var(--info-350) !important;
    color: #212121 !important;
}

.bg-info-400 {
    background-color: var(--info-400) !important;
    color: white !important;
}

.bg-info-450 {
    background-color: var(--info-450) !important;
    color: white !important;
}

.bg-info-500 {
    background-color: var(--info-500) !important;
    color: white !important;
}

.bg-info-550 {
    background-color: var(--info-550) !important;
    color: white !important;
}

.bg-info-600 {
    background-color: var(--info-600) !important;
    color: white !important;
}

.bg-info-650 {
    background-color: var(--info-650) !important;
    color: white !important;
}

.bg-info-700 {
    background-color: var(--info-700) !important;
    color: white !important;
}

.bg-info-750 {
    background-color: var(--info-750) !important;
    color: white !important;
}

.bg-info-800 {
    background-color: var(--info-800) !important;
    color: white !important;
}

.bg-info-850 {
    background-color: var(--info-850) !important;
    color: white !important;
}

.bg-info-900 {
    background-color: var(--info-900) !important;
    color: white !important;
}

.bg-warning-50 {
    background-color: var(--warning-50) !important;
    color: #212121 !important;
}

.bg-warning-100 {
    background-color: var(--warning-100) !important;
    color: #212121 !important;
}

.bg-warning-150 {
    background-color: var(--warning-150) !important;
    color: #212121 !important;
}

.bg-warning-200 {
    background-color: var(--warning-200) !important;
    color: #212121 !important;
}

.bg-warning-250 {
    background-color: var(--warning-250) !important;
    color: #212121 !important;
}

.bg-warning-300 {
    background-color: var(--warning-300) !important;
    color: #212121 !important;
}

.bg-warning-350 {
    background-color: var(--warning-350) !important;
    color: #212121 !important;
}

.bg-warning-400 {
    background-color: var(--warning-400) !important;
    color: #212121 !important;
}

.bg-warning-450 {
    background-color: var(--warning-450) !important;
    color: #212121 !important;
}

.bg-warning-500 {
    background-color: var(--warning-500) !important;
    color: white !important;
}

.bg-warning-550 {
    background-color: var(--warning-550) !important;
    color: white !important;
}

.bg-warning-600 {
    background-color: var(--warning-600) !important;
    color: white !important;
}

.bg-warning-650 {
    background-color: var(--warning-650) !important;
    color: white !important;
}

.bg-warning-700 {
    background-color: var(--warning-700) !important;
    color: white !important;
}

.bg-warning-750 {
    background-color: var(--warning-750) !important;
    color: white !important;
}

.bg-warning-800 {
    background-color: var(--warning-800) !important;
    color: white !important;
}

.bg-warning-850 {
    background-color: var(--warning-850) !important;
    color: white !important;
}

.bg-warning-900 {
    background-color: var(--warning-900) !important;
    color: white !important;
}

.bg-danger-50 {
    background-color: var(--danger-50) !important;
    color: #212121 !important;
}

.bg-danger-100 {
    background-color: var(--danger-100) !important;
    color: #212121 !important;
}

.bg-danger-150 {
    background-color: var(--danger-150) !important;
    color: #212121 !important;
}

.bg-danger-200 {
    background-color: var(--danger-200) !important;
    color: #212121 !important;
}

.bg-danger-250 {
    background-color: var(--danger-250) !important;
    color: #212121 !important;
}

.bg-danger-300 {
    background-color: var(--danger-300) !important;
    color: #212121 !important;
}

.bg-danger-350 {
    background-color: var(--danger-350) !important;
    color: #212121 !important;
}

.bg-danger-400 {
    background-color: var(--danger-400) !important;
    color: #212121 !important;
}

.bg-danger-450 {
    background-color: var(--danger-450) !important;
    color: white !important;
}

.bg-danger-500 {
    background-color: var(--danger-500) !important;
    color: white !important;
}

.bg-danger-550 {
    background-color: var(--danger-550) !important;
    color: white !important;
}

.bg-danger-600 {
    background-color: var(--danger-600) !important;
    color: white !important;
}

.bg-danger-650 {
    background-color: var(--danger-650) !important;
    color: white !important;
}

.bg-danger-700 {
    background-color: var(--danger-700) !important;
    color: white !important;
}

.bg-danger-750 {
    background-color: var(--danger-750) !important;
    color: white !important;
}

.bg-danger-800 {
    background-color: var(--danger-800) !important;
    color: white !important;
}

.bg-danger-850 {
    background-color: var(--danger-850) !important;
    color: white !important;
}

.bg-danger-900 {
    background-color: var(--danger-900) !important;
    color: white !important;
}

.bg-fusion-50 {
    background-color: var(--fusion-50) !important;
    color: #212121 !important;
}

.bg-fusion-100 {
    background-color: var(--fusion-100) !important;
    color: #212121 !important;
}

.bg-fusion-150 {
    background-color: var(--fusion-150) !important;
    color: #212121 !important;
}

.bg-fusion-200 {
    background-color: var(--fusion-200) !important;
    color: #212121 !important;
}

.bg-fusion-250 {
    background-color: var(--fusion-250) !important;
    color: white !important;
}

.bg-fusion-300 {
    background-color: var(--fusion-300) !important;
    color: white !important;
}

.bg-fusion-350 {
    background-color: var(--fusion-350) !important;
    color: white !important;
}

.bg-fusion-400 {
    background-color: var(--fusion-400) !important;
    color: white !important;
}

.bg-fusion-450 {
    background-color: var(--fusion-450) !important;
    color: white !important;
}

.bg-fusion-500 {
    background-color: var(--fusion-500) !important;
    color: white !important;
}

.bg-fusion-550 {
    background-color: var(--fusion-550) !important;
    color: white !important;
}

.bg-fusion-600 {
    background-color: var(--fusion-600) !important;
    color: white !important;
}

.bg-fusion-650 {
    background-color: var(--fusion-650) !important;
    color: white !important;
}

.bg-fusion-700 {
    background-color: var(--fusion-700) !important;
    color: white !important;
}

.bg-fusion-750 {
    background-color: var(--fusion-750) !important;
    color: white !important;
}

.bg-fusion-800 {
    background-color: var(--fusion-800) !important;
    color: white !important;
}

.bg-fusion-850 {
    background-color: var(--fusion-850) !important;
    color: white !important;
}

.bg-fusion-900 {
    background-color: var(--fusion-900) !important;
    color: white !important;
}

.bg-dark-50 {
    background-color: var(--dark-50) !important;
    color: #212121 !important;
}

.bg-dark-100 {
    background-color: var(--dark-100) !important;
    color: #212121 !important;
}

.bg-dark-150 {
    background-color: var(--dark-150) !important;
    color: white !important;
}

.bg-dark-200 {
    background-color: var(--dark-200) !important;
    color: white !important;
}

.bg-dark-250 {
    background-color: var(--dark-250) !important;
    color: white !important;
}

.bg-dark-300 {
    background-color: var(--dark-300) !important;
    color: white !important;
}

.bg-dark-350 {
    background-color: var(--dark-350) !important;
    color: white !important;
}

.bg-dark-400 {
    background-color: var(--dark-400) !important;
    color: white !important;
}

.bg-dark-450 {
    background-color: var(--dark-450) !important;
    color: white !important;
}

.bg-dark-500 {
    background-color: var(--dark-500) !important;
    color: white !important;
}

.bg-dark-550 {
    background-color: var(--dark-550) !important;
    color: white !important;
}

.bg-dark-600 {
    background-color: var(--dark-600) !important;
    color: white !important;
}

.bg-dark-650 {
    background-color: var(--dark-650) !important;
    color: white !important;
}

.bg-dark-700 {
    background-color: var(--dark-700) !important;
    color: white !important;
}

.bg-dark-750 {
    background-color: var(--dark-750) !important;
    color: white !important;
}

.bg-dark-800 {
    background-color: var(--dark-800) !important;
    color: white !important;
}

.bg-dark-850 {
    background-color: var(--dark-850) !important;
    color: white !important;
}

.bg-dark-900 {
    background-color: var(--dark-900) !important;
    color: white !important;
}

.bg-light-50 {
    background-color: var(--light-50) !important;
    color: #212121 !important;
}

.bg-light-100 {
    background-color: var(--light-100) !important;
    color: #212121 !important;
}

.bg-light-150 {
    background-color: var(--light-150) !important;
    color: #212121 !important;
}

.bg-light-200 {
    background-color: var(--light-200) !important;
    color: #212121 !important;
}

.bg-light-250 {
    background-color: var(--light-250) !important;
    color: #212121 !important;
}

.bg-light-300 {
    background-color: var(--light-300) !important;
    color: #212121 !important;
}

.bg-light-350 {
    background-color: var(--light-350) !important;
    color: #212121 !important;
}

.bg-light-400 {
    background-color: var(--light-400) !important;
    color: #212121 !important;
}

.bg-light-450 {
    background-color: var(--light-450) !important;
    color: #212121 !important;
}

.bg-light-500 {
    background-color: var(--light-500) !important;
    color: #212121 !important;
}

.bg-light-550 {
    background-color: var(--light-550) !important;
    color: #212121 !important;
}

.bg-light-600 {
    background-color: var(--light-600) !important;
    color: #212121 !important;
}

.bg-light-650 {
    background-color: var(--light-650) !important;
    color: white !important;
}

.bg-light-700 {
    background-color: var(--light-700) !important;
    color: white !important;
}

.bg-light-750 {
    background-color: var(--light-750) !important;
    color: white !important;
}

.bg-light-800 {
    background-color: var(--light-800) !important;
    color: white !important;
}

.bg-light-850 {
    background-color: var(--light-850) !important;
    color: white !important;
}

.bg-light-900 {
    background-color: var(--light-900) !important;
    color: white !important;
}

.bg-secondary-50 {
    background-color: var(--secondary-50) !important;
    color: #212121 !important;
}

.bg-secondary-100 {
    background-color: var(--secondary-100) !important;
    color: #212121 !important;
}

.bg-secondary-150 {
    background-color: var(--secondary-150) !important;
    color: #212121 !important;
}

.bg-secondary-200 {
    background-color: var(--secondary-200) !important;
    color: #212121 !important;
}

.bg-secondary-250 {
    background-color: var(--secondary-250) !important;
    color: #212121 !important;
}

.bg-secondary-300 {
    background-color: var(--secondary-300) !important;
    color: #212121 !important;
}

.bg-secondary-350 {
    background-color: var(--secondary-350) !important;
    color: white !important;
}

.bg-secondary-400 {
    background-color: var(--secondary-400) !important;
    color: white !important;
}

.bg-secondary-450 {
    background-color: var(--secondary-450) !important;
    color: white !important;
}

.bg-secondary-500 {
    background-color: var(--secondary-500) !important;
    color: white !important;
}

.bg-secondary-550 {
    background-color: var(--secondary-550) !important;
    color: white !important;
}

.bg-secondary-600 {
    background-color: var(--secondary-600) !important;
    color: white !important;
}

.bg-secondary-650 {
    background-color: var(--secondary-650) !important;
    color: white !important;
}

.bg-secondary-700 {
    background-color: var(--secondary-700) !important;
    color: white !important;
}

.bg-secondary-750 {
    background-color: var(--secondary-750) !important;
    color: white !important;
}

.bg-secondary-800 {
    background-color: var(--secondary-800) !important;
    color: white !important;
}

.bg-secondary-850 {
    background-color: var(--secondary-850) !important;
    color: white !important;
}

.bg-secondary-900 {
    background-color: var(--secondary-900) !important;
    color: white !important;
}

.bg-placeholder {
    --body-bg: var(--success-500);
    --gp-color-1: var(--primary-900);
    background-color: var(--body-bg);
    background-image: radial-gradient(ellipse at bottom, var(--body-bg) 5%, transparent 60%), linear-gradient(136deg, transparent, var(--gp-color-1) 290%), linear-gradient(115deg, var(--gp-color-1), transparent 40%), linear-gradient(180deg, transparent 0, var(--body-bg) 70%), radial-gradient(ellipse at -70% -180%, transparent 80%, var(--gp-color-1) 0), radial-gradient(ellipse at bottom, var(--body-bg) 40%, transparent 80%), radial-gradient(ellipse at 5% 340%, transparent 80%, var(--gp-color-1) 0);
    background-repeat: no-repeat;
}

.bg-subtlelight-fade {
    background-color: var(--bs-body-bg);
    background-image: -webkit-gradient(linear, left bottom, left top, from(var(--bs-body-bg)), to(rgba(var(--bs-primary-rgb), 0.04)));
    background-image: linear-gradient(to top, var(--bs-body-bg), rgba(var(--bs-primary-rgb), 0.04));
}

.body-bg {
    background-color: var(--bs-body-bg);
}

.content-wrapper:has(> .layout-trimmed) {
    padding: 0 !important;
}
.content-wrapper:has(> .layout-trimmed) > *:not(.main-content) {
    display: none !important;
}

.show-child-on-hover .show-on-hover-parent {
    display: none;
}

.show-child-on-hover:hover .show-on-hover-parent {
    display: block;
}

.hide-child-on-hover .hide-on-hover-parent {
    display: block;
}

.hide-child-on-hover:hover .hide-on-hover-parent {
    display: none;
}

.translucent-dark,
.translucent-light {
    background: rgba(0, 0, 0, 0.25);
    box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.37);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border-radius: 0.625rem;
    border: 1px solid rgba(0, 0, 0, 0.18);
}

.translucent-light {
    background: rgba(255, 255, 255, 0.25);
    box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.37);
    border: 1px solid rgba(255, 255, 255, 0.18);
}

.fw-bold, b, strong,
.fw-500 {
    font-weight: 500 !important;
}

.fw-300,
.fw-light {
    font-weight: 300 !important;
}

.fw-600 {
    font-weight: 600 !important;
}

.fw-700 {
    font-weight: 700 !important;
}

code {
    --code-background: var(--bs-body-bg);
    background: var(--code-background);
    padding: 0.125rem 0.25rem;
    border-radius: 0.125rem;
}

.h2-title {
    font-size: 1.75rem;
    font-weight: 500;
    text-shadow: var(--bs-emphasis-color) 0 1px;
    margin: 3.5rem 0 0 0;
    display: flex;
    align-items: center;
    gap: 0.3125rem;
}
.h2-title:not(:has(*)) {
    margin-bottom: 2.3rem;
}

.h3-title {
    font-size: 1.125rem;
    font-weight: 700;
    margin: 2rem 0 0 0;
    display: flex;
    align-items: center;
    gap: 0.3125rem;
}
.h3-title:not(:has(*)) {
    margin-bottom: 0.7rem;
}

.hover-effect-dot {
    position: relative;
}

.hover-effect-dot:before {
    content: "";
    background: rgba(0, 0, 0, 0.2);
    width: 0%;
    height: 0%;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 100%;
    -webkit-transition: all 0.1s ease-in;
    transition: all 0.1s ease-in;
}

.hover-effect-dot:hover:before {
    width: 75%;
    height: 75%;
}

.h-auto {
    height: auto !important;
}

.w-auto {
    width: auto !important;
}

.min-height-reset {
    min-height: initial !important;
}

.max-width-reset {
    max-width: none !important;
}

.max-height-reset {
    max-height: none !important;
}

.min-width-0 {
    min-width: 0;
}

.width-0 {
    width: 0;
}

.width-1 {
    width: 1.5rem;
}

.width-2 {
    width: 2rem;
}

.width-3 {
    width: 2.5rem;
}

.width-4 {
    width: 2.75rem;
}

.width-5 {
    width: 3rem;
}

.width-6 {
    width: 3.25rem;
}

.width-7 {
    width: 3.5rem;
}

.width-8 {
    width: 3.75rem;
}

.width-9 {
    width: 4rem;
}

.width-10 {
    width: 4.25rem;
}

.width-xs {
    min-width: 5rem;
}

.width-max-xs {
    max-width: 5rem;
}

.width-sm {
    min-width: 10rem;
}

.width-max-sm {
    max-width: 10rem;
}

.width-lg {
    min-width: 15rem;
}

.width-max-lg {
    max-width: 15rem;
}

.width-xl {
    min-width: 20rem;
}

.width-max-xl {
    max-width: 20rem;
}

.width-max-100 {
    max-width: 100%;
}

.height-0 {
    height: 0;
}

.height-1 {
    height: 1.5rem;
}

.height-2 {
    height: 2rem;
}

.height-3 {
    height: 2.5rem;
}

.height-4 {
    height: 2.75rem;
}

.height-5 {
    height: 3rem;
}

.height-6 {
    height: 3.25rem;
}

.height-7 {
    height: 3.5rem;
}

.height-8 {
    height: 3.75rem;
}

.height-9 {
    height: 4rem;
}

.height-10 {
    height: 4.25rem;
}

.height-xs {
    min-height: 5rem;
}

.height-sm {
    min-height: 10rem;
}

.height-lg {
    min-height: 15rem;
}

.height-xl {
    min-height: 20rem;
}

.l-h-n {
    line-height: normal;
}

.if-empty-display-none:empty {
    display: none !important;
}

.border-faded {
    border: 1px solid rgba(var(--bs-body-color-rgb), 0.07);
}

.border-transparent {
    border: 1px solid transparent !important;
}

.border-top-left-radius-0 {
    border-top-left-radius: 0 !important;
}

.border-bottom-left-radius-0 {
    border-bottom-left-radius: 0 !important;
}

.border-top-right-radius-0 {
    border-top-right-radius: 0 !important;
}

.border-bottom-right-radius-0 {
    border-bottom-right-radius: 0 !important;
}

.rounded-plus {
    border-radius: 0.625rem;
}

.rounded-bottom {
    border-radius: 0 0 0.25rem 0.25rem;
}

.rounded-top {
    border-radius: 0.25rem 0.25rem 0 0;
}

a[target]:not(.btn) {
    font-weight: 500;
    -webkit-text-decoration-skip: ink;
    text-decoration: underline !important;
}

.profile-image {
    width: 3.125rem;
    height: 3.125rem;
}

.profile-image {
    width: 3.125rem;
    height: 3.125rem;
}

.profile-image-md {
    width: 2rem;
    height: 2rem;
}

.profile-image-sm {
    width: 1.5625rem;
    height: 1.5625rem;
}

.status {
    position: relative;
}

.status:before {
    content: " ";
    position: absolute;
    width: 15px;
    height: 15px;
    display: block;
    top: -2px;
    right: -2px;
    background: #505050;
    border-radius: 50%;
    border: 2px solid var(--bs-body-bg);
}

.status.status-sm:before {
    width: 10px;
    height: 10px;
    border-width: 1px;
    top: 0;
    right: 0;
}

.status.status-xs:before {
    width: 8px;
    height: 8px;
    border-width: 1px;
    top: 0;
    right: 0;
}

.status.status-success:before {
    background: var(--success-500);
}

.status.status-danger:before {
    background: var(--danger-500);
}

.status.status-warning:before {
    background: var(--warning-500);
}

.bg-trans-gradient {
    background: linear-gradient(250deg, #2a7dbf, #766cbc);
}

.bg-primary-gradient {
    background-image: linear-gradient(250deg, rgba(var(--bs-primary-rgb), 0.5), transparent);
}

.bg-danger-gradient {
    background-image: linear-gradient(250deg, rgba(206, 2, 98, 0.7), transparent);
}

.bg-info-gradient {
    background-image: linear-gradient(250deg, rgba(9, 96, 165, 0.7), transparent);
}

.bg-warning-gradient {
    background-image: linear-gradient(250deg, rgba(218, 148, 0, 0.7), transparent);
}

.bg-success-gradient {
    background-image: linear-gradient(250deg, rgba(16, 112, 102, 0.7), transparent);
}

.bg-fusion-gradient {
    background-image: linear-gradient(250deg, rgba(29, 29, 29, 0.7), transparent);
}

.border-dashed {
    border-style: dashed !important;
}

.border-dotted {
    border-style: dotted !important;
}

.border-double {
    border-style: double !important;
}

.border-groove {
    border-style: groove !important;
}

.border-ridge {
    border-style: ridge !important;
}

.border-inset {
    border-style: inset !important;
}

.border-outset {
    border-style: outset !important;
}

.cursor-auto {
    cursor: auto !important;
}

.cursor-crosshair {
    cursor: crosshair !important;
}

.cursor-default {
    cursor: default !important;
}

.cursor-e-resize {
    cursor: e-resize !important;
}

.cursor-help {
    cursor: help !important;
}

.cursor-move {
    cursor: move !important;
}

.cursor-n-resize {
    cursor: n-resize !important;
}

.cursor-ne-resize {
    cursor: ne-resize !important;
}

.cursor-nw-resize {
    cursor: nw-resize !important;
}

.cursor-pointer {
    cursor: pointer !important;
}

.cursor-progress {
    cursor: progress !important;
}

.cursor-s-resize {
    cursor: s-resize !important;
}

.cursor-se-resize {
    cursor: se-resize !important;
}

.cursor-sw-resize {
    cursor: sw-resize !important;
}

.cursor-text {
    cursor: text !important;
}

.cursor-w-resize {
    cursor: w-resize !important;
}

.cursor-wait {
    cursor: wait !important;
}

.cursor-inherit {
    cursor: inherit !important;
}

.row-grid {
    overflow: hidden;
}

.row-grid > .col, .row-grid > [class$=" col"], .row-grid > [class*=" col "], .row-grid > [class*=" col-"], .row-grid > [class=col], .row-grid > [class^="col "], .row-grid > [class^=col-] {
    position: relative;
}

.row-grid > .col:after, .row-grid > [class$=" col"]:after, .row-grid > [class*=" col "]:after, .row-grid > [class*=" col-"]:after, .row-grid > [class=col]:after, .row-grid > [class^="col "]:after, .row-grid > [class^=col-]:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -1px;
    display: block;
    width: 0;
    border-left: 1px solid rgba(29, 29, 29, 0.07);
}

.row-grid > .col:before, .row-grid > [class$=" col"]:before, .row-grid > [class*=" col "]:before, .row-grid > [class*=" col-"]:before, .row-grid > [class=col]:before, .row-grid > [class^="col "]:before, .row-grid > [class^=col-]:before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    display: block;
    height: 0;
    border-top: 1px solid rgba(29, 29, 29, 0.07);
}

.text-gradient {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(25%, var(--info-500)), color-stop(50%, var(--info-800)), color-stop(75%, var(--primary-500)), to(var(--primary-800)));
    background: linear-gradient(180deg, var(--info-500) 25%, var(--info-800) 50%, var(--primary-500) 75%, var(--primary-800) 100%);
    color: var(--info-500);
    background-clip: text;
    text-fill-color: transparent;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;
}

.text-truncate-header {
    max-width: 6.0625rem;
}

.text-truncate-xs {
    max-width: 4.5625rem;
}

.text-truncate-sm {
    max-width: 117px;
}

.text-truncate-md {
    max-width: 160px;
}

.text-truncate-default {
    max-width: 180px;
}

.text-truncate-lg {
    max-width: 200px;
}

.p-g {
    padding: 2rem;
}

.m-g {
    margin: 2rem;
}

.mb-g {
    margin-bottom: 2rem !important;
}

.mb-gb {
    margin-bottom: 3rem;
}

.h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    font-weight: 300;
    display: block;
    font-size: 0.9375rem;
    line-height: 1.5;
    margin: 2px 0 1.5rem;
}

.h2 small, .h3 small, h2 small, h3 small {
    font-size: 0.9375rem;
}

.h4 small, h4 small {
    font-size: 0.875rem;
}

.h5 small, .h6 small, h5 small, h6 small {
    font-size: 0.8125rem;
}

.bg-faded {
    background-color: rgba(var(--bs-emphasis-color-rgb), 0.025);
}

.fs-nano {
    font-size: 0.6875rem !important;
}

.fs-xs {
    font-size: 0.75rem !important;
}

.fs-sm {
    font-size: 0.78125rem !important;
}

.fs-b {
    font-size: 0.8125rem !important;
}

.fs-md {
    font-size: 0.875rem !important;
}

.fs-lg {
    font-size: 0.9375rem !important;
}

.fs-xl {
    font-size: 1rem !important;
}

.fs-xxl {
    font-size: 1.75rem !important;
}

.opacity-5 {
    opacity: 0.05;
}

.opacity-10 {
    opacity: 0.1;
}

.opacity-15 {
    opacity: 0.15;
}

.opacity-20 {
    opacity: 0.2;
}

.opacity-25 {
    opacity: 0.25;
}

.opacity-30 {
    opacity: 0.3;
}

.opacity-35 {
    opacity: 0.35;
}

.opacity-40 {
    opacity: 0.4;
}

.opacity-45 {
    opacity: 0.45;
}

.opacity-50 {
    opacity: 0.5;
}

.opacity-55 {
    opacity: 0.55;
}

.opacity-60 {
    opacity: 0.6;
}

.opacity-65 {
    opacity: 0.65;
}

.opacity-70 {
    opacity: 0.7;
}

.opacity-75 {
    opacity: 0.75;
}

.opacity-80 {
    opacity: 0.8;
}

.opacity-85 {
    opacity: 0.85;
}

.opacity-90 {
    opacity: 0.9;
}

.opacity-95 {
    opacity: 0.95;
}

.opacity-100 {
    opacity: 1;
}

[aria-expanded=false] ~ .collapsed-reveal {
    display: none;
}

[aria-expanded=false] .collapsed-reveal {
    display: none;
}

[aria-expanded=false] ~ .collapsed-hidden {
    display: block;
}

[aria-expanded=false] .collapsed-hidden {
    display: block;
}

[aria-expanded=true] ~ .collapsed-reveal {
    display: block;
}

[aria-expanded=true] .collapsed-reveal {
    display: block;
}

[aria-expanded=true] ~ .collapsed-hidden {
    display: none;
}

[aria-expanded=true] .collapsed-hidden {
    display: none;
}

.pos-top {
    top: 0;
}

.pos-left {
    left: 0;
}

.pos-right {
    right: 0;
}

.pos-bottom {
    bottom: 0;
}

hr {
    border: none;
    border-bottom: 1px dashed rgba(0, 0, 0, 0.3);
}

.disabled:not(.btn), .disabled:not(.btn) > * {
    -webkit-filter: grayscale(80%);
    filter: grayscale(80%);
    opacity: 0.8;
    cursor: not-allowed;
}

.hover-bg {
    background: var(--bs-body-bg);
    -webkit-transition: all 0.1s ease-in;
    transition: all 0.1s ease-in;
    color: inherit;
}

.hover-bg:hover {
    background: inherit;
    color: inherit;
}

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

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

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

.shadow-0 {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.shadow-1, .shadow-hover-1:hover {
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.02), 0 1px 2px rgba(0, 0, 0, 0.1);
}

.shadow-2, .shadow-hover-2:hover {
    box-shadow: 0 0.1rem 0.15rem rgba(0, 0, 0, 0.1);
}

.shadow-3, .shadow-hover-3:hover {
    box-shadow: 0 0.1rem 0.15rem rgba(0, 0, 0, 0.125);
}

.shadow-4, .shadow-hover-4:hover {
    box-shadow: 0 0.1rem 0.25rem rgba(0, 0, 0, 0.125);
}

.shadow-5, .shadow-hover-5:hover {
    box-shadow: 0 0.125rem 0.325rem rgba(0, 0, 0, 0.175);
}

.shadow-hover-inset-1:hover, .shadow-inset-1 {
    box-shadow: inset 0 0.25rem 0.125rem 0 rgba(33, 37, 41, 0.025);
}

.shadow-hover-inset-2:hover, .shadow-inset-2 {
    box-shadow: inset 0 0.2rem 0.325rem rgba(0, 0, 0, 0.04);
}

.shadow-hover-inset-3:hover, .shadow-inset-3 {
    box-shadow: inset 0 0.2rem 0.325rem rgba(0, 0, 0, 0.05);
}

.shadow-hover-inset-4:hover, .shadow-inset-4 {
    box-shadow: inset 0 0.25rem 0.5rem rgba(0, 0, 0, 0.06);
}

.shadow-hover-inset-5:hover, .shadow-inset-5 {
    box-shadow: inset 0 0.35rem 0.5rem rgba(0, 0, 0, 0.07);
}

.shadow-sm-hover:hover {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow-hover:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg-hover:hover {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.info-card-text {
    font-size: 0.875rem;
    display: inline-block;
    vertical-align: middle;
    font-weight: 500;
    line-height: 1.35;
}

.info-card-text > span {
    font-size: 0.875rem;
    display: block;
    font-weight: 300;
}

/* Opacity classes */
.alpha-1 {
    opacity: 0.1;
}

.alpha-2 {
    opacity: 0.2;
}

.alpha-3 {
    opacity: 0.3;
}

.alpha-4 {
    opacity: 0.4;
}

.alpha-5 {
    opacity: 0.5;
}

.alpha-6 {
    opacity: 0.6;
}

.alpha-7 {
    opacity: 0.7;
}

.alpha-8 {
    opacity: 0.8;
}

.alpha-9 {
    opacity: 0.9;
}

.alpha-10 {
    opacity: 1;
}

/* Rotation classes - add all possible rotation values */
.rotate-0 {
    transform: rotate(0deg);
}

.rotate-45 {
    transform: rotate(45deg);
}

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

.rotate-135 {
    transform: rotate(135deg);
}

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

.rotate-225 {
    transform: rotate(225deg);
}

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

.rotate-315 {
    transform: rotate(315deg);
}

.rotate-360 {
    transform: rotate(360deg);
}

.kbd-key {
    align-items: center;
    background: linear-gradient(-225deg, #d5dbe4, #f8f8f8);
    border: 0;
    border-radius: 3px;
    box-shadow: inset 0 -2px 0 0 #cdcde6, inset 0 0 1px 1px #fff, 0 1px 2px 1px rgba(30, 35, 90, 0.4);
    color: #333;
    display: flex;
    justify-content: center;
    margin-right: 0.4em;
    padding: 0 0 2px;
    position: relative;
    top: -1px;
    transition-duration: 0.1s;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    height: 18px;
    width: 20px;
}

.badge.badge-icon {
    position: absolute;
    display: inline-block;
    background-color: var(--danger-500);
    color: #fff;
    box-shadow: 0 0 0 1px var(--bs-body-bg);
    cursor: default;
    border: 1px solid transparent;
    font-size: 0.625rem;
    min-width: 1.25rem;
    max-width: 2rem;
    padding: 0 0.3125rem;
    border-radius: 1.25rem;
    font-weight: 600;
    line-height: 1rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    vertical-align: middle;
    transform: translate(10%, -10%);
}

.nav-link {
    font-size: 0.875rem;
}

.saving-indicator {
    position: fixed;
    top: 6.5625rem;
    right: 0.9375rem;
    font-size: 0.75rem;
    width: 1.5rem;
    height: 1.5rem;
    color: inherit;
    opacity: 0;
    transition: all 0.3s ease-out;
    z-index: calc(var(--z-index-master) + 3);
}
.saving-indicator.show {
    opacity: 1;
}
.saving-indicator.success {
    color: var(--success-500);
}

.hide-page-scrollbar .saving-indicator {
    right: calc(var(--drawer-width) + 1.5rem);
}

.slide-on-mobile {
    --sidepanel-width: 15rem;
    --sidepanel-z-index: 10;
    width: var(--sidepanel-width, 15rem);
}

@media only screen and (max-width: 991.98px) {
    .slide-on-mobile {
        transform: translate3d(0, 0, 0);
        z-index: var(--sidepanel-z-index, 10);
        position: absolute !important;
        top: 0;
        bottom: 0;
        background-color: var(--bs-body-bg, #f8f9fa);
        transition: all 470ms cubic-bezier(0.34, 1.25, 0.3, 1);
    }

    .slide-backdrop {
        background: 0 0;
        transition: background 0.3s;
    }

    .slide-on-mobile-left {
        border-right: 1px solid rgba(0, 0, 0, 0.09);
        left: calc(-1 * var(--sidepanel-width, 15rem));
    }

    .slide-on-mobile-left-show {
        left: 0;
    }

    .slide-on-mobile-right {
        border-left: 1px solid rgba(0, 0, 0, 0.09);
        right: calc(-1 * var(--sidepanel-width, 15rem));
    }

    .slide-on-mobile-right-show {
        right: 0;
    }

    .slide-on-mobile-left-show + .slide-backdrop,
    .slide-on-mobile-right-show + .slide-backdrop {
        background: rgba(var(--bs-body-color-rgb), 0.09);
        position: absolute;
        z-index: 9;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
    }
}
.app-content:has(> .content-wrapper-right) {
    position: relative;
}

.content-wrapper-right {
    background-color: var(--bs-body-bg);
}

@media only screen and (max-width: 1440px) {
    .content-wrapper-right {
        position: absolute;
        right: calc(-1 * var(--right-content-width));
        width: var(--right-content-width);
        height: 100%;
        top: 0;
        z-index: 1000;
        display: none;
    }

    .content-wrapper-right.show {
        display: block;
        right: 0;
    }
}
.form-control:focus {
    border-color: var(--primary-500);
}
.form-control:focus + .input-group-text {
    background-color: var(--primary-500);
    color: var(--bs-white);
    border-color: var(--primary-500);
}
.form-control:focus + .input-group-text .form-check-input:checked {
    background-color: var(--primary-700);
    border-color: var(--primary-900);
}
.form-control + .input-group-text {
    transition: all 0.15s ease-in-out;
}

.input-group:focus-within .input-group-text {
    background-color: var(--primary-500);
    color: var(--bs-white) !important;
    border-color: var(--primary-500);
}
.input-group:focus-within .input-group-text .form-check-input:checked {
    background-color: var(--primary-700);
    border-color: var(--primary-900);
}
.input-group:focus-within .form-select {
    border-color: var(--primary-500);
}
.input-group:focus-within .input-group-text + .input-group-text {
    border-left: 1px solid var(--primary-700);
}

.form-check-input {
    transition: all 0.3s ease;
}

.input-group-text {
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}

.input-group.input-group-multi-transition input[type=text] {
    -webkit-transition: width 470ms cubic-bezier(0.34, 1.25, 0.3, 1);
    transition: width 470ms cubic-bezier(0.34, 1.25, 0.3, 1);
}

.input-group.input-group-multi-transition input[type=text]:focus {
    width: 50%;
}

/* When the input is invalid, make input-group-text red */
.was-validated .input-group.has-validation:has(> .form-control:invalid) .input-group-text,
.was-validated .input-group:has(> .form-control:invalid) .input-group-text,
.input-group:has(> .form-control.is-invalid) .input-group-text {
    background-color: var(--bs-form-invalid-color);
    border-color: var(--bs-form-invalid-border-color);
    color: #ffffff;
}

.was-validated .input-group.has-validation:has(> .form-control:valid) .input-group-text,
.was-validated .input-group:has(> .form-control:valid) .input-group-text,
.input-group:has(> .form-control.is-valid) .input-group-text {
    background-color: var(--bs-form-valid-color);
    border-color: var(--bs-form-valid-border-color);
    color: #ffffff;
}

/* create a hit area for the checkbox */
.form-check-hitbox {
    position: relative;
}
.form-check-hitbox .form-check-input {
    position: relative;
    z-index: 2;
}
.form-check-hitbox .form-check-input:focus + .form-check-label {
    background: rgba(var(--bs-body-color-rgb), 0.03);
}
.form-check-hitbox:hover:has(.form-check-input):hover .form-check-label {
    background: rgba(var(--bs-body-color-rgb), 0.05);
}
.form-check-hitbox .form-check-label {
    position: absolute;
    padding: 1.53em;
    background: transparent;
    border-radius: 100%;
    transform: translate(-86%, -23%);
    z-index: 1;
    transition: background 0.3s ease;
}
.form-check-hitbox .form-check-label:hover {
    background: rgba(var(--bs-body-color-rgb), 0.05);
}

.toast:not(:last-child) {
    margin-bottom: 0.75rem;
}

.table-border-0 td, .table-border-0 th {
    border: 0 !important;
}

.table-calendar {
    table-layout: fixed;
}

.table-calendar th {
    border: 0 !important;
    font-weight: 500;
}

.table-calendar tr td:first-child {
    border-left: 0;
}

.table-calendar tr td:last-child {
    border-right: 0;
    padding-right: 10px;
}

.table-calendar td, .table-calendar th {
    text-align: right;
    vertical-align: top;
    padding: 5px 8px;
    position: relative;
}

.list-spaced li {
    margin-top: 7px;
    margin-bottom: 7px;
}

.list-spaced li:first-child {
    margin-top: 0;
}

.list-spaced li:last-child {
    margin-bottom: 0;
}

.list-spaced > li {
    padding: 0 0 0.2rem;
}

.profile-image {
    width: 3.125rem;
    height: 3.125rem;
    max-width: 3.125rem;
    max-height: 3.125rem;
    object-fit: cover;
}

.profile-image-md {
    width: 2rem;
    height: 2rem;
    max-width: 2rem;
    max-height: 2rem;
    object-fit: cover;
}

.profile-image-sm {
    width: 1.5625rem;
    height: 1.5625rem;
    max-width: 1.5625rem;
    max-height: 1.5625rem;
    object-fit: cover;
}

.img-share {
    width: auto;
    height: 2.8125rem;
}

span.img-share {
    width: 4.1259375rem;
    height: 2.8125rem;
}

.notes {
    padding: 5px;
    background: #f9f4b5;
}

.disclaimer {
    padding-left: 0.625rem;
    font-size: 0.5rem;
    color: #a2a2a2;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-style: italic;
}

.nav-tabs-clean .nav-item .nav-link {
    border-radius: 0;
    border: 0;
    height: 2.8125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 1px solid transparent !important;
}

.nav-tabs .nav-item .nav-link:not(:hover) {
    color: inherit;
}

.notification li > :first-child > span > span {
    display: block;
}

.modal-content {
    -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}

.modal.show .modal-dialog {
    -webkit-transform: none;
    transform: none;
}

.modal-alert {
    padding: 0 !important;
}

.modal-alert .modal-dialog {
    max-width: 100% !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: calc(100% - 3.5rem);
    -webkit-transform: none !important;
    transform: none !important;
}

.modal-alert .modal-content {
    background-color: rgba(0, 0, 0, 0.8);
    border-radius: 0;
    padding: 1.5rem 1rem 1rem;
}

.modal-alert .modal-title {
    font-size: 1.5rem;
    font-weight: 300;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.modal-alert .modal-body, .modal-alert .modal-footer, .modal-alert .modal-header {
    width: 100%;
    max-width: 992px;
    margin: 0 auto;
    padding: 0;
    color: #fff;
    position: relative;
}

.modal-alert .close {
    color: #fff;
    text-shadow: 0 1px 0 #000;
}

.modal-backdrop-transparent {
    background: 0 0;
}

.modal-dialog-bottom, .modal-dialog-top {
    position: absolute;
    top: 0;
    margin: 0;
    min-width: 100%;
}

.modal-dialog-bottom .modal-dialog, .modal-dialog-top .modal-dialog {
    width: 100%;
    max-width: 100%;
    margin: 0;
}

.modal-dialog-bottom .modal-content, .modal-dialog-top .modal-content {
    border-radius: 0;
    border: 0;
}

.modal-dialog-bottom {
    top: auto;
    bottom: 0;
}

.modal.fade .modal-dialog-bottom {
    transform: translate(0, 25%);
}

.modal-dialog-start {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0 !important;
}

.modal-dialog-start .modal-content {
    min-height: 100%;
    border-width: 0;
    border-radius: 0;
}

.modal.fade .modal-dialog-start {
    transform: translate(-25%, 0);
}

.modal-dialog-end {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    margin: 0 !important;
    border-width: 0;
}

.modal-dialog-end .modal-content {
    min-height: 100%;
    border-width: 0;
    border-radius: 0;
}

.modal.fade .modal-dialog-end {
    transform: translate(25%, 0);
}

.modal.show .modal-dialog {
    transform: translate(0, 0);
}

.modal-md {
    max-width: 21.875rem;
}

.modal-backdrop {
    --bs-backdrop-opacity: 0.4;
}

.modal.modal-static .modal-dialog {
    transform: scale(1.02) !important;
}

.app-breadcrumb .breadcrumb {
    padding: 0;
    background: 0 0;
    margin: 0 0 1.5rem;
    position: relative;
    text-shadow: var(--page-breadcrumbs-text-shadow, #fff) 0 1px;
    --bs-breadcrumb-item-active-color: rgba(var(--bs-body-color-rgb), 0.75);
    font-size: 0.875rem;
}
.app-breadcrumb .breadcrumb .breadcrumb-item {
    max-width: 10.625rem;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    transition: all 0.3s ease-in-out;
}
.app-breadcrumb .breadcrumb .breadcrumb-item:hover {
    max-width: 12.5rem !important;
    cursor: default;
}

.breadcrumb {
    margin: 0;
    --bs-breadcrumb-divider-color: rgba(var(--bs-dark-rgb), 0.2);
}
.breadcrumb[class^=bg-] .breadcrumb-item + .breadcrumb-item::before, .breadcrumb[class*=" bg-"] .breadcrumb-item + .breadcrumb-item::before {
    color: currentColor;
    opacity: 0.7;
}

.breadcrumb > li.breadcrumb-item {
    max-width: 130px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: block;
}

.breadcrumb > li.breadcrumb-item:hover {
    max-width: 200px !important;
    cursor: default;
}

[data-breadcrumb-seperator] + [data-breadcrumb-seperator]::before {
    content: attr(data-breadcrumb-seperator);
    color: currentColor;
}

.dropdown-menu {
    --bs-dropdown-link-active-bg: rgba(var(--primary), 0.9);
    --bs-dropdown-link-hover-bg: var(--app-nav-item-hover-bg);
    --bs-dropdown-link-hover-color: var(--primary-500);
    --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
    min-width: 10rem;
    padding: 0.3125rem 0;
    margin: 0.125rem 0 0;
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    border: 0 solid var(--bs-border-color-translucent);
    box-shadow: 0 0 15px 1px rgba(var(--bs-dark-rgb), 0.15);
}

.dropdown-item {
    display: block;
    width: 100%;
    clear: both;
    font-weight: 400;
    color: var(--bs-body-color);
    text-align: inherit;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
}

.dropdown, .dropleft, .dropright, .dropup {
    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 transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
}

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

.dropdown-menu-left {
    right: auto;
    left: 0;
}

.dropdown-menu-right {
    right: 0;
    left: auto;
}

.btn-system[data-bs-toggle=dropdown] + .dropdown-menu {
    position: absolute;
    top: var(--app-header-height) !important;
    right: 2rem !important;
    left: auto !important;
    padding: 0;
    margin: 0;
}

.dropdown-menu-animated {
    transform: scale(0.8) !important;
    transition: all 270ms cubic-bezier(0.34, 1.25, 0.3, 1);
    opacity: 0;
    visibility: hidden;
    display: block;
    z-index: 1000;
}

.show + .dropdown-menu-animated {
    transform: scale(1) !important;
    transform-origin: -21px;
    opacity: 1;
    visibility: visible;
}

@media (min-width: 576px) {
    .dropdown-menu-sm-start {
        right: auto;
        left: 0;
    }

    .dropdown-menu-sm-end {
        right: 0;
        left: auto;
    }
}
@media (min-width: 768px) {
    .dropdown-menu-md-start {
        right: auto;
        left: 0;
    }

    .dropdown-menu-md-end {
        right: 0;
        left: auto;
    }
}
@media (min-width: 992px) {
    .dropdown-menu-lg-start {
        right: auto;
        left: 0;
    }

    .dropdown-menu-lg-end {
        right: 0;
        left: auto;
    }
}
@media (min-width: 1399px) {
    .dropdown-menu-xl-start {
        right: auto;
        left: 0;
    }

    .dropdown-menu-xl-end {
        right: 0;
        left: auto;
    }
}
.dropup .dropdown-menu {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: 0.125rem;
}

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

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

.dropright .dropdown-menu {
    top: 0;
    right: auto;
    left: 100%;
    margin-top: 0;
    margin-left: 0.125rem;
}

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

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

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

.dropleft .dropdown-menu {
    top: 0;
    right: 100%;
    left: auto;
    margin-top: 0;
    margin-right: 0.125rem;
}

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

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

.dropleft .dropdown-toggle::before {
    display: inline-block;
    margin-right: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid transparent;
    border-right: 0.3em solid;
    border-bottom: 0.3em solid transparent;
}

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

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

.dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=top] {
    right: auto;
    bottom: auto;
}

.dropdown-item:focus,
.dropdown-item:hover {
    text-decoration: none;
    background-color: var(--app-nav-item-hover-bg);
}

.dropdown-item.active,
.dropdown-item:active,
.dropdown-item.selected {
    text-decoration: none;
    font-weight: 500;
    color: var(--app-nav-link-active-color);
    background-color: rgba(var(--secondary), 0.05);
}

.dropdown-item:active {
    text-decoration: none;
    font-weight: 400;
    background-color: rgba(33, 150, 243, 0.09);
}

.dropdown-item.disabled,
.dropdown-item:disabled {
    color: var(--bs-gray-500);
    pointer-events: none;
    background-color: transparent;
}

.dropdown-header {
    display: block;
    padding: 0.3125rem 1.5rem;
    margin-bottom: 0;
    font-size: 0.725rem;
    color: var(--bs-body-color);
    white-space: nowrap;
    font-weight: 300;
}

.dropdown-item-text {
    display: block;
    padding: 0.75rem 1.5rem;
    color: var(--bs-body-color);
}

.dropdown-menu.dropdown-sm {
    width: 8rem;
    height: auto;
}

.dropdown-menu.dropdown-md {
    width: 14rem;
    height: auto;
}

.dropdown-menu.dropdown-lg {
    width: 17.5rem;
    height: auto;
}

.dropdown-menu.dropdown-xl {
    width: 21.875rem;
    height: auto;
}

.dropdown-menu .dropdown-item:first-child, .dropdown-menu .dropdown-item:last-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}

.dropdown-toggle::after {
    display: inline-block;
    margin-left: 0.255em;
    margin-bottom: 0.2em;
    vertical-align: middle;
    width: 0.8em;
    height: 0.8em;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 9L12 17L20 9' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E") no-repeat 50% 50%;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 9L12 17L20 9' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E") no-repeat 50% 50%;
    background-color: currentColor;
    border: 0 !important;
    content: "" !important;
}
.dropdown-toggle:disabled::after, .dropdown-toggle.disabled::after {
    opacity: 0.65;
}

.dropdown-toggle:has(.visually-hidden)::after {
    margin-left: 0;
}

.dropup .dropdown-toggle::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 17L12 9L20 17' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E") no-repeat 50% 50%;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 17L12 9L20 17' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E") no-repeat 50% 50%;
    margin-bottom: 0;
    vertical-align: 0;
}

.dropend .dropdown-toggle::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 4L17 12L9 20' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E") no-repeat 50% 50%;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 4L17 12L9 20' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E") no-repeat 50% 50%;
    margin-bottom: 0;
}

.dropstart .dropdown-toggle::before {
    display: inline-block;
    margin-right: 0.255em;
    vertical-align: middle;
    width: 0.8em;
    height: 0.8em;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 4L9 12L17 20' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E") no-repeat 50% 50%;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 4L9 12L17 20' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E") no-repeat 50% 50%;
    background-color: currentColor;
    border: 0 !important;
    content: "" !important;
}
.dropstart .dropdown-toggle::after {
    display: none;
}

.nav-item .dropdown-toggle:after {
    font-size: 0.9em;
}

.dropdown-toggle.no-arrow::after,
.dropdown-toggle.no-arrow:not([data-bs-toggle=dropdown])::before {
    display: none !important;
}

.dropdown-menu .dropdown-menu {
    display: none;
}
.dropdown-menu .dropdown-menu::after {
    content: "";
    display: block;
    width: 130%;
    height: 130%;
    background-color: transparent;
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.dropdown-multilevel {
    position: relative;
}
.dropdown-multilevel .dropdown-item {
    cursor: pointer;
}

.dropdown-multilevel:hover > .dropdown-menu {
    top: -2px;
    left: 100%;
    display: block;
}

.dropdown-multilevel.dropdown-multilevel-left .dropdown-menu {
    right: 100%;
    left: auto;
}

.dropdown-menu .dropdown-multilevel:hover > .dropdown-item:not(.disabled) {
    background: var(--bs-dropdown-link-hover-bg);
    color: var(--bs-dropdown-link-hover-color);
}

.dropdown-menu .dropdown-menu .dropdown-item {
    padding-top: 0.45rem !important;
    padding-bottom: 0.45rem !important;
    font-size: 0.825rem;
}

.card, .card-group {
    box-shadow: 0 0 13px 0 rgba(74, 53, 107, 0.08);
}

.card {
    --bs-card-cap-padding-y: 1rem;
    --bs-card-cap-padding-x: 1rem;
    --bs-card-title-spacer-y: 0rem;
}

.card-group > .card {
    box-shadow: none;
}

.list-group-item {
    --bs-list-group-item-padding-x: 1.25rem;
    --bs-list-group-item-padding-y: 0.75rem;
}

.pagination {
    --bs-pagination-active-bg: var(--primary-900);
    --bs-pagination-active-bg: var(--primary-500);
    --bs-pagination-active-border-color: var(--primary-700);
    --bs-pagination-color: var(--bs-body-color);
    --bs-pagination-focus-color: var(--bs-body-color);
    --bs-pagination-hover-color: var(--primary-500);
    --bs-pagination-disabled-border-color: rgba(var(--bs-emphasis-color-rgb), 0.2);
    --bs-pagination-font-size: 0.875rem;
    display: flex;
    padding-left: 0;
    list-style: none;
    border-radius: var(--bs-border-radius);
}
.pagination .page-item:not(:first-child) {
    margin-left: 0.25rem;
}

.page-link {
    position: relative;
    display: block;
    margin-left: -1px;
    background-color: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.25rem;
}
.page-link:hover {
    z-index: 2;
    text-decoration: none;
    background-color: var(--primary-500) !important;
    color: #fff;
    border-color: var(--primary-700);
}
.page-link:focus {
    z-index: 3;
    outline: 0;
    box-shadow: 0 0 0 0.2rem transparent;
}

.page-item:first-child .page-link {
    margin-left: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.page-item:last-child .page-link {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}
.page-item.active .page-link {
    z-index: 3;
    color: #fff;
}
.pagination-lg {
    --bs-pagination-padding-x: 1.5rem;
    --bs-pagination-padding-y: .75rem;
    --bs-pagination-font-size: 1rem;
    --bs-pagination-border-radius: var(--bs-border-radius-lg);
}
.pagination-lg .page-link {
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    line-height: 1.5;
}
.pagination-lg .page-item:first-child .page-link {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.pagination-lg .page-item:last-child .page-link {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.pagination-sm {
    --bs-pagination-padding-x: 0.5rem;
    --bs-pagination-padding-y: 0.25rem;
    --bs-pagination-font-size: 0.875rem;
    --bs-pagination-border-radius: var(--bs-border-radius-sm);
}
.pagination-sm .page-link {
    padding: 0.25rem 0.6rem;
    font-size: 0.75rem;
}
.pagination-sm .page-item:first-child .page-link {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.pagination-sm .page-item:last-child .page-link {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.pagination-xs .page-link {
    padding: 0.2rem 0.5rem;
    font-size: 0.75rem;
}

.popover {
    --bs-popover-header-padding-y: 1rem;
    --bs-popover-header-padding-x: 1rem;
    --bs-popover-bg: rgba(0, 0, 0, .1);
    --bs-popover-arrow-border: rgba(0, 0, 0, .1);
    background: var(--bs-body-bg);
    box-shadow: 0 0 15px 1px rgba(90, 80, 105, 0.2);
    margin: 12px;
    border: 3px solid rgba(0, 0, 0, 0.2);
    border-radius: 0.5rem;
}

.popover .arrow {
    border-color: inherit;
}

.popover .popover-header {
    --bs-popover-header-font-size: 1rem;
    --bs-popover-header-font-weight: 500;
    border-radius: 0.5rem 0.5rem 0 0;
    border-bottom-width: 0;
    border-radius: 5px;
    --bs-popover-header-bg: transparent;
}

.popover-header + .popover-body {
    padding-top: 0;
}

.primary-popover {
    --bs-popover-border-color: var(--primary-500);
    --bs-popover-header-bg: var(--primary-500);
    --bs-popover-header-color: var(--bs-light);
    --bs-popover-body-color: var(--bs-light);
    --bs-popover-bg: var(--primary-700);
    --bs-popover-arrow-border: var(--primary-800);
    background: var(--primary-500);
}

.secondary-popover {
    --bs-popover-border-color: var(--bs-secondary);
    --bs-popover-header-bg: var(--bs-secondary);
    --bs-popover-header-color: var(--bs-light);
    --bs-popover-body-color: var(--bs-light);
    --bs-popover-bg: var(--bs-secondary);
    --bs-popover-arrow-border: var(--bs-secondary);
    background: var(--bs-secondary);
}

.success-popover {
    --bs-popover-border-color: var(--success-600);
    --bs-popover-header-bg: var(--success-600);
    --bs-popover-header-color: var(--bs-light);
    --bs-popover-body-color: var(--bs-light);
    --bs-popover-bg: var(--success-800);
    --bs-popover-arrow-border: var(--success-800);
    background: var(--success-600);
}

.danger-popover {
    --bs-popover-border-color: var(--danger-700);
    --bs-popover-header-bg: var(--danger-700);
    --bs-popover-header-color: var(--bs-light);
    --bs-popover-body-color: var(--bs-light);
    --bs-popover-bg: var(--danger-900);
    --bs-popover-arrow-border: var(--danger-800);
    background: var(--danger-700);
}

.warning-popover {
    --bs-popover-border-color: var(--warning-500);
    --bs-popover-header-bg: var(--warning-500);
    --bs-popover-header-color: var(--bs-dark);
    --bs-popover-body-color: var(--bs-dark);
    --bs-popover-bg: var(--warning-900);
    --bs-popover-arrow-border: var(--warning-900);
    background: var(--warning-500);
}

.info-popover {
    --bs-popover-border-color: var(--info-500);
    --bs-popover-header-bg: var(--info-500);
    --bs-popover-header-color: var(--bs-light);
    --bs-popover-body-color: var(--bs-light);
    --bs-popover-bg: var(--info-700);
    --bs-popover-arrow-border: var(--info-800);
    background: var(--info-500);
}

.dark-popover {
    --bs-popover-border-color: var(--bs-dark);
    --bs-popover-header-bg: var(--bs-dark);
    --bs-popover-header-color: var(--bs-light);
    --bs-popover-body-color: var(--bs-light);
    --bs-popover-bg: var(--bs-dark);
    --bs-popover-arrow-border: var(--bs-dark);
    background: var(--bs-dark);
}

.light-popover {
    --bs-popover-border-color: var(--bs-light);
    --bs-popover-header-bg: var(--bs-light);
    --bs-popover-header-color: var(--bs-dark);
    --bs-popover-body-color: var(--bs-dark);
    --bs-popover-bg: rgba(255, 255, 255, 1);
    --bs-popover-arrow-border: rgba(43, 43, 43, 0.3);
    background: var(--bs-light);
}

.progress-xs {
    height: 5px;
}

.progress-sm {
    height: 8px;
}

.progress-md {
    height: 14px;
}

.progress-lg {
    height: 20px;
}

.progress-xl {
    height: 30px;
}

.progress, .progress-stacked {
    --bs-progress-bg: rgba(var(--bs-body-color-rgb), 0.07);
}

th {
    font-weight: 500;
}

.table {
    font-weight: 300;
    font-size: 0.875rem;
}
.table.table-sm {
    font-size: 0.825rem;
}
.table.table-nano {
    font-size: 0.75rem;
}
.table.table-nano > :not(caption) > * > * {
    padding: 0.25rem 0.25rem;
}

.table thead td,
.table thead th {
    border-bottom-width: 2px;
}

.table-hover tbody tr:hover {
    background: transparent;
}

.table-border-0 td, .table-border-0 th {
    border: 0 !important;
}

.table-calendar {
    table-layout: fixed;
}

.table-calendar th {
    border: 0 !important;
    font-weight: 500;
}

.table-calendar tr td:first-child {
    border-left: 0;
}

.table-calendar tr td:last-child {
    border-right: 0;
    padding-right: 10px;
}

.table-calendar td, .table-calendar th {
    text-align: right;
    vertical-align: top;
    padding: 5px 8px;
    position: relative;
}

/* Sort indicators */
.st-expand-btn {
    display: inline-flex;
    height: 20px;
    width: 20px;
    align-items: center;
    justify-content: center;
    line-height: 20px !important;
    font-size: 1.4em !important;
}

.expanded .st-expand-btn {
    border-color: var(--danger-500) !important;
    color: var(--danger-500) !important;
}
.expanded .st-expand-btn:hover {
    background-color: var(--danger-500) !important;
    color: #fff !important;
}

.st-wrapper {
    width: 100%;
}
.st-wrapper .st-table {
    border: 1px solid var(--bs-border-color);
}
.st-wrapper .pagination {
    --bs-pagination-active-bg: var(--primary-500);
    --bs-pagination-active-border-color: var(--primary-700);
    --bs-pagination-focus-color: var(--bs-emphasis-color);
    --bs-pagination-hover-color: var(--primary-500);
    --bs-pagination-color: var(--bs-emphasis-color);
}
.st-wrapper .st-search-wrapper {
    position: relative;
}
.st-wrapper .st-search-wrapper::before {
    font-family: "smartadmin-icons";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    content: "\e090";
    position: absolute;
    top: 4px;
    left: 0;
    bottom: 0;
    width: 40px;
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}
.st-wrapper .st-search-wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(var(--bs-secondary-color-rgb), 0.07);
    width: 40px;
    border-radius: var(--bs-border-radius) 0 0 var(--bs-border-radius);
    border: 1px solid var(--bs-border-color);
    transition: border-color 0.15s ease-in-out, background-color 0.15s ease-in-out;
}
.st-wrapper .st-search-wrapper .st-search {
    padding-left: calc(40px + 0.75rem);
    line-height: 1.5rem;
}
.st-wrapper .st-search-wrapper:has(.st-search:focus)::after {
    background-color: var(--primary-500);
    border-color: transparent;
}
.st-wrapper .st-search-wrapper:has(.st-search:focus)::before {
    color: #fff;
}

.dtr-details {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.dtr-title {
    font-weight: 500;
    margin-right: 10px;
    min-width: 130px;
    display: inline-block;
}

.st-wrapper .table {
    width: 100%;
}

.st-wrapper .table td,
.st-wrapper .table th {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.st-sort-neutral,
.st-sort-asc,
.st-sort-desc {
    position: relative;
    padding-right: 1.5em !important;
}

.st-sort-neutral,
.st-sort-asc,
.st-sort-desc {
    position: relative; /* Needed for positioning pseudo-elements */
}

.st-sort-asc,
.st-sort-desc {
    background-color: rgba(var(--primary), 0.05) !important;
    border-bottom-color: var(--primary-500);
}

/* Down Arrow (pointing downward) using ::before */
.st-sort-neutral::before,
.st-sort-asc::before,
.st-sort-desc::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 7px solid #ccc;
    top: 55%;
    right: 7px;
}

/* Up Arrow (pointing upward) using ::after */
.st-sort-neutral::after,
.st-sort-asc::after,
.st-sort-desc::after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-bottom: 7px solid #ccc;
    bottom: 55%;
    right: 7px;
}

.st-sort-asc::after {
    border-bottom-color: var(--primary-500);
}

.st-sort-desc::before {
    border-top-color: var(--primary-500);
}

/* Sort column highlight */
.st-sort-column {
    background-color: rgba(var(--primary), 0.05) !important;
}

/* If you want to style alternating rows differently */
.table-striped > tbody > tr:nth-of-type(odd) .st-sort-column {
    background-color: rgba(var(--primary), 0.09) !important;
}

/* Loading overlay */
.st-loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    background-color: var(--app-content-background);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    transition: opacity 0.3s ease-out;
}

/* Loading state */
.st-wrapper {
    position: relative;
    width: 100%;
}
.st-wrapper.st-loading {
    min-height: 550px;
    max-height: 550px;
    overflow: hidden;
    pointer-events: none;
    /* Background overlay */
    /* Loading text */
    /* Spinner - using a new element instead of pseudo-element */
}
.st-wrapper.st-loading::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--app-content-background);
    z-index: 1000;
}
.st-wrapper.st-loading::before {
    content: "Initializing table, just a second...";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    font-size: 0.875rem;
    color: var(--bs-body-color);
    white-space: nowrap;
    padding-top: 40px; /* Space for the spinner */
}
.st-wrapper.st-loading .st-loading-spinner {
    content: "";
    position: absolute;
    top: calc(50% - 30px);
    left: 50%;
    width: 30px;
    height: 30px;
    margin: -15px 0 0 -15px;
    border: 3px solid var(--primary-500);
    border-top-color: transparent;
    border-radius: 50%;
    z-index: 1001;
    animation: st-spin 0.6s linear infinite;
}
.st-wrapper.st-loading.st-ajax-loading {
    max-height: unset;
    pointer-events: unset;
}
.st-wrapper.st-loading.st-ajax-loading .st-loading-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid rgba(var(--bs-body-color-rgb), 0.3);
    border-top-color: var(--primary-600);
    top: 53%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.st-wrapper.st-loading.st-ajax-loading::before {
    content: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    font-size: 0.875rem;
    color: var(--bs-body-color);
    white-space: nowrap;
    width: 200px;
    height: 100px;
    padding-top: 40px;
    background: rgba(255, 255, 255, 0.5);
    border: 1px solid #333;
    border-radius: 0.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.st-wrapper.st-loading.st-ajax-loading::after {
    content: none;
}
.st-wrapper.st-loading .table {
    opacity: 0.3;
}
.st-wrapper .table {
    transition: opacity 0.3s ease;
}

.st-spinner {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes st-spin {
    to {
        transform: rotate(360deg);
    }
}
/* No results message */
.st-no-results {
    text-align: center;
    padding: 2rem;
    background-color: rgba(var(--info), 0.1);
    border: none;
    border-radius: 0.5rem;
}
.st-no-results b {
    color: var(--info-600);
}

.st-table {
    width: 100%;
    border-collapse: collapse;
}

.st-table th, .st-table td {
    padding: 0.5rem 0.75rem; /* Reduced padding */
    white-space: nowrap; /* Prevent text wrapping */
    overflow: hidden;
    text-overflow: ellipsis;
}

.st-table th {
    position: relative;
    font-weight: 600;
}

.st-table td:first-child {
    position: relative;
}
.st-table td:first-child:has(.st-expand) {
    cursor: pointer;
}

.st-table td:first-child.st-expand::before {
    content: "+";
    font-weight: 300;
    font-size: 12px;
    position: absolute;
    background: var(--primary-500);
    top: 0;
    left: 0;
    bottom: 0;
    width: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.st-table td:first-child.st-expand-active::before {
    content: "-";
    font-weight: 300;
    font-size: 12px;
    position: absolute;
    background: var(--fusion-200);
    top: 0;
    left: 0;
    bottom: 0;
    width: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.st-expand {
    padding-left: calc(12px + 0.5rem) !important;
}

.st-child-row {
    background-color: rgba(0, 0, 0, 0.02);
}

.st-child-content {
    padding: 0 !important;
}

.st-hidden-columns {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.5rem 0.5rem 0.5rem 0.75rem;
    border-left: 10px solid var(--fusion-100);
}

.st-hidden-column-item {
    display: flex;
    align-items: baseline;
}

.st-hidden-column-label {
    font-weight: 600;
    min-width: 140px;
    display: inline-block;
}

.st-hidden-column-value {
    flex: 1;
}

.st-loading {
    position: relative;
    min-height: 200px;
}

.st-loading-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border: 4px solid rgba(0, 0, 0, 0.1);
    border-radius: 50%;
    border-top-color: var(--primary-500);
    animation: st-spin 1s linear infinite;
    z-index: 1000;
}

@keyframes st-spin {
    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}
/* Optimize table for better space usage */
.st-table.st-compact th, .st-table.st-compact td {
    padding: 0.35rem 0.5rem;
    font-size: 0.9rem;
}

/* Add truncation for long text */
.st-table .st-truncate {
    max-width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.popover-body-p-0 .popover-body {
    padding: 0;
}
.popover-body-p-0 .popover-body img {
    border-radius: var(--border-radius-uniform);
}

.btn-primary {
    box-shadow: 0 2px 6px 0 rgba(42, 125, 191, 0.5);
}

.btn-success {
    box-shadow: 0 2px 6px 0 rgba(42, 157, 143, 0.5);
}

.btn-info {
    box-shadow: 0 2px 6px 0 rgba(118, 108, 188, 0.5);
}

.btn-warning {
    box-shadow: 0 2px 6px 0 rgba(244, 162, 97, 0.5);
}

.btn-danger {
    box-shadow: 0 2px 6px 0 rgba(231, 111, 81, 0.5);
}

.btn-fusion {
    box-shadow: 0 2px 6px 0 rgba(53, 53, 53, 0.5);
}

.btn-dark {
    box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.5);
}

.btn-light {
    box-shadow: 0 2px 6px 0 rgba(255, 255, 255, 0.5);
}

.btn-secondary {
    box-shadow: 0 2px 6px 0 rgba(108, 117, 125, 0.5);
}

/* parent position needs to be relative, and turn off waves function */
.btn-icon .badge {
    top: auto;
}
.btn-icon .badge.pos-top {
    margin-top: -0.25rem;
}
.btn-icon .badge.pos-bottom {
    margin-bottom: -0.25rem;
}
.btn-icon .badge.pos-left {
    margin-left: -0.25rem;
}
.btn-icon .badge.pos-right {
    margin-right: -0.25rem;
}

.btn-default {
    background-color: var(--bs-gray-100);
    background-image: -webkit-gradient(linear, left bottom, left top, from(var(--bs-gray-100)), to(var(--bs-gray-200)));
    background-image: linear-gradient(to top, var(--bs-gray-100), var(--bs-gray-200));
    color: var(--bs-gray-700);
    border: 1px solid rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-default:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 1px solid var(--bs-gray-400);
    color: var(--bs-gray-800);
    z-index: 2;
}

.btn-default:focus {
    border-color: var(--info-300) !important;
    z-index: 3;
}

.btn-default:active,
.ben-default.active {
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset !important;
    background: inherit;
    border-color: inherit;
}

.btn:not(.btn-system):active {
    -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset !important;
    scale: 0.97;
}

.btn-primary {
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: #2a7dbf;
    --bs-btn-border-color: #2a7dbf;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #216295;
    --bs-btn-hover-border-color: #1c5480;
    --bs-btn-focus-shadow-rgb: 42, 125, 191;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #1c5480;
    --bs-btn-active-border-color: #18466b;
    --bs-btn-disabled-color: var(--bs-white);
    --bs-btn-disabled-bg: #2a7dbf;
    --bs-btn-disabled-border-color: #2a7dbf;
}

.btn-success {
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: #2a9d8f;
    --bs-btn-border-color: #2a9d8f;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #1f756a;
    --bs-btn-hover-border-color: #1a6158;
    --bs-btn-focus-shadow-rgb: 42, 157, 143;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #1a6158;
    --bs-btn-active-border-color: #144d46;
    --bs-btn-disabled-color: var(--bs-white);
    --bs-btn-disabled-bg: #2a9d8f;
    --bs-btn-disabled-border-color: #2a9d8f;
}

.btn-info {
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: #766cbc;
    --bs-btn-border-color: #766cbc;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #584da8;
    --bs-btn-hover-border-color: #4f4597;
    --bs-btn-focus-shadow-rgb: 118, 108, 188;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #4f4597;
    --bs-btn-active-border-color: #463d85;
    --bs-btn-disabled-color: var(--bs-white);
    --bs-btn-disabled-bg: #766cbc;
    --bs-btn-disabled-border-color: #766cbc;
}

.btn-warning {
    --bs-btn-color: #000;
    --bs-btn-bg: #f4a261;
    --bs-btn-border-color: #f4a261;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #f18631;
    --bs-btn-hover-border-color: #ef7819;
    --bs-btn-focus-shadow-rgb: 244, 162, 97;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #ef7819;
    --bs-btn-active-border-color: #df6b10;
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #f4a261;
    --bs-btn-disabled-border-color: #f4a261;
}

.btn-danger {
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: #e76f51;
    --bs-btn-border-color: #e76f51;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #e14a24;
    --bs-btn-hover-border-color: #cf401d;
    --bs-btn-focus-shadow-rgb: 231, 111, 81;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #cf401d;
    --bs-btn-active-border-color: #b93919;
    --bs-btn-disabled-color: var(--bs-white);
    --bs-btn-disabled-bg: #e76f51;
    --bs-btn-disabled-border-color: #e76f51;
}

.btn-fusion {
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: #353535;
    --bs-btn-border-color: #353535;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #1b1b1b;
    --bs-btn-hover-border-color: #0f0f0f;
    --bs-btn-focus-shadow-rgb: 53, 53, 53;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #0f0f0f;
    --bs-btn-active-border-color: #020202;
    --bs-btn-disabled-color: var(--bs-white);
    --bs-btn-disabled-bg: #353535;
    --bs-btn-disabled-border-color: #353535;
}

.btn-outline-primary {
    --bs-btn-color: #2a7dbf;
    --bs-btn-border-color: #2a7dbf;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #2a7dbf;
    --bs-btn-hover-border-color: #2a7dbf;
    --bs-btn-focus-shadow-rgb: 42, 125, 191;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #2a7dbf;
    --bs-btn-active-border-color: #2a7dbf;
    --bs-btn-disabled-color: #2a7dbf;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #2a7dbf;
}

.btn-outline-success {
    --bs-btn-color: #2a9d8f;
    --bs-btn-border-color: #2a9d8f;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #2a9d8f;
    --bs-btn-hover-border-color: #2a9d8f;
    --bs-btn-focus-shadow-rgb: 42, 157, 143;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #2a9d8f;
    --bs-btn-active-border-color: #2a9d8f;
    --bs-btn-disabled-color: #2a9d8f;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #2a9d8f;
}

.btn-outline-info {
    --bs-btn-color: #766cbc;
    --bs-btn-border-color: #766cbc;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #766cbc;
    --bs-btn-hover-border-color: #766cbc;
    --bs-btn-focus-shadow-rgb: 118, 108, 188;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #766cbc;
    --bs-btn-active-border-color: #766cbc;
    --bs-btn-disabled-color: #766cbc;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #766cbc;
}

.btn-outline-warning {
    --bs-btn-color: #f4a261;
    --bs-btn-border-color: #f4a261;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #f4a261;
    --bs-btn-hover-border-color: #f4a261;
    --bs-btn-focus-shadow-rgb: 244, 162, 97;
    --bs-btn-active-color: #000;
    --bs-btn-active-bg: #f4a261;
    --bs-btn-active-border-color: #f4a261;
    --bs-btn-disabled-color: #f4a261;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #f4a261;
}

.btn-outline-danger {
    --bs-btn-color: #e76f51;
    --bs-btn-border-color: #e76f51;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #e76f51;
    --bs-btn-hover-border-color: #e76f51;
    --bs-btn-focus-shadow-rgb: 231, 111, 81;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #e76f51;
    --bs-btn-active-border-color: #e76f51;
    --bs-btn-disabled-color: #e76f51;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #e76f51;
}

.btn-outline-fusion {
    --bs-btn-color: #353535;
    --bs-btn-border-color: #353535;
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: #353535;
    --bs-btn-hover-border-color: #353535;
    --bs-btn-focus-shadow-rgb: 53, 53, 53;
    --bs-btn-active-color: var(--bs-white);
    --bs-btn-active-bg: #353535;
    --bs-btn-active-border-color: #353535;
    --bs-btn-disabled-color: #353535;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #353535;
}

.btn-system {
    font-size: 1.5rem;
    padding: 0.3125rem;
    line-height: var(--app-header-height);
    border: none;
    outline: none;
    cursor: default;
    position: relative;
}
.btn-system i {
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-system i::after {
    color: rgba(var(--info), 0.9);
    opacity: 0.4;
}
.btn-system i::before {
    color: rgba(var(--primary), 0.9);
}
.btn-system::before {
    content: "";
    position: absolute;
    width: 2.875rem;
    height: 2.875rem;
    border-radius: 50%;
    background: transparent;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.btn-system:focus {
    border: none;
    outline: none;
}
.btn-system:hover, .btn-system.show {
    border: none;
    outline: none;
}
.btn-system:hover .sa-icon, .btn-system.show .sa-icon {
    fill: rgba(var(--primary), 0.1);
    stroke: rgba(var(--primary), 0.8);
}
.btn-system:hover::before, .btn-system.show::before {
    background: rgba(var(--bs-emphasis-color-rgb), var(--btn-system-bg-opacity, 0.03));
}
.btn-system.btn-system-light:hover, .btn-system.btn-system-light.show {
    border: none;
    outline: none;
}
.btn-system.btn-system-light:hover .sa-icon, .btn-system.btn-system-light.show .sa-icon {
    fill: rgba(var(--white), 0.1);
    stroke: rgba(var(--white), 0.8);
}
.btn-system.btn-system-light:hover::before, .btn-system.btn-system-light.show::before {
    background: rgba(var(--white), 0.1);
}
.btn-system:active {
    scale: 0.9;
}

.btn[data-action=playsound]:not(.btn-has-sound) {
    padding: 0 2px;
    position: relative;
}
.btn[data-action=playsound]:not(.btn-has-sound) .sa-icon {
    width: 1rem;
    height: 1rem;
    stroke: rgb(34, 36, 38);
    stroke-width: 1px;
}
.btn[data-action=playsound]:not(.btn-has-sound):hover .sa-icon {
    stroke-width: 2px;
    stroke: rgb(255, 255, 255);
}
.btn[data-action=playsound]:not(.btn-has-sound)[data-audio-playing] {
    border-color: rgba(var(--danger), 0.9);
    background: rgba(var(--danger), 0.1);
}
.btn[data-action=playsound]:not(.btn-has-sound)[data-audio-playing] .sa-icon {
    stroke-width: 2px;
    stroke: rgba(var(--danger), 0.9);
}
.btn[data-action=playsound]:not(.btn-has-sound)::before {
    content: "";
    position: absolute;
    width: 3.125rem;
    height: 3.125rem;
    border-radius: 50%;
    background: transparent;
    top: -1rem;
    left: -0.875rem;
}

.btn-icon {
    width: calc(2.1rem + 2px);
    height: calc(2.1rem + 2px);
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-icon:not([class*=-primary]):not([class*=-secondary]):not([class*=-default]):not([class*=-success]):not([class*=-info]):not([class*=-warning]):not([class*=-danger]):not([class*=-dark]):not([class*=-light]):not(.nav-item):hover {
    background-color: rgba(var(--bs-body-color-rgb), 0.05);
    border-color: transparent;
}

.btn-icon:not([class*=-primary]):not([class*=-secondary]):not([class*=-default]):not([class*=-success]):not([class*=-info]):not([class*=-warning]):not([class*=-danger]):not([class*=-dark]):not([class*=-light]):not(.nav-item):not(.active):not(:active):not(:hover):not(:focus) {
    background: 0 0;
    color: var(--bs-body-color);
}

.btn-icon:not([class*=-primary]):not([class*=-secondary]):not([class*=-default]):not([class*=-success]):not([class*=-info]):not([class*=-warning]):not([class*=-danger]):not([class*=-dark]):not([class*=-light]):not(.nav-item):focus {
    border-color: rgba(var(--bs-body-color-rgb), 0.1) !important;
}

.btn-icon.btn-xs {
    width: calc(1.15rem + 2px);
    height: calc(1.15rem + 2px);
    padding: 0;
}

.btn-icon.btn-sm {
    width: calc(1.5rem + 2px);
    height: calc(1.5rem + 2px);
}

.btn-icon.btn-lg {
    width: calc(3rem + 2px);
    height: calc(3rem + 2px);
}

.btn-group-xs > .btn,
.btn-xs {
    padding: 0.25rem 0.5rem;
    font-size: 0.7rem;
    line-height: 1.5;
    border-radius: 0.25rem;
}

.btn-pills {
    border-radius: 0.9375rem;
}

.btn-outline-default {
    background-color: transparent;
    color: var(--bs-body-color);
    border-color: var(--bs-border-color);
}

.btn-outline-default:hover, .btn-outline-default:not(:disabled):not(.disabled).active,
.btn-outline-default:not(:disabled):not(.disabled):active, .show > .btn-outline-default.dropdown-toggle {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    border-color: var(--bs-border-color);
}

.btn-group .btn:not([class*=btn-outline-]):not(.btn-icon):not(.btn-light) {
    border-right: 1px solid rgba(0, 0, 0, 0.1);
    border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.input-group-prepend .btn:not([class*=btn-outline-]):not(.btn-icon):not(:first-child) {
    border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.input-group-append .btn:not([class*=btn-outline-]):not(.btn-icon):not(:first-child) {
    border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.btn-group-vertical .btn-group, .btn-group-vertical .btn:not([class*=btn-outline-]):not(:first-child) {
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.input-group .btn:not(.btn-outline-default) + .btn:not(.btn-outline-default) {
    border-left-color: rgba(0, 0, 0, 0.1);
}

.btn-block {
    display: block;
    width: 100%;
}
.btn-block + .btn-block {
    margin-top: 0.5rem;
}

.tooltip {
    --bs-tooltip-padding-x: 0.6rem;
    --bs-tooltip-padding-y: 0.3rem;
    --bs-tooltip-font-size: 0.8125rem;
    --bs-tooltip-bg: rgba(14, 14, 14, 0.9);
    --bs-tooltip-border-radius: 5px;
    --bs-tooltip-opacity: 0.95;
    --bs-tooltip-arrow-width: 0.75rem;
    --bs-tooltip-arrow-height: 0.4rem;
}

.tooltip-inner {
    font-family: var(--font-family);
    font-weight: 300;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.tooltip-danger {
    --bs-tooltip-bg: var(--danger-500);
    --bs-tooltip-color: var(--bs-white);
}

.tooltip-warning {
    --bs-tooltip-bg: var(--warning-500);
    --bs-tooltip-color: var(--bs-dark);
}

.tooltip-success {
    --bs-tooltip-bg: var(--success-500);
    --bs-tooltip-color: var(--bs-white);
}

.tooltip-info {
    --bs-tooltip-bg: var(--info-500);
    --bs-tooltip-color: var(--bs-white);
}

.tooltip-primary {
    --bs-tooltip-bg: var(--primary-500);
    --bs-tooltip-color: var(--bs-white);
}

.tooltip-secondary {
    --bs-tooltip-bg: var(--secondary-500);
    --bs-tooltip-color: var(--bs-white);
}

.tooltip-dark {
    --bs-tooltip-bg: var(--dark-500);
    --bs-tooltip-color: var(--bs-white);
}

.tooltip-light {
    --bs-tooltip-bg: var(--light-500);
    --bs-tooltip-color: var(--bs-dark);
}

.tooltip-fusion {
    --bs-tooltip-bg: var(--fusion-500);
    --bs-tooltip-color: var(--bs-white);
}

.sa-icon {
    width: 1.25rem;
    height: 1.25rem;
    stroke: rgb(155, 155, 155);
    stroke-width: 1px;
    stroke-linecap: round;
    stroke-linejoin: round;
    fill: rgba(219, 219, 219, 0.3);
    display: block;
}
.sa-icon.sa-nofill {
    fill: none !important;
}
.sa-icon.sa-thin {
    stroke-width: 0.5px !important;
}
.sa-icon.sa-regular {
    stroke-width: 0.8px !important;
}
.sa-icon.sa-medium {
    stroke-width: 1.2px !important;
}
.sa-icon.sa-bold {
    stroke-width: 1.5px !important;
}
.sa-icon.sa-icon-1x {
    width: 1.125rem;
    height: 1.125rem;
}
.sa-icon.sa-icon-2x {
    width: 1.5rem;
    height: 1.5rem;
}
.sa-icon.sa-icon-3x {
    width: 2.1875rem;
    height: 2.1875rem;
}
.sa-icon.sa-icon-4x {
    width: 2.8125rem;
    height: 2.8125rem;
}
.sa-icon.sa-icon-5x {
    width: 3.4375rem;
    height: 3.4375rem;
    stroke-width: 0.5px;
}
.sa-icon.sa-icon-6x {
    width: 4.0625rem;
    height: 4.0625rem;
}
.sa-icon.sa-icon-7x {
    width: 4.6875rem;
    height: 4.6875rem;
}
.sa-icon.sa-icon-8x {
    width: 5.3125rem;
    height: 5.3125rem;
}
.sa-icon.sa-icon-9x {
    width: 5.9375rem;
    height: 5.9375rem;
}
.sa-icon.sa-icon-10x {
    width: 6.5625rem;
    height: 6.5625rem;
}
.sa-icon.sa-icon-primary {
    fill: rgba(var(--primary), 0.1);
    stroke: rgba(var(--primary), 0.8);
}
.sa-icon.sa-icon-success {
    fill: rgba(var(--success), 0.1);
    stroke: rgba(var(--success), 0.8);
}
.sa-icon.sa-icon-warning {
    fill: rgba(var(--warning), 0.1);
    stroke: rgba(var(--warning), 0.8);
}
.sa-icon.sa-icon-danger {
    fill: rgba(var(--danger), 0.1);
    stroke: rgba(var(--danger), 0.8);
}
.sa-icon.sa-icon-info {
    fill: rgba(var(--info), 0.1);
    stroke: rgba(var(--info), 0.8);
}
.sa-icon.sa-icon-light {
    fill: rgba(var(--bs-light-rgb), 0.1) !important;
    stroke: rgba(var(--bs-light-rgb), 1) !important;
}
.sa-icon.sa-icon-dark {
    fill: rgba(var(--bs-dark-rgb), 0.1) !important;
    stroke: rgba(var(--bs-dark-rgb), 1) !important;
}
.sa-icon.sa-icon-subtlelight {
    fill: rgba(var(--bs-body-color-rgb), 0.1) !important;
    stroke: rgba(var(--bs-body-color-rgb), 1) !important;
}

.collapse-icon {
    border-radius: var(--border-radius-uniform);
    border: 1px solid var(--collapse-icon-border);
    height: var(--collapse-icon-height);
    width: var(--collapse-icon-width);
    position: relative;
    overflow: hidden;
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    background: var(--app-header-background);
    cursor: pointer;
}
.collapse-icon > svg {
    height: 0.6875rem;
    margin-left: 0.5625rem;
    transition: all 100ms ease-in-out;
}
.collapse-icon > svg polygon {
    fill: var(--collapse-icon-border);
}
.collapse-icon::after {
    content: "";
    position: absolute;
    border-right: 1px solid var(--collapse-icon-border);
    width: 1.25rem;
    height: var(--collapse-icon-height);
    left: 0;
    top: 0;
    background: rgba(var(--bs-emphasis-color-rgb), 0.05);
    border-radius: 0;
    transition: all 200ms cubic-bezier(0.34, 1.25, 0.3, 1);
}
.collapse-icon:hover {
    border-color: var(--collapse-icon-border-hover);
    background: var(--bs-body-bg);
}
.collapse-icon:hover > svg {
    margin-left: 0.75rem;
}
.collapse-icon:hover > svg polygon {
    fill: var(--collapse-icon-border-hover);
}
.collapse-icon:hover::after {
    border-right-color: var(--collapse-icon-border-hover);
    background: rgba(var(--primary), 0.1);
    width: 0.5625rem;
}
.collapse-icon:active {
    scale: 0.95;
}

.ellipsis-icon {
    --ellipsis-icon-color: currentColor;
    --ellipsis-icon-width: 0.25rem;
    --ellipsis-icon-height: 0.25rem;
    --ellipsis-icon-spacing: 0.5rem;
    --ellipsis-icon-border-radius: 50%;
    width: var(--ellipsis-icon-width);
    height: var(--ellipsis-icon-height);
    background-color: var(--ellipsis-icon-color);
    border-radius: var(--ellipsis-icon-border-radius);
    overflow: visible;
    position: relative;
    display: inline-block;
    scale: 0.8;
    transition: all 200ms cubic-bezier(0.34, 1.25, 0.3, 1);
}
.ellipsis-icon::before, .ellipsis-icon::after {
    content: "";
    position: absolute;
    width: var(--ellipsis-icon-width);
    height: var(--ellipsis-icon-height);
    background-color: var(--ellipsis-icon-color);
    display: block;
    border-radius: var(--ellipsis-icon-border-radius);
}
.ellipsis-icon::before {
    top: calc(var(--ellipsis-icon-spacing) * -1);
    transition: all 100ms cubic-bezier(0.34, 1.25, 0.3, 1);
    transform: rotate(45deg);
}
.ellipsis-icon::after {
    bottom: calc(var(--ellipsis-icon-spacing) * -1);
    transition: all 300ms cubic-bezier(0.34, 1.25, 0.3, 1);
    transform: rotate(-45deg);
}

.btn-toolbar-master.show .ellipsis-icon {
    --ellipsis-icon-spacing: 0px;
    --ellipsis-icon-border-radius: 0px;
    --ellipsis-icon-width: 0.9375rem;
    --ellipsis-icon-height: 0.125rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: transparent;
}

.mobile-menu-icon {
    --mobile-menu-icon-width: 4rem;
    --mobile-menu-icon-height: 2.5rem;
    width: var(--mobile-menu-icon-width);
    height: var(--mobile-menu-icon-height);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--border-radius-uniform);
    background: rgba(var(--danger), 0.9);
    border: 1px solid var(--bs-body-bg);
}
.mobile-menu-icon .sa-icon {
    width: 1.8rem;
    height: 1.8rem;
    stroke-width: 1.5px;
    fill: rgba(var(--bs-light-rgb), 0.1);
    stroke: rgba(var(--bs-light-rgb), 1);
}
.mobile-menu-icon:active {
    background: rgba(var(--primary), 0.9);
    scale: 0.95;
}
.mobile-menu-icon::before {
    content: "";
    position: absolute;
    width: 100%;
}

.icon-stack {
    position: relative;
    display: inline-block;
    width: 1em;
    height: 1em;
    line-height: 1em;
    vertical-align: middle;
    text-align: center;
}

.icon-stack-1x, .icon-stack-2x, .icon-stack-3x {
    position: absolute !important;
    left: 0;
    bottom: 0;
    width: 100%;
    text-align: center;
    line-height: inherit !important;
}

.icon-stack-1x {
    font-size: 0.5em;
}

.icon-stack-2x {
    font-size: 0.7em;
    margin-left: 1px;
}

.icon-stack-3x {
    font-size: 1em;
}

.icon-stack-xl {
    font-size: 3.125rem;
}

.icon-stack-lg {
    font-size: 2.5rem;
}

.icon-stack-md {
    font-size: 2.125rem;
}

.icon-stack-sm {
    font-size: 1.875rem;
}

.stack-icon,
#my-icon {
    position: relative;
    display: inline-block;
    width: 1.1em;
    height: 1.1em;
    font-size: 1.25em;
    vertical-align: middle;
    text-align: center;
    overflow: hidden;
}
.stack-icon .icon-layers,
#my-icon .icon-layers {
    position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    right: 0;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.stack-icon .icon-layers .stack-3x,
#my-icon .icon-layers .stack-3x {
    font-size: 100%;
}
.stack-icon .icon-layers .stack-3x.sa-icon,
#my-icon .icon-layers .stack-3x.sa-icon {
    width: 100%;
    height: 100%;
}
.stack-icon .icon-layers .stack-2x,
#my-icon .icon-layers .stack-2x {
    font-size: 80%;
}
.stack-icon .icon-layers .stack-2x.sa-icon,
#my-icon .icon-layers .stack-2x.sa-icon {
    width: 75%;
    height: 75%;
}
.stack-icon .icon-layers .stack-1x,
#my-icon .icon-layers .stack-1x {
    font-size: 60%;
}
.stack-icon .icon-layers .stack-1x.sa-icon,
#my-icon .icon-layers .stack-1x.sa-icon {
    width: 57%;
    height: 57%;
}
.stack-icon .icon-layers .stack-0x,
#my-icon .icon-layers .stack-0x {
    font-size: 50%;
}
.stack-icon .icon-layers .stack-0x.sa-icon,
#my-icon .icon-layers .stack-0x.sa-icon {
    width: 45%;
    height: 45%;
}

/* width */
::-webkit-scrollbar {
    width: var(--scrollbar-width, 8px);
}

/* Track */
::-webkit-scrollbar-track {
    background: var(--scrollbar-color, var(--bs-body-bg));
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb, rgba(var(--bs-body-color-rgb), 0.8));
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: var(--scrollbar-thumb-hover, rgba(var(--bs-body-color-rgb), 1));
}

.slimScrollBar {
    --scrollbar-color: rgba(var(--bs-body-color-rgb), 0.8);
    --scrollbar-hover-color: rgba(var(--bs-body-color-rgb), 1);
    background: var(--scrollbar-color) !important;
    cursor: default !important;
    user-select: none;
    outline: 0.5px solid transparent;
    transition: opacity 0.2s linear;
}
.slimScrollBar:hover {
    outline-color: var(--scrollbar-color);
}
.slimScrollBar.dragging {
    background: var(--scrollbar-hover-color) !important;
    outline-color: var(--scrollbar-hover-color);
}
.slimScrollBar::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: calc(100% + 10px);
    height: calc(100% + 2px);
    left: -5px;
    opacity: 0;
}

.slimScrollRail {
    background: var(--bs-body-bg) !important;
    cursor: default !important;
    user-select: none;
    outline: 1px solid rgba(var(--bs-body-bg-rgb), 0.3);
}
.slimScrollRail:hover {
    opacity: 0.5 !important;
}
.slimScrollRail::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: calc(100% + 8px);
    height: calc(100% + 2px);
    left: -3px;
    opacity: 0;
}

.slimScrollDiv {
    user-select: none;
}

/* slimscroll bug */
.app-sidebar .slimScrollDiv {
    width: var(--menu-width) !important;
}

body:not(.no-slimscroll) .custom-scroll {
    overflow: hidden;
}

.custom-scroll,
.custom-scrollbar {
    overflow: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}
.custom-scroll::-webkit-scrollbar,
.custom-scrollbar::-webkit-scrollbar {
    height: 4px;
    width: 4px;
}
.custom-scroll::-webkit-scrollbar:hover,
.custom-scrollbar::-webkit-scrollbar:hover {
    background-color: rgba(var(--bs-body-color-rgb), 0.8);
}
.custom-scroll::-webkit-scrollbar-track-piece,
.custom-scrollbar::-webkit-scrollbar-track-piece {
    background-color: var(--bs-body-bg);
}
.custom-scroll::-webkit-scrollbar-track-piece:hover,
.custom-scrollbar::-webkit-scrollbar-track-piece:hover {
    background-color: var(--bs-body-bg);
}
.custom-scroll::-webkit-scrollbar-thumb:vertical,
.custom-scrollbar::-webkit-scrollbar-thumb:vertical {
    background-color: rgba(var(--bs-body-color-rgb), 0.5);
}
.custom-scroll::-webkit-scrollbar-thumb:vertical:hover,
.custom-scrollbar::-webkit-scrollbar-thumb:vertical:hover {
    background-color: rgba(var(--bs-body-color-rgb), 0.8);
}

/*
 * Left Panel custom scroll
 */
.primary-nav::-webkit-scrollbar-track-piece {
    background-color: var(--bs-body-bg);
}

.primary-nav::-webkit-scrollbar-thumb:vertical {
    background-color: rgba(var(--bs-body-color-rgb), 0.8);
}

.primary-nav::-webkit-scrollbar-thumb:vertical:hover {
    background-color: rgba(var(--bs-body-color-rgb), 0.5);
}

.primary-nav::-webkit-scrollbar {
    height: 4px;
    width: 4px;
}

.primary-nav:hover::-webkit-scrollbar-corner {
    width: 40px;
}

.accordion-button {
    --bs-accordion-active-color: var(--app-nav-link-active-color);
    --bs-accordion-active-bg: rgba(var(--fusion), 0.04);
    background-color: var(--bs-accordion-active-bg);
    font-size: var(--bs-body-font-size);
    font-weight: 500;
}

.accordion.accordion-clean .accordion-item {
    border-left: 0;
    border-right: 0;
    background: transparent;
}
.accordion.accordion-clean .accordion-item:first-child {
    border-top: 0;
}
.accordion.accordion-clean .accordion-item:last-child {
    border-bottom: 0;
}
.accordion.accordion-clean:not(.accordion-outline):not(.accordion-hover) .accordion-button,
.accordion.accordion-clean:not(.accordion-outline):not(.accordion-hover) .accordion-body {
    padding-left: 0;
    padding-right: 0;
}
.accordion.accordion-clean:not(.accordion-outline):not(.accordion-hover) .accordion-body {
    padding-top: 0;
}
.accordion.accordion-clean .accordion-button {
    background: transparent;
}
.accordion.accordion-clean .accordion-button:not(.collapsed) {
    color: rgba(var(--bs-body-color-rgb), 1);
}
.accordion.accordion-clean .accordion-button.collapsed {
    color: rgba(var(--bs-body-color-rgb), 0.75);
}
.accordion.accordion-outline .accordion-item {
    margin-bottom: 1rem;
    border: 2px solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius);
}
.accordion.accordion-outline .accordion-item .accordion-button {
    background: transparent;
}
.accordion.accordion-outline .accordion-item .accordion-button:focus {
    box-shadow: none;
}
.accordion.accordion-hover {
    --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
}
.accordion.accordion-hover .accordion-item {
    background: transparent;
}
.accordion.accordion-hover .accordion-button {
    transition: all 0.5s ease;
    background: transparent;
}
.accordion.accordion-hover .accordion-button:hover.collapsed {
    color: var(--bs-white);
    background-color: var(--primary-400);
}
.accordion.accordion-hover .accordion-button:hover.collapsed::after {
    background-image: var(--bs-accordion-btn-active-icon);
}
.accordion.accordion-hover .accordion-button:not(.collapsed) {
    color: var(--bs-white);
    background-color: var(--primary-700);
}
.accordion.accordion-hover .accordion-button:not(.collapsed)::after {
    background-image: var(--bs-accordion-btn-active-icon);
}

.accordion-button:not(.collapsed) {
    box-shadow: none;
}
.accordion-button:not(.collapsed)::after {
    background-image: var(--bs-accordion-btn-active-icon);
}

[aria-expanded=false] ~ .collapsed-reveal {
    display: none;
}

[aria-expanded=false] .collapsed-reveal {
    display: none;
}

[aria-expanded=false] ~ .collapsed-hidden {
    display: block;
}

[aria-expanded=false] .collapsed-hidden {
    display: block;
}

[aria-expanded=true] ~ .collapsed-reveal {
    display: block;
}

[aria-expanded=true] .collapsed-reveal {
    display: block;
}

[aria-expanded=true] ~ .collapsed-hidden {
    display: none;
}

[aria-expanded=true] .collapsed-hidden {
    display: none;
}

.accordion-button.custom-collapse::after {
    content: none;
}

.panel-fullscreen {
    overflow: hidden;
    max-width: 100%;
}

.sortable-active .panel:not(.panel-locked):not(.panel-fullscreen) .panel-hdr > h2 {
    cursor: move;
}

.panel {
    --border-radius: 0.375rem;
    display: flex;
    flex-direction: column;
    position: relative;
    background-color: var(--app-panel-bg, #fff);
    box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.05);
    margin-bottom: 2rem;
    border: 1px solid var(--app-panel-border-color, rgba(0, 0, 0, 0.09));
    border-bottom: 1px solid var(--app-panel-border-bottom, #e0e0e0);
    border-radius: var(--border-radius);
    transition: border 500ms ease-out;
}
.panel.panel-selected {
    position: relative;
}
.panel.panel-selected::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: inherit;
    z-index: 10;
    background: repeating-linear-gradient(-55deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 5px, rgba(0, 0, 0, 0) 5px, rgba(0, 0, 0, 0) 9px);
    background-color: var(--panel-drag-bg, rgb(249, 249, 249));
    opacity: 0.5;
    border: 2px solid rgba(var(--success), 0.9);
}
.panel.panel-icon .panel-toolbar .btn-panel {
    margin-left: 0;
    position: relative;
}
.panel.panel-icon .panel-toolbar .btn-panel[data-action=panel-collapse] .sa-icon {
    stroke: var(--bs-success);
}
.panel.panel-icon .panel-toolbar .btn-panel[data-action=panel-collapse]:hover .sa-icon {
    fill: rgba(var(--success), 0.2);
}
.panel.panel-icon .panel-toolbar .btn-panel[data-action=panel-fullscreen] .sa-icon {
    stroke: var(--bs-warning);
}
.panel.panel-icon .panel-toolbar .btn-panel[data-action=panel-fullscreen]:hover .sa-icon {
    fill: rgba(var(--warning), 0.1);
}
.panel.panel-icon .panel-toolbar .btn-panel[data-action=panel-close] .sa-icon {
    stroke: var(--bs-danger);
}
.panel.panel-icon .panel-toolbar .btn-panel[data-action=panel-close]:hover .sa-icon {
    fill: rgba(var(--danger), 0.2);
}
.panel.panel-icon .panel-toolbar .btn-panel::after {
    content: "";
    width: 1.875rem;
    height: 1.875rem;
    position: absolute;
    border-radius: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.panel.panel-icon .panel-toolbar [data-action*=panel-]:not(.dropdown-item) .sa-icon {
    width: 1.5rem;
    height: 1.5rem;
    stroke-width: 1px;
    fill: none;
}
.panel:not(.panel-icon) .btn-panel {
    width: 1rem;
    height: 1rem;
    opacity: 0.8;
}
.panel:not(.panel-icon) .btn-panel:hover {
    opacity: 1;
}
.panel:not(.panel-icon) .btn-panel .sa-icon {
    display: none;
}
.panel:not(.panel-icon) .btn-panel[data-action=panel-collapse], .panel:not(.panel-icon) .btn-panel.js-panel-collapse {
    background: var(--bs-success);
}
.panel:not(.panel-icon) .btn-panel[data-action=panel-fullscreen], .panel:not(.panel-icon) .btn-panel.js-panel-fullscreen {
    background: var(--bs-warning);
}
.panel:not(.panel-icon) .btn-panel[data-action=panel-close], .panel:not(.panel-icon) .btn-panel.js-panel-close {
    background: var(--bs-danger);
}
.panel .panel-container {
    position: relative;
    border-radius: 0 0 var(--border-radius) var(--border-radius);
}
.panel .panel-container .panel-content {
    padding: 1rem;
}
.panel .panel-container .panel-content:only-child, .panel .panel-container .panel-content:last-child {
    border-radius: 0 0 var(--border-radius) var(--border-radius);
}
.panel.panel-refreshing [data-action=panel-refresh] {
    color: var(--bs-gray-500);
    pointer-events: none;
    background-color: rgba(0, 0, 0, 0.07);
    box-shadow: none;
    border-color: rgba(0, 0, 0, 0.05);
    cursor: wait;
}
.panel.panel-refreshing [data-action=panel-refresh].dropdown-item {
    background: none;
}
.panel.panel-refreshing .panel-container .panel-content {
    opacity: 0.5;
    transition: all 470ms cubic-bezier(0.34, 1.25, 0.3, 1);
}
.panel.panel-refreshing .panel-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: inherit;
    z-index: 10;
}
.panel.panel-refreshing .panel-container::after {
    content: "\e098";
    position: absolute;
    font-family: "smartadmin-icons";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    z-index: 11;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
    color: var(--bs-gray-500);
    color: currentColor;
    animation: refresh 2s linear infinite;
}
.panel.panel-fullscreen {
    position: fixed !important;
    z-index: 2055;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh !important;
    max-height: 100vh !important;
    width: 100vw !important;
    max-width: 100vw !important;
    border-radius: 0;
    border: 0;
}
.panel.panel-fullscreen [data-action=panel-collapse] [data-action=panel-close] {
    display: none !important;
}
.panel.panel-fullscreen .panel-hdr {
    height: 4.125rem;
    border-radius: 0;
    box-shadow: 0 0.125rem 0.125rem -0.0625rem rgba(45, 71, 120, 0.1);
}
.panel.panel-fullscreen .panel-hdr h2 {
    font-size: 14px;
    font-weight: 400;
}
.panel.panel-fullscreen .panel-hdr .panel-toolbar .btn-panel[data-action=panel-fullscreen] .sa-icon {
    width: 2rem;
    height: 2rem;
}
.panel.panel-fullscreen .panel-hdr .panel-toolbar [data-action=panel-collapse],
.panel.panel-fullscreen .panel-hdr .panel-toolbar [data-action=panel-close] {
    display: none;
}
.panel.panel-fullscreen .panel-container {
    flex: 1;
    overflow-y: auto;
    border-radius: 0;
    display: block !important;
}
.panel.panel-locked [data-panel-toggle=panel-locked].dropdown-item {
    font-weight: 500;
    color: var(--primary-500);
}
.panel.panel-locked .panel-hdr h2::before {
    font-family: "smartadmin-icons";
    content: "\f2ae";
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    color: currentColor;
    height: 24px;
    width: 24px;
    right: 0;
    background: var(--bs-body-bg);
    border-radius: 24px;
    border: 1px solid #ededed;
    padding-bottom: 2px;
    padding-right: 1px;
    top: 50%;
    transform: translate(0, -50%);
}
.panel.panel-locked .panel-hdr h2:active::before {
    color: #fff;
    background: var(--danger-500);
    border-color: var(--danger-600);
}
.panel.panel-locked .panel-hdr h2:only-child::before {
    right: 1rem;
}
.panel.panel-locked .panel-locked-text {
    display: block;
}
.panel.panel-locked .panel-unlock-text {
    display: none;
}
.panel:not(.panel-locked) .panel-locked-text {
    display: none;
}
.panel:not(.panel-locked) .panel-unlock-text {
    display: block;
}
.panel.ui-sortable-helper {
    box-shadow: 0 5px 16px 0 rgba(0, 0, 0, 0.05), 0 5px 20px 0 rgba(0, 0, 0, 0.09);
}

.panel-tag {
    padding: 1rem 1rem;
    margin-bottom: 2rem;
    border-left: 0.1875rem solid var(--success-500);
    background: var(--panel-tag-background, #dbf5f2);
    font-weight: 400;
    font-size: 0.875rem;
    border-radius: 0px 0.25rem 0.25rem 0px;
}
.panel-tag > *:last-child,
.panel-tag > *:only-child {
    margin-bottom: 0;
}
.panel-tag:only-child {
    margin-bottom: 0;
}

.panel-container {
    transition: height 0.35s ease;
}

.panel-collapsed .panel-container {
    height: 0;
    overflow: hidden;
}

.panel-hdr {
    display: flex;
    align-items: center;
    min-height: 3rem;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.panel-collapsed .panel-hdr {
    border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.panel-hdr > :first-child {
    padding-left: 1rem;
}
.panel-hdr > :last-child {
    padding-right: 1rem;
}
.panel-hdr h2 {
    flex: 1;
    font-size: 0.875rem;
    margin: 0;
    display: flex;
    align-items: center;
    line-height: 3rem;
    color: inherit;
    color: var(--bs-body-color);
    position: relative;
    font-weight: 500;
}
.panel-hdr h2:not(:only-child) {
    margin-right: 0.667rem;
}
.panel-hdr h2 > [class*=fw-] {
    margin-left: 0.25rem;
}
.panel-hdr h2 small {
    display: inline-block;
    margin: 0;
    opacity: 0.8;
    font-weight: 400;
    font-size: 0.875rem;
    margin-left: 0.5rem;
}
.panel-hdr h2 .panel-icon {
    margin-right: 0.5rem;
}

.panel-hdr[class^=bg-] h2,
.panel-hdr[class*=" bg-"] h2 {
    color: inherit;
}

.panel:not(.panel-collapsed).panel-icon .panel-expand-icon {
    display: none;
}

.panel-toolbar {
    display: flex;
    align-items: center;
    position: relative;
}
.panel-toolbar .btn-panel {
    margin-left: 0.3rem;
    padding: 0;
    box-sizing: border-box;
    border-radius: 50%;
}
.panel-toolbar .btn-toolbar-master {
    height: 3rem;
    width: 1.826875rem;
    border-radius: 0;
    margin-right: -1rem;
    border-top-right-radius: 0.25rem;
    margin-left: 0.5rem;
    padding: 0 0.8125rem;
    background: transparent;
    border: 0;
    font-size: 1.5625rem;
    color: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
}
.panel-toolbar .btn-toolbar-master.show {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset !important;
}
.panel-toolbar .btn-toolbar-master + .dropdown-menu {
    right: 0 !important;
    top: 3rem;
    left: auto !important;
    margin: 0;
    border-radius: 0;
    top: 100% !important;
}
.panel-toolbar .btn-panel-flat:last-child {
    border-top-right-radius: 0.1875rem;
}

/*
.panel-placeholder {
	background-color: #c3b5d9;
	box-sizing: border-box;
	margin-bottom: 1.5rem;
	border-radius: 0.3125rem;
	position: relative;
	overflow: hidden;
	border: 1px solid transparent;

	&:before,
	&:after {
		content: " ";
		background-image: url(data:image/gif;base64,R0lGODlhCAAIAJAAAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQECgD/ACwAAAAACAAIAAACD4SDYZB6udpiaMJYsXuoAAAh+QQECgD/ACwAAAAACAAIAAACDYQRGadrzVRMB9FZ5SwAIfkEBAoA/wAsAAAAAAgACAAAAg8MDqGYaudeW9ChyOyltQAAIfkEBAoA/wAsAAAAAAgACAAAAg9MgGCXm+rQYtC0WGl9oQAAIfkEBAoA/wAsAAAAAAgACAAAAg+MgWCRernaYmjCWLF7qAAAIfkEBAoA/wAsAAAAAAgACAAAAg2MAwmna81UTAfRWeUsACH5BAQKAP8ALAAAAAAIAAgAAAIPRB6gmGrnXlvQocjspbUAACH5BAQKAP8ALAAAAAAIAAgAAAIPBIJhl5vq0GLQtFhpfaAAADs=);
		border-radius: 0.3125rem;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		opacity: 0.3;
	}

	&:before {
		background: #c3b5d9;
		margin: 1px;
		box-sizing: border-box;
		opacity: 1;
		z-index: 1;
	}
}
*/
.mod-panel-clean .panel-hdr {
    background: var(--bs-body-bg);
    background-image: linear-gradient(to bottom, #f7f7f7, var(--bs-body-bg));
    box-shadow: none;
}
.mod-panel-clean .panel-hdr h2 {
    color: var(--bs-body-color);
    font-weight: 500;
}

/* nav tabs panel */
.nav-tabs-clean .nav-item .nav-link {
    border: 0;
}
.nav-tabs-clean .nav-item .nav-link.active {
    border-bottom: 1px solid var(--primary-500) !important;
    color: var(--primary-500);
    font-weight: 500;
    border-width: 2px !important;
}
.nav-tabs-clean .nav-item .nav-link:hover {
    color: var(--primary-500);
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    color: var(--primary-500);
}

@media only screen and (max-width: 420px) {
    .panel .panel-hdr {
        font-size: 0.875rem;
        min-height: 2.75rem;
    }

    .panel .panel-hdr > :first-child {
        padding-left: 0.625rem;
    }

    .panel .panel-hdr > :last-child {
        padding-right: 0.625rem;
    }

    .panel .panel-hdr .panel-toolbar .btn-toolbar-master {
        margin-right: -0.625rem;
    }

    .panel .panel-container .panel-content:first-child {
        padding: 0.625rem;
    }
}
@media print {
    .panel-fullscreen .subheader,
    .panel-fullscreen .page-breadcrumb,
    .panel-fullscreen .page-content .panel:not(.panel-fullscreen) {
        display: none;
    }

    .panel-fullscreen .panel-hdr,
    .panel-fullscreen .panel-container,
    .panel-fullscreen .panel-content,
    .panel-fullscreen h2 {
        border: none;
        padding: 0 !important;
    }

    .panel-fullscreen .panel {
        margin: 0;
    }
}
.sortable-ghost {
    opacity: 0.4;
}

.sortable-drag {
    cursor: move;
}

[data-toggle=dropdown] .profile-image {
    width: 2rem;
    height: auto;
}

.notification-header {
    padding: 1.5rem 1.5rem 0.5rem;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    background: var(--bs-body-bg);
    font-size: 0.75rem;
    white-space: nowrap;
    margin-bottom: 0;
}
.notification-header h4 {
    display: flex;
    flex-direction: column;
    font-size: 1.25rem;
}
.notification-header h4 small {
    font-size: 0.825rem;
    font-weight: 300;
    margin-top: 0.25rem;
}

.tab-notification {
    height: 22.6875rem;
}

.tab-notification .tab-pane {
    height: 100%;
}

.notification {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
}

.notification li {
    position: relative;
    background: var(--bs-body-bg);
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
}
.notification li [data-bs-dismiss=alert] {
    position: absolute;
    right: 0;
    top: 0;
    padding: 15px;
    background: transparent var(--bs-btn-close-bg) center/0.7em auto no-repeat;
    visibility: hidden;
}
.notification li:hover [data-bs-dismiss=alert] {
    visibility: visible;
}

.notification li.unread {
    background: rgba(var(--bs-primary-rgb), 0.05);
}

.notification li.unread .name {
    font-weight: 600;
}

.notification li > :first-child {
    padding: 0.75rem 1.5rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.notification li:hover > :first-child {
    text-decoration: none;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(29, 33, 41, 0.03)), to(rgba(29, 33, 41, 0.04)));
    background-image: linear-gradient(rgba(29, 33, 41, 0.03), rgba(29, 33, 41, 0.04));
}

.notification li > :first-child:focus {
    text-decoration: none;
}

.notification li > :first-child > span {
    position: relative;
}

.notification li > :first-child > span > span {
    display: block;
}

.notification li:last-child > a {
    border: 0;
}

.notification .name {
    color: var(--bs-body-color);
    font-weight: 400;
    font-size: 0.825rem;
}

.notification .msg-a,
.notification .msg-b {
    color: var(--bs-body-color);
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    max-width: 300px;
}

.notification:has(*) + .notification-empty-msg {
    display: none;
}

.notification:not(:has(*)) + .notification-empty-msg {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    font-size: 1.25rem;
    font-weight: 300;
}

.mod-color-blind .alert-danger,
.mod-color-blind .btn-danger,
.mod-color-blind .btn-outline-danger,
.mod-color-blind .page-sidebar .primary-nav .nav-menu > li.active > a,
.mod-color-blind [class*=bg-danger-],
.pattern-0 {
    background-size: 10px 10px;
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.07) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.07) 50%, rgba(255, 255, 255, 0.05) 75%, transparent 75%, transparent);
}

.mod-color-blind .page-sidebar .primary-nav .nav-menu > li.active > a + ul > li.active > a,
.pattern-1 {
    background-size: 5px 5px;
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.04) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.04) 50%, rgba(255, 255, 255, 0.04) 75%, transparent 75%, transparent);
}

.mod-color-blind .alert-primary,
.mod-color-blind .btn-outline-primary,
.mod-color-blind .btn-primary,
.mod-color-blind [class*=bg-primary-],
.pattern-2 {
    background-size: 15px 15px;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, rgba(255, 255, 255, 0.2)), color-stop(50%, transparent), to(transparent));
    background-image: linear-gradient(rgba(255, 255, 255, 0.2) 50%, transparent 50%, transparent);
}

.mod-color-blind .alert-success,
.mod-color-blind .btn-outline-success,
.mod-color-blind .btn-success,
.mod-color-blind [class*=bg-success-],
.pattern-3 {
    background-size: 15px 15px;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, rgba(255, 255, 255, 0.2)), color-stop(50%, transparent), to(transparent));
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0.2) 50%, transparent 50%, transparent);
}

.mod-color-blind .alert-info,
.mod-color-blind .btn-info,
.mod-color-blind .btn-outline-info,
.mod-color-blind [class*=bg-info-],
.pattern-4 {
    background-size: 37px 37px;
    background-position: 0 0, 18.5px 18.5px;
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.2) 75%, rgba(255, 255, 255, 0.2)), linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.2) 75%, rgba(255, 255, 255, 0.2));
}

.mod-color-blind .alert-warning,
.mod-color-blind .btn-outline-warning,
.mod-color-blind .btn-warning,
.mod-color-blind [class*=bg-warning-],
.pattern-5 {
    background-size: 37px 37px;
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.2) 75%, rgba(255, 255, 255, 0.2)), linear-gradient(135deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.2) 75%, rgba(255, 255, 255, 0.2));
}

.app-fob-lg {
    height: 16.25rem;
    width: 100%;
    border-radius: 0.625rem;
    border: 1px dashed rgba(var(--info), 1);
    background: rgba(var(--info), 0.1);
    position: relative;
}
.app-fob-lg:not(.active) {
    border-color: var(--bs-body-color);
    background: var(--bs-body-bg);
}
.app-fob-lg > div {
    transition: all 0.5s ease-in-out;
}
.app-fob-lg > :nth-child(1) {
    position: absolute;
    height: 20%;
    top: 0;
    right: 0;
    left: 0;
    border-radius: 0.625rem 0.625rem 0 0;
    background: rgba(var(--bs-body-color-rgb), 0.15);
    display: block;
}
.app-fob-lg > :nth-child(2) {
    width: 25%;
    background: rgba(var(--bs-body-color-rgb), 0.15);
    left: 0;
    bottom: 0;
    top: 25%;
    position: absolute;
    border-radius: 0 0 0 0.625rem;
}
.app-fob-lg > :nth-child(3) {
    background: repeating-linear-gradient(-55deg, rgba(var(--bs-body-color-rgb), 0.05), rgba(var(--bs-body-color-rgb), 0.05) 2px, rgba(var(--bs-body-color-rgb), 0) 2px, rgba(var(--bs-body-color-rgb), 0) 6px);
    background-color: rgba(var(--bs-body-color-rgb), 0.15);
    width: 70%;
    top: 25%;
    right: 0;
    bottom: 0;
    position: absolute;
}
.app-fob-lg[data-class^=set-header-fixed] > :nth-child(1) {
    background: #F68BEC;
}
.app-fob-lg[data-class^=set-nav-full] > :nth-child(1) {
    left: 35%;
    border-radius: 0 0.625rem 0 0;
}
.app-fob-lg[data-class^=set-nav-full] > :nth-child(2) {
    border-radius: 0.625rem 0 0 0.625rem;
    top: 5%;
}
.app-fob-lg[data-class^=set-nav-fixed] > :nth-child(2) {
    background: #F68BEC;
}
.app-fob-lg[data-class^=set-nav-collapse] > :nth-child(1) {
    background: rgba(0, 0, 0, 0.1);
}
.app-fob-lg[data-class^=set-nav-collapse] > :nth-child(2) {
    top: 14%;
    height: auto;
    bottom: 14%;
    z-index: 1;
    border-radius: 0 0.625rem 0.625rem 0;
    width: 7%;
    background: rgba(var(--warning), 0.6);
}
.app-fob-lg[data-class^=set-nav-collapse] > :nth-child(3) {
    width: auto;
    left: 5%;
    border-radius: 0 0 0.625rem 0.625rem;
}
.app-fob-lg[data-class^=set-nav-minified] > :nth-child(2) {
    width: 13%;
}
.app-fob-lg[data-class^=set-nav-minified] > :nth-child(3) {
    width: 73%;
}

.app-fob-showcase {
    overflow: hidden;
    border: none;
}

.app-fob-showcase-text {
    margin-bottom: 2rem;
    position: relative;
    padding: 1.1rem 1rem 1rem;
    border: 1px dashed var(--bs-emphasis-color);
    border-radius: 0.625rem;
}
.app-fob-showcase-text:after {
    content: attr(data-prefix);
    position: absolute;
    padding: 0.3125rem;
    border-radius: 0.3125rem;
    background: var(--bs-body-color);
    top: -0.875rem;
    right: 0.625rem;
    color: var(--bs-body-bg);
    font-size: 0.8125rem;
    line-height: 0.8125rem;
}

.app-themes {
    /* Hide the actual checkbox */
    /* Ensure items stretch and look selected when checked */
}
.app-themes .clickable-boxes input[type=radio] {
    display: none;
}
.app-themes .clickable-boxes {
    display: flex;
    flex-wrap: wrap;
    /* Allows items to wrap to the next line */
    justify-content: start;
    /* Aligns items at the start of each row */
    align-items: stretch;
    /* Stretch items vertically */
    align-content: flex-start;
    /* Align rows at the start */
    gap: 0.8125rem;
    /* Adds consistent spacing between items */
    padding: 0.5rem 0;
}
.app-themes .clickable-boxes label {
    flex: 1 1 calc(25% - 0.625rem);
    /* Adjust flex to define 4 items per row */
    max-width: calc(25% - 0.625rem);
    /* Set maximum width based on row layout */
    text-align: center;
    background-color: #ddd;
    color: #333;
    line-height: 4.04375rem;
    height: 4.04375rem;
    border-radius: 0.25rem;
    cursor: pointer;
    transition: background-color 0.3s, transform 0.2s;
    font-size: 0.825rem;
    position: relative;
}
.app-themes .clickable-boxes label::after {
    content: attr(data-prefix);
    position: absolute;
    padding: 0.25rem;
    border-radius: 0.25rem;
    background: #e9e9e9;
    bottom: 0.25rem;
    left: 0.25rem;
    color: #333;
    font-size: 0.66rem;
    line-height: 0.66rem;
}
.app-themes .clickable-boxes input[type=radio]:checked + label {
    background-color: #4CAF50;
    color: white;
    transform: scale(1.05);
}
.app-themes .clickable-boxes input[type=radio]:checked + label::after {
    background: #333;
    color: #e9e9e9;
}
.set-header-fixed .app-fob-showcase :nth-child(1) {
    background-color: rgba(var(--danger), 0.9);
}

.set-nav-full:not(.set-header-fixed) .app-fob-showcase :nth-child(1) {
    left: 30%;
    border-radius: 0 0.625rem 0 0;
}
.set-nav-full:not(.set-header-fixed) .app-fob-showcase :nth-child(2) {
    top: 0;
    border-radius: 0.625rem 0 0 0.625rem;
}

.set-nav-full.set-nav-collapsed:not(.set-header-fixed) .app-fob-showcase :nth-child(1) {
    left: 0;
    border-radius: 0.625rem 0.625rem 0 0;
}
.set-nav-full.set-nav-collapsed:not(.set-header-fixed) .app-fob-showcase :nth-child(2) {
    top: 0;
    background-color: rgba(var(--warning), 0.9);
    border-radius: 0;
}
.set-nav-full.set-nav-collapsed:not(.set-header-fixed) .app-fob-showcase :nth-child(3) {
    left: 0;
    right: 0;
    width: auto;
}

.set-nav-full.set-nav-fixed:not(.set-header-fixed) .app-fob-showcase :nth-child(2) {
    background-color: rgba(var(--danger), 0.9);
}

.set-nav-fixed.set-header-fixed .app-fob-showcase :nth-child(2) {
    background-color: rgba(var(--danger), 0.9);
}

.set-nav-full.set-nav-fixed.set-header-fixed .app-fob-showcase :nth-child(1) {
    left: 30%;
    border-radius: 0 0.625rem 0 0;
    background-color: rgba(var(--danger), 0.9);
}
.set-nav-full.set-nav-fixed.set-header-fixed .app-fob-showcase :nth-child(2) {
    top: 0;
    background-color: rgba(var(--danger), 0.9);
    border-radius: 0.625rem 0 0 0.625rem;
}

.set-header-fixed.set-nav-full.set-nav-fixed.set-nav-collapsed .app-fob-showcase :nth-child(1),
.set-header-fixed.set-nav-collapsed .app-fob-showcase :nth-child(1),
.set-nav-full.set-nav-collapsed .app-fob-showcase :nth-child(1) {
    left: 0;
}
.set-header-fixed.set-nav-full.set-nav-fixed.set-nav-collapsed .app-fob-showcase :nth-child(2),
.set-header-fixed.set-nav-collapsed .app-fob-showcase :nth-child(2),
.set-nav-full.set-nav-collapsed .app-fob-showcase :nth-child(2) {
    transform: translate3d(-90%, 0, 0);
    box-shadow: rgba(0, 0, 0, 0.1) 7px 0px 6px 2px;
    animation: widthAnimation 4s ease-in-out 2 alternate;
    z-index: 1;
}
.set-header-fixed.set-nav-full.set-nav-fixed.set-nav-collapsed .app-fob-showcase :nth-child(3),
.set-header-fixed.set-nav-collapsed .app-fob-showcase :nth-child(3),
.set-nav-full.set-nav-collapsed .app-fob-showcase :nth-child(3) {
    left: 0;
    right: 0;
    width: auto;
    border-radius: 0 0 0.625rem 0.625rem;
}

.set-header-fixed.set-nav-collapsed .app-fob-showcase :nth-child(2) {
    background-color: rgba(var(--warning), 0.9);
}

.set-nav-fixed:not(.set-nav-full):not(.set-header-fixed) .primary-mod {
    border-color: rgba(var(--danger), 0.9);
    color: rgba(var(--danger), 0.9);
}
.set-nav-fixed:not(.set-nav-full):not(.set-header-fixed) .primary-mod:after {
    content: "Select an option";
    color: var(--bs-white);
    background: rgba(var(--danger), 0.9);
}

.mod-status {
    padding: 0.8rem 1rem 0.5rem;
    border: 1px dashed var(--bs-border-color);
    position: relative;
    border-radius: 0.5rem;
    margin-bottom: 2.5rem;
}
.mod-status:first-of-type {
    margin-top: 2rem;
}
.mod-status:after {
    content: attr(data-prefix);
    position: absolute;
    padding: 0.3125rem;
    border-radius: 0.3125rem;
    background: var(--bs-border-color);
    top: -0.875rem;
    right: 0.625rem;
    color: var(--bs-body-color);
    font-size: 0.8125rem;
    line-height: 0.8125rem;
}

.reset-button {
    opacity: 0.75;
    filter: grayscale(50%);
}

[class*=set-],
[data-bs-theme=dark] {
    /* style rules go here */
}
[class*=set-] .reset-button,
[data-bs-theme=dark] .reset-button {
    opacity: 1;
    filter: grayscale(0%);
}

.color-disp-demo tr:first-child td {
    height: 100px;
    -webkit-box-shadow: inset 0 -5px 0 rgba(255, 255, 255, 0.8);
    box-shadow: inset 0 -5px 0 rgba(255, 255, 255, 0.8);
}

.color-disp-demo tr td {
    border: none;
    padding-top: 0.4375rem;
    padding-bottom: 0.4375rem;
}

.color-disp-demo tr td:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    font-weight: 500;
}

.cr-c {
    width: 1.3125rem;
    height: 1.3125rem;
    display: block;
    border-radius: 50%;
}

.icon-demo {
    list-style: none;
    padding: 0;
}

.icon-demo li {
    border: 1px solid #7f8995;
    padding: 0.625rem;
    display: inline-block;
    font-size: 1.25rem;
    width: 3.75rem;
    height: 3.75rem;
    overflow: hidden;
    margin: 0 0.375rem 0 0;
    text-align: center;
    background: var(--bs-body-bg);
}

.icon-demo li:hover {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
}

pre code.hljs {
    border-radius: 1rem;
}

.show-codes code[class*=language-], .show-codes pre[class*=language-] {
    display: block !important;
}

.container-demo {
    max-width: 100%;
    width: 100%;
}

.bd-example {
    position: relative;
    padding: 1rem 0;
}

.bd-example-row-flex-cols .row {
    min-height: 10rem;
    background-color: rgba(255, 0, 0, 0.1);
}

.bd-example-row .row > .col, .bd-example-row .row > [class^=col-] {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    background-color: rgba(86, 61, 124, 0.15);
    border: 1px solid rgba(86, 61, 124, 0.2);
}

.bd-example-row .row + .row {
    margin-top: 1rem;
}

.bd-highlight {
    background-color: rgba(86, 61, 124, 0.2);
    border: 1px solid rgba(86, 61, 124, 0.2);
}

.demo {
    margin: 0;
}

.demo > * {
    margin: 0 0.375rem 1rem 0 !important;
}

.demo.demo-no-mb > * {
    margin-bottom: 0 !important;
}

.demo-v-spacing-lg > * + *,
.demo-v-spacing-sm > * + *,
.demo-v-spacing > * + * {
    margin-top: 0.875rem !important;
    margin-bottom: 0 !important;
}

.demo-v-spacing-lg > *, .demo-v-spacing-sm > *, .demo-v-spacing > * {
    margin-bottom: 0 !important;
}

.demo-v-spacing > * + * {
    margin-top: 1rem !important;
}

.demo-v-spacing-lg > * + * {
    margin-top: 1.5rem !important;
}

.demo-h-spacing > :not(last-child):not(only-child) {
    margin-right: 1rem !important;
}

.frame-heading {
    font-size: 0.8125rem;
    margin-bottom: 1rem;
    color: #a1a1a1;
    font-weight: 500;
}

.frame-heading small {
    font-size: 0.8125rem;
    margin-bottom: 0.5rem;
}

.frame-wrap {
    background: inherit;
    padding: 0;
    margin-bottom: 1.5rem;
}

* > .frame-wrap:last-child {
    margin-bottom: 0 !important;
}

.time-stamp {
    font-size: 0.78125rem;
    margin: 0.25rem 0 0 0;
    color: #767676;
    font-weight: 300;
}

[data-hasmore] {
    position: relative;
    color: var(--bs-body-color);
}

[data-hasmore]:before {
    content: attr(data-hasmore);
    border-radius: inherit;
    background: rgba(0, 0, 0, 0.4);
    height: inherit;
    width: 100%;
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: 500;
    font-size: inherit;
}

.demo-window {
    position: relative;
    z-index: 1;
    overflow: hidden;
    padding-top: 1.4375rem;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
    user-select: none;
}
.demo-window:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 3;
    height: 1.4375rem;
    background: #e5e5e5;
}
.demo-window:after {
    content: "";
    position: absolute;
    left: 0.625rem;
    background: #ccc;
    top: 0.375rem;
    z-index: 4;
    width: 0.6875rem;
    height: 0.6875rem;
    border-radius: 50%;
}
.demo-window .demo-window-content {
    width: 100%;
    background: rgba(255, 255, 255, 0.15);
}
.demo-window .demo-window-content img {
    display: block;
    width: 100%;
}
.demo-window .demo-window-content:before {
    content: "";
    position: absolute;
    left: 1.625rem;
    background: #ccc;
    top: 0.375rem;
    z-index: 4;
    width: 0.6875rem;
    height: 0.6875rem;
    border-radius: 50%;
}
.demo-window .demo-window-content:after {
    content: "";
    position: absolute;
    left: 2.6875rem;
    background: #ccc;
    top: 0.375rem;
    z-index: 4;
    width: 0.6875rem;
    height: 0.6875rem;
    border-radius: 50%;
}

.button {
    background-color: rgba(var(--primary), 1);
    border: none;
    color: white;
    padding: 0.9375rem 1.25rem;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 1rem;
    cursor: pointer;
    width: 100%;
    font-weight: 500;
    border-radius: 0.625rem;
}
.button:hover {
    background-color: rgba(var(--primary), 0.9);
}
.button:active {
    scale: 0.98;
}

.info-container {
    padding: 1rem;
    border: 1px dashed var(--bs-info-border-color, rgba(0, 0, 0, 0.1));
    border-radius: 0.625rem;
    margin-bottom: 2rem;
    font-size: 0.875rem;
    background: var(--bs-info-bg, rgba(var(--warning), 0.1));
    color: var(--bs-info-color, var(--bs-body-color));
}

ol {
    margin: 0; /* removes the default margin */
    padding: 0; /* removes the default padding */
    margin-left: 2.5rem; /* adds a left margin of 40px */
}

[data-bs-theme=dark] {
    color-scheme: dark;
    --bs-body-color: #dee2e6;
    --bs-body-color-rgb: 222, 226, 230;
    --bs-body-bg: #212529;
    --bs-body-bg-rgb: 33, 37, 41;
    --bs-emphasis-color: #fff;
    --bs-emphasis-color-rgb: 255, 255, 255;
    --bs-secondary-color: rgba(222, 226, 230, 0.75);
    --bs-secondary-color-rgb: 222, 226, 230;
    --bs-secondary-bg: #343a40;
    --bs-secondary-bg-rgb: 52, 58, 64;
    --bs-tertiary-color: rgba(222, 226, 230, 0.5);
    --bs-tertiary-color-rgb: 222, 226, 230;
    --bs-tertiary-bg: #2b3035;
    --bs-tertiary-bg-rgb: 43, 48, 53;
    --bs-primary-text-emphasis: #7fb1d9;
    --bs-secondary-text-emphasis: #a7acb1;
    --bs-success-text-emphasis: #7fc4bc;
    --bs-info-text-emphasis: #ada7d7;
    --bs-warning-text-emphasis: #f8c7a0;
    --bs-danger-text-emphasis: #f1a997;
    --bs-light-text-emphasis: #f8f9fa;
    --bs-dark-text-emphasis: #dee2e6;
    --bs-primary-bg-subtle: #081926;
    --bs-secondary-bg-subtle: #161719;
    --bs-success-bg-subtle: #081f1d;
    --bs-info-bg-subtle: #181626;
    --bs-warning-bg-subtle: #312013;
    --bs-danger-bg-subtle: #2e1610;
    --bs-light-bg-subtle: #343a40;
    --bs-dark-bg-subtle: #1a1d20;
    --bs-primary-border-subtle: #194b73;
    --bs-secondary-border-subtle: #41464b;
    --bs-success-border-subtle: #195e56;
    --bs-info-border-subtle: #474171;
    --bs-warning-border-subtle: #92613a;
    --bs-danger-border-subtle: #8b4331;
    --bs-light-border-subtle: #495057;
    --bs-dark-border-subtle: #343a40;
    --bs-border-color: #495057;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
    --bs-headings-color: inherit;
    --bs-link-color: #7fb1d9;
    --bs-link-hover-color: #99c1e1;
    --bs-code-color: #a7acb1;
    --bs-mark-color: #dee2e6;
    --bs-mark-bg: #ffda6a;
    --bs-form-select-indicator-color: #dee2e6;
    --bs-form-select-indicator: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/></svg>");
    --bs-form-switch-color: rgba(255, 255, 255, 0.25);
    --bs-form-switch-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='rgba(255, 255, 255, 0.25)'/></svg>");
    --bs-form-valid-color: #75b798;
    --bs-form-valid-border-color: #75b798;
    --bs-form-invalid-color: #ea868f;
    --bs-form-invalid-border-color: #ea868f;
    --bs-accordion-icon-color: #7fb1d9;
    --bs-accordion-icon-active-color: #7fb1d9;
    --bs-accordion-button-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#7fb1d9'><path 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'/></svg>");
    --bs-accordion-button-active-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#7fb1d9'><path 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'/></svg>");
    --bs-border-color: #495057;
    --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
    --app-nav-link-color: #adb5bd;
    --app-nav-link-hover-color: #59adff;
    --app-nav-link-active-color: #fff;
    --app-nav-title-color: #6c757d;
    --app-nav-border-color: #495057;
    --app-nav-item-hover-bg: rgba(255, 255, 255, 0.05);
    --app-nav-item-active-bg: rgba(255, 255, 255, 0.05);
    --app-nav-item-active-indicator: rgba(255, 255, 255, 0.9);
    --app-nav-collapse-sign-color: var(--app-nav-link-color);
    --app-header-background: #272b30;
    --app-nav-background: var(--app-header-background);
    --app-drawer-background: var(--app-header-background);
    --app-layout-border-color: var(--bs-border-color);
    --app-content-background: #363c41;
    --app-panel-bg: var(--app-header-background);
    --app-panel-border-color: var(--bs-border-color);
    --app-panel-border-bottom: var(--bs-border-color);
    --panel-tag-background: rgb(43 68 62);
    --panel-drag-bg: var(--app-content-background);
    --bs-input-bg: #2b3035;
    --bs-input-border-color: #495057;
    --bs-input-color: var(--bs-body-color);
    --bs-input-focus-bg: #2b3035;
    --bs-input-focus-border-color: #86b7fe;
    --bs-input-focus-color: var(--bs-emphasis-color);
    --app-scrollbar-bg: var(--bs-tertiary-bg);
    --app-scrollbar-thumb: var(--bs-secondary-bg);
    --app-scrollbar-thumb-hover: var(--bs-border-color);
    --app-card-bg: var(--bs-tertiary-bg);
    --app-dropdown-bg: var(--bs-tertiary-bg);
    --app-dropdown-border-color: var(--bs-border-color);
    --app-dropdown-link-color: var(--bs-body-color);
    --app-dropdown-link-hover-bg: var(--bs-secondary-bg);
    --app-dropdown-link-hover-color: var(--bs-emphasis-color);
    --app-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.25);
    --app-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.3);
    --app-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.35);
    --page-breadcrumbs-text-shadow: #000;
    --page-subheader-text-shadow: #000;
    --page-subheader-color: var(--bs-emphasis-color);
    --bs-info-bg: rgb(69 59 31);
    --bs-info-border-color: rgb(147 126 70);
    --btn-system-bg-opacity: 0.07;
    --collapse-icon-border: rgba(255, 255, 255, 0.3);
    --collapse-icon-border-hover: rgba(var(--primary), 0.8);
    --collapse-icon-width: 2.5rem;
    --collapse-icon-height: 1.8rem;
    --bs-link-color-rgb: 110, 168, 254;
    --bs-link-hover-color-rgb: 139, 185, 254;
}
[data-bs-theme=dark] .dropdown-menu {
    --bs-dropdown-link-hover-color: var(--app-nav-link-hover-color);
}
[data-bs-theme=dark] #panelDeleteModal .modal-content {
    border-color: var(--bs-border-color);
}
[data-bs-theme=dark] .grid-background {
    --background-color: #333333;
    --background-image-color: 255, 255, 255;
}
[data-bs-theme=dark] .grid-background-dark {
    --background-color: #ffffff;
    --background-image-color: 0, 0, 0;
}
[data-bs-theme=dark] .form-check-input {
    --bs-form-check-bg: #727374;
}
[data-bs-theme=dark] .pagination {
    --bs-pagination-focus-color: var(--bs-emphasis-color);
    --bs-pagination-color: var(--bs-emphasis-color);
}
[data-bs-theme=dark] .app-logo::before {
    background-color: var(--bs-body-bg);
}
[data-bs-theme=dark] .app-logo > svg {
    --logo-color: var(--primary-500);
    color: rgb(225, 227, 229);
}
[data-bs-theme=dark] .card {
    --bs-card-bg: var(--app-panel-bg);
}
[data-bs-theme=dark] .dropdown-menu {
    --bs-dropdown-bg: #373b3f;
    border: 1px solid var(--bs-border-color);
}
[data-bs-theme=dark] .accordion-button {
    --bs-accordion-active-bg: rgba(var(--white), 0.04);
}
[data-bs-theme=dark] .accordion-button::after {
    filter: invert(90%) hue-rotate(180deg) brightness(1.2);
}
[data-bs-theme=dark] .nav-tabs {
    --bs-nav-tabs-link-active-bg: var(--app-panel-bg);
    --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) transparent;
}
[data-bs-theme=dark] .tooltip {
    --bs-tooltip-color: #fff;
}
[data-bs-theme=dark] .modal-content {
    --bs-modal-bg: #373b3f;
    --bs-modal-border-color: var(--bs-border-color);
    --bs-modal-header-color: #fff;
}
[data-bs-theme=dark] .inverse-color {
    filter: invert(90%) hue-rotate(180deg) brightness(1.2);
}
[data-bs-theme=dark] .popover:not([class*=primary-], [class*=secondary-], [class*=success-], [class*=danger-], [class*=warning-], [class*=info-], [class*=dark-], [class*=light-]) {
    --bs-popover-border-color: rgba(0, 0, 0, 0.5);
    --bs-popover-header-color: var(--bs-light);
    --bs-popover-bg: rgba(0, 0, 0, 0.5);
    --bs-popover-arrow-border: rgba(0, 0, 0, 0.5);
}
[data-bs-theme=dark] .btn-outline-secondary {
    --bs-btn-color: var(--bs-body-color);
}

.set-rtl {
    --direction: rtl;
    direction: var(--direction);
}
/*# sourceMappingURL=smartapp.css-_I0eOSi.map */
