.booking-wrapper {
    overflow-y: hidden;
    overflow-x: auto;
    /*max-width: 570px;*/
    position: relative;
    flex-grow: 1;
    width: 300px;
}
.booking-wrapper > .booking {
    display: flex;
}
.booking-wrapper > .booking > div {
    width: 60px;
}
.booking-wrapper > .booking > div:first-child {
    position: sticky;
    left: 0;
    top: 0;
    z-index: 1;
    background-color: var(--white);
    align-self: flex-start;
}
.booking-wrapper > .booking > div.last-day:not(:last-of-type) {
    margin-right: 5px;
}
.booking-wrapper > .booking > div > i {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 59px;
    min-height: 39px;
    margin: 0 1px 1px 0;
    cursor: pointer;
    background-color: var(--bg-input);
    font-style: normal;
    font-size: 0.8em;
    text-align: center;
    line-height: 1em;
    border-radius: 0.25rem;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.booking-wrapper > .booking > div:not(:first-child) > i:not(:first-child),
.booking-wrapper > .booking > div > i:not([disabled])
{
    color: transparent;
}
.booking-wrapper > .booking > div > i:not([disabled]):not(.record):not(.request):hover {
    color: var(--dark);
}
.booking-wrapper > .booking > div > i[disabled] {
    cursor: not-allowed;
    background-color: #a4a4a43d;
}
.booking-wrapper > .booking > div > i.settings {
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='14'%3E%3Cpath fill='%23ffffff' d='M 13.1875 3 L 13.03125 3.8125 L 12.4375 6.78125 C 11.484375 7.15625 10.625 7.683594 9.84375 8.3125 L 6.9375 7.3125 L 6.15625 7.0625 L 5.75 7.78125 L 3.75 11.21875 L 3.34375 11.9375 L 3.9375 12.46875 L 6.1875 14.4375 C 6.105469 14.949219 6 15.460938 6 16 C 6 16.539063 6.105469 17.050781 6.1875 17.5625 L 3.9375 19.53125 L 3.34375 20.0625 L 3.75 20.78125 L 5.75 24.21875 L 6.15625 24.9375 L 6.9375 24.6875 L 9.84375 23.6875 C 10.625 24.316406 11.484375 24.84375 12.4375 25.21875 L 13.03125 28.1875 L 13.1875 29 L 18.8125 29 L 18.96875 28.1875 L 19.5625 25.21875 C 20.515625 24.84375 21.375 24.316406 22.15625 23.6875 L 25.0625 24.6875 L 25.84375 24.9375 L 26.25 24.21875 L 28.25 20.78125 L 28.65625 20.0625 L 28.0625 19.53125 L 25.8125 17.5625 C 25.894531 17.050781 26 16.539063 26 16 C 26 15.460938 25.894531 14.949219 25.8125 14.4375 L 28.0625 12.46875 L 28.65625 11.9375 L 28.25 11.21875 L 26.25 7.78125 L 25.84375 7.0625 L 25.0625 7.3125 L 22.15625 8.3125 C 21.375 7.683594 20.515625 7.15625 19.5625 6.78125 L 18.96875 3.8125 L 18.8125 3 Z M 14.8125 5 L 17.1875 5 L 17.6875 7.59375 L 17.8125 8.1875 L 18.375 8.375 C 19.511719 8.730469 20.542969 9.332031 21.40625 10.125 L 21.84375 10.53125 L 22.40625 10.34375 L 24.9375 9.46875 L 26.125 11.5 L 24.125 13.28125 L 23.65625 13.65625 L 23.8125 14.25 C 23.941406 14.820313 24 15.402344 24 16 C 24 16.597656 23.941406 17.179688 23.8125 17.75 L 23.6875 18.34375 L 24.125 18.71875 L 26.125 20.5 L 24.9375 22.53125 L 22.40625 21.65625 L 21.84375 21.46875 L 21.40625 21.875 C 20.542969 22.667969 19.511719 23.269531 18.375 23.625 L 17.8125 23.8125 L 17.6875 24.40625 L 17.1875 27 L 14.8125 27 L 14.3125 24.40625 L 14.1875 23.8125 L 13.625 23.625 C 12.488281 23.269531 11.457031 22.667969 10.59375 21.875 L 10.15625 21.46875 L 9.59375 21.65625 L 7.0625 22.53125 L 5.875 20.5 L 7.875 18.71875 L 8.34375 18.34375 L 8.1875 17.75 C 8.058594 17.179688 8 16.597656 8 16 C 8 15.402344 8.058594 14.820313 8.1875 14.25 L 8.34375 13.65625 L 7.875 13.28125 L 5.875 11.5 L 7.0625 9.46875 L 9.59375 10.34375 L 10.15625 10.53125 L 10.59375 10.125 C 11.457031 9.332031 12.488281 8.730469 13.625 8.375 L 14.1875 8.1875 L 14.3125 7.59375 Z M 16 11 C 13.25 11 11 13.25 11 16 C 11 18.75 13.25 21 16 21 C 18.75 21 21 18.75 21 16 C 21 13.25 18.75 11 16 11 Z M 16 13 C 17.667969 13 19 14.332031 19 16 C 19 17.667969 17.667969 19 16 19 C 14.332031 19 13 17.667969 13 16 C 13 14.332031 14.332031 13 16 13 Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center center;
    background-color: #156DB7;
}
.booking-wrapper > .booking > div > i.request,
.booking-wrapper > .booking > div > i.record
{
    background-color: #999999;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' width='20'%3E%3Cpath fill='%23ffffff' d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center center;
}
.booking-wrapper > .booking > div > i.record {
    background-color: #3685C8;
}

.booking-settings {
    display: none;
}
.modal-body .booking-settings {
    display: flex;
    flex-wrap: wrap;
}
.booking-wrapper > .booking > div > i + div {
    display: none;
    position: absolute;
    padding: 0.5rem;
    background-color: var(--white);
    border-radius: 0.5rem;
    margin-left: 30px;
    margin-top: -55px;
    transform: translate(-50%, -50%);
    z-index: 1;
}
.booking-wrapper > .booking > div:last-child > i + div {
    margin-left: -60px;
    margin-top: -19px;
}
.booking-wrapper > .booking > div > i:hover + div,
.booking-wrapper > .booking > div > i + div:hover
{
    display: flex;
}
.booking-wrapper > .booking > div > i + div:after {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: var(--white) transparent transparent transparent;
    transform: rotate(0deg);
    position: absolute;
    left: calc(50% - 10px);
    bottom: -10px;
}
.booking-wrapper > .booking > div:last-child > i + div:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent var(--white);
    transform: rotate(0deg);
    left: auto;
    bottom: calc(50% - 10px);
    right: -9px;
}
.booking-wrapper > .booking > div > i + div img {
    border-radius: 50%;
    margin-right: 0.5rem;
}
.booking-wrapper > .booking > div > i + div .sm {
    opacity: 0.5;
}
.booking-wrapper > .booking > div > i + div a.h3 {
    font-size: 1em;
    margin: 0;
    padding: 0;
    display: inline-block;
}