.clear {
    clear: both
}

.nobr {
    white-space: nowrap
}

.clear {
    clear: both
}

.nobr {
    white-space: nowrap
}

.wc-bookings-date-tooltip {
    position: absolute;
    background-color: #fff;
    color: #1a1a1a;
    border: 1px solid #767676;
    font-size: 13px;
    box-sizing: border-box;
    max-width: 220px;
    padding: 6px 10px;
    z-index: 9999;
    pointer-events: auto
}

.wp-block-woocommerce-add-to-cart-form form.cart>.wc-bookings-booking-form-button {
    grid-column: 1/-1
}

.wp-block-woocommerce-add-to-cart-form .wc-bookings-booking-form-button:disabled {
    background-color: buttonface;
    color: buttontext;
    border-color: buttonborder;
    cursor: not-allowed
}

.wc-bookings-booking-form {
    border: 1px solid #e7e7ee;
    border-radius: 14px;
    padding: 1.25em 1.25em 0;
    margin: 0 0 1em;
    background: #fff;
}

.wc-bookings-booking-form input {
    box-sizing: border-box
}

.wc-bookings-booking-form .form-field {
    margin: 0 0 1em
}

.wc-bookings-booking-form .form-field input[type=number] {
    width: 25%
}

.wc-bookings-booking-form label {
    display: block
}

.wc-bookings-booking-form select {
    width: 100%
}

.wc-bookings-booking-form .wc-bookings-time-block-picker {
    display: flex;
    justify-content: space-between
}

.wc-bookings-booking-form .wc-bookings-time-block-picker div {
    width: 100%
}

.wc-bookings-booking-form .block-picker.month-picker li a {
    background-color: #2ecc71 !important;
    border-color: rgba(0, 0, 0, .1);
    color: #fff !important;
    text-shadow: 0 1px 0 rgba(0, 0, 0, .1);
    margin: 1px;
    outline: 0
}

.wc-bookings-booking-form .block-picker.month-picker li a:hover,
.wc-bookings-booking-form .block-picker.month-picker li a.selected {
    background-color: #239e57 !important;
}

.wc-bookings-booking-form .block-picker.month-picker li.unavailable a {
    background-color: #fff !important;
    color: #2b2b2b !important;
    pointer-events: none
}

.wc-bookings-booking-form .block-picker {
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    zoom: 1;
    min-height: 30px
}

.wc-bookings-booking-form .block-picker li.block {
    white-space: nowrap;
    text-align: center
}

.wc-bookings-booking-form .block-picker li.fully_booked a,
.wc-bookings-booking-form .block-picker li.fully_booked a.selected {
    background-color: #c0392b !important;
    background-image: none !important;
    border-color: rgba(0, 0, 0, .1) !important;
    color: #fff !important;
    text-shadow: 0 1px 0 rgba(0, 0, 0, .1);
    text-decoration: line-through !important;
    cursor: not-allowed;
    opacity: .35;
    pointer-events: none
}

.wc-bookings-booking-form .block-picker li {
    float: left;
    margin: 0;
    padding: 0;
    min-width: 33%
}

.wc-bookings-booking-form .block-picker li a {
    margin: 0;
    border: 0;
    padding: .5em;
    vertical-align: middle;
    text-align: center;
    display: block;
    text-decoration: none;
    box-shadow: none
}

.wc-bookings-booking-form .block-picker li a:focus {
    outline: 2px solid currentColor;
    outline-offset: -2px
}

.wc-bookings-booking-form .block-picker li a .booking-spaces-left {
    display: block
}

.wc-bookings-booking-form .block-picker li a.selected {
    background: #239e57 !important;
    color: #fff !important
}

.wc-bookings-booking-form .block-picker li:nth-child(odd) a {
    background: #fff
}

.wc-bookings-booking-form .block-picker li:nth-child(odd) a:hover,
.wc-bookings-booking-form .block-picker li:nth-child(odd) a:focus {
    background: #239e57 !important;
    color: #cc0d00 !important;
}

.wc-bookings-booking-form .block-picker li:nth-child(even) a {
    background: #f5f5f5
}

.wc-bookings-booking-form .block-picker li:nth-child(even) a:hover,
.wc-bookings-booking-form .block-picker li:nth-child(even) a:focus {
    background: #239e57 !important;
    color: #cc0d00 !important;
}

.wc-bookings-booking-form .wc-bookings-date-picker {
    margin: 0 0 1em;
    line-height: 2.25em
}

.wc-bookings-booking-form .wc-bookings-date-picker .picker.hasDatepicker {
    line-height: 1em;
    margin-bottom: 1em
}

.wc-bookings-booking-form .wc-bookings-date-picker input {
    width: 100%
}

.wc-bookings-booking-form .wc-bookings-date-picker input.error {
    border-color: red
}

.wc-bookings-booking-form .wc-bookings-date-picker .wc-bookings-date-picker-date-fields {
    padding: 0;
    border: 0;
    /* margin: 0 0 14px; */
}

.wc-bookings-booking-form .wc-bookings-date-picker label {
    display: block;
    vertical-align: top;
    line-height: 1.5em;
    width: 100%;
    max-width: 260px;
}

.wc-bookings-booking-form .wc-bookings-date-picker label span {
    display: block;
    font-size: .75em;
    color: #767676;
    padding: 0 2px
}

/* Modern grouped legend (Start / End labels) */
.wc-bookings-date-picker-legend {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .01em;
    color: #4b4b55;
    text-transform: uppercase;
    /* padding: 0 0 8px; */
}

.wc-bookings-date-picker-legend-icon {
    display: inline-flex;
    color: #7047eb;
}

/* Modern single-line day / month / year input group */
.wc-bookings-date-input-group {
    display: flex;
    align-items: center;
    background: #fff;
    border: 1.5px solid #e3e3e9;
    border-radius: 12px;
    overflow: hidden;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.wc-bookings-date-input-group:hover {
    border-color: #c9c9d6;
}

.wc-bookings-date-input-group:focus-within {
    border-color: #7047eb;
    box-shadow: 0 0 0 3px rgba(112, 71, 235, .14);
}

.wc-bookings-date-input-group input {
    border: 0 !important;
    background: transparent !important;
    text-align: center;
    font-size: 15px;
    font-weight: 500;
    color: #1a1a1a;
    padding: 12px 2px !important;
    line-height: 1.2;
    box-shadow: none !important;
    -moz-appearance: textfield;
    min-width: 0;
}

.wc-bookings-date-input-group input:focus {
    outline: none !important;
    box-shadow: none !important;
}

.wc-bookings-date-input-group input::-webkit-outer-spin-button,
.wc-bookings-date-input-group input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.wc-bookings-date-input-group input.booking_date_day,
.wc-bookings-date-input-group input.booking_date_month,
.wc-bookings-date-input-group input.booking_to_date_day,
.wc-bookings-date-input-group input.booking_to_date_month {
    flex: 0.8;
}

.wc-bookings-date-input-group input.booking_date_year,
.wc-bookings-date-input-group input.booking_to_date_year {
    flex: 1.3;
}

.wc-bookings-date-input-group input::placeholder {
    color: #b7b7c2;
    font-weight: 400;
}

.wc-bookings-date-input-group input.error {
    color: #cc0d00;
}

.wc-bookings-date-input-divider {
    color: #d0d0d8;
    font-weight: 300;
    font-size: 15px;
    padding: 0 1px;
    user-select: none;
}

.wc-bookings-booking-form .wc-bookings-booking-cost {
    background: #7047eb14;
    border-top: 1px solid #e7e7ee;
    position: relative;
    margin: 0 -1.25em;
    padding: 1.1em 1.25em;
    border-radius: 0 0 13px 13px;
}

.wc-bookings-booking-form .wc-bookings-booking-cost p.booking-selected-dates,
.wc-bookings-booking-form .wc-bookings-booking-cost p.booking-cost-label {
    margin: 0
}


.booking-selected-dates_new {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    background: #ffffff;
    border: 1px solid #ececf1;
    box-shadow: 0 1px 3px rgba(20, 20, 40, .06);
    font-weight: 500;
    color: #2c2c2c;
    margin: 4px 2px;
    transition: box-shadow .18s ease, border-color .18s ease;
}

.booking-selected-dates_new.start-date,
.booking-selected-dates_new.end-date {
    border-radius: 10px;
}

.booking-selected-dates_new.icon {
    padding: 0px 4px 0px 0px;
    border: none;
    box-shadow: none;
    color: #7047eb;
}

.booking-dates-separator {
    margin: 0 6px;
    color: #a7a7b3;
    font-weight: 600;
}

.booking-dates-count {
    display: inline-block;
    margin-left: 6px;
    font-size: 0.85em;
    color: #666;
    font-weight: 500;
}

/* wrapper so everything lines up on one row and wraps gracefully */
.booking-selected-dates {
    /* display: flex; */
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
}

@media (max-width: 480px) {
    .booking-selected-dates {
        flex-direction: column;
        align-items: flex-start;
    }
    .booking-dates-separator {
        display: none;
    }
}

.wc-bookings-booking-form .time-picker-fieldset {
    margin: 0;
    padding: 0;
    border: 0;
    line-height: 1.5
}

.theme-storefront .wc-bookings-booking-form .block-picker.month-picker li a {
    background-color: #754aa9 !important
}

.theme-storefront .wc-bookings-booking-form .block-picker.month-picker li a:hover,
.theme-storefront .wc-bookings-booking-form .block-picker.month-picker li a.selected {
    background-color: #4d2281 !important
}

.theme-storefront .wc-bookings-booking-form .block-picker.month-picker li.unavailable a {
    background-color: #fff !important
}

.theme-storefront .wc-bookings-booking-form .time-picker-fieldset {
    background-color: rgba(0, 0, 0, 0)
}

.wc-bookings-date-picker {
    padding: .3em;
    padding-top: .61em
}

.wc-bookings-date-picker .ui-datepicker {
    padding: 0;
    width: auto
}

.wc-bookings-date-picker .ui-widget-content {
    border: 1px solid #eee;
    background: #fff;
    box-shadow: 0 8px 24px rgba(20, 20, 40, .08);
    padding: 12px;
    border-radius: 14px;
}

.wc-bookings-date-picker .ui-datepicker-header {
    padding: 0;
    -moz-border-radius: 4px 4px 0 0;
    border: 0;
    background: none;
}

.wc-bookings-date-picker .ui-datepicker-today a.ui-state-highlight {
    box-shadow: none !important
}

.wc-bookings-date-picker .ui-datepicker-today.ui-datepicker-current-day a.ui-state-highlight {
    box-shadow: none !important
}

.wc-bookings-date-picker .ui-datepicker-header .ui-state-hover {
    background: rgba(0, 0, 0, 0);
    border-color: rgba(0, 0, 0, 0);
    cursor: pointer
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-title {
    line-height: 1em;
    font-weight: 600;
    padding: .6em 0;
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next {
    border-radius: 6px;
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev.ui-state-hover,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next.ui-state-hover {
    background: #d9d9d9 !important;
}

.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev span,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next span {
    margin-top: -4px;
    top: 40%;
}

.wc-bookings-date-picker .ui-icon-circle-triangle-e,
.wc-bookings-date-picker .ui-datepicker-next .ui-icon-circle-triangle-e {
    background-image: url(images/ui-icons_222222_256x240.9a6712b3.png);
    background-position: -32px 0
}

.wc-bookings-date-picker .ui-icon-circle-triangle-w,
.wc-bookings-date-picker .ui-datepicker-prev .ui-icon-circle-triangle-w {
    background-image: url(images/ui-icons_222222_256x240.9a6712b3.png);
    background-position: -96px 0
}

.wc-bookings-date-picker .ui-datepicker table {
    margin: 0
}

.wc-bookings-date-picker .ui-datepicker th {
    padding: .75em 0;
    text-transform: uppercase;
    color: #2d2d2d;
    font-weight: normal;
    border-top: 1px solid #e6e6e6;
    background: #fefefe;
    display: table-cell;
}

.wc-bookings-date-picker .ui-datepicker td {
    background: #fefefe;
    padding: 0 !important;
    display: table-cell
}

.wc-bookings-date-picker .ui-datepicker td span,
.wc-bookings-date-picker .ui-datepicker td a {
    text-decoration: none !important
}

.wc-bookings-date-picker .ui-datepicker td:last-child {
    border-right: 0
}

.wc-bookings-date-picker .ui-datepicker td .ui-state-default {
    background: rgba(0, 0, 0, 0);
    background-image: none !important;
    border: none;
    color: #000;
    margin: 0;
    font-weight: normal;
    text-align: center;
    padding: .75em 0
}

.wc-bookings-date-picker .ui-datepicker .ui-state-disabled {
    opacity: .4;
    filter: Alpha(Opacity=60)
}

.wc-bookings-date-picker .ui-datepicker td a.ui-state-active{
    color: none;
    background-image: none !important;
}
.wc-bookings-date-picker .ui-datepicker td a.ui-state-active.ui-state-hover {
    color: none;
    background-image: none !important;
}

.wc-bookings-date-picker .ui-datepicker td.fully_booked:not(.not_bookable_by_rules) {
    opacity: .75
}

.wc-bookings-date-picker .ui-datepicker td.fully_booked:not(.not_bookable_by_rules) span,
.wc-bookings-date-picker .ui-datepicker td.fully_booked:not(.not_bookable_by_rules) a {
    border-color: rgba(0, 0, 0, .1) !important;
    color: #aaa !important;
    text-decoration: line-through !important;
}

.wc-bookings-date-picker .ui-datepicker td.bookable a {
    color: #2b2b2b !important;
}

.wc-bookings-date-picker .ui-datepicker td.partial_booked a {
    background-color: #1f874b !important;
    background-image: none !important;
    border-color: rgba(0, 0, 0, .1) !important;
    color: #fff !important;
    text-shadow: 0 1px 0 rgba(0, 0, 0, .1);
    position: relative;
    z-index: 1
}

.wc-bookings-date-picker .ui-datepicker td.ui-datepicker-current-day a {
    opacity: 1 !important;
    border-radius: 10px;
    border-color: #7047eb;
    color: #7047eb;
}

.wc-bookings-date-picker .ui-datepicker td .ui-state-default {
    /* border-radius: 10px; */
}

/* Change start date background and text color */
.wc-bookings-date-picker .ui-datepicker td.bookable-range.selection-start-date .ui-state-default,
.wc-bookings-date-picker .ui-datepicker td.bookable-range-start a {
    background-color: #7047eb !important;
    color: #fff !important;
    border-radius: 10px 0px 0px 10px;
}

.wc-bookings-date-picker .ui-datepicker td.bookable-range.selection-end-date .ui-state-default,
.wc-bookings-date-picker .ui-datepicker td.bookable-range-end a {
    background-color: #7047eb !important;
    color: #fff !important;
    border-radius: 0px 10px 10px 0px;
}

.wc-bookings-date-picker .ui-datepicker td.ui-datepicker-other-month {
    background: #f7f7fa
}

.wc-bookings-date-picker .ui-datepicker td.bookable-range .ui-state-default {
    background: rgba(112, 71, 235, .14) !important;
    color: #4b3199 !important
}

.wc-bookings-date-picker .ui-datepicker td.bookable-range a.ui-state-default {
    /* text-decoration: underline !important; */
    /* text-underline-offset: .1em; */
}

.wc-bookings-date-picker fieldset,
.wc-bookings-date-picker legend {
    background: rgba(0, 0, 0, 0)
}

#wc-bookings-booking-form .wc-bookings-date-picker .ui-datepicker td.fully_booked.not_bookable_by_rules .ui-state-default {
    cursor: default;
    text-decoration: none
}

.wc-booking-summary {
    margin: 1em 1em 1em 0;
    border: 2px solid #ddd;
    padding: 1em;
    color: #767676;
    border-radius: 4px
}

.wc-booking-summary .wc-booking-summary-actions {
    margin: 1em 0 0 0
}

.wc-booking-summary .wc-booking-summary-actions a {
    border-right: 1px solid #ddd;
    margin: 0 3px 0 0;
    padding: 0 4px 0 0
}

.wc-booking-summary .wc-booking-summary-actions a:last-child {
    border-right: 0;
    margin: 0;
    padding: 0
}

.wc-booking-summary .wc-booking-summary-number {
    line-height: 1em
}

.wc-booking-summary .wc-booking-summary-number span {
    color: #fff;
    font-size: .8em;
    background-color: #ccc;
    padding: .4em .8em;
    border-radius: 4px;
    margin-left: 1em;
    margin-top: -0.2em;
    float: right
}

.wc-booking-summary .wc-booking-summary-number .status-unpaid,
.wc-booking-summary .wc-booking-summary-number .status-incart {
    background-color: #767676
}

.wc-booking-summary .wc-booking-summary-number .status-pending,
.wc-booking-summary .wc-booking-summary-number .status-pending-confirmation {
    background-color: #987000
}

.wc-booking-summary .wc-booking-summary-number .status-confirmed {
    background-color: #7ad03a
}

.wc-booking-summary .wc-booking-summary-number .status-paid {
    background-color: #248193
}

.wc-booking-summary .wc-booking-summary-number .status-cancelled {
    background-color: #a00
}

.wc-booking-summary .wc-booking-summary-number .status-complete {
    background-color: #797941
}

.wc-booking-summary .wc-booking-summary-list {
    margin: 1em 0 0 0;
    list-style: none outside
}

.wc-booking-summary .wc-booking-summary-list li {
    margin: 0 0 .5em
}

.wc-bookings-date-picker-timezone-block {
    margin-bottom: 5px
}

.booking-date-time,
.booking-date-duration {
    white-space: nowrap
}

.bookings-my-account-notice {
    margin-bottom: 20px;
    display: none
}

.my_account_bookings.shop_table_responsive {
    margin: 20px 0
}

.my_account_bookings .wc-bookings-status-label {
    background: #f7f7f7;
    background: color-mix(in srgb, currentColor 10%, transparent);
    font-size: .8125em;
    padding: .25em .5em
}

.my_account_bookings .booking-id::before,
.my_account_bookings .order-number>a::before {
    content: "#"
}

.my_account_bookings .booking-total {
    text-align: right
}

.wc-bookings-blocks-badge {
    border: 1px solid;
    border-radius: 4px;
    display: inline-block;
    font-size: .75em;
    line-height: 1.7;
    font-weight: 600;
    padding: 0 .66em;
    text-transform: uppercase;
    white-space: nowrap
}

/* Calendar Navigation Hover */
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev:hover,
.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next:hover{
    background:#EEF2FF !important;
    border-radius:8px;
    transition:all .25s ease;
    transform:scale(1.05);
}

/* Date Hover */
.wc-bookings-date-picker .ui-datepicker td.bookable a:hover{
    background:#EEF2FF !important;
    color:#4F46E5 !important;
    border-radius:8px;
    transition:all .2s ease;
    transform:scale(1.05);
    box-shadow:0 2px 8px rgba(79,70,229,.15);
}

/* General jQuery UI Hover */
.wc-bookings-date-picker .ui-datepicker-header .ui-state-hover{
    background:#EEF2FF;
    border:none;
    cursor:pointer;
    transition:all .25s ease;
}




@media only screen and (max-width: 768px) {
    .my_account_bookings .booking-cancel a {
        padding: 0
    }

    .my_account_bookings .booking-cancel.not-cancellable {
        display: none
    }
}

@media only screen and (max-width: 400px) {
    .my_account_bookings {
        table-layout: fixed;
        font-size: .8em
    }
}