/* Estilos propios para jQuery UI Datepicker (viene con WP core sin CSS —
   solo trae el JS). Ver specs/mvam-theme/calendario-widget-reserva-tour.md. */

.mvam-booking-calendar-loading {
	display: inline-block;
	margin-left: 8px;
	font-size: 0.85em;
	color: #888;
}

.mvam-booking-calendar-loading.is-loading::after {
	content: '\2026';
}

/*
 * Bug real: jQuery UI Datepicker viene sin CSS (solo el JS, ver header de
 * este archivo) — nunca se portó la regla base `display:none` que trae el
 * tema visual oficial de jQuery UI. Sin esto, el div del calendario
 * (#ui-datepicker-div, que el plugin agrega una sola vez al final de
 * <body> y reusa siempre) quedaba SIEMPRE visible al pie de la página en
 * vez de aparecer solo al hacer foco en el campo de fecha — el propio JS
 * de jQuery UI lo pasa a "display:block" cuando corresponde mostrarlo.
 */
.ui-datepicker {
	display: none;
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 4px;
	box-shadow: 0 2px 10px rgba( 0, 0, 0, 0.15 );
	padding: 10px;
	width: 280px;
	font-family: inherit;
	z-index: 9999 !important;
}

.ui-datepicker-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #6e2e3c;
	color: #fff;
	border-radius: 3px;
	padding: 6px 8px;
	margin-bottom: 8px;
}

/*
 * jQuery UI arma el header como <a prev><a next><div title> en ese orden
 * de DOM — con solo `space-between` de arriba, "prev" y "next" quedaban
 * pegados uno al lado del otro a la izquierda y el mes empujado a la
 * derecha, en vez de una flecha a cada lado del mes (pedido real del
 * usuario). Se reordena visualmente con flexbox `order`, sin tocar el
 * HTML que genera la librería.
 */
.ui-datepicker-prev {
	order: 1;
}

.ui-datepicker-title {
	order: 2;
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 4px;
}

/*
 * Con changeMonth/changeYear activados (ver booking-calendar.js),
 * jQuery UI reemplaza el texto plano del mes/año por dos <select>
 * nativos dentro de este mismo .ui-datepicker-title — pedido real del
 * usuario, para poder saltar de mes/año directo en vez de ir
 * apretando "siguiente" uno por uno. Se les da pinta acorde al header
 * bordó en vez de dejarlos con el estilo nativo del navegador (fondo
 * blanco, texto negro, se leían mal ahí).
 */
.ui-datepicker-title select {
	background: rgba( 255, 255, 255, 0.15 );
	color: #fff;
	border: 1px solid rgba( 255, 255, 255, 0.4 );
	border-radius: 3px;
	padding: 2px 4px;
	font-weight: 600;
	font-size: 0.9em;
}

.ui-datepicker-title select option {
	color: #333;
}

.ui-datepicker-next {
	order: 3;
}

/*
 * jQuery UI Datepicker trae los botones anterior/siguiente como texto
 * ("Prev"/"Next", o su traducción) envuelto en un ícono pensado para el
 * tema visual oficial de jQuery UI (sprite de fondo) — como acá no se
 * carga ese tema completo (ver comentario del header de este archivo, el
 * criterio fue no traer un framework nuevo solo para esto), ese texto
 * quedaba visible tal cual en vez de un ícono (bug real reportado por el
 * usuario: "el anterior/siguiente, ponerlo con flechas"). Se oculta el
 * texto y se dibuja una flecha simple con un carácter Unicode, sin
 * depender de ninguna imagen/sprite.
 */
.ui-datepicker-prev,
.ui-datepicker-next {
	cursor: pointer;
	padding: 2px 8px;
	color: #fff;
	font-size: 0;
	line-height: 1;
}

.ui-datepicker-prev::before,
.ui-datepicker-next::before {
	font-size: 18px;
	line-height: 1;
}

.ui-datepicker-prev::before {
	content: '\2039';
}

.ui-datepicker-next::before {
	content: '\203A';
}

.ui-datepicker-prev.ui-state-disabled,
.ui-datepicker-next.ui-state-disabled {
	opacity: 0.3;
	cursor: default;
}

/*
 * Input de texto solo visual al que se cuelga el datepicker (ver
 * booking-calendar.js) — mismo aspecto que el resto de los campos del
 * form de reserva, con el cursor de "elegir" en vez del de texto porque
 * es de solo lectura (se completa clickeando el calendario, no
 * tipeando).
 */
.mvam-book-date-display {
	cursor: pointer;
	background-color: #fff;
}

.ui-datepicker-calendar {
	width: 100%;
	border-collapse: collapse;
}

.ui-datepicker-calendar th {
	font-size: 0.75em;
	color: #999;
	padding: 4px 0;
}

.ui-datepicker-calendar td {
	text-align: center;
	padding: 2px;
}

.ui-datepicker-calendar td a,
.ui-datepicker-calendar td span {
	display: block;
	padding: 6px 0;
	border-radius: 3px;
	text-decoration: none;
}

.ui-datepicker-calendar .mvam-day-available a {
	background: #e8f3ea;
	color: #1e6b2e;
	font-weight: 600;
}

.ui-datepicker-calendar .mvam-day-available a:hover {
	background: #6e2e3c;
	color: #fff;
}

.ui-datepicker-calendar .mvam-day-unavailable span,
.ui-datepicker-calendar .mvam-day-unknown span {
	color: #ccc;
	text-decoration: line-through;
}

.ui-datepicker-calendar .ui-datepicker-today a {
	box-shadow: inset 0 0 0 1px #6e2e3c;
}
