﻿[data-bs-theme=emuse] {
    --bs-primary: #7f7f7f;
    --bs-primary-rgb: 127, 127, 127;
    --bs-primary-text-emphasis: #333333;
    --bs-primary-bg-subtle: #e5e5e5;
    --bs-primary-border-subtle: ##cccccc;
    --bs-link-color: #7f7f7f;
    --bs-link-color-rgb: 127, 127, 127;
    --bs-link-hover-color: #6b6b6b;
    --bs-link-hover-color-rgb: 107, 107, 107;
    --bs-focus-ring-color: rgba(127, 127, 127, 0.25);
}

.disabled-link {
    pointer-events: none;
    /* Disable pointer events */
    color: #999;
    /* Change text color to gray */
    cursor: not-allowed;
    /* Change cursor to 'not-allowed' */
    text-decoration: none;
    /* Remove underline */
    opacity: 0.5;
    /* Reduce opacity to indicate disabled state */
}


.fc .fc-timegrid .fc-daygrid-body {
    z-index: 1;
}

.dt-info {
    display: none;
}

/**
    CUSTOM STATUS COLOURS
*/

/* NEW */
.bg-light-new {
    background-color: #edfcf0 !important;
}

    .bg-light-new.hoverable:hover {
        background-color: #d2efff !important;
    }

.bg-new {
    --bg-color: 153, 191, 160;
}

    .bg-new.hoverable:hover {
        background-color: #00d928 !important;
    }

.bg-hover-light-new {
    cursor: pointer;
}

    .bg-hover-light-new:hover {
        background-color: #edfcf0 !important;
    }

.bg-state-light-new {
    cursor: pointer;
}

    .bg-state-light-new.active,
    .bg-state-light-new:hover {
        background-color: #edfcf0 !important;
    }

.bg-hover-new {
    cursor: pointer;
}

    .bg-hover-new:hover {
        --bg-color: 153, 191, 160;
        background-color: #00ff33 !important;
    }

.bg-active-new.active {
    --bg-color: 153, 191, 160;
    background-color: #00ff33 !important;
}

.bg-state-new {
    cursor: pointer;
}

    .bg-state-new.active,
    .bg-state-new:hover {
        --bg-color: 153, 191, 160;
        background-color: #00ff33 !important;
    }

.svg-icon.svg-icon-new svg [fill]:not(.permanent):not(g) {
    transition: fill 0.3s ease;
    fill: #00ff33;
}

.svg-icon. svg:hover [fill]:not(.permanent):not(g) {
    transition: fsvg-icon-newill 0.3s ease;
}

.badge-new {
    color: #FFFFFF;
    background-color: #00ff33;
}

.badge-light-new {
    color: #00ff33;
    background-color: #f0fff3;
}


/* Pending */
.bg-light-pending {
    background-color: #f9f0ff !important;
}

    .bg-light-pending.hoverable:hover {
        background-color: #d2efff !important;
    }

.bg-pending {
    --bg-color: 174, 151, 189;
}

    .bg-pending.hoverable:hover {
        background-color: #edd1ff !important;
    }

.bg-hover-light-pending {
    cursor: pointer;
}

    .bg-hover-light-pending:hover {
        background-color: #f9f0ff !important;
    }

.bg-state-light-pending {
    cursor: pointer;
}

    .bg-state-light-pending.active,
    .bg-state-light-pending:hover {
        background-color: #f9f0ff !important;
    }

.bg-hover-pending {
    cursor: pointer;
}

    .bg-hover-pending:hover {
        --bg-color: 174, 151, 189;
        background-color: #9a00ff !important;
    }

.bg-active-pending.active {
    --bg-color: 174, 151, 189;
    background-color: #9a00ff !important;
}

.bg-state-pending {
    cursor: pointer;
}

    .bg-state-pending.active,
    .bg-state-pending:hover {
        --bg-color: 174, 151, 189;
        background-color: #9a00ff !important;
    }

.svg-icon.svg-icon-pending svg [fill]:not(.permanent):not(g) {
    transition: fill 0.3s ease;
    fill: #9a00ff;
}

.svg-icon. svg:hover [fill]:not(.permanent):not(g) {
    transition: fsvg-icon-pendingill 0.3s ease;
}

.badge-pending {
    color: #FFFFFF;
    background-color: #9a00ff;
}

.badge-light-pending {
    color: #9a00ff;
    background-color: #f4ebfa;
}


/* Paid */
.bg-light-paid {
    background-color: #f0fff0 !important;
}

    .bg-light-paid.hoverable:hover {
        background-color: #d1ffd1 !important;
    }

.bg-paid {
    --bg-color: 149, 186, 149;
}

    .bg-paid.hoverable:hover {
        background-color: #ccfccc !important;
    }

.bg-hover-light-paid {
    cursor: pointer;
}

    .bg-hover-light-paid:hover {
        background-color: #f0fff0 !important;
    }

.bg-state-light-paid {
    cursor: pointer;
}

    .bg-state-light-paid.active,
    .bg-state-light-paid:hover {
        background-color: #f0fff0 !important;
    }

.bg-hover-paid {
    cursor: pointer;
}

    .bg-hover-paid:hover {
        --bg-color: 149, 186, 149;
        background-color: #00ff00 !important;
    }

.bg-active-paid.active {
    --bg-color: 149, 186, 149;
    background-color: #00ff00 !important;
}

.bg-state-paid {
    cursor: pointer;
}

    .bg-state-paid.active,
    .bg-state-paid:hover {
        --bg-color: 149, 186, 149;
        background-color: #00ff00 !important;
    }

.svg-icon.svg-icon-paid svg [fill]:not(.permanent):not(g) {
    transition: fill 0.3s ease;
    fill: #00ff00;
}

.svg-icon. svg:hover [fill]:not(.permanent):not(g) {
    transition: fsvg-icon-paidill 0.3s ease;
}

.badge-paid {
    color: #FFFFFF;
    background-color: #00ff00;
}

.badge-light-paid {
    color: #00ff00;
    background-color: #edffed;
}


/* Accepted */
.bg-light-accepted {
    background-color: #f0faff !important;
}

    .bg-light-accepted.hoverable:hover {
        background-color: #d1f0ff !important;
    }

.bg-accepted {
    --bg-color: 147, 171, 184;
}

    .bg-accepted.hoverable:hover {
        background-color: #caebfc !important;
    }

.bg-hover-light-accepted {
    cursor: pointer;
}

    .bg-hover-light-accepted:hover {
        background-color: #f0faff !important;
    }

.bg-state-light-accepted {
    cursor: pointer;
}

    .bg-state-light-accepted.active,
    .bg-state-light-accepted:hover {
        background-color: #f0faff !important;
    }

.bg-hover-accepted {
    cursor: pointer;
}

    .bg-hover-accepted:hover {
        --bg-color: 147, 171, 184;
        background-color: #00a8ff !important;
    }

.bg-active-accepted.active {
    --bg-color: 147, 171, 184;
    background-color: #00a8ff !important;
}

.bg-state-accepted {
    cursor: pointer;
}

    .bg-state-accepted.active,
    .bg-state-accepted:hover {
        --bg-color: 147, 171, 184;
        background-color: #00a8ff !important;
    }

.svg-icon.svg-icon-accepted svg [fill]:not(.permanent):not(g) {
    transition: fill 0.3s ease;
    fill: #00a8ff;
}

.svg-icon. svg:hover [fill]:not(.permanent):not(g) {
    transition: fsvg-icon-acceptedill 0.3s ease;
}

.badge-accepted {
    color: #FFFFFF;
    background-color: #00a8ff;
}

.badge-light-accepted {
    color: #00a8ff;
    background-color: #ebf8ff;
}


/* Rejected */
.bg-light-rejected {
    background-color: #fff6ed !important;
}

    .bg-light-rejected.hoverable:hover {
        background-color: #ffe7cf !important;
    }

.bg-rejected {
    --bg-color: 181, 163, 145;
}

    .bg-rejected.hoverable:hover {
        background-color: #ffe6cc !important;
    }

.bg-hover-light-rejected {
    cursor: pointer;
}

    .bg-hover-light-rejected:hover {
        background-color: #fff6ed !important;
    }

.bg-state-light-rejected {
    cursor: pointer;
}

    .bg-state-light-rejected.active,
    .bg-state-light-rejected:hover {
        background-color: #fff6ed !important;
    }

.bg-hover-rejected {
    cursor: pointer;
}

    .bg-hover-rejected:hover {
        --bg-color: 181, 163, 145;
        background-color: #ff8200 !important;
    }

.bg-active-rejected.active {
    --bg-color: 181, 163, 145;
    background-color: #ff8200 !important;
}

.bg-state-rejected {
    cursor: pointer;
}

    .bg-state-rejected.active,
    .bg-state-rejected:hover {
        --bg-color: 181, 163, 145;
        background-color: #ff8200 !important;
    }

.svg-icon.svg-icon-rejected svg [fill]:not(.permanent):not(g) {
    transition: fill 0.3s ease;
    fill: #ff8200;
}

.svg-icon. svg:hover [fill]:not(.permanent):not(g) {
    transition: fsvg-icon-rejectedill 0.3s ease;
}

.badge-rejected {
    color: #FFFFFF;
    background-color: #ff8200;
}

.badge-light-rejected {
    color: #ff8200;
    background-color: #fff5eb;
}


/* Canceled */
.bg-light-canceled {
    background-color: #ffebf3 !important;
}

    .bg-light-canceled.hoverable:hover {
        background-color: #ffcfe2 !important;
    }

.bg-canceled {
    --bg-color: 181, 145, 159;
}

    .bg-canceled.hoverable:hover {
        background-color: #ffc9de !important;
    }

.bg-hover-light-canceled {
    cursor: pointer;
}

    .bg-hover-light-canceled:hover {
        background-color: #ffebf3 !important;
    }

.bg-state-light-canceled {
    cursor: pointer;
}

    .bg-state-light-canceled.active,
    .bg-state-light-canceled:hover {
        background-color: #ffebf3 !important;
    }

.bg-hover-canceled {
    cursor: pointer;
}

    .bg-hover-canceled:hover {
        --bg-color: 181, 145, 159;
        background-color: #ff0063 !important;
    }

.bg-active-canceled.active {
    --bg-color: 181, 145, 159;
    background-color: #ff0063 !important;
}

.bg-state-canceled {
    cursor: pointer;
}

    .bg-state-canceled.active,
    .bg-state-canceled:hover {
        --bg-color: 181, 145, 159;
        background-color: #ff0063 !important;
    }

.svg-icon.svg-icon-canceled svg [fill]:not(.permanent):not(g) {
    transition: fill 0.3s ease;
    fill: #ff0063;
}

.svg-icon. svg:hover [fill]:not(.permanent):not(g) {
    transition: fsvg-icon-canceledill 0.3s ease;
}

.badge-canceled {
    color: #FFFFFF;
    background-color: #ff0063;
}

.badge-light-canceled {
    color: #ff0063;
    background-color: #fce8f0;
}

.pl-5 {
    padding-left: 5px !important;
}

.pl-10 {
    padding-left: 10px !important;
}

.pr-5 {
    padding-right: 5px !important;
}

.pr-10 {
    padding-right: 10px !important;
}

.mr-3 {
    margin-right: 3px !important;
}

.mr-5 {
    margin-right: 5px !important;
}

.mr-10 {
    margin-right: 10px !important;
}

.ml-3 {
    margin-left: 3px !important;
}

.ml-5 {
    margin-left: 5px !important;
}

.ml-10 {
    margin-left: 10px !important;
}

.toastr.toastr-success {
    background-color: var(--bs-success);
    color: var(--bs-success-inverse);
}

.w-100px {
    width: 100px;
}

.max-w-100 {
    max-width: 100%;
}

.max-w-100px {
    max-width: 100px;
}

.w-80px {
    width: 80px;
}

.max-w-80 {
    max-width: 80%;
}

.max-w-80px {
    max-width: 80px;
}

.w-60px {
    width: 60px;
}

.max-w-60 {
    max-width: 60%;
}

.max-w-60px {
    max-width: 60px;
}

.w-40px {
    width: 40px;
}

.max-w-40 {
    max-width: 40%;
}

.max-w-40px {
    max-width: 40px;
}

.form-check-custom.form-check-success .form-check-input:checked {
    border: var(--kt-form-check-input-checked-border-success);
}

.dt-empty-px {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

.table-noheader thead {
    display: none;
}

.table-noheader th {
    display: none;
}

.btn-icon-text {
    height: calc(1.5em + 1.1rem + 2px);
    padding: 2px 10px !important;
}

.fs-20 {
    font-size: 20px;
}

.fs-25 {
    font-size: 25px;
}

.custom-g:first-child {
    padding-left: 0;
}

.custom-g:last-child {
    padding-right: 0;
}

.rotate-135 {
    transform: rotate(135deg);
}

.fc-event:focus {
    outline: none !important;
    /* Remove focus outline */
    box-shadow: none !important;
    /* Remove focus shadow */
}

.border-r-5 {
    border-radius: 5px;
}

.border-r-10 {
    border-radius: 10px;
}

.border-r-15 {
    border-radius: 15px;
}

.calendar-loading {
    position: absolute;
    /* Ensures it stays within the .card */
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - var(--bs-gutter-y));
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.7;
    background-color: #fff;
    z-index: 10;
    /* Higher than card elements but lower than modal/dialog */
    text-align: center;
    border-radius: inherit;
    /* Matches card border-radius */
}

.event-removing {
    position: absolute;
    /* Ensures it stays within the .card */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.9;
    background-color: #fff;
    z-index: 10;
    /* Higher than card elements but lower than modal/dialog */
    text-align: center;
    border-radius: inherit;
    /* Matches card border-radius */
}

.ql-container {
    min-height: 200px;
    max-height: 500px;
}

    .ql-container .ql-editor {
        max-height: 500px;
    }

.ql-min-h-400 {
    min-height: 400px;
}

.fc-daygrid-body,
.fc-scrollgrid-sync-table,
.fc-timegrid-body,
.fc-timegrid-body > div > table {
    width: 100% !important;
    max-width: 100% !important;
}

.fc-daygrid-event .fc-event-main-frame {
    display: flex;
    align-items: flex-start !important; /* This is key */
    gap: 4px; /* Optional: spacing between time and title */
}

.fc-event-time {
    padding-top: 2px; /* Optional: fine-tune vertical alignment */
}

.fc-daygrid-event, .fc-timegrid-event {
    font-size: 11px;
}

.form-select.form-select-solid {
    border: 1px solid var(--bs-gray-300);
}

.diary-student > b > i {
    font-size: 15px !important;
}

.dz-valid {
    background-color: #d4edda !important;
}

.dz-invalid {
    background-color: #f8d7da !important;
}

.table.table.dataTable > tbody > tr.selected > * {
    box-shadow: inset 0 0 0 9999px var(--bs-primary);
}

.table.table.dataTable > tbody > tr.selected a {
    font-weight: unset;
}

.table:not(.table-bordered) td:first-child, .table:not(.table-bordered) th:first-child, .table:not(.table-bordered) tr:first-child {
    padding-left: .75rem;
}

.table:not(.table-bordered) td:last-child, .table:not(.table-bordered) th:last-child, .table:not(.table-bordered) tr:last-child {
    padding-right: .75rem;
}

.shadow-bottom-right-primary {
    box-shadow: 5px -5px 0px 0px var(--bs-primary) !important;
    position: relative;
    z-index: 1;
    border-radius: 5px;
}

.float-right {
    float: right;
}
