/**
 * PRENOTA PAGE – VIKBOOKING RESTYLE
 * Pagina: body.page-id-670 (Prenota), wrapper #bb-prenota-availability
 * Caricato dopo vbo-style-css e mod_vikbooking_horizontalsearch.css
 */

body.page-id-670.bb-prenota-booking-page,
body.page-slug-prenota.bb-prenota-booking-page {
	--bb-prenota-shell: #3f403a;
	--bb-prenota-field: #fdfbf7;
	--bb-prenota-accent: #c8a76b;
	--bb-prenota-accent-hover: #b89458;
	--bb-prenota-text: #2f3a45;
	--bb-prenota-label: #78866b;
}

/* ——— Wrapper barra ——— */
body.page-id-670 #bb-prenota-availability.bb-prenota-topbar.bb-home-hero-booking,
body.page-slug-prenota #bb-prenota-availability.bb-prenota-topbar.bb-home-hero-booking {
	display: block !important;
	width: 100% !important;
	max-width: min(72rem, 100%) !important;
	margin: 1.25rem auto 2rem !important;
	padding: 0 1rem !important;
	overflow: visible !important;
}

body.page-id-670 #bb-prenota-availability .bb-vista-vikbooking-wrap,
body.page-slug-prenota #bb-prenota-availability .bb-vista-vikbooking-wrap {
	width: 100%;
	overflow: visible !important;
}

/* ——— Box esterno (chiaro, senza cornice scura pesante) ——— */
body.page-id-670 #bb-prenota-availability .vbmodhorsearchmaindiv,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchmaindiv {
	display: block;
	width: 100%;
	background: #fdfbf7 !important;
	border-radius: 20px !important;
	padding: 1rem 1.05rem !important;
	border: 1px solid rgba(37, 39, 37, 0.08) !important;
	box-shadow: 0 6px 20px rgba(37, 39, 37, 0.04) !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	overflow: visible !important;
}

/* ——— Form una riga ——— */
body.page-id-670 #bb-prenota-availability .vbo-horizsearch-humanformat-wrap > form,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-humanformat-wrap > form {
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: stretch !important;
	gap: 0.55rem;
	margin: 0;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchmaindiv form > div,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchmaindiv form > div {
	float: none !important;
	margin: 0 !important;
	min-width: 0;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchmaindiv form > .vbmodhorsearch-hum-dates-wrap,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchmaindiv form > .vbmodhorsearch-hum-dates-wrap {
	flex: 1 1 48% !important;
	order: 0;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearch-hum-guests-wrap,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-hum-guests-wrap {
	flex: 1 1 11rem !important;
	min-width: 9.5rem;
	max-width: 14rem;
	order: 1;
	align-self: stretch !important;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchbookdiv,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchbookdiv {
	flex: 0 0 auto !important;
	order: 2;
	display: flex !important;
	align-items: stretch !important;
	min-height: 3.5rem;
}

/* ——— Area date (wrapper trasparente + moduli separati) ——— */
body.page-id-670 #bb-prenota-availability .vbmodhorsearch-hum-dates-wrap,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-hum-dates-wrap {
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: stretch;
	gap: 0.5rem;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	padding: 0;
	min-height: 0;
	overflow: visible;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearch-humcalcont,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-humcalcont {
	flex: 1 1 0 !important;
	background: var(--bb-prenota-field) !important;
	border-radius: 14px !important;
	border: 1px solid rgba(47, 58, 69, 0.08) !important;
	padding: 0.5rem 0.75rem 0.55rem !important;
	min-height: 3.5rem;
	position: relative;
	z-index: 2;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchcheckoutdiv,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchcheckoutdiv {
	border-left: 0 !important;
	margin-right: 0 !important;
}

/* Notti */
body.page-id-670 #bb-prenota-availability .vbmodhorsearchtotnights,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchtotnights {
	display: flex !important;
	flex: 0 0 5.5rem;
	align-items: stretch;
	margin: 0 !important;
	min-width: 4.5rem;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchtotnights:empty,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchtotnights:empty {
	display: none !important;
}

body.page-id-670 #bb-prenota-availability .vbo-horizsearch-numnights-inner,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-numnights-inner {
	box-sizing: border-box;
	width: 100%;
	min-height: 3.5rem;
	margin: 0;
	padding: 0.45rem 0.65rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.12rem;
	background: var(--bb-prenota-field) !important;
	border: 1px solid rgba(47, 58, 69, 0.08) !important;
	border-radius: 14px !important;
	font-size: 0.88rem;
	color: var(--bb-prenota-text) !important;
}

body.page-id-670 #bb-prenota-availability .vbo-horizsearch-numnights-inner > span:first-child,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-numnights-inner > span:first-child {
	font-size: 0.62rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	color: var(--bb-prenota-label) !important;
}

body.page-id-670 #bb-prenota-availability .vbo-horizsearch-numnights-inner > span:last-child,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-numnights-inner > span:last-child {
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--bb-prenota-text) !important;
}

/* Etichette CHECK IN / OUT */
body.page-id-670 #bb-prenota-availability .vbmodhorsearch-humcalcont > label,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-humcalcont > label {
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 0 0 0.15rem !important;
	padding: 0;
	overflow: hidden;
	font-size: 0;
	color: transparent;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchcheckindiv > label::after,
body.page-id-670 #bb-prenota-availability .vbmodhorsearchcheckoutdiv > label::after,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchcheckindiv > label::after,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchcheckoutdiv > label::after {
	display: block;
	font-size: 0.62rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	text-transform: uppercase;
	color: var(--bb-prenota-label);
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchcheckindiv > label::after,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchcheckindiv > label::after {
	content: "CHECK IN";
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchcheckoutdiv > label::after,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchcheckoutdiv > label::after {
	content: "CHECK OUT";
}

/* Calendario campi */
body.page-id-670 #bb-prenota-availability .vbo-horizsearch-showcalendar,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-showcalendar {
	border: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	min-height: 0 !important;
	width: 100%;
	display: flex !important;
	align-items: center;
}

body.page-id-670 #bb-prenota-availability .vbo-horizsearch-showcalendar i,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-showcalendar i {
	color: var(--bb-prenota-accent) !important;
	margin: 0 0.45rem 0 0;
	font-size: 0.95rem;
}

body.page-id-670 #bb-prenota-availability .vbo-horizsearch-placeholder,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-placeholder {
	font-size: 0.88rem !important;
	color: #5c5f5b !important;
	padding: 0 !important;
}

body.page-id-670 #bb-prenota-availability .vbo-horizsearch-period-mday,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-period-mday {
	font-size: 1.05rem !important;
	font-weight: 600 !important;
	color: var(--bb-prenota-text) !important;
}

body.page-id-670 #bb-prenota-availability .vbo-horizsearch-period-dt,
body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-period-dt {
	font-size: 0.72rem !important;
}

/* ——— Ospiti ——— */
body.page-id-670 #bb-prenota-availability .vbmodhorsearch-hum-guests-wrap,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-hum-guests-wrap {
	background: var(--bb-prenota-field) !important;
	border-radius: 14px !important;
	border: 1px solid rgba(47, 58, 69, 0.08) !important;
	padding: 0.5rem 0.85rem !important;
	min-height: 3.5rem;
	cursor: pointer;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearch-hum-guests-wrap > label,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-hum-guests-wrap > label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearch-hum-guests-count,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-hum-guests-count {
	border: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
	font-size: 0.88rem;
	color: var(--bb-prenota-text) !important;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearch-hum-guests-count::before,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-hum-guests-count::before {
	content: "";
	display: inline-block;
	width: 1rem;
	height: 1rem;
	margin-right: 0.45rem;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c8a76b' stroke-width='1.75'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* ——— Pulsante Verifica / Prenota ——— */
body.page-id-670 #bb-prenota-availability .vbmodhorsearchbookdiv .btn.vbsearchinputmodhors,
body.page-id-670 #bb-prenota-availability .vbmodhorsearchbookdiv button.vbo-pref-color-btn,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchbookdiv .btn.vbsearchinputmodhors,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchbookdiv button.vbo-pref-color-btn {
	margin: 0 !important;
	min-width: 8.5rem;
	padding: 0 1.35rem !important;
	border: 0 !important;
	border-radius: 14px !important;
	background: var(--bb-prenota-accent) !important;
	color: #fff !important;
	font-weight: 600 !important;
	font-size: 0.78rem !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	min-height: 3.5rem !important;
	height: 100%;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12) !important;
}

body.page-id-670 #bb-prenota-availability .vbmodhorsearchbookdiv .btn:hover,
body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchbookdiv .btn:hover {
	background: var(--bb-prenota-accent-hover) !important;
}

/* ——— Risultati camere (dentro .bb-prenota-page) ——— */
body.page-id-670 .bb-prenota-page .vbselectr-result,
body.page-id-670 .bb-prenota-page .bb-prenota-choose-room,
body.page-id-670 .bb-prenota-page .vbo-pref-color-btn:not(.vbo-pref-color-btn-secondary),
body.page-slug-prenota .bb-prenota-page .vbselectr-result,
body.page-slug-prenota .bb-prenota-page .bb-prenota-choose-room,
body.page-slug-prenota .bb-prenota-page .vbo-pref-color-btn:not(.vbo-pref-color-btn-secondary) {
	border: 0 !important;
	border-radius: 14px !important;
	background: var(--bb-prenota-accent) !important;
	color: #fff !important;
	font-weight: 600 !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1) !important;
}

body.page-id-670 .bb-prenota-page .vbo-results-filtering .vbo-results-style,
body.page-slug-prenota .bb-prenota-page .vbo-results-filtering .vbo-results-style {
	background: var(--bb-prenota-field) !important;
	border: 1px solid rgba(47, 58, 69, 0.1) !important;
	border-radius: 999px !important;
	padding: 0.25rem !important;
}

body.page-id-670 .bb-prenota-page .vbo-results-filtering .vbo-results-style-option-active,
body.page-slug-prenota .bb-prenota-page .vbo-results-filtering .vbo-results-style-option-active {
	background: var(--bb-prenota-shell) !important;
	color: #fff !important;
}

/* ——— Responsive ——— */
@media (max-width: 720px) {
	body.page-id-670 #bb-prenota-availability .vbo-horizsearch-humanformat-wrap > form,
	body.page-slug-prenota #bb-prenota-availability .vbo-horizsearch-humanformat-wrap > form {
		flex-flow: column nowrap !important;
	}

	body.page-id-670 #bb-prenota-availability .vbmodhorsearch-hum-guests-wrap,
	body.page-id-670 #bb-prenota-availability .vbmodhorsearchbookdiv,
	body.page-slug-prenota #bb-prenota-availability .vbmodhorsearch-hum-guests-wrap,
	body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchbookdiv {
		flex: 1 1 auto !important;
		width: 100%;
		max-width: none;
	}

	body.page-id-670 #bb-prenota-availability .vbmodhorsearchbookdiv .btn,
	body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchbookdiv .btn {
		width: 100%;
		min-width: 0;
	}

	body.page-id-670 #bb-prenota-availability .vbmodhorsearchtotnights,
	body.page-slug-prenota #bb-prenota-availability .vbmodhorsearchtotnights {
		flex: 1 1 100%;
	}
}
