/* Corporate overrides for WooCommerce Bookings calendar + buttons.
 *
 * Loaded after `dist/frontend.css` to override colors without editing core styles.
 */
/* Nota: sin @layer para superar estilos base sin layer. */
	:root {
		--wcb-corp-primary: #0057b8;
		--wcb-corp-primary-hover: #003f86;
		--wcb-corp-surface: #f5f7fb;
		--wcb-corp-border: rgba(0, 0, 0, 0.08);
		--wcb-corp-text-on-primary: #ffffff;
		--wcb-corp-danger: #c0392b;
	}

	/* === Booking form buttons === */
	.wc-bookings-booking-form button,
	.wc-bookings-booking-form .button,
	.wc-bookings-booking-form a.button,
	.wc-bookings-booking-form .single_add_to_cart_button,
	.wc-bookings-booking-form button[type="submit"] {
		background-color: var(--wcb-corp-primary);
		border-color: var(--wcb-corp-primary);
		color: var(--wcb-corp-text-on-primary);
		border-radius: 10px;
		box-shadow: 0 6px 16px rgba(0, 87, 184, 0.18);
		transition: background-color 120ms ease, border-color 120ms ease, box-shadow 120ms ease, transform 120ms ease;
	}

	.wc-bookings-booking-form button:hover,
	.wc-bookings-booking-form .button:hover,
	.wc-bookings-booking-form a.button:hover,
	.wc-bookings-booking-form button:focus-visible,
	.wc-bookings-booking-form .button:focus-visible,
	.wc-bookings-booking-form a.button:focus-visible {
		background-color: var(--wcb-corp-primary-hover);
		border-color: var(--wcb-corp-primary-hover);
		color: var(--wcb-corp-text-on-primary);
		box-shadow: 0 10px 22px rgba(0, 63, 134, 0.22);
		transform: translateY(-1px);
		outline: none;
	}

	.wc-bookings-booking-form button:active,
	.wc-bookings-booking-form .button:active,
	.wc-bookings-booking-form a.button:active {
		transform: translateY(0);
		box-shadow: 0 6px 16px rgba(0, 63, 134, 0.18);
	}

	/* === Block picker (time slots) === */
	.wc-bookings-booking-form .block-picker.month-picker li a {
		background-color: var(--wcb-corp-primary) !important;
		border-color: var(--wcb-corp-border) !important;
		color: var(--wcb-corp-text-on-primary) !important;
		text-shadow: none !important;
		border-radius: 10px;
	}

	.wc-bookings-booking-form .block-picker.month-picker li a:hover,
	.wc-bookings-booking-form .block-picker.month-picker li a.selected {
		background-color: var(--wcb-corp-primary-hover) !important;
	}

	/* Time block picker (dropdown/list of available hours) */
	.wc-bookings-booking-form .block-picker:not(.month-picker) li a,
	.wc-bookings-booking-form .wc-bookings-time-block-picker li a,
	.wc-bookings-booking-form .wc-bookings-time-block-picker a {
		background-color: #ffffff !important;
		border-color: var(--wcb-corp-border) !important;
		color: var(--wcb-corp-primary) !important;
		text-shadow: none !important;
		border-radius: 10px;
	}

	/* Some themes/plugins set the background on the <li> instead of the <a> */
	.wc-bookings-booking-form .block-picker:not(.month-picker) li,
	.wc-bookings-booking-form .wc-bookings-time-block-picker li {
		background: transparent !important;
	}

	.wc-bookings-booking-form .block-picker:not(.month-picker) li a:hover,
	.wc-bookings-booking-form .block-picker:not(.month-picker) li a:focus,
	.wc-bookings-booking-form .block-picker:not(.month-picker) li a.selected,
	.wc-bookings-booking-form .block-picker:not(.month-picker) li.selected a,
	.wc-bookings-booking-form .wc-bookings-time-block-picker li a:hover,
	.wc-bookings-booking-form .wc-bookings-time-block-picker li a:focus,
	.wc-bookings-booking-form .wc-bookings-time-block-picker li a.selected,
	.wc-bookings-booking-form .wc-bookings-time-block-picker li.selected a,
	.wc-bookings-booking-form .wc-bookings-time-block-picker a:hover,
	.wc-bookings-booking-form .wc-bookings-time-block-picker a:focus,
	.wc-bookings-booking-form .wc-bookings-time-block-picker a.selected {
		background-color: var(--wcb-corp-primary) !important;
		color: var(--wcb-corp-text-on-primary) !important;
	}

	.wc-bookings-booking-form .block-picker.month-picker li.unavailable a {
		background-color: var(--wcb-corp-surface) !important;
		color: #6b6b6b !important;
	}

	.wc-bookings-booking-form .block-picker:not(.month-picker) li.unavailable a {
		background-color: var(--wcb-corp-surface) !important;
		color: #6b6b6b !important;
	}

	.wc-bookings-booking-form .block-picker li.fully_booked a,
	.wc-bookings-booking-form .block-picker li.fully_booked a.selected {
		background-color: var(--wcb-corp-danger) !important;
		color: var(--wcb-corp-text-on-primary) !important;
		text-shadow: none !important;
	}

	.wc-bookings-booking-form .block-picker li:nth-child(even) a {
		background: var(--wcb-corp-surface);
	}

	.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: var(--wcb-corp-primary-hover);
		color: var(--wcb-corp-text-on-primary);
	}

	.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: var(--wcb-corp-primary-hover);
		color: var(--wcb-corp-text-on-primary);
	}

	/* === Date picker (calendar) === */
	.wc-bookings-date-picker .ui-widget-content {
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
		border-radius: 14px;
		overflow: hidden;
	}

	.wc-bookings-date-picker .ui-datepicker-header {
		background-color: var(--wcb-corp-primary) !important;
		background-image: none !important;
		border: 0 !important;
		color: var(--wcb-corp-text-on-primary) !important;
	}

	.wc-bookings-date-picker .ui-datepicker .ui-datepicker-prev,
	.wc-bookings-date-picker .ui-datepicker .ui-datepicker-next {
		background: transparent !important;
	}

	.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: rgba(255, 255, 255, 0.18) !important;
	}

	.wc-bookings-date-picker .ui-datepicker th {
		background: #ffffff !important;
		color: rgba(255, 255, 255, 0.75);
		color: #9aa5b1 !important;
	}

	.wc-bookings-date-picker .ui-datepicker td {
		background: #ffffff !important;
	}

	.wc-bookings-date-picker .ui-datepicker td.ui-datepicker-other-month {
		background: #eef1f7 !important;
	}

	.wc-bookings-date-picker .ui-datepicker td .ui-state-default {
		color: #1f2937 !important;
		border-radius: 10px;
	}

	/* Bookable / partially bookable */
	.wc-bookings-date-picker .ui-datepicker td.bookable a,
	.wc-bookings-date-picker .ui-datepicker td.partial_booked a {
		background-color: var(--wcb-corp-primary) !important;
		background-image: none !important;
		border-color: var(--wcb-corp-border) !important;
		color: var(--wcb-corp-text-on-primary) !important;
		text-shadow: none !important;
	}

	/* Selected day / bookable range */
	.wc-bookings-date-picker .ui-datepicker td.ui-datepicker-current-day a,
	.wc-bookings-date-picker .ui-datepicker td.bookable-range .ui-state-default {
		background: var(--wcb-corp-primary-hover) !important;
		color: var(--wcb-corp-text-on-primary) !important;
		opacity: 1 !important;
	}

	/* Fully booked */
	.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 {
		background-color: var(--wcb-corp-danger) !important;
		background-image: none !important;
		border-color: var(--wcb-corp-border) !important;
		color: var(--wcb-corp-text-on-primary) !important;
		text-shadow: none !important;
	}

	/* Summary pill */
	.wc-booking-summary {
		border-color: rgba(0, 87, 184, 0.3) !important;
	}

	.wc-booking-summary .wc-booking-summary-number span {
		background-color: var(--wcb-corp-primary) !important;
	}
 
