/* utils */
.text-preline {
    white-space: pre-line;
}

/* validation */
.invalid-feedback {
    font-size: 11px;
}

.field-validation-error.invalid-feedback {
    display: block !important;
    margin-bottom: 3px;
    margin-top: -9px;
}

.invalid-tooltip {
    font-size: 10px;
}

.field-validation-error.invalid-tooltip {
    display: inline !important;
    margin-top: 0px;
}

.validation-summary-errors.list-unstyled ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* cursors */
.cursor-pointer {
    cursor: pointer;
}

.cursor-move {
    cursor: move;
}

.cursor-not-allowed {
    cursor: not-allowed;
}

/* select2 */
select.form-control.js-select2[multiple] {
    height: 38px;
}

.form-select.js-select2 {
    min-width: 200px;
}

    .form-select.js-select2.select2-page-sizer ~ span.select2-container--bootstrap-5 {
        min-width: 100px;
        max-width: 150px;
    }

.select2-container--bootstrap-5 {
    width: auto;
    min-width: 207px;
}

    .select2-container--bootstrap-5 .select2-dropdown .select2-search {
        padding: .375rem .375rem;
    }

    .select2-container--bootstrap-5 .select2-selection {
        padding: .375rem .375rem;
        border-radius: 6px;
    }

    .select2-container--bootstrap-5 .select2-selection--multiple {
        padding-top: 6px;
        padding-bottom: 0;
    }

        .select2-container--bootstrap-5 .select2-selection--multiple .select2-search {
            display: inline-flex;
            min-width: 150px;
            width: auto;
        }

        .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered {
            display: inline-flex;
            vertical-align: middle;
            margin-top: -4px;
            gap: 0.175rem;
            margin-right: 0.5rem;
        }

            .select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered .select2-selection__choice {
                padding-top: 0;
                padding-bottom: 0;
                margin-bottom: 0;
                margin-right: 0;
            }

.select2-results__option span:not(.uicolor-tag) {
    padding-left: 14px !important;
}

.select2-results__option.select2-results__option--disabled {
    cursor: not-allowed;
}
.select2-container--bootstrap-5 .select2-selection--multiple .select2-selection__rendered .select2-selection__choice:has(.uicolor-tag) {
    padding-right: 0;
}
.select2-selection__clear {
    top: 19px !important;
}

.comma-separated-spans span::after {
    content: '|';
}

.comma-separated-spans span:last-child::after {
    content: '';
}
/* no data list info */
li.custom-nothing {
    display: none;
}

li:last-child.custom-nothing {
    display: list-item;
}
/* no data div info */
div.custom-nothing {
    display: none;
}

div:last-child.custom-nothing {
    display: block;
}
/* treeselect */
.treeselect-input {
    border-radius: 6px;
}

.treeselect-input--focused {
    border-color: #86b7fe;
    box-shadow: 0 0 0 0.25rem rgba(13,110,253,.25);
}

.treeselect-list--focused {
    border-color: #86b7fe;
    border-top-color: transparent;
}

.treeselect-list.treeselect-list--single-select .treeselect-list__item--single-selected {
    color: #fff;
    background-color: #0d6efd;
}

.treeselect-list__item {
    padding: 0.375rem 0.75rem;
    height: unset;
}

.treeselect-list__item-label {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
}

.treeselect-list__item--focused {
    background-color: #e9ecef !important;
    color: #000 !important;
}
/* btn-group imp */
.btn-group:not(:has(.dropdown-item)) .dropdown-toggle {
    display: none;
}
/* dropdown imp */
ul.dropdown-menu > li:first-child:has(.dropdown-divider) {
    background: #f00;
    display: none;
}
/* pager */
.pager-container .pagination {
    margin-bottom: 0;
}
/* input sizing */
.form-small .ng-select, .form-small input, .form-small select, .form-small textarea, .form-small .input-group, .form-small .chosen-container, input.form-small, select.form-small, textarea.form-small {
    max-width: 205px;
}

.form-large .ng-select, .form-large input, .form-large select, .form-large textarea, .form-large .input-group, .form-large .chosen-container, input.form-large, select.form-large, textarea.form-large {
    max-width: 1120px;
}

.form-tiny-fixed .ng-select, .form-tiny-fixed input, .form-tiny-fixed select, .form-tiny-fixed textarea, .form-tiny-fixed .form-control, .form-tiny-fixed .input-group, .form-tiny-fixed .chosen-container, input.form-tiny-fixed, select.form-tiny-fixed, textarea.form-tiny-fixed {
    width: 120px;
}

.form-small-fixed .ng-select, .form-small-fixed input, .form-small-fixed select, .form-small-fixed textarea, .form-small-fixed .form-control, .form-small-fixed .input-group, .form-small-fixed .chosen-container, input.form-small-fixed, select.form-small-fixed, textarea.form-small-fixed {
    width: 165px;
}

/* ajax loader */
#ajax-loader2 .modal-backdrop {
    background-color: #fff !important;
}

/* nav-tabs + table-header */
.nav.nav-tabs.nav-bg-light .nav-link {
    border-bottom: #f8f9fa;
}

.nav.nav-tabs.nav-bg-light > .nav-item > .nav-link.active {
    background: #f8f9fa;
}

/* account */
.account-card {
    width: 450px;
}
