div.action-result {
    margin: 30px 15px;
    padding: 6px 12px;
    background: #fff;
}
div.action-result.success {
    border: 2px solid #00a32a;
}
div.action-result.error {
    border: 2px solid #d63638;
}
.ajax-loading {
    opacity: 0.6;
    visibility: visible;
    pointer-events: none;
}
.align-right {
    text-align: right;
}

.citylab-booking {
    margin: 0 15px;
}
.citylab-booking a:focus,
.citylab-booking button:focus {
    outline: none;
    box-shadow: none;
}
.citylab-booking .btn,
.citylab-booking button {
    display: inline-block;
    width: fit-content;
    color: #fff;
    text-decoration: none;
    background: #0085ba;
    border: none;
    padding: 8px 16px;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
}
.citylab-booking .btn.grey,
.citylab-booking button.grey {
    background: #a6a6a6;
}
.citylab-booking .btn.red,
.citylab-booking button.red {
    background: #d63638;
}
.citylab-booking .btn.green,
.citylab-booking button.green {
    background: #00a32a;
}
.citylab-booking .btn:hover,
.citylab-booking button:hover {
    opacity: .9;
}
.citylab-booking button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}
.citylab-booking table {
    width: 100%;
    text-align: left;
    border-spacing: 0;
    border: 1px solid #888;
    margin-bottom: 20px;
}
.citylab-booking table th {
    padding: 6px 12px;
    background: #e8e8e8;
}
.citylab-booking table td {
    padding: 6px 12px;
    background: #fafafa;
    border-top: 1px solid #888;
}
.citylab-booking table td ul {
    margin: 0;
    list-style: disc;
    padding-left: 18px;
}
.citylab-booking table td ul li {
    margin-bottom: 0;
}
.citylab-booking .form-group {
    display: flex;
    max-width: 700px;
    gap: 20px;
    margin: 20px 0;
}
.citylab-booking .form-group .label-wrapper {
    width: 40%;
}
.citylab-booking .form-group .input-wrapper {
    width: 60%;
}
.citylab-booking .form-group label {
    font-weight: bold;
    line-height: 14px;
    margin-top: 8px;
    display: inline-block;
}
.citylab-booking .form-group label.required::after {
    content: "*";
    color: #d63638;
    font-weight: bold;
    margin-left: 4px;
}
.citylab-booking .form-group input[type="text"],
.citylab-booking .form-group input[type="email"],
.citylab-booking .form-group input[type="number"],
.citylab-booking .form-group input[type="tel"],
.citylab-booking .form-group textarea,
.citylab-booking .form-group select {
    width: 100%;
    max-width: unset;
}
.citylab-booking .form-group input[type="time"] {
    width: 90px;
    margin: 0 12px 7px 0;
}
.citylab-booking .form-group .available-hours-wrapper {
    display: flex;
    align-items: flex-start;
}
.citylab-booking .form-group .remove-slot-day {
    padding: 7px 10px;
}
.citylab-booking .form-group .checkbox-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 0;
}
.citylab-booking .form-group .checkbox-wrapper label {
    font-weight: normal;
    margin-top: 0;
}
.citylab-booking .form-group .checkbox-wrapper input[type="checkbox"] {
    margin: 0;
}
.citylab-booking .form-error {
    color: #d63638;
    margin: 10px 0;
}
.citylab-booking .show-calendars-wrapper {
    display: flex;
    align-items: center;
    column-gap: 20px;
    row-gap: 8px;
    flex-wrap: wrap;
}
.citylab-booking #calendar-booking {
    margin: 20px 0;
}
.citylab-booking .show-after-calendar,
.citylab-booking .show-after-date,
.citylab-booking .show-after-slot {
    display: none;
}
.citylab-booking .booking-person-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}
.citylab-booking .booking-person-wrapper:not(:first-of-type) {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #bbb;
}
.citylab-booking .booking-person-wrapper .name,
.citylab-booking .booking-person-wrapper .surname {
    width: calc(50% - 4px) !important;
    margin: 0;
}

#calendar-booking-filter .checkbox-wrapper,
#calendar-giftcards-filter .checkbox-wrapper {
    padding: 6px 10px;
    border-radius: 6px;
}

.citylab-booking .booking-list-view,
.citylab-booking .giftcards-table {
    margin: 30px 0;
}
.citylab-booking #load-more-bookings,
.citylab-booking #load-more-giftcards {
    display: block;
    margin: auto;
}

.citylab-booking .blocked-table {
    margin: 20px 0;
}

.citylab-booking .regenerate-coupon-wrapper {
    display: flex;
    gap: 12px;
    margin-bottom: 2em;
}

.citylab-booking .filter-giftcards {
    max-width: unset;
}
.citylab-booking .filter-giftcards input[type="text"],
.citylab-booking .filter-giftcards input[type="number"] {
    width: 150px;
}
.citylab-booking .filter-giftcards input[type=number]::-webkit-inner-spin-button,
.citylab-booking .filter-giftcards input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.citylab-booking .giftcards-table td.coupon {
    font-size: 14px;
    font-weight: 800;
}
.citylab-booking .giftcards-table td a.order-link {
    color: #000;
}

@media screen and (max-width: 767px) {
    .citylab-booking .show-calendars-wrapper {
        column-gap: 10px;
        flex-direction: row !important;
    }
    .citylab-booking .show-calendars-wrapper p,
    .citylab-booking .form-group .checkbox-wrapper {
        margin: 0;
    }
    .citylab-booking .form-group .checkbox-wrapper input[type="checkbox"] {
        width: 16px;
        height: 16px;
    }
    .citylab-booking .form-group .checkbox-wrapper input[type="checkbox"]:checked::before {
        width: 21px;
        height: 21px;
        margin: -3px 0 0 -4px;
    }
    .citylab-booking .actions {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }
    .citylab-booking .form-group {
        flex-direction: column;
    }
    .citylab-booking .form-group .label-wrapper,
    .citylab-booking .form-group .input-wrapper {
        width: 100%;
    }
}
