body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
#content {
    flex-grow: 1;
}
a {
    color: #3c6186;
}
a:hover, a:active {
    color: #2c3e50;
}
.no-wrap {
    white-space: nowrap;
}
.card {
    background: #f1f5f6;
}
.list-group-item {
    border-color: #2c3e50;
}
.list-group-item.active {
    background: #3c6186;
    border-color: #2c3e50;
}
.btn-primary, .btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show > .btn-primary.dropdown-toggle {
    background: #3c6186;
    border-color: #2c3e50;
}
.table thead th {
    white-space: nowrap;
}
#page-header {
    background: #2c3e50;
}
#user-profile-picture {
    text-align: center;
}

.custom-control-input:checked {
    background-color: #3c6186;
    border-color: #3c6186;
}

#page-footer {
    margin-top: 10px;
}
#pdf-filler {height: calc(100vh - 20px) !important;}
#pdf-filler .multiple-filler { background: none; }

.calendar .month {display: none;}
.calendar .month.current-month {display: block;}
.calendar .month-nav {
    cursor: pointer;
    font-size: 1.5rem;
    margin: 0;
}
.calendar .month-nav.disabled {
    cursor: initial;
    opacity: .65;
}
.calendar .month-label {
    text-align: center;
}
.calendar .week-label {
    text-align: center;
}
.calendar .week-label .col {
    width: calc(100%/7);
}
.calendar .week-label .title {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.calendar .days .cell {
    display: flex;
    height: 100%;
    flex-direction: column;
    border-bottom: 1px solid #dee2e6;
    min-height: 140px;
}
.calendar .days .col {
    width: calc(100%/7);
}
.calendar .days .cell.selected {
    background: #4f7fb0;
    color: white;
}
.calendar .days .cell.selected.selected-boundary {
    background: #3c6186;
}
.calendar .days .day {
    cursor: pointer;
    font-size: 12px;
    line-height: 25px;
    text-align: center;
}

.calendar .days .day .day-number {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

.calendar .days .day .day-number span {
    display: inline-block;
    width: 25px;
    border-radius: 50%;
}
.calendar .days .day.today .day-number span {
    color: white;
    background-color: #2c3e50;
}
.calendar .days .content {
    display: flex;
    height: 100%;
    flex-direction: column;
    padding: 0 5px;
}
.calendar .days .content .available {
    cursor: pointer;
    font-size: 12px;
    line-height: 16px;
    min-height: 26px;
    color: white;
    padding: 5px;
    margin-bottom: 0.25rem;
}
.calendar .days .content .available div {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.calendar .days .content .available.selected {
    opacity: 0.6;
    border: 2.5px solid #0d6efd;
    padding-top: 2.5px;
    padding-bottom: 2.5px;

}
.calendar .days .content .available.available-day {
    background-color: #007bff;
}
.calendar .days .content .available.available-night {
    background-color: darkslategray;
}
.calendar .days .content .available.available-emergency {
    background-color: #dc3545;
}

[data-toggle="collapse"] .fa:before {
    content: "\f077";
}

[data-toggle="collapse"].collapsed .fa:before {
    content: "\f078";
}

@media (min-width: 768px) {
    #page-footer {
        margin-top: 90px;
    }
    #pdf-filler {height: calc(100vh - 250px) !important;}

    .calendar .days .cell {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
}
@media (min-width: 1200px) {
.menu-left {
    width: 375px;
}
}
