.table-responsive {
    position: relative;
    max-width: 100%;
    width: auto;
    padding-bottom: 1rem;
}

.table-responsive .table {
    min-width: 100%;
}

@media (max-width: 768px) {
    #page_heading .d-block.btn-group,
    #page_heading .d-block.btn-group a {
        clear: both;
        width: 100%;
    }
    #page_heading .d-block.btn-group a {
        border-radius: .25rem !important;
        margin-bottom: .5rem !important;
    }
    #page_heading .d-block.btn-group a:first-child {
        margin-top: .5rem !important;
    }
    #page_heading .d-block.btn-group a:last-child {
        margin-bottom: 0 !important;
    }
}

.sidebar .nav-item .collapse {
  z-index: 100;
}

.bg-login-image {
    background: url('/img/login-logo.png');
    background-position: center;
    background-size: cover;
}
.login-layout-logo-black {
    width: 100%;
    max-width: 300px;
    margin: 0 auto 20px auto;
}
.form-group.row .form-check {
    padding-left: 16px;
}

.form-inline .input-group {
    margin-left: 5px;
}

/*
*
* Custom Bootstrap Invalid Form Elements
*
 */
.is-invalid .form-control,
.is-invalid form-check {
  border-color: #e74a3b;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23e74a3b' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23e74a3b' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.is-invalid .form-control:focus,
.is-invalid form-check:focus {
  border-color: #e74a3b;
  box-shadow: 0 0 0 0.2rem rgba(231, 74, 59, 0.25);
}

.is-invalid .invalid-feedback,
.is-invalid .invalid-tooltip {
  display: block;
}

.is-invalid textarea.form-control {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.is-invalid .custom-select {
  border-color: #e74a3b;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%235a5c69' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23e74a3b' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23e74a3b' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.is-invalid .custom-select:focus {
  border-color: #e74a3b;
  box-shadow: 0 0 0 0.2rem rgba(231, 74, 59, 0.25);
}

.is-invalid .form-check-label {
  color: #e74a3b;
}

.is-invalid .custom-control-label {
  color: #e74a3b;
}

.is-invalid .custom-control-label::before {
  border-color: #e74a3b;
}

.is-invalid .custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(231, 74, 59, 0.25);
}

.is-invalid .custom-file-input ~ .custom-file-label {
  border-color: #e74a3b;
}

.is-invalid .custom-file-input:invalid:focus ~ .custom-file-label {
  border-color: #e74a3b;
  box-shadow: 0 0 0 0.2rem rgba(231, 74, 59, 0.25);
}

/*
* Misc
 */
.mwidth-25 {
    max-width: 50px !important;
}

.mwidth-50 {
    max-width: 50px !important;
}

.mwidth-100 {
    max-width: 150px !important;
}

.mwidth-150 {
    max-width: 150px !important;
}

.mwidth-200 {
    max-width: 200px !important;
}

.mwidth-250 {
    max-width: 300px !important;
}

.mwidth-300 {
    max-width: 300px !important;
}

.mwidth-350 {
    max-width: 300px !important;
}

.mwidth-400 {
    max-width: 400px !important;
}


.card-row a.card-as-link:hover {
    text-decoration: none !important;
}

.todays-pto-card p:last-child {
    margin-bottom: 0;
}

.gj-picker.gj-picker-bootstrap.datetimepicker div[role="body"] {
    padding: 0.5em;
}

.gj-picker.gj-picker-bootstrap.datetimepicker div[role="body"] table tbody tr td {
    padding: 0.25em;
}

.table-icon-link {
    font-size: 1.7em;
    line-height: 1.2em;
    padding: 0 12px 0 2px;
    color: #3a3b45;
}

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

.table.no-header tbody tr:first-child th, .table.no-header tbody tr:first-child td {
    border-top: 0;
}

.h4-with-icon .icon-circle {
    margin-right: 10px;
}

.h4-with-icon h4 {
    line-height: 1.8em;
}

.fw-900 {
    font-weight: 900;
}

/*
/* Icon Management
 */

.icon-color-selector,
.icon-selector {
    cursor: pointer;
}

/*
* High Fize Prize Listing
 */

.high-five-prize {
    text-align: center;
    word-wrap: normal;
}

.high-five-prize img {
    max-height: 200px;
    margin-bottom: 20px;
}

/*
*
* ==========================================
* CUSTOM UTIL CLASSES
* ==========================================
*
*/
.clearfix::after,
.calendar ol::after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

/* ================
Calendar Styling */
.calendar {
    border-radius: 10px;
}

.calendar .month,
.calendar .calendar-title .fa {
    font-size: 2rem;
}

.calendar ol li {
    float: left;
    width: 14.28571%;
}

.calendar .day-names {
    /* border-bottom: 1px solid #eee;
    padding-left: 0.5rem; */
    text-align: center;
}

.calendar .day-names li {
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

.calendar .days li {
    border: 1px solid #eee;
    min-height: 7rem;
    pointer-events : none;
    padding-bottom: 0.5rem;
}

.calendar .days li.today {
    color: #628A1A;
    border-color: #628A1A;
    font-weight: bold;
}

.calendar .days li.holiday-morning {
    background-image: linear-gradient(180deg, #000 50%, #fff 50%);
}

.calendar .days li.holiday-afternoon {
    background-image: linear-gradient(180deg, #fff 50%, #000 50%);
}

.calendar .days li.holiday-morning.bg-gradient-success,
.calendar .days li.holiday-afternoon.bg-gradient-success {
    background-image: linear-gradient(180deg, #1cc88a 10%, #13855c 100%);
}

.calendar .days li.holiday-morning.bg-gradient-danger,
.calendar .days li.holiday-afternoon.bg-gradient-danger {
    background-image: linear-gradient(180deg, #e74a3b 10%, #be2617 100%);

}

.calendar .days.calendar-selectable li {
    pointer-events : auto;
}

.calendar .days.calendar-selectable li {
    min-height: 4rem;
}

.calendar .days.calendar-selectable li.selectable {
    cursor: pointer;
}

.calendar .days.calendar-selectable li.selectable.selected {
    background-image: none;
    background-color: #858796;
    color: #fff;
}

.calendar .days.calendar-selectable li.selectable:hover:not('.selected') {
    background-color: #eaecf4 !important;
    color: #000;
}

.calendar .days li:nth-child(n+29) {
    border: 1px solid #eee;
}

.calendar .days li .date {
    margin: 0.5rem 0 0.5rem 0.5rem;
}

.calendar .days li .event {
    font-size: 0.75rem;
    padding: 0.4rem;
    color: white;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border-radius: 4rem;
    margin-bottom: 1px;
    pointer-events: auto;
}

.calendar .days li .event.has-link {
    cursor: pointer;
}

.calendar .days li .event.span-2 {
    width: 200%;
}

.calendar .days li .event.span-3 {
    width: 300%;
}

.calendar .days li .event.span-4 {
    width: 400%;
}

.calendar .days li .event.span-5 {
    width: 500%;
}

.calendar .days li .event.span-6 {
    width: 600%;
}

.calendar .days li .event.span-7 {
    width: 700%;
}

.calendar .days li .event.all-day {
    border-radius: 0;
}

.calendar .days li .event.all-day.begin,
.calendar .days li .event.begin {
    border-radius: 1rem 0 0 1rem;
}

.calendar .days li .event.all-day.end,
.calendar .days li .event.end {
    border-radius: 0 1rem 1rem 0;
}

.calendar .days li .event.all-day.begin.end,
.calendar .days li .event.begin.end {
    border-radius: 1rem 1rem 1rem 1rem;
}

.calendar .days li .event.clear {
    background: none;
    pointer-events : none;
}

.calendar .days li.outside .date {
    color: #ddd;
}
.calendar .days li.outside.holiday .date,
.calendar .days li.holiday .date,
.calendar .days li.holiday .date .holiday-label {
    color: #fff !important;
}
.calendar .days li.outside.holiday .date,
.calendar .days li.holiday .date {
    font-weight: 700;
}
.calendar .days li.holiday .date .holiday-label,
.calendar .days .holiday-label {
    padding-left: 0.5rem;
    font-weight: normal;
}
.calendar .legend-item {
    min-width: 120px;
    padding: .3rem .8rem;
    text-align: center;
}
#review-pto-calendar .legend-item,
#book-pto-calendar .legend-item {
    padding: .3rem .5rem;
    font-size: 0.8em;
}
@media (max-width: 768px) {
    .calendar .calendar-title .month,
    .calendar .calendar-title .fa {
        font-size: 1.5rem !important;
    }
    .calendar .calendar-title .month .fa.fa-calendar {
        margin-right: 0.5rem !important;
    }
}


/*
* Book and Review PTO
 */
#review-pto-calendar.calendar .calendar-title .month,
#review-pto-calendar.calendar .calendar-title .fa,
#book-pto-calendar.calendar .calendar-title .month,
#book-pto-calendar.calendar .calendar-title .fa {
    font-size: 1.6rem !important;
}

#review-pto-calendar.calendar .calendar-title .month .fa.fa-calendar,
#book-pto-calendar.calendar .calendar-title .month .fa.fa-calendar {
    margin-right: 0.2rem !important;
}

#review-pto-calendar .calendar-title .month .fa.fa-calendar,
#book-pto-calendar .calendar-title .month .fa.fa-calendar {
    margin-right: 0.2rem !important;
}

#review-pto-calendar.calendar .holiday-label,
#book-pto-calendar.calendar .holiday-label {
    font-size: 0.7rem !important;
}

@media (min-width: 1200px) {
    #review-pto-calendar,
    #book-pto-form {
        padding: 0 0 0 2rem;
    }
}

@media (max-width: 960px) {
    #review-pto-calendar.calendar .calendar-title .month,
    #review-pto-calendar.calendar .calendar-title .fa,
    #book-pto-calendar.calendar .calendar-title .month,
    #book-pto-calendar.calendar .calendar-title .fa {
        font-size: 1.2rem !important;
    }
    #review-pto-calendar.calendar .calendar-title .month .fa.fa-calendar,
    #book-pto-calendar.calendar .calendar-title .month .fa.fa-calendar {
        margin-right: 0.2rem !important;
    }
}

@media (max-width: 768px) {
    #review-pto-calendar.calendar .calendar-title .month,
    #review-pto-calendar.calendar .calendar-title .fa,
    #book-pto-calendar.calendar .calendar-title .month,
    #book-pto-calendar.calendar .calendar-title .fa {
        font-size: 1rem !important;
    }
    #review-pto-calendar.calendar .calendar-title .month .fa.fa-calendar,
    #book-pto-calendar.calendar .calendar-title .month .fa.fa-calendar {
        margin-right: 0.2rem !important;
    }
}



.btn-green {
  color: #fff;
  background-color: #628A1A;
  border-color: #557817;
}

.btn-green:hover {
  color: #fff;
  background-color: #557817;
  border-color: #4a6914;
}

.btn-green:focus, .btn-green.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.5);
}

.btn-green.disabled, .btn-green:disabled {
  color: #fff;
  background-color: #718f3c;
  border-color: #617a33;
}

.btn-green:not(:disabled):not(.disabled):active, .btn-green:not(:disabled):not(.disabled).active,
.show > .btn-green.dropdown-toggle {
  color: #fff;
  background-color: #4a6914;
  border-color: #3f5911;
}

.btn-green:not(:disabled):not(.disabled):active:focus, .btn-green:not(:disabled):not(.disabled).active:focus,
.show > .btn-green.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.5);
}

.btn-purple {
    color: #fff;
    background-color: #80529e;
    border-color: #70488a;
}

.btn-purple:hover {
    color: #fff;
    background-color: #935eb5;
    border-color: #80529e;
}

.btn-purple:focus, .btn-purple.focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.5);
}

.btn-purple.disabled, .btn-purple:disabled {
    color: #fff;
    background-color: #9e7bb5;
    border-color: #7d638f;
}

.btn-purple:not(:disabled):not(.disabled):active, .btn-purple:not(:disabled):not(.disabled).active,
.show > .btn-purple.dropdown-toggle {
    color: #fff;
    background-color: #6b4585;
    border-color: #5c3c73;
}

.btn-purple:not(:disabled):not(.disabled):active:focus, .btn-purple:not(:disabled):not(.disabled).active:focus,
.show > .btn-purple.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.5);
}

/*
* DataTables
 */

.dataTables_length {
    display: inline-block;
    padding-left: 1.2rem;
}

/*
* Quick Links
 */

.quick-links-card .quick-link-row {
    position: relative;
    padding: 0.75rem 0;
    margin: 0.75rem auto;
}

.quick-links-card .quick-link-row:hover {
    background-color: #f1f1f1;
}

.quick-links-card .quick-link-a {
    width: 100%;
}

.quick-links-card .quick-link-row .quick-link-img {
    max-height: 1.5rem;
    max-width: 100%;
    height: auto;
    width: auto;
}

/*
* General
 */

.card-body h1,
.card-body h2,
.card-body h3,
.card-body h4,
.card-body h5,
.card-body h6 {
    margin-bottom: 1rem;
}

select[readonly],
select[readonly="readonly"],
input.form-check-input[type="checkbox"][readonly],
input.form-check-input[type="checkbox"][readonly="readonly"],
input.form-check-input[type="checkbox"][readonly] + label,
input.form-check-input[type="checkbox"][readonly="readonly"] + label {
    cursor: not-allowed;
}

.card-carousel-button,
.card-carousel-button:active {
    font-weight: bold !important;
    background-color: #fff !important;
    text-decoration: none !important;
    border: 1px solid #e3e6f0 !important;
    color: #000 !important;
}

.card-carousel-button.collapsed {
    font-weight: normal !important;
    background-color: transparent !important;
    text-decoration: underline !important;
    border: 0 !important;
    color: #69931C !important;
}

.news-item news-item-title,
.news-item news-item-title:hover,
.news-item news-item-title:active,
.news-item .h5,
.news-item .h5:hover,
.news-item .h5:active,
.news-item i,
.news-item i:hover,
.news-item i:active {
    text-decoration: none !important;
}

.g-recaptcha {
    margin: 1rem auto;
}

.g-recaptcha div:first-child {
    margin: 0 auto;
}

img.hi5logo {
    max-height: 50px;
}


/*
* Calendar Split Days
 */


#book-pto-calendar  .selectable.selected.selected-am {
    background-image: none;
    background-color: unset;
    background-image: linear-gradient(180deg, #858796 50%, transparent 50%) !important;
    color: #fff;
}

#book-pto-calendar .selectable.selected.selected-pm {
    background-image: none;
    background-color: unset;
    background-image: linear-gradient(180deg, transparent 50%, #858796 50%) !important;
    color: #5a5c69;
}

#book-pto-calendar .holiday-afternoon.selected .date.text-dark,
#book-pto-calendar .afternoon.bg-gradient-primary.selected .date.text-dark,
#book-pto-calendar .afternoon.bg-gradient-success.selected .date.text-dark,
#book-pto-calendar .afternoon.bg-gradient-info.selected .date.text-dark {
    color: rgb(255, 255, 255) !important;
}

#book-pto-calendar .holiday-morning.selected {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #858796 50%) !important;
}

#book-pto-calendar .holiday-afternoon.selected {
    background-color: #000000;
    background-image: linear-gradient(180deg, #858796 50%, #000000 50%) !important;
}

#book-pto-calendar .morning.bg-gradient-primary {
    background-color: #17171b;
    background-image: linear-gradient(180deg, #17171b 50%, #ffffff 50%);
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-primary {
    background-color: #17171b;
    background-image: linear-gradient(180deg, #ffffff 50%, #17171b 50%);
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-primary.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #17171b 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-primary.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #17171b 50%) !important;
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-success {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #1cc88a 50%, #ffffff 50%);
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-success {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #ffffff 50%, #1cc88a 50%);
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-success.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #1cc88a 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-success.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #1cc88a 50%) !important;
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-warning {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #f6c23e 50%, #ffffff 50%);
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-warning {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #ffffff 50%, #f6c23e 50%);
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-warning.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #f6c23e 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-warning.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #f6c23e 50%) !important;
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-danger {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #e74a3b 50%, #ffffff 50%);
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-danger {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #ffffff 50%, #e74a3b 50%);
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-danger.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #e74a3b 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-danger.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #e74a3b 50%) !important;
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-info {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #36b9cc 50%, #ffffff 50%);
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-info {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #ffffff 50%, #36b9cc 50%);
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-info.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #36b9cc 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-info.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #36b9cc 50%) !important;
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-secondary {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #ffffff 50%);
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-secondary {
    background-color: #858796;
    background-image: linear-gradient(180deg, #ffffff 50%, #858796 50%);
    background-size: cover;
}

#book-pto-calendar .morning.bg-gradient-secondary.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gradient-secondary.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .morning.bg-gray-600 {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #ffffff 50%);
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gray-600 {
    background-color: #858796;
    background-image: linear-gradient(180deg, #ffffff 50%, #858796 50%);
    background-size: cover;
}

#book-pto-calendar .morning.bg-gray-600.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gray-600.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .morning.bg-gray-300 {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #dddfeb 50%, #ffffff 50%);
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gray-300 {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #ffffff 50%, #dddfeb 50%);
    background-size: cover;
}

#book-pto-calendar .morning.bg-gray-300.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #dddfeb 50%, #858796 50%) !important;
    background-size: cover;
}

#book-pto-calendar .afternoon.bg-gray-300.selected {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #dddfeb 50%) !important;
    background-size: cover;
}

#book-pto-calendar .holiday-morning.bg-gradient-primary {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #3a3b45 50%) !important;
}

#book-pto-calendar .holiday-afternoon.bg-gradient-primary {
    background-color: #000000;
    background-image: linear-gradient(180deg, #3a3b45 50%, #000000 50%) !important;
}

#book-pto-calendar .holiday-morning.bg-gradient-primary {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #3a3b45 50%) !important;
}

#book-pto-calendar .holiday-afternoon.bg-gradient-primary {
    background-color: #000000;
    background-image: linear-gradient(180deg, #3a3b45 50%, #000000 50%) !important;
}

#book-pto-calendar .holiday-morning.bg-gradient-success {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #1cc88a 50%) !important;
}

#book-pto-calendar .holiday-afternoon.bg-gradient-success {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #1cc88a 50%, #000000 50%) !important;
}

#book-pto-calendar .holiday-morning.bg-gradient-warning {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #f6c23e 50%) !important;
}

#book-pto-calendar .holiday-afternoon.bg-gradient-warning {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #f6c23e 50%, #000000 50%) !important;
}

#book-pto-calendar .holiday-morning.bg-gradient-danger {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #e74a3b 50%) !important;
}

#book-pto-calendar .holiday-afternoon.bg-gradient-danger {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #e74a3b 50%, #000000 50%) !important;
}

#book-pto-calendar .holiday-morning.bg-gradient-info {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #36b9cc 50%) !important;
}

#book-pto-calendar .holiday-afternoon.bg-gradient-info {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #36b9cc 50%, #000000 50%) !important;
}

#book-pto-calendar .holiday-morning.bg-gradient-secondary,
#book-pto-calendar .holiday-morning.bg-gray-600 {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #858796 50%) !important;
}

#book-pto-calendar .holiday-afternoon.bg-gradient-secondary,
#book-pto-calendar .holiday-afternoon.bg-gray-600 {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #000000 50%) !important;
}

#book-pto-calendar .holiday-morning.bg-gray-300 {
    background-color: #000000;
    background-image: linear-gradient(180deg, #000000 50%, #dddfeb 50%) !important;
}

#book-pto-calendar .holiday-afternoon.bg-gray-300 {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #dddfeb 50%, #000000 50%) !important;
}

#book-pto-calendar .bg-gradient-primary.bg-gradient-success {
    background-color: #3a3b45;
    background-image: linear-gradient(180deg, #3a3b45 50%, #1cc88a 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-success.bg-gradient-primary {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #1cc88a 50%, #3a3b45 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-warning.bg-gradient-primary {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #f6c23e 50%, #3a3b45 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-primary.bg-gradient-warning {
    background-color: #3a3b45;
    background-image: linear-gradient(180deg, #3a3b45 50%, #f6c23e 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-danger.bg-gradient-primary {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #e74a3b 50%, #3a3b45 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-primary.bg-gradient-danger {
    background-color: #3a3b45;
    background-image: linear-gradient(180deg, #3a3b45 50%, #e74a3b 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-info.bg-gradient-primary {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #36b9cc 50%, #3a3b45 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-primary.bg-gradient-info {
    background-color: #3a3b45;
    background-image: linear-gradient(180deg, #3a3b45 50%, #36b9cc 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-600.bg-gradient-primary,
#book-pto-calendar .bg-gradient-secondary.bg-gradient-primary {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #3a3b45 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-primary.bg-gradient-secondary,
#book-pto-calendar .bg-gradient-primary.bg-gray-600 {
    background-color: #3a3b45;
    background-image: linear-gradient(180deg, #3a3b45 50%, #858796 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-300.bg-gradient-primary {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #dddfeb 50%, #3a3b45 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-primary.bg-gray-300 {
    background-color: #3a3b45;
    background-image: linear-gradient(180deg, #3a3b45 50%, #dddfeb 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-warning.bg-gradient-success {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #f6c23e 50%, #1cc88a 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-success.bg-gradient-warning {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #1cc88a 50%, #f6c23e 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-danger.bg-gradient-success {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #e74a3b 50%, #1cc88a 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-success.bg-gradient-danger {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #1cc88a 50%, #e74a3b 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-info.bg-gradient-success {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #36b9cc 50%, #1cc88a 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-success.bg-gradient-info {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #1cc88a 50%, #36b9cc 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-600.bg-gradient-success,
#book-pto-calendar .bg-gradient-secondary.bg-gradient-success {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #1cc88a 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-success.bg-gradient-secondary,
#book-pto-calendar .bg-gradient-success.bg-gray-600 {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #1cc88a 50%, #858796 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-300.bg-gradient-success {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #dddfeb 50%, #1cc88a 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-success.bg-gray-300 {
    background-color: #1cc88a;
    background-image: linear-gradient(180deg, #1cc88a 50%, #dddfeb 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-danger.bg-gradient-warning {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #e74a3b 50%, #f6c23e 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-warning.bg-gradient-danger {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #f6c23e 50%, #e74a3b 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-info.bg-gradient-warning {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #36b9cc 50%, #f6c23e 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-warning.bg-gradient-info {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #f6c23e 50%, #36b9cc 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-600.bg-gradient-warning,
#book-pto-calendar .bg-gradient-secondary.bg-gradient-warning {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #f6c23e 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-warning.bg-gradient-secondary,
#book-pto-calendar .bg-gradient-warning.bg-gray-600 {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #f6c23e 50%, #858796 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-300.bg-gradient-warning {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #dddfeb 50%, #f6c23e 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-warning.bg-gray-300 {
    background-color: #f6c23e;
    background-image: linear-gradient(180deg, #f6c23e 50%, #dddfeb 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-info.bg-gradient-danger {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #36b9cc 50%, #e74a3b 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-danger.bg-gradient-info {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #e74a3b 50%, #36b9cc 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-600.bg-gradient-danger,
#book-pto-calendar .bg-gradient-secondary.bg-gradient-danger {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #e74a3b 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-danger.bg-gradient-secondary,
#book-pto-calendar .bg-gradient-danger.bg-gray-600 {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #e74a3b 50%, #858796 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-300.bg-gradient-danger {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #dddfeb 50%, #e74a3b 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-danger.bg-gray-300 {
    background-color: #e74a3b;
    background-image: linear-gradient(180deg, #e74a3b 50%, #dddfeb 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-600.bg-gradient-info,
#book-pto-calendar .bg-gradient-secondary.bg-gradient-info {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #36b9cc 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-info.bg-gradient-secondary,
#book-pto-calendar .bg-gradient-info.bg-gray-600 {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #36b9cc 50%, #858796 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-300.bg-gradient-info {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #dddfeb 50%, #36b9cc 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-info.bg-gray-300 {
    background-color: #36b9cc;
    background-image: linear-gradient(180deg, #36b9cc 50%, #dddfeb 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gray-300.bg-gradient-secondary,
#book-pto-calendar .bg-gray-300.bg-gray-600 {
    background-color: #dddfeb;
    background-image: linear-gradient(180deg, #dddfeb 50%, #858796 50%);
    background-size: cover;
}

#book-pto-calendar .bg-gradient-secondary.bg-gray-300,
#book-pto-calendar .bg-gray-600.bg-gray-300 {
    background-color: #858796;
    background-image: linear-gradient(180deg, #858796 50%, #dddfeb 50%);
    background-size: cover;
}

#book-pto-calendar .select-error.bg-gradient-danger,
#book-pto-calendar .select-error.bg-gradient-danger.selected {
    background-image: linear-gradient(180deg, #e74a3b 10%, #be2617 100%) !important;
}


#book-pto-calendar .select-error.bg-gradient-danger .text-dark,
#book-pto-calendar .select-error.bg-gradient-danger.selected .text-dark {
    color: #fff !important;
}
