/**
 * Barre de recherche publique — layout module ; styles des contrôles = modules/ui.
 */

body.archive .fl-event-search,
body.post-type-archive-event .fl-event-search,
body.tax-event_cat .fl-event-search,
body.tax-event_loc .fl-event-search,
.fl-events-location .fl-event-search,
body.home .fl-event-search {
	margin-top: -40px;
	margin-bottom: var(--fl-space-sm);
	position: relative;
	z-index: 2;
}

.fl-events-location .fl-event-search {
	margin-top: -34px;
}

.fl-event-search {
	padding: var(--fl-space-sm);
	border: 1px solid var(--fl-color-border);
	border-radius: var(--fl-radius-lg);
	background: var(--fl-color-surface);
	box-shadow: var(--fl-shadow-md);
}

.fl-event-search__form {
	margin: 0;
}

.fl-event-search__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
	align-items: center;
	gap: var(--fl-space-sm);
}

.fl-event-search__cell {
	min-width: 0;
}

.fl-event-search__cell--autocomplete {
	position: relative;
}

.fl-event-search__cell--submit {
	display: flex;
	align-items: center;
	min-width: max-content;
}

/* Même hauteur de boîte : champ texte, triggers dropdown, bouton (évite l’étirement flex/grid). */
.fl-event-search .fl-ui-field__control,
.fl-event-search .fl-ui-region-select__trigger,
.fl-event-search .fl-ui-select-menu__trigger,
.fl-event-search__cell--submit .fl-ui-button {
	box-sizing: border-box;
	height: var(--fl-control-height-md);
	min-height: var(--fl-control-height-md);
	max-height: var(--fl-control-height-md);
}

.fl-event-search .fl-ui-field--select-menu .fl-ui-select-menu,
.fl-event-search .fl-ui-field--region-select .fl-ui-region-select {
	display: flex;
	align-items: center;
}

/* Placeholder « Toutes les… » = même gris que le champ nom vide */
.fl-event-search .fl-ui-region-select:has(.fl-ui-region-select__native option[value='']:checked) .fl-ui-region-select__label,
.fl-event-search .fl-ui-select-menu:has(.fl-ui-select-menu__native option[value='']:checked) .fl-ui-select-menu__trigger-label {
	color: var(--fl-text-placeholder);
}

.fl-event-search__suggestions {
	position: absolute;
	top: calc(100% + var(--fl-space-2xs));
	left: 0;
	right: 0;
	z-index: var(--fl-z-dropdown);
	margin: 0;
	padding: var(--fl-space-xs);
	list-style: none;
	max-height: 280px;
	overflow: auto;
	border: 1px solid var(--fl-color-border);
	border-radius: var(--fl-radius-lg);
	background: var(--fl-color-surface);
	box-shadow: var(--fl-shadow-md);
}

.fl-event-search__suggestion {
	margin: 0;
	padding: 0;
}

.fl-event-search__suggestion-button {
	display: block;
	width: 100%;
	padding: var(--fl-space-sm) var(--fl-space-md);
	border: 0;
	border-radius: var(--fl-radius-md);
	background: transparent;
	color: var(--fl-text-primary);
	font-size: var(--fl-font-size-base);
	text-align: left;
	cursor: pointer;
}

.fl-event-search__suggestion-button:hover,
.fl-event-search__suggestion-button:focus-visible {
	background: var(--fl-color-surface-hover);
	outline: none;
}

.fl-event-search .fl-ui-region-select__panel,
.fl-event-search .fl-ui-select-menu__panel {
	z-index: calc(var(--fl-z-dropdown) + 1);
}

@media (max-width: 991px) {
	.fl-event-search__grid {
		grid-template-columns: 1fr;
	}

	.fl-event-search__cell--submit {
		min-width: 0;
	}
}
