/**
 * Barre de recherche accueil — Kokende (complément à app.css).
 *
 * @package Kokende_Theme
 */

:root {
	--kokende-blue-primary: #2563eb;
	--kokende-search-surface: #ffffff;
	--kokende-search-stroke: #00bf63;
	--kokende-search-divider: #e8edf3;
	--kokende-search-label: #6b7280;
	--kokende-search-text: #1f2937;
	--kokende-search-cta: #00bf63;
	--kokende-search-cta-hover: #00a95a;
}

.kokende-search-tagline {
	font-weight: 700;
	font-style: italic;
	color: var(--kokende-blue-primary);
	font-size: 0.74rem;
	line-height: 1.25;
	margin: 0 0 1rem;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.kokende-search-btn.kokende-search-bar__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition:
		transform 0.3s ease,
		box-shadow 0.3s ease,
		filter 0.3s ease,
		background-color 0.3s ease;
}

.kokende-search-btn.kokende-search-bar__submit:hover,
.kokende-search-btn.kokende-search-bar__submit:focus-visible,
.kokende-search-btn.kokende-search-bar__submit:active {
	transform: translateY(-1px);
	filter: brightness(1.03);
	outline: none;
}

.kokende-search-form--bar .kokende-search-bar {
	align-items: stretch;
	min-height: 4.25rem;
	border-radius: 0.95rem;
	overflow: hidden;
	background: var(--kokende-search-surface);
	border: 2.4px solid var(--kokende-search-stroke) !important;
	box-shadow:
		0 1px 0 rgba(15, 23, 42, 0.04),
		0 0 0 1px rgba(0, 191, 99, 0.22),
		0 14px 28px -22px rgba(0, 191, 99, 0.62);
}

.kokende-search-form--bar .kokende-search-bar__segment {
	padding: 0.74rem 0.9rem 0.66rem;
	gap: 0.45rem;
}

.kokende-search-form--bar .kokende-search-bar__label {
	font-size: 0.61rem;
	letter-spacing: 0.07em;
	color: var(--kokende-search-label);
	font-weight: 700;
}

.kokende-search-form--bar .kokende-search-bar__input {
	font-size: 0.94rem;
	font-weight: 600;
	color: var(--kokende-search-text);
	line-height: 1.2;
}

.kokende-search-form--bar .kokende-search-bar__input::placeholder {
	color: #9aa3b2;
	font-weight: 500;
}

.kokende-search-form--bar .kokende-search-bar__icon {
	color: #97a0ad;
	font-size: 0.72rem;
	line-height: 1.7rem;
}

.kokende-search-form--bar .kokende-search-bar__icon--cal {
	font-size: 0.84rem;
}

.kokende-search-form--bar .kokende-search-bar__icon--user {
	font-size: 0.93rem;
}

.kokende-search-form--bar .kokende-search-bar__divider {
	background: var(--kokende-search-divider);
	margin: 0.54rem 0;
	opacity: 0.85;
}

.kokende-search-form--bar .kokende-search-bar__segment--from,
.kokende-search-form--bar .kokende-search-bar__segment--to {
	flex: 1.35 1 165px;
}

.kokende-search-form--bar .kokende-search-bar__segment--date,
.kokende-search-form--bar .kokende-search-bar__segment--return {
	flex: 1.05 1 132px;
}

.kokende-search-form--bar .kokende-search-bar__segment--pax {
	flex: 1.15 1 176px;
	min-width: 11.2rem;
	z-index: 12;
}

.kokende-search-form--bar .kokende-search-bar__field--pax {
	justify-content: center;
}

.kokende-search-form--bar .kokende-passengers-summary-text--bar {
	font-size: 0.98rem;
	font-weight: 700;
	line-height: 1.2;
	color: #111827;
}

.kokende-search-form--bar .kokende-passengers-summary-sub {
	font-size: 0.72rem;
	line-height: 1.1;
	color: #6b7280 !important;
	white-space: nowrap;
}

.kokende-search-form--bar .kokende-search-bar__submit-wrap {
	padding: 0.42rem;
	min-width: 0;
	background: #f7faf9;
	flex: 0 0 auto;
	z-index: 2;
}

.kokende-search-form--bar .kokende-search-bar__submit {
	width: auto;
	min-height: 3.32rem;
	min-width: 0;
	border-radius: 0.72rem !important;
	font-size: 0.96rem;
	font-weight: 700 !important;
	padding-left: 0.95rem !important;
	padding-right: 0.95rem !important;
	background: var(--kokende-search-cta) !important;
	border: 1px solid var(--kokende-search-cta-hover) !important;
	box-shadow: 0 10px 18px -16px rgba(0, 191, 99, 0.75) !important;
	letter-spacing: 0.01em;
	white-space: nowrap;
}

.kokende-search-form--bar .kokende-search-bar__submit:hover,
.kokende-search-form--bar .kokende-search-bar__submit:focus-visible {
	background: var(--kokende-search-cta-hover) !important;
}

.kokende-search-form--bar .kokende-search-bar__divider--submit {
	margin-right: 0;
}

@media (max-width: 1200px) {
	.kokende-search-form--bar .kokende-search-bar__submit-wrap {
		min-width: 0;
	}
}

@media (max-width: 1023px) {
	.kokende-search-tagline {
		white-space: normal;
		overflow: visible;
		text-overflow: clip;
	}

	.kokende-search-form--bar .kokende-search-bar {
		min-height: 0;
		border-radius: 0.92rem;
	}

	.kokende-search-form--bar .kokende-search-bar__submit-wrap {
		width: 100%;
		min-width: 0;
		padding: 0.62rem 0.68rem 0.72rem;
		background: transparent;
	}

	.kokende-search-form--bar .kokende-search-bar__submit {
		min-height: 3rem;
		border-radius: 0.74rem !important;
	}

	.kokende-search-form--bar .kokende-search-bar__divider--submit {
		display: none;
	}
}

.kokende-search-form--bar .kokende-floating-panel--pax-bar {
	min-width: 0;
	max-width: 22.5rem;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-8px) scale(0.98);
	transition:
		opacity 0.28s ease,
		transform 0.28s cubic-bezier(0.22, 1, 0.36, 1);
	box-shadow:
		0 4px 6px -1px rgba(15, 23, 42, 0.06),
		0 12px 40px -8px rgba(15, 23, 42, 0.14);
	border: 1px solid #e2e8f0;
	overflow: hidden;
}

.kokende-search-form--bar .kokende-floating-panel--pax-bar.is-open {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0) scale(1);
}

.kokende-search-form--bar .kokende-stepper-btn {
	transition:
		background-color 0.2s ease,
		border-color 0.2s ease,
		color 0.2s ease,
		transform 0.15s ease;
}

.kokende-search-form--bar .kokende-stepper-btn:active:not(:disabled) {
	transform: scale(0.96);
}

html.is-mobile .kokende-search-form--bar .kokende-floating-panel--pax-bar {
	border-radius: 0.875rem;
}

html.is-desktop .kokende-search-form--bar .kokende-floating-panel--pax-bar {
	border-radius: 1rem;
}
