@charset "UTF-8";
@import "bootstrap-extension.css";

:root {
    --sidebar-width: 16rem;
    --sidebar-bg: #222B45;
}

[data-bs-theme="dark"] {
    --bs-body-bg: #494949;
    --bs-secondary-bg-subtle: #676768;
    --sidebar-bg: #3f3f3f;
}

html{
    height: 100%;
}
body {
    transition: all 0.3s ease;
}
body.preload,
body.preload *{
    animation:none !important;
    transition: none !important;
}
body.screen{
    --bs-body-bg: #073765;
    --bs-body-bg-rgb: 7, 55, 101;
    --bs-secondary-color: #939393;
    --bs-secondary-color-rgb: 147, 147, 147;
    --bs-body-color: #f8f9fa;
    --bs-body-color-rgb: 248, 249, 250;  
    --bs-body-background: url("./screen-bg.png");              
    background-image: var(--bs-body-background);
    background-attachment: fixed;
    background-clip: border-box;
    background-color: var(--bs-body-bg);
    background-origin: padding-box;
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: cover; 
    height: 100%;
}
body > .loading{
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(var(--bs-dark-rgb), 0.5);
    z-index: 99999;
    vertical-align: middle;
    text-align: center;
}
body > .loading.show{
    display: flex !important;
}
body > .loading > *{
    display: block;
    margin: auto;
    text-align: center;
    justify-content: center;
}
body > .loading .spinner-border, body > .loading .spinner-grow{
    position: relative;
    width: 6rem;
    height: 6rem;
    opacity: 0.8;
    z-index: 1;
    --bs-spinner-border-width: 0.5rem;
}
body > .loading .title{
    font-weight: bold;
    font-size: 3rem;
    margin-top: 1rem;
    display: block;
    color: var(--bs-gray-dark);
    text-shadow: 0 0 0.4rem #FFF, 0 0 0.5rem #000
}

body > .alerts{
    display: grid;
    position: fixed;
    right: 0;
    bottom: 0;
    z-index: 10000;
    margin: 0 1rem;
    text-align: right;
}
body > .alerts > .alert{
    width: auto !important;
    margin: 0.2rem -0.3rem 0.3rem auto;
    max-width: 40rem;
    padding: 0.4rem 1rem;
}

.btn-close, .alert-dismissible .btn-close{
    background-size: 0.6rem;
    padding: 0.35rem 0.5rem;
    position: relative;
    margin-right: -1rem;
    margin-top: -0.4rem;
}

main{
    display: block;
    width: 100%;
    overflow: auto;
}
body > main{
    display: flex;
}
section{
    display: block;
    width: 100%;
}
section > header{
    
}
section > main{
    margin: 0 0.2rem 0rem 0.6rem !important;
    width: calc(100% - 0.7rem);
}

section > main > *{
    /*margin: 0 0.2rem 0rem 0.6rem !important*/
}

header.sticky-top{
    z-index: 1020;
}

.sidebar{
    background-color: var(--sidebar-bg);
    height: 100vh;
    transition: all 0.3s;
    top: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    position: absolute;
    z-index: 1040;
}

.sidebar.show ~ .sidebar-backdrop{
    display: block;
    z-index: 1030;
    width: 100vw;
    height: 100vh;
    background-color: #000;
    opacity: 0.5;
    position: absolute;
}
@media (min-width: 768px) {
    .sidebar.show{
        position: -webkit-sticky;
        position: sticky;
    }
    .sidebar ~ .sidebar-backdrop{
        display: none !important;
    }
}

.sidebar-logo {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    height: 4rem;
    padding: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sidebar-menu {
    overflow-y: auto;
    max-height: 100%;
    width: var(--sidebar-width);
}
.sidebar-menu .sidebar-menu{
    max-height: auto;
}
.sidebar-menu > .navbar, .sidebar-menu .dropdown-menu{
    padding: 0;
    width: 100%;
}
.sidebar-menu .nav-header {
    display: flex;
    color: rgba(255, 255, 255, 0.6);
    font-size: 0.85rem;
    text-transform: uppercase;
    padding: 0.7rem 1.5rem;
    letter-spacing: 1px;
    text-decoration: none;
    white-space: pre-wrap;
}
.sidebar-menu .nav-header i:first-child{
    margin-right: 0.7rem;
    font-size: 1.1rem;
    width: 1.5rem;
    text-align: center;
}
.sidebar-menu .nav-link{
    white-space: pre-wrap;
}
.sidebar-menu .nav-item{
    width: 100%;
}
.sidebar-menu .nav-item:not(.nav-header) > .nav-link{
    padding: 0.7rem 1rem 0.7em 1.2rem;
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    display: flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    width: 100%;
    transition: all 0.2s;
    border-radius: 0 0.5rem 0.5rem 0;
    margin: 0.2rem 0.5rem 0.2rem 0;
}
.sidebar-menu .nav-item:not(.nav-header) > .nav-link > .nav-header{
    margin: 0;
    padding: 0;
}
.sidebar-menu .nav-item > .nav-link:hover{
    color: white;
    background-color: rgba(255, 255, 255, 0.1);
}
.sidebar-menu .nav-item i:first-child {
    margin-right: 0.7rem;
    font-size: 1.1rem;
    width: 1.5rem;
    text-align: center;
}
.sidebar-menu .nav-item > .nav-link.dropdown-toggle::after{
    content: "\f285";
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-size: 0.8rem;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    border: 0;
    transition: transform 0.3s;
    margin-left: auto;
    padding: 0.5rem;
}
.sidebar-menu .nav-item > .nav-link.dropdown-toggle.show::after{
    transform: rotate(90deg);
}
.sidebar-menu .dropdown-menu {
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}
.sidebar-menu .dropdown-item,
.sidebar-menu .dropdown-menu.show {
    position: relative !important;
    transform: none !important;
    background: transparent;
    border: 0;
    padding-right: 0;
    padding-left: 0;
}
.sidebar-menu .dropdown-menu > .nav-item{
    padding: 0;
}
.sidebar-menu .dropdown-menu > .nav-item > .nav-link{
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: left;
    font-size: 0.9rem;
    transition: all 0.2s;
    border-radius: 0 0.5rem 0.5rem 0;
    margin: 0.2rem 0.5rem 0.2rem 0;
}
.sidebar-menu .dropdown-item > .nav-item > .nav-link{
    padding: 0;
}
.sidebar-menu .dropdown-menu > .nav-item > .nav-link:hover, .sidebar-menu .dropdown-menu > .nav-item > .nav-link.active {
    color: white;
    background-color: rgba(255, 255, 255, 0.1);
}
.sidebar-menu .nav-link.dropdown-toggle.sub-active:not(.show) {
    background-color: color-mix(in srgb, var(--active-item) 25%, var(--sidebar-bg)) !important;  
}
.sidebar-menu .dropdown-menu > .nav-item > .nav-link{
    --level-dropdown: 1;
    padding-left: calc(2rem * var(--level-dropdown));
}
.sidebar-menu .dropdown-menu .dropdown-menu  > .nav-item > .nav-link{
    --level-dropdown: 2;
}
.sidebar-menu .dropdown-menu .dropdown-menu .dropdown-menu > .nav-item > .nav-link{
    --level-dropdown: 3;
}
.sidebar-menu .nav-link.active{
    background-color: rgba(var(--bs-primary-rgb), 0.2) !important;
    color: var(--bs-light) !important;
}
.sidebar-menu .dropdown-menu > .nav-item > .nav-link:not(.label-icon)::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    margin-right: 0.7rem;
}
.sidebar-menu .dropdown-menu > .nav-item > .nav-link.active:not(.label-icon)::before {
    background-color: white;
    border-color: white;
}


.sidebar-toggle{
    background: none;
    border: none;
    padding: 0;
    font-size: 1.8rem;
    color: var(--topbar-text);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 4px;
    transition: background-color 0.2s;
}

.sidebar-toggle:before{
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    vertical-align: -.125em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\F620";
}
.sidebar-toggle.collapsed:before{
    content: "\F61F";
}
.sidebar-toggle:hover {
    background-color: rgba(var(--bs-secondary-rgb), 0.1);
}

.theme-toggle{
    cursor: pointer;
    font-size: 1.25rem;
    color: var(--bs-body-color);
    background: none;
    border: none;
    padding: 0.5rem;
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.theme-toggle:before{
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    vertical-align: -.125em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\F1D1";
}
[data-bs-theme="dark"] .theme-toggle:before{
    content: "\F495";
}
.theme-toggle:hover {
    background-color: rgba(var(--bs-secondary-rgb), 0.2);
}

.user-icon {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background-color: rgba(var(--bs-secondary-rgb), 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: rgba(var(--bs-body-color-rgb), 0.9);
    font-size: 1.5rem;
    position: relative;
}
.user-icon:before{
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    vertical-align: -.125em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\F4D7";
}
.user-icon:hover {
    background-color: rgba(var(--bs-secondary-rgb), 0.3);
}

header .fullscreen-toggle{
    cursor: pointer;
    font-size: 1.25rem;
    color: var(--bs-body-color);
    background: none;
    border: none;
    padding: 0.5rem;
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.fullscreen-toggle:before{
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    vertical-align: -.125em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\F3DF";
}
.fullscreen-toggle.show:before{
    content: "\F3DE";
}
.fullscreen-toggle:hover {
    background-color: rgba(var(--bs-secondary-rgb), 0.3);
}
.breadcrumb {
    background-color: transparent;
    padding: 0.5rem 1rem;
    margin: 0;
    width: 100%;
}
@media (min-width: 768px) {
    .breadcrumb{
        width: auto;
    }
}
.breadcrumb-item a {
    color: var(--bs-body-color);
    text-decoration: none;
}
.breadcrumb-item.active {
    color: var(--bs-body-color);
    opacity: 0.7;
}

.table .sticky-top{
    z-index: 100;
}
.table caption.sticky-top{
    z-index: 200;
    border-width: 3px;
    margin-bottom: 1px;
}
.table caption{
    caption-side: top;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    padding: 0.5rem;
    font-weight: bold;
    background: var(--bs-body-bg);
    color: inherit;
}
.table caption.sticky-bottom{
    caption-side: bottom;
    z-index: 300;
}
.table thead tr th, .table thead tr td, .table tfoot tr th, .table tfoot tr td{
    position: relative;
    vertical-align: top;
}
.table thead tr th > *, .table thead tr td > *, .table tfoot tr th > *, .table tfoot tr td > *{
    position: relative;
    align-items: baseline;
}
.table[class*="rounded"] > caption:first-child{
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}
.table[class*="rounded"] > caption:last-child{
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit;
}
.table[class*="rounded"] > *:first-child > th:first-child,
.table[class*="rounded"] > *:first-child > td:first-child,
.table[class*="rounded"] > *:first-child > *:first-child > th:first-child,
.table[class*="rounded"] > *:first-child > *:first-child > td:first-child,
.table[class*="rounded"] > *:first-child > th:first-child:before,
.table[class*="rounded"] > *:first-child > td:first-child:before,
.table[class*="rounded"] > *:first-child > *:first-child > th:first-child:before,
.table[class*="rounded"] > *:first-child > *:first-child > td:first-child:before{
    border-top-left-radius: inherit;
}
.table[class*="rounded"] > *:first-child > th:last-child,
.table[class*="rounded"] > *:first-child > td:last-child,
.table[class*="rounded"] > *:first-child > *:first-child > th:last-child,
.table[class*="rounded"] > *:first-child > *:first-child > td:last-child,
.table[class*="rounded"] > *:first-child > th:last-child:before,
.table[class*="rounded"] > *:first-child > td:last-child:before,
.table[class*="rounded"] > *:first-child > *:first-child > th:last-child:before,
.table[class*="rounded"] > *:first-child > *:first-child > td:last-child:before{
    border-top-right-radius: inherit;
}
.table[class*="rounded"] > *:last-child > th:first-child,
.table[class*="rounded"] > *:last-child > td:first-child,
.table[class*="rounded"] > *:last-child > *:last-child > th:first-child,
.table[class*="rounded"] > *:last-child > *:last-child > td:first-child,
.table[class*="rounded"] > *:last-child > th:first-child:before,
.table[class*="rounded"] > *:last-child > td:first-child:before,
.table[class*="rounded"] > *:last-child > *:last-child > th:first-child:before,
.table[class*="rounded"] > *:last-child > *:last-child > td:first-child:before{
    border-bottom-left-radius: inherit;
}
.table[class*="rounded"] > *:last-child > th:last-child,
.table[class*="rounded"] > *:last-child > td:last-child,
.table[class*="rounded"] > *:last-child > *:last-child > th:last-child,
.table[class*="rounded"] > *:last-child > *:last-child > td:last-child,
.table[class*="rounded"] > *:last-child > th:last-child:before,
.table[class*="rounded"] > *:last-child > td:last-child:before,
.table[class*="rounded"] > *:last-child > *:last-child > th:last-child:before,
.table[class*="rounded"] > *:last-child > *:last-child > td:last-child:before{
    border-bottom-right-radius: inherit;
}
.table-responsive.card > .table[class*="rounded"] > *:last-child > th,
.table-responsive.card > .table[class*="rounded"] > *:last-child > td,
.table-responsive.card > .table[class*="rounded"] > *:last-child > *:last-child > th,
.table-responsive.card > .table[class*="rounded"] > *:last-child > *:last-child > td{
    border-bottom-width: 0;
}

.table-responsive.card > .table[class*="rounded"] > tr:first-child,
.table-responsive.card > .table[class*="rounded"] > *:first-child > tr:first-child{
    border-top-width: 0;
}
.table-responsive.card > .table[class*="rounded"] > tr:last-child,
.table-responsive.card > .table[class*="rounded"] > *:last-child > tr:last-child{
    border-bottom-width: 0;
}
.table-responsive.card > .table[class*="rounded"] > tr > *:first-child,
.table-responsive.card > .table[class*="rounded"] > * > tr > *:first-child{
    border-left-width: 0;
}
.table-responsive.card > .table[class*="rounded"] > tr > *:last-child,
.table-responsive.card > .table[class*="rounded"] > * > tr > *:last-child{
    border-right-width: 0;
}
.table-responsive{
    padding-right: 1px;
}
.table.table-bordered thead.sticky-top > tr th:before, .table.table-bordered thead.sticky-top > tr > td:before,
.table.table-bordered thead tr.sticky-top > th:before, .table.table-bordered thead tr.sticky-top > td:before,
.table.table-bordered tfoot.sticky-bottom > tr > th:before, .table.table-bordered tfoot.sticky-bottom > tr > td:before,
.table.table-bordered tfoot tr.sticky-bottom > th:before, .table.table-bordered tfoot tr.sticky-bottom > td:before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + calc(var(--bs-border-width) * 2));
    height: calc(100% + calc(var(--bs-border-width) * 2));
    margin: -1px;
    border-style: var(--bs-border-style);
    border-width: var(--bs-border-width);
    border-color: var(--bs-table-border-color);
}
.table th.border-dark,
.table td.border-dark{
    --bs-table-border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}
.table th.border-secondary,
.table td.border-secondary{
    --bs-table-border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}
.table th.border-success,
.table td.border-success{
    --bs-table-border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
}
.table th.border-info,
.table td.border-info{
    --bs-table-border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
}
.table th.border-warning,
.table td.border-warning{
    --bs-table-border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
}
.table th.border-danger,
.table td.border-danger{
    --bs-table-border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
}
.table th.border-light,
.table td.border-light{
    --bs-table-border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
}
  
.table-editable > tbody > tr > td, 
.table-editable > tbody > tr > th{
    padding: 0;
    position: relative;
}
.table-editable > tbody > tr > td > input, 
.table-editable > tbody > tr > th > input,
.table-editable > tbody > tr > td > select, 
.table-editable > tbody > tr > th > select,
.table-editable > tbody > tr > td > .form-control, 
.table-editable > tbody > tr > th > .form-control,
.table-editable > tbody > tr > td > .select2-container .select2-selection,
.table-editable > tbody > tr > th > .select2-container .select2-selection{
    border-radius: 0;
    border: 0;
    background: transparent;
    margin: 0;
    min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2))
}
.table-editable > tbody > tr > td > input:hover
.table-editable > tbody > tr > td > select:hover{
    
}
.table-editable > tbody > tr > td > input:focus,
.table-editable > tbody > tr > td > select:focus,
.table-editable > tbody > tr > td > input + .select2-container.select2-container--focus .select2-selection,
.table-editable > tbody > tr > td > select + .select2-container.select2-container--focus .select2-selection,
.table-editable > tbody > tr > td > input + .select2-container.select2-container--open .select2-selection,
.table-editable > tbody > tr > td > select + .select2-container.select2-container--open .select2-selection{
    background: rgba(255, 193, 7, 0.2);
}

.table-column-control-icon{
    display: inline-block;
    vertical-align: middle;
    border: 1px solid var(--bs-primary);
    border-radius: 0.25rem;
    background-color: var(--bs-blue);
    color: var(--bs-light);
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    padding: 0.2rem 0.5rem;
}
.table-column-control-icon:after{
    font-weight: bold;
    content: "\205D";
    display: block;
    width: 1rem;
}     
.table-column-control.dropdown-menu .dropdown-item:before{
    font-family: bootstrap-icons !important;;
    content: "\F1A2";
    display: inline-block;
    margin-right: 0.5rem;
}
.table-column-control.dropdown-menu .dropdown-item[data-show="true"]:before{
    content: "\F198";
}
.table-column-control.dropdown-menu .dropdown-item[data-show="false"]:before{
    content: "\F19D";
}
.table-column-control.dropdown-menu .dropdown-item[data-show="auto"]:before{
    content: "\F1A1";
}

.sticky-start{
    position: sticky !important;
    left: 0;
}

a.sort-link{
    color: inherit;
    text-decoration: none;
    opacity: 0.8;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    margin: 0 0.4rem;
}
a.sort-link::after{
    font-size: small;
    font-family: bootstrap-icons !important;
    position: relative;
    margin-left: 0.5rem;
    content: "\F3C7";
}
a.sort-link.desc::after{
    content: "\F575";
}
a.sort-link.asc::after{
    content: "\F574";
}
.input-group{
    flex-wrap: nowrap;
}
.input-group.wm{
    min-width: 20rem;
};
.input-group:not(.has-validation) > [data-bs-toggle="dropdown"]:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), 
.btn-group > .btn[data-bs-toggle="dropdown"]:not(:last-child){
    border-top-right-radius: var(--bs-btn-border-radius);
    border-bottom-right-radius: var(--bs-btn-border-radius);
}
.dropdown-menu{
    padding: 0;
}
.dropdown-menu > .nav-item{
    padding: 0.1rem 0.5rem;
}
.dropdown-menu > .nav-item:hover{
    background: rgba(var(--bs-secondary-rgb), 0.1);
}
.dropdown-divider{
    padding: 0;
    margin: 0;
}

label.required:after{
    content: '*';
    color: #C00;
    font-weight: bold;
    padding-left: 0.5rem;
}
label.required > span.required{
    display: none;
}
label.separator:after{
    content: ':';
    margin-right: 0.2rem;
}  
.accordion-button.text-bg-dark {
  color: var(--bs-accordion-btn-color);
  background-color: var(--bs-accordion-btn-bg);
}
.accordion-button.text-bg-dark::after {
    filter: grayscale(100%) invert(1);
}

.accordion-item.tree-list{
    position: relative;
    margin: 0.4rem 0;
    border: 0;
}
.tree-list > .accordion-collapse{
    margin-left: 2rem;
    position: relative;
}
.tree-list > .accordion-collapse:before{
    content: '';
    border-left: 1px var(--bs-dark) solid;
    position: absolute;
    margin-left: -1rem;
    height: 100%;   
    top: -0.4rem;
}
.accordion-item.tree-list:before{
    content: '';
    border-top: 1px var(--bs-dark) solid;
    position: absolute;
    margin-left: -1rem;
    width: 1rem;
    top: 1.2rem;
}
.accordion > .accordion-item.tree-list:before{
    display: none;
}
.accordion-item.tree-list:last-child:before{
    height: calc(100% - 1.2rem - 1px);
    background: inherit;
}
.tree-list > .accordion-header{
    display: flex;
    border-radius: var(--bs-border-radius)
}
.tree-list > .accordion-header > *{
    padding: 0.5rem;
}
.tree-list > .accordion-collapse.sub{
    margin-left: 0;
    top: -0.2rem;
}
.tree-list > .accordion-collapse.sub > *:last-child{
    border-bottom-left-radius: var(--bs-border-radius);
    border-bottom-right-radius: var(--bs-border-radius);
}
.tree-list > .accordion-collapse.sub:before{
    display: none;
}
.tree-list > .tree-list{
    margin-left: 2rem;
    margin-top: 0.5rem;
}
.accordion-tree-button{
    border: 0;
    background: inherit;
    border-top-left-radius: var(--bs-border-radius);
    border-bottom-left-radius: var(--bs-border-radius);
}
.accordion-tree-button:before{
    content: "\002B";
    position: relative;
    top: 1px;
    width: 1.25rem;
    font-size: 1.475rem;
}
.accordion-tree-button[aria-expanded="true"]:before{
    content: "\2212";
}


.modal-header{
    padding: 0.5rem 1rem;
    font-weight: bold;
    font-size: 1.2rem;
    line-height: normal
}
.modal-header > .modal-title{
    display: flex;
}
.modal-header > .modal-title .icon{
    margin-top: -0.1rem;
    font-size: 1.6rem;
}
.modal-header > .modal-title .small{
    font-weight: normal;
    font-size: 70% !important;
}

.pagination{
    --bs-pagination-color: var(--bs-dark);
    --bs-pagination-hover-bg: rgba(var(--bs-tertiary-color-rgb), 0.1);
    
    display: inline-flex;
    overflow: hidden;
    margin: 0;
    border-radius: var(--bs-pagination-border-radius);
    border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
}
.pagination > li{
    white-space: nowrap;
    padding: 0.3rem 0.5rem;
    flex-direction: column;
    display: flex;
    justify-content: center;
    border-right: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
}
.pagination > li:last-child{
   border-right: 0;
}
.pagination > li.page-item{
    padding: 0;
}
.pagination .page-item{
    overflow: hidden;
}
.pagination .page-item.disabled > .page-link{
    background: var(--bs-pagination-border-color);
}
.pagination label{
    padding:0 0.3rem 0 1rem
}
.pagination .page-item .page-link{
    border: 0;
}
.pagination .page-link.active, .pagination .active > .page-link{
    background-color: var(--bs-pagination-active-bg);
    border-color: var(--bs-pagination-active-border-color);
}
.pagination .previous.page-item .page-link,
.pagination .next.page-item .page-link,
.pagination .first.page-item .page-link,
.pagination .last.page-item .page-link{
    background: var(--bs-pagination-hover-bg);
}
.pagination .previous.page-item.disabled .page-link,
.pagination .next.page-item.disabled .page-link,
.pagination .first.page-item.disabled .page-link,
.pagination .last.page-item.disabled .page-link{
    color: var(--bs-pagination-disabled-color);
}
.pagination input, .pagination select{
    align-items: center;
    width: 4rem;
    min-width: 4rem;
    padding: 0.1rem 0.75rem;
    height: 100%;
    border: 0;
    background-color: var(--bs-white);
}
.pagination input:focus, .pagination select:focus{
    outline: 0;
}
.pagination label + input, .pagination label + select{
    border-left: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
}
.pagination input{
    text-align: center;
}
.pagination select{
    text-align: right;
    width: auto;
}


.form-label{
    margin-bottom: 0.2rem;
    font-size: 90%;
}
.form-group > .form-label{
    margin-top: 0.2rem;
}

.form-control,
.input-group > .form-control{
    min-width: 6rem;
}
.input-group > .select2-container.select2-container--open, 
.input-group > .select2-container.select2-container--focus{
    z-index: 1030 !important;
}

.text-rotate-90 {
    writing-mode: sideways-rl;
}
.text-rotate-180 {
    transform: rotate(180deg);
}
.text-rotate-270 {
    writing-mode: sideways-lr;
}
.text-decoration-underline-double{
    text-decoration: underline double;
}
