span.is-invalid {
    position: absolute;
    font-size: 13px;
    color: #dc3545;
    left: 0;
    bottom: -18px;
}

.form-group {
    position: relative;
}

.form-select.is-invalid {
    border: 1px solid #dc3545;
}

.form-select.is-valid {
    border: 1px solid #198754;
}

.toast-container {
    position: fixed;
    right: 15px;
    top: 30px;
    z-index: 999999;
    pointer-events: all;
}

.select2-container--default .select2-selection--multiple {
    min-height: 48px;
    border-radius: 0;
    border: 1px solid #ccc;
    padding: 6px 8px;
    font-size: 14px;
}
.multi-select.sm + .select2-container--default .select2-selection--multiple {
    min-height: 25px;
}

.multi-select.sm + .select2-container .select2-search--inline .select2-search__field {
    margin-top: 4px;
}
.select2-container .select2-search--inline .select2-search__field {
    margin-top: 9px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
    padding-right: 20px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    left: unset;
    top: 0;
    right: 0;
    height: 100%;
    border-radius: 0;
    width: 20px;
    font-size: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    span{
        padding-bottom: 4px;
    }
    &:hover{
        background-color: transparent !important;
        opacity: 0.7;
    }
}
.page-item.active .page-link{
    background-color: #b66dff;
    border-color: #b66dff;
    color: #fff;
}
.alert-success {
    --bs-alert-color: #f8f8f8;
    --bs-alert-bg: #41cfb4;
    --bs-alert-border-color: #41cfb4;
    --bs-alert-link-color: #ffffff;
}
.pagination .page-link{
    color:#000;
}
.cp{cursor: pointer !important;}
.min-h-unset{min-height: unset !important;}
.ln-normal{line-height: normal !important;}
.ln-14{line-height: 1.4 !important;}
.select2-container.select2-container--default.select2-container--open{
    z-index: 9999 !important;
}
.spinner-border-xsm {
    --bs-spinner-width: 10px !important;
    --bs-spinner-height: 10px !important;
}
.main-panel {
    overflow: auto;
    max-height: calc(100vh - 70px);
}
.column-details {
    position: absolute;
    right: 0;
    top: 0;
    min-width: 100%;
    max-height: 300px;
    overflow: auto;
    z-index: 999;
}
.close-btn {
    position: absolute;
    right: 5px;
    top: 5px;
    z-index: 999;
    color: #f77c96;
    cursor: pointer;
    font-size: 20px;
}
.email-template-preview *{
    margin: 0;
    padding: 0;
}
.files-preview{
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    li div{
        padding-left: 10px;
        padding-right: 30px;
        span.close-btn{
            line-height: normal;
            top: 1px;
        }
    }
}
.file-input-wrapper{
    position: relative;
}
.file-input-wrapper::after{
    content: attr(data-count);
    position: absolute;
    right: 0;
    top: 1px;
    background-color: #fff;
    color: #000;
    width: calc(100% - 118px);
    height: calc(100% - 2px);
    display: flex;
    justify-content: start;
    align-items: center;
    font-size: 12px;
    z-index: 99;
    padding-left: 15px;
    pointer-events: none;
}
.cell-options{
    position: relative;
    .cell-options-list{
        display: none;
        position: absolute;
        top: 0;
        right: 0;
        list-style: none;
        padding: 0;
        margin: 0;
        justify-content: center;
        width: 100%;
        li{
            border: 1px solid #ccc;
            background-color: #fff;
            color: #000;
            font-size: 12px;
            .option-button{
                border: none;
                background-color: transparent;
                color: #000;
                font-size: 12px;
                height: 100%;
                width: 100%;
                padding: 0 10px;
                display: flex;
                justify-content: center;
                align-items: center
            }
            &:hover{
                background-color: #e9e9e9;
                color: #fff;
            }
        }
    }
    &:hover .cell-options-list{
        display: flex;
    }
    .cell-options-list>li:not(:first-child) {
        margin-left: -1px;
    }
}
#header-search-result-list{
    position: absolute !important;
    left: 0;
    top: 100%;
    max-height: 300px;
    overflow: auto;
    z-index: 999;
    width: 100%;
    li{
        a{
            display: block;
            padding: 8px 15px;
        }
        a:hover{
            background-color: #e9e9e9;
        }
    }
}
.active-selection{
    background-color: #b66dff;
    a{
        color: #fff !important;
    }
}