.calendar-slot.calendar-slot-today-first {
    border-left: 2px solid gray;
}
.calendar-slot.calendar-slot-today-last {
    border-right: 2px solid gray;
}
.calendar-slot.calendar-slot-selected {
    border-top: 2px solid gray;
    border-bottom: 2px solid gray;
}

.calendar-slot.calendar-slot-weekend {
    background-color: #EEF;
}

.calendar-slot.calendar-slot-today {
    background-color: #CFF;
}


.calendar-slot.calendar-slot-has-entries {
    background-color: #ABC;
}

.calendar-slot.calendar-slot-booked.workorder-cancelled{
    background-color: #DDD;
}

.calendar-slot.calendar-slot-booked {
    background-color: #DD4;
}

.calendar-slot.calendar-slot-overbooked {
    background-color: #F66;
}

.calendar-slot.calendar-slot-booked.workorder-finished {
    background-color: #4D4;
}

.calendar-slot a {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(0,0,0,0);
    background: none;
    text-decoration: inherit;
    z-index: 1;
}

.calendar-slot a:hover {
    color: black;
    background: rgba(80, 120, 255, 0.5);
}

.calendar {
    text-align: center;
}

.calendar-head-row {
    display: flex;
    background-color: rgb(170, 203, 204);
    border-bottom: 1px solid #555;
}

.calendar-head-row > div:nth-child(odd) {
    background-color: rgb(191, 210, 230);
}

.calendar-head-row > div:only-child {
    background-color: rgb(120, 162, 202);
}

.calendar-body-row {
    display: flex;
    height: 2em;
    /*background-color: rgb(213, 233, 213)*/
    border-top: 1px solid #555;
    border-bottom: 1px solid #555;
}

.calendar-body-row > * > span {
    z-index:1;
    position: relative;
    color: rgba(255, 255, 255, 1);
    text-shadow: 0 0 3px black;
    top: 0.5em;
}

/*.calendar-body-row > div:nth-child(odd) {
    background-color: rgb(180, 200, 180);
}*/

.calendar-body-row-overlay {
    position:relative;
    top: -2em;
    margin-bottom: -2em;
    text-align: left;
    height: 2em
}

.calendar-body-row-overlay > div {
    background-color: rgba(255, 0, 0, 0.5);/*rgba(120, 120, 80, 0.5);*/
    position: absolute;
    display: inline-block;
    box-shadow: 0 0 3px black inset;
}