body.main {
    background-color: #transparent;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
    display: inline-block;
}

table, th, td {
    border: 1px solid #E8ECE8;
    border-radius: 2px;
}

table {
    min-width: 200px;
    background-color: #E8ECE8;
    border-radius: 5px;
    /*table-layout: fixed;*/
    empty-cells: hide;
}

th, td {
    text-align: center;
    width: calc(100%/8)
}

td {
    background-color: #E8ECE8;
}

th, .week {
    background-color: #bdc1bd;
}

.box {
    display: -webkit-flex;
    display: flex;
    padding: 5px;
}

.column {
    flex-direction: column;
}

.center {
    justify-content: center;
}

.mainbox {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    justify-content: center;
	text-align:center;
}
.row {
    flex-direction: row;
}

.item {
    padding: 5px;
}

.calendar {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    padding: 5px;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
}

.free {
    background-color: #DDFFCC;
}

.occupied {
    background-color: #FFBCB7;
}

.arrival {
    background: linear-gradient(-225deg, #DDFFCC 40%, #ffddd8 51%, #FFBCB7 80%);
}

.departure {
    background: linear-gradient(315deg, #DDFFCC 40%, #ffddd8 51%, #FFBCB7 80%);
}

.switch {
    background: linear-gradient(315deg, #FFBCB7 40%, #ffddd8 50%, #FFBCB7 80%);
}

.unused {
    background-color: #E8ECE8;
    color: #E8ECE8;
    text-align: center;
    border: none;
}

.old {
    background-color: #c8cbc8;
    color: #585958;
    text-align: center;
    border: none;
}