.table th,
.table td {
    text-align: center;
}

table {
    text-align: center;
}

th,
td {
    vertical-align: middle !important;
    white-space: nowrap !important;
    text-align: center !important;
}

.dataTables_info {
    margin-bottom: 20px;
}

div.dataTables_filter[id*="_filter"] {
    display: none !important;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: #effaff;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
    background-image: none;
    padding-right: 0.75rem;
}

.icon-eye {
    float: right;
    margin-right: 6px;
    margin-top: -27px;
    position: relative;
    z-index: 2;
    cursor: pointer;
}

.icon-eye-login {
    float: right;
    margin-right: 10px;
    margin-top: -38px;
    position: relative;
    z-index: 2;
    cursor: pointer;
}

.margin-buttons-weetalert {
    margin-left: 18px;
}

.swal2-popup {
    border-radius: 15px !important;
}

.logo-menu {
    /* max-width: 110px !important; */
    min-height: 100px !important;
}

table>tbody td>img {
    max-height: 50px !important;
}

.card.card-primary-border {
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    border-top: 8px solid var(--bs-primary);
}

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

/** Component sign */
div.form-group.input-sign {
    position: relative;
    width: min-content;
    margin: 0 auto;
}

.draw-canvas {
    border-radius: 5px;
    cursor: crosshair;
    background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='10' ry='10' stroke='%23D6D6D6FF' stroke-width='3' stroke-dasharray='9%2c 12' stroke-dashoffset='0' stroke-linecap='round'/%3e%3c/svg%3e");
    border-radius: 10px;
}

.draw-canvas.is-invalid {
    background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='10' ry='10' stroke='%23ff0000FF' stroke-width='3' stroke-dasharray='9%2c 12' stroke-dashoffset='0' stroke-linecap='round'/%3e%3c/svg%3e");
}

.clean {
    cursor: pointer;
    position: absolute;
    top: 2px;
    right: 14px;
}

.clean::before {
    background-color: var(--bs-primary);
    padding: 5px;
    border-radius: 50%;
    color: #ffffff;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #0071f4;
}

.fa-trash {
    cursor: pointer;
}

.form-rounded {
    border-radius: 1rem;
}

.cursor-pointer {
    cursor: pointer;
    font-size: 20px;
}

.add-primary-svg {
    fill: #0071f4;
}

.required {
    color: red;
}

.form-label {
    font-weight: 700;
}

.profile-photo {
    border-radius: 50%;
    width: 200px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--bs-primary) !important;
}

.select2-container--default .select2-selection--single {
    border: 1px solid #dce7f1 !important;
}

.select2-container--default .select2-selection--multiple {
    border: 1px solid #dce7f1 !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: var(--bs-primary) !important;
    color: white !important;
}

.select2-container .select2-selection--single {
    height: 38px !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 35px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 35px !important;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
}

/* li > a > span {
    color: white;
} */

.nav-tab-custom {
    background-color: white;
    margin-left: 6px;
    border-top-left-radius: 6px 6px;
    border-top-right-radius: 6px 6px;
}

.nav-tabs .nav-link {
    padding: 10px;
    border-top-left-radius: 6px 6px;
    border-top-right-radius: 6px 6px;
}

.nav-tabs .nav-link.active-tab {
    padding: 10px;
}

/* BG Color active tab*/
.nav-tabs {
    --bs-nav-tabs-border-color: #dee2e6;
    --bs-nav-tabs-link-hover-border-color: #e9ecef #e9ecef #dee2e6;
    --bs-nav-tabs-link-active-color: #fff;
    --bs-nav-tabs-link-active-bg: var(--bs-primary, #f2f7ff);
    --bs-nav-tabs-link-active-border-color: #dee2e6 #dee2e6 #f2f7ff;
    border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)
}


.nav-tabs .nav-link.active {
    border: none;
    position: relative;
    color: #fff !important;
}


.nav-tabs .nav-link.active:after {
    position: unset;
}

.nav-tabs {
    border: unset;
}

.nav.nav-tabs.form-floating:has(.nav-item:first-of-type>.nav-link.active)+.card {
    border-top-left-radius: 0;
}

.rt-1 {
    position: relative;
    top: -.25rem !important;
}

.rt-2 {
    position: relative;
    top: -.5rem !important;
}

.rt-3 {
    position: relative;
    top: -1rem !important;
}

.rt-4 {
    position: relative;
    top: -1.5rem !important;
}

.rt-5 {
    position: relative;
    top: -3rem !important;
}

/* Hover list */
.hover-bg-primary:hover {
    background-color: var(--bs-primary) !important;
    color: #FFF;
    transition: none !important;
}

.modal-open .select2-dropdown {
    z-index: 10060;
}

.modal-open .select2-close-mask {
    z-index: 10055;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: white !important;
}

/* Timeline holder */
ul.timeline {
    list-style-type: none;
    position: relative;
    padding-left: 1.6rem;
}

/* Timeline vertical line */
ul.timeline:before {
    content: ' ';
    background: var(--bs-primary);
    display: inline-block;
    position: absolute;
    left: 16px;
    width: 4px;
    height: 100%;
    z-index: 400;
    border-radius: 1rem;
}

li.timeline-item:not(:first-child) {
    margin: 20px 0;
    /* opacity: 0.7; */
}

/* Timeline item circle marker */
li.timeline-item::before {
    content: ' ';
    background: var(--bs-secondary-palette, #ddd);
    display: inline-block;
    position: absolute;
    border-radius: 50%;
    border: 3px solid #fff;
    left: 11px;
    width: 14px;
    height: 14px;
    z-index: 400;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}

.custom-checkbox {
    transform: scale(1.2);
    margin-right: 8px;
    accent-color: var(--bs-primary) !important;
}

.bg-light-danger {
    background-color: #f8c1c7 !important;
    color: black !important;
}

.bg-light-success {
    background-color: #b0d6c5 !important;
    color: black !important;
}

.ps-6 {
    padding-left: 60px !important;
}

.text-red {
    color: #ED3832;
}

.text-yellow {
    color: #FEF851;
}

.text-orange {
    color: #F8C046;
}

.arrow-order {
    font-size: 22px;
    cursor: pointer;
}

/* Survey */

.sv-answered {
    background-color: rgba(var(--bs-primary-rgb), .6) !important;
}

.sv-answered,
.sv-answered>a {
    color: rgb(255, 255, 255) !important;
}

/* .sv-answered-bl {
    border-left-color: rgba(var(--bs-primary-rgb), .6) !important;
    border-left: 10px solid;
} */

.sv-optional {
    background-color: rgba(var(--bs-primary-rgb), .1) !important;
}

.sv-optional,
.sv-optional>a {
    color: #008ACD;
}

/* .sv-optional-bl {
    border-left-color: rgba(var(--bs-primary-rgb), .1) !important;
    border-left: 10px solid;
} */

.sv-pending {
    background-color: white;
}

.sv-pending,
.sv-pending>a {
    color: #008ACD !important;
}

/* .sv-pending-bl {
    border-left-color: white !important;
    border-left: 10px solid;
} */

.sv-active {
    background-color: rgba(var(--bs-primary-rgb), 1) !important;
}

.sv-active>a {
    color: rgb(255, 255, 255) !important;
}

/* .sv-active-bl {
    border-left-color: rgba(var(--bs-primary-rgb), 1) !important;
    border-left: 10px solid;
} */
.bg-expired {
    background-color: #be0017 !important;
    color: white !important;
}

.bg-expired-one-day {
    background-color: #FAEDEC !important;
}

.bg-near-expiration {
    background-color: #ffecb6 !important;
}

.bg-not-yet-expired {
    background-color: #fffca0 !important;
}

.bg-normal {
    background-color: transparent !important;
}

.fc-day-today {
    background: rgba(var(--bs-primary-rgb), 0.1) !important;
}

@media (max-width: 1038px) {
    .fc-col-header-cell-cushion {
        white-space: normal;
        display: block;
        text-align: center;
    }

    .fc-col-header-cell-cushion {
        font-size: 12px;
    }

    .fc-toolbar-title {
        font-size: 15px !important;
        text-align: center !important;
        padding: 5px !important;
    }

    .fc-timegrid-slot-label-cushion.fc-scrollgrid-shrink-cushion {
        font-size: 12px;
    }

    .fc-toolbar-chunk {
        font-size: 12px;
    }
}

/* Chat */
.chat-content {
    display: flex;
    flex-direction: column;
    background-color: var(--bs-body-bg);
    padding: 10px 20px;
    border-radius: var(--bs-card-border-radius);
    height: 630px;
    gap: 8px;
    padding: 20px;
    justify-content: flex-end;
}

.chat-content .chat-message-content.sender {
    --bs-message-color: #FFFFFF;
    --bs-message-bg: #008acd;
    --bs-chat-text-align: end;
    --bs-align-self: self-end;
}

.chat-content .chat-message-content.receiver {
    --bs-message-color: #FFFFFF;
    --bs-message-bg: #6c757d;
    --bs-chat-text-align: start;
    --bs-align-self: self-start;
}

.chat-content .chat-message-content {
    width: fit-content;
    text-align: var(--bs-chat-text-align);
    align-self: var(--bs-align-self, center);
    max-width: 269px;
}

.chat-content .chat-message-content .chat-message {
    color: var(--bs-message-color);
    background-color: var(--bs-message-bg);
    overflow-wrap: break-word;
    border-radius: 16px;
}

.chat-content .chat-message-content .chat-date {
    text-align: var(--bs-chat-text-align);
    font-size: 10px;
}

.chat-controls .bi::before {
    position: relative;
    transform: rotate(45deg);
    left: -3px;
}

.card-button {
    border-radius: 1rem;
    cursor: pointer;
    transition: transform 0.8s;
}

.card-button:hover {
    transform: scale(1.1, 1.1);
}

.image-container {
    width: 150px;
    height: 130px;
    overflow: hidden;
    position: relative;
    border: 1px solid #e8e8e8;
    border-radius: 5px;
}

.image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.button-calendar-attendance {
    background-color: #fbffc8 !important;
    color: black;
    border: none;
    border-radius: 5px;
    padding: 5px 10px;
    cursor: pointer;
    border: solid 1px #cedc00;
}

.button-calendar-attendance:hover,
.button-calendar-attendance-active {
    background-color: #cedc00 !important;
    color: white;
}

@media (min-width: 1281px) {
    #div-buttons-calendar {
        justify-content: center !important;
    }
}

@media (min-width: 1025px) and (max-width: 1280px) {
    #div-buttons-calendar {
        justify-content: center !important;
    }
}

@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    #div-buttons-calendar {
        justify-content: center !important;
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    #div-buttons-calendar {
        justify-content: center !important;
    }
}