/* === Bookero widget — match BALANCE brand === */
/* Bookero CSS has 88 instances of #228ee3 (blue), scoped with [data-v-*].
   We use CSS custom property override + broad selectors + !important.
   Color map: #228ee3→#6b6b4e, #1873ba→#5a5a42, #edf6fd/#eef6fd→#f6f7f5, #66b1ec→#8fa184 */

/* --- CSS Custom Property override (catches spinner borders etc.) --- */
[id^="bookero"],
#bookero-plugin {
    --bookero-plugin-color-primary: #6b6b4e !important;
    --bookero-plugin-color-link: #6b6b4e !important;
}

/* --- Typography: DM Sans body, Playfair Display headings --- */
[id^="bookero"] *,
.bookero-plugin-form *,
.bookero-plugin-form-wrapper * {
    font-family: 'DM Sans', system-ui, sans-serif !important;
}

[id^="bookero"] h2,
[id^="bookero"] h3,
[id^="bookero"] .bookero-plugin-form-heading {
    font-family: 'Playfair Display', Georgia, serif !important;
    color: #5a5347 !important;
    font-weight: 500 !important;
}

/* --- Header bar — hidden (our section heading already says "Umów wizytę") --- */
body .bookero-plugin-header {
    display: none !important;
}

/* --- Spacing: reduce form wrapper gaps --- */
body .bookero-plugin-form {
    margin: 16px auto !important;
    max-width: 100% !important;
    padding: 0 4px !important;
}

.bookero-plugin-form-wrapper {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
}

/* Section headings — tighter spacing */
body .bookero-plugin-form-heading {
    margin: 16px 0 8px 0 !important;
    font-size: 20px !important;
}

body .bookero-plugin-form-heading.has-separator {
    margin: 12px 0 8px 0 !important;
    padding-top: 16px !important;
}

/* --- Buttons: submit, add-to-cart, error --- */
body .submit-section .submit-button,
body .add-to-cart-section .add-button,
body .bookero-plugin-error-btn,
[id^="bookero"] .submit-button,
[id^="bookero"] .add-button {
    background: #6b6b4e !important;
    background-color: #6b6b4e !important;
    border: none !important;
    border-radius: 9999px !important;
    color: #fff !important;
    font-family: 'DM Sans', system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 15px !important;
    letter-spacing: 0.01em !important;
    padding: 12px 48px 12px 24px !important;
    transition: background 0.2s ease !important;
}

body .submit-section .submit-button:hover,
body .submit-section .submit-button:focus,
body .submit-section .submit-button:active,
body .add-to-cart-section .add-button:hover,
body .add-to-cart-section .add-button:focus,
body .add-to-cart-section .add-button:active,
body .bookero-plugin-error-btn:hover,
body .bookero-plugin-error-btn:focus,
body .bookero-plugin-error-btn:active,
[id^="bookero"] .submit-button:hover,
[id^="bookero"] .submit-button:focus,
[id^="bookero"] .add-button:hover,
[id^="bookero"] .add-button:focus {
    background: #5a5a42 !important;
    background-color: #5a5a42 !important;
}

/* Back button link */
body .submit-section .back-button:hover,
body .submit-section .back-button:focus {
    color: #6b6b4e !important;
}

/* Submit section spacing */
body .submit-section {
    margin: 12px 0 0 0 !important;
}

/* --- Calendar days --- */
[id^="bookero"] .calendar-days-list-cell.is-valid {
    background: #f6f7f5 !important;
    border-color: #f6f7f5 !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .calendar-days-list-cell.is-selected {
    background: #6b6b4e !important;
    background-color: #6b6b4e !important;
    border-color: #6b6b4e !important;
    color: #fff !important;
}

[id^="bookero"] .calendar-days-list-cell.is-selected.auto-select-in-progress {
    color: #6b6b4e !important;
}

/* Sub-selected gradient (between selected dates) */
[id^="bookero"] .calendar-days-list-cell.is-sub-selected {
    background: #eaede7 !important;
    border-color: #6b6b4e !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .calendar-days-list-cell.is-selected + .is-sub-selected:before {
    background: linear-gradient(90deg, #6b6b4e, #8fa184) !important;
}

/* In-cart state */
[id^="bookero"] .calendar-days-list-cell.is-in-cart {
    border-color: #6b6b4e !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .calendar-days-list-cell.is-in-cart.is-selected {
    background: #6b6b4e !important;
    border-color: #6b6b4e !important;
    color: #fff !important;
}

/* --- Week view hours --- */
[id^="bookero"] .week-days-hour {
    background: #f6f7f5 !important;
    border-color: #f6f7f5 !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .week-days-hour.is-valid {
    background: #f6f7f5 !important;
    border-color: #f6f7f5 !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .week-days-hour.is-selected {
    background: #6b6b4e !important;
    border-color: #6b6b4e !important;
    color: #fff !important;
}

[id^="bookero"] .week-days-hour.is-in-cart {
    border-color: #6b6b4e !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .week-days-hour.is-in-cart.is-selected {
    background: #6b6b4e !important;
    border-color: #6b6b4e !important;
    color: #fff !important;
}

/* --- Hours list (time slots) --- */
[id^="bookero"] .hours-list-item {
    background: #f6f7f5 !important;
    border-color: #f6f7f5 !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .hours-list-item.is-selected {
    background: #6b6b4e !important;
    border-color: #6b6b4e !important;
    color: #fff !important;
}

[id^="bookero"] .hours-list-item.is-in-cart {
    border-color: #6b6b4e !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .hours-list-item.is-in-cart.is-selected {
    background: #6b6b4e !important;
    border-color: #6b6b4e !important;
    color: #fff !important;
}

/* --- Datepicker (calendar popup) --- */
[id^="bookero"] .vdp-datepicker__calendar .cell:not(.blank):not(.disabled).day:hover,
[id^="bookero"] .vdp-datepicker__calendar .cell:not(.blank):not(.disabled).month:hover,
[id^="bookero"] .vdp-datepicker__calendar .cell:not(.blank):not(.disabled).year:hover {
    background: #f6f7f5 !important;
    border-color: #f6f7f5 !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .vdp-datepicker__calendar .cell.selected {
    background: #6b6b4e !important;
    color: #fff !important;
}

/* --- Services / categories selection --- */
[id^="bookero"] .service-category-box-list-item.is-selected,
[id^="bookero"] .products-selection-item.is-selected {
    background: #f6f7f5 !important;
    border-color: #6b6b4e !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .service-category-box-list-item.is-selected .service-category-box-list-item-name,
[id^="bookero"] .products-selection-item.is-selected .products-selection-item-name {
    color: #6b6b4e !important;
}

/* Selected checkmark icon */
[id^="bookero"] .service-category-box-list-item-selected {
    background: #6b6b4e !important;
}

/* Deselect button */
[id^="bookero"] .service-category-box-list-item-deselect-button {
    border-color: #6b6b4e !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .service-category-box-list-item-deselect-button:hover {
    background: #6b6b4e !important;
    color: #fff !important;
}

/* Product setup badge */
[id^="bookero"] .products-selection-item-setup {
    background: #f6f7f5 !important;
    border-color: #6b6b4e !important;
    color: #6b6b4e !important;
}

/* --- Add more items button --- */
[id^="bookero"] .inquiries-list-add,
[id^="bookero"] .products-list-add {
    background: #f6f7f5 !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .inquiries-list-add:hover,
[id^="bookero"] .inquiries-list-add:focus,
[id^="bookero"] .products-list-add:hover,
[id^="bookero"] .products-list-add:focus {
    background: #eaede7 !important;
    color: #6b6b4e !important;
}

[id^="bookero"] .inquiries-list-add-icon:before,
[id^="bookero"] .inquiries-list-add-icon:after,
[id^="bookero"] .products-list-add-icon:before,
[id^="bookero"] .products-list-add-icon:after {
    background: #6b6b4e !important;
}

/* --- Invoice toggle buttons --- */
[id^="bookero"] .button-group-button {
    border-color: #6b6b4e !important;
}

[id^="bookero"] .button-group-button.is-active {
    background: #6b6b4e !important;
    color: #fff !important;
}

/* --- Payment methods --- */
[id^="bookero"] .payment-methods-item:hover {
    border-color: #6b6b4e !important;
}

[id^="bookero"] .payment-methods-item.is-active {
    background: #6b6b4e !important;
    border-color: #6b6b4e !important;
}

/* --- Inquiry / product action details arrow --- */
[id^="bookero"] .inquiry-actions-details:after,
[id^="bookero"] .product-actions-details:after {
    border-top-color: #6b6b4e !important;
    border-right-color: #6b6b4e !important;
}

/* Connected terms link */
[id^="bookero"] .inquiry-connected-termins,
[id^="bookero"] .inquiry-status.is-waiting-list {
    color: #6b6b4e !important;
}

[id^="bookero"] .inquiry-status.is-waiting-list {
    background: #6b6b4e !important;
}

/* Paid params info badge */
[id^="bookero"] .paid-params-info {
    background-color: #6b6b4e !important;
}

/* --- Waiting list notification --- */
[id^="bookero"] .waiting-list-notification > strong {
    color: #6b6b4e !important;
}

/* --- Number +/- buttons hover --- */
[id^="bookero"] .days-number-plus:hover,
[id^="bookero"] .days-number-plus:focus,
[id^="bookero"] .days-number-minus:hover,
[id^="bookero"] .days-number-minus:focus,
[id^="bookero"] .people-number-plus:hover,
[id^="bookero"] .people-number-plus:focus,
[id^="bookero"] .children-number-plus:hover,
[id^="bookero"] .children-number-plus:focus {
    color: #6b6b4e !important;
}

/* --- Switcher / toggle --- */
[id^="bookero"] .switcher.is-active {
    background: #6b6b4e !important;
    border-color: #6b6b4e !important;
}

/* --- Multiselect dropdown highlight --- */
[id^="bookero"] .multiselect__option--highlight {
    background: #6b6b4e !important;
}

/* --- Form inputs --- */
[id^="bookero"] input,
[id^="bookero"] select,
[id^="bookero"] textarea {
    border-radius: 0.5rem !important;
    border-color: #d5dbd0 !important;
    color: #5a5347 !important;
    font-family: 'DM Sans', system-ui, sans-serif !important;
}

/* Select dropdown: override native blue highlight */
[id^="bookero"] select {
    -webkit-appearance: none !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b6b4e' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 16px !important;
    padding-right: 36px !important;
}

[id^="bookero"] select option:checked,
[id^="bookero"] select option:hover {
    background-color: #6b6b4e !important;
    color: #fff !important;
}

/* Multiselect dropdown (Vue component — not native select) */
[id^="bookero"] .multiselect__option--highlight,
[id^="bookero"] .multiselect__option--selected {
    background: #6b6b4e !important;
    color: #fff !important;
}

[id^="bookero"] .multiselect__tag {
    background: #6b6b4e !important;
    color: #fff !important;
}

[id^="bookero"] .multiselect__tag-icon:after {
    color: #fff !important;
}

[id^="bookero"] .multiselect__tag-icon:hover {
    background: #5a5a42 !important;
}

[id^="bookero"] input:focus,
[id^="bookero"] input:active,
[id^="bookero"] select:focus,
[id^="bookero"] select:active,
[id^="bookero"] textarea:focus,
[id^="bookero"] textarea:active,
body .bookero-plugin-form .field input:focus,
body .bookero-plugin-form .field select:focus,
body .bookero-plugin-form .field textarea:focus {
    border-color: #6b6b4e !important;
    box-shadow: 0 0 0 2px rgba(107, 107, 78, 0.15) !important;
    outline: none !important;
}

/* Phone input dropdown focus */
[id^="bookero"] .vti__dropdown:focus {
    outline-color: #6b6b4e !important;
}

/* --- Links --- */
.bookero-plugin-form-wrapper a,
[id^="bookero"] a {
    color: #6b6b4e !important;
}

.bookero-plugin-form-wrapper a:hover,
.bookero-plugin-form-wrapper a:focus,
[id^="bookero"] a:hover,
[id^="bookero"] a:focus {
    color: #5a5a42 !important;
}

/* --- Result popup --- */
[id^="bookero"] .result-popup-icon.is-waiting {
    background: #6b6b4e !important;
}

[id^="bookero"] .result-popup-content-payment-link a {
    background: #6b6b4e !important;
    border-radius: 9999px !important;
}

[id^="bookero"] .result-popup-content-payment-link a:hover {
    background: #5a5a42 !important;
}

/* --- Info messages --- */
body .bookero-plugin-form-message[data-type="info"] {
    background: #f6f7f5 !important;
    border-color: #d5dbd0 !important;
    color: #6b6b4e !important;
}

/* --- Sticky toggle (if used) --- */
#bookero-plugin[data-mode="sticky"] .bookero-sticky-plugin-toggle {
    background: #6b6b4e !important;
}

/* --- Spinner borders (catch-all via CSS variable + explicit) --- */
[id^="bookero"] [class*="is-loading"]:before,
[id^="bookero"] [class*="is-loading"]:after {
    border-color: #6b6b4e !important;
    border-top-color: #fff !important;
}

/* --- Footer --- */
body .bookero-plugin-footer {
    color: #8b7d6b !important;
    font-size: 12px !important;
    margin-top: 8px !important;
}

/* --- Popups (details, result) — fix olive bleed into overlay --- */
[id^="bookero"] .details-popup,
[id^="bookero"] .result-popup,
[id^="bookero"] .alert-popup {
    background: #fff !important;
    color: #5a5347 !important;
}

[id^="bookero"] .details-popup h2,
[id^="bookero"] .details-popup h3,
[id^="bookero"] .result-popup h2 {
    color: #5a5347 !important;
}

[id^="bookero"] .details-popup-overlay,
[id^="bookero"] .alert-popup-overlay,
[id^="bookero"] .result-popup-overlay {
    background: transparent !important;
}

/* --- Responsive: mobile tighter spacing --- */
@media (max-width: 580px) {
    body .bookero-plugin-form {
        padding: 0 !important;
    }

    body .bookero-plugin-header {
        font-size: 17px !important;
        padding: 12px 16px !important;
        border-radius: 0.75rem !important;
    }
}

/* --- Fix step transitions: disable jarring height animation --- */
body .bookero-plugin-hideable-part {
    transition: none !important;
    min-height: auto !important;
}

body .bookero-plugin-hideable-part.is-hidden {
    display: none !important;
    min-height: 0 !important;
}

/* --- "Zobacz szczegóły" link — hide it (info already shown above) --- */
[id^="bookero"] .inquiry-actions-details {
    display: none !important;
}

/* --- Details popup overlay — ensure clean white popup, no darkening --- */
[id^="bookero"] .details-popup-overlay {
    background: transparent !important;
}

[id^="bookero"] .details-popup {
    background: #fff !important;
    color: #5a5347 !important;
    border-radius: 1rem !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
}

/* --- Disable smooth scroll from Bookero (causes page jumping) --- */
[id^="bookero"] {
    scroll-behavior: auto !important;
}

[id^="bookero"] * {
    scroll-behavior: auto !important;
}
