/**
 * FPP Showcase IDX search bar — matches /search/ main app styling.
 * Shared by property search pages and embedded searchform widgets.
 */

.fpp-idx-search-scope,
#fpp-search-page .fpp-search-layout__idx {
	--fpp-idx-navy: #0c0c30;
	--fpp-idx-gold: #b87f0d;
	--fpp-idx-border: #555863;
	--fpp-idx-field-text: #e9eff2;
	--fpp-idx-advanced: #228fcc;
}

/* Reset theme / Elementor button overrides inside IDX search widgets */
.fpp-idx-search-scope .sidx-searchform button,
#fpp-search-page .sidx-searchform button {
	appearance: none;
	-webkit-appearance: none;
	box-shadow: none;
	font-family: 'IBM Plex Sans', sans-serif;
	line-height: 1.2;
}

/* Search row — single horizontal line on desktop */
.fpp-idx-search-scope .sidx-searchform .sidx-basic,
#fpp-search-page .sidx-searchform .sidx-basic {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	margin: 0;
	gap: 8px;
	z-index: 20;
	width: 100%;
}

.fpp-idx-search-scope .sidx-searchform .sidx-basic > *,
#fpp-search-page .sidx-searchform .sidx-basic > * {
	margin: 0 !important;
	min-width: 0;
	flex: 0 0 auto;
}

.fpp-idx-search-scope .sidx-searchform .sidx-basic > .sidx-locations-field-wrapper,
#fpp-search-page .sidx-searchform .sidx-basic > .sidx-locations-field-wrapper {
	flex: 1 1 auto;
	min-width: 180px;
}

/* Beds + Baths share one flex child — keep side by side */
.fpp-idx-search-scope .sidx-searchform .sidx-basic > .sidx-beds-and-baths,
#fpp-search-page .sidx-searchform .sidx-basic > .sidx-beds-and-baths {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 8px;
	flex: 0 0 auto;
}

.fpp-idx-search-scope .sidx-searchform .sidx-beds-and-baths > *,
#fpp-search-page .sidx-searchform .sidx-beds-and-baths > * {
	flex: 0 0 auto;
	min-width: 0;
	margin: 0 !important;
}

.fpp-idx-search-scope .sidx-searchform .sidx-basic > .sidx-range,
.fpp-idx-search-scope .sidx-searchform .sidx-basic > .sidx-types,
#fpp-search-page .sidx-searchform .sidx-basic > .sidx-range,
#fpp-search-page .sidx-searchform .sidx-basic > .sidx-types {
	flex: 0 0 auto;
}

.fpp-idx-search-scope .sidx-searchform .sidx-basic .sidx-dropdown,
.fpp-idx-search-scope .sidx-searchform .sidx-basic .sidx-floating-menu-anchor,
#fpp-search-page .sidx-searchform .sidx-basic .sidx-dropdown,
#fpp-search-page .sidx-searchform .sidx-basic .sidx-floating-menu-anchor {
	display: block;
	width: auto;
}

/* Location input */
.fpp-idx-search-scope .sidx-searchform .sidx-suggestions-input,
.fpp-idx-search-scope .sidx-searchform .sidx-input-field,
#fpp-search-page .sidx-searchform .sidx-suggestions-input,
#fpp-search-page .sidx-searchform .sidx-input-field {
	background: #fff !important;
	border: 1px solid var(--fpp-idx-border) !important;
	border-radius: 4px !important;
	padding: 8px 10px !important;
	height: 42px !important;
	display: flex !important;
	align-items: center;
	box-sizing: border-box;
}

.fpp-idx-search-scope .sidx-searchform .sidx-suggestions-input input,
.fpp-idx-search-scope .sidx-searchform .sidx-input-field input,
#fpp-search-page .sidx-searchform .sidx-suggestions-input input,
#fpp-search-page .sidx-searchform .sidx-input-field input {
	font-family: 'IBM Plex Sans', sans-serif !important;
	font-size: 0.95rem !important;
	color: var(--fpp-idx-navy) !important;
	background: transparent !important;
}

.fpp-idx-search-scope .sidx-searchform .sidx-suggestions-input i,
.fpp-idx-search-scope .sidx-searchform .sidx-input-field i,
#fpp-search-page .sidx-searchform .sidx-suggestions-input i,
#fpp-search-page .sidx-searchform .sidx-input-field i {
	color: var(--fpp-idx-border) !important;
}

/* Filter chips: Price, Beds, Baths, For Sale */
.fpp-idx-search-scope .sidx-searchform .sidx-basic .sidx-field,
#fpp-search-page .sidx-searchform .sidx-basic .sidx-field {
	background: var(--fpp-idx-navy) !important;
	border: 1px solid var(--fpp-idx-navy) !important;
	color: var(--fpp-idx-field-text) !important;
	border-radius: 4px !important;
	padding: 8px 14px !important;
	height: 42px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	font-family: 'IBM Plex Sans', sans-serif !important;
	font-size: 0.9rem !important;
	font-weight: 600 !important;
	cursor: pointer;
	box-sizing: border-box;
	white-space: nowrap;
}

.fpp-idx-search-scope .sidx-searchform .sidx-dropdown.sidx-active .sidx-field,
.fpp-idx-search-scope .sidx-searchform .sidx-dropdown.sidx-active .sidx-input-field,
#fpp-search-page .sidx-searchform .sidx-dropdown.sidx-active .sidx-field,
#fpp-search-page .sidx-searchform .sidx-dropdown.sidx-active .sidx-input-field {
	border-color: var(--fpp-idx-gold) !important;
}

/* Submit button on embedded searchform widgets */
.fpp-idx-search-scope .sidx-searchform .sidx-basic > button.sidx-primary,
#fpp-search-page .sidx-searchform .sidx-basic > button.sidx-primary {
	background: var(--fpp-idx-navy) !important;
	border: 1px solid var(--fpp-idx-navy) !important;
	color: var(--fpp-idx-field-text) !important;
	border-radius: 4px !important;
	min-width: 42px !important;
	width: 42px !important;
	max-width: 42px !important;
	flex: 0 0 42px !important;
	height: 42px !important;
	padding: 8px !important;
	cursor: pointer;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: center !important;
}

.fpp-idx-search-scope .sidx-searchform .sidx-basic > button.sidx-primary:hover,
#fpp-search-page .sidx-searchform .sidx-basic > button.sidx-primary:hover {
	background: #151538 !important;
	border-color: var(--fpp-idx-gold) !important;
	color: #fff !important;
}

/* Advanced Search toggle (main search app) */
.fpp-idx-search-scope .sidx-searchform .sidx-collapse-button,
#fpp-search-page .sidx-searchform .sidx-collapse-button {
	color: var(--fpp-idx-advanced) !important;
	font-family: 'IBM Plex Sans', sans-serif !important;
	font-size: 0.9rem !important;
	font-weight: 600 !important;
	text-align: left !important;
	margin: 8px 0 0 !important;
	cursor: pointer;
}

.fpp-idx-search-scope .sidx-searchform .sidx-collapse-button i,
#fpp-search-page .sidx-searchform .sidx-collapse-button i {
	color: var(--fpp-idx-advanced) !important;
}

/* Advanced filters panel */
.fpp-idx-search-scope .sidx-searchform .sidx-advanced,
#fpp-search-page .sidx-searchform .sidx-advanced {
	background: #f9f9f7 !important;
	border: 1px solid #e6e6e3 !important;
	border-radius: 4px !important;
	padding: 12px !important;
	margin-top: 8px !important;
}

.fpp-idx-search-scope .sidx-searchform .sidx-floating-menu,
#fpp-search-page .sidx-searchform .sidx-floating-menu {
	z-index: 100 !important;
	border-radius: 4px !important;
}

/* Do not clip filter dropdowns */
.fpp-idx-search-scope.fpp-shortcode-container--search,
#fpp-search-page .fpp-search-layout__idx {
	overflow: visible !important;
}

@media (max-width: 768px) {
	.fpp-idx-search-scope .sidx-searchform .sidx-basic,
	#fpp-search-page .sidx-searchform .sidx-basic {
		flex-wrap: wrap;
		align-items: stretch;
	}

	.fpp-idx-search-scope .sidx-searchform .sidx-basic > *,
	#fpp-search-page .sidx-searchform .sidx-basic > * {
		flex: 1 1 100%;
		width: 100%;
	}

	.fpp-idx-search-scope .sidx-searchform .sidx-basic > .sidx-beds-and-baths,
	#fpp-search-page .sidx-searchform .sidx-basic > .sidx-beds-and-baths {
		display: flex;
		flex-wrap: nowrap;
		gap: 8px;
	}

	.fpp-idx-search-scope .sidx-searchform .sidx-beds-and-baths > *,
	#fpp-search-page .sidx-searchform .sidx-beds-and-baths > * {
		flex: 1 1 0;
		width: auto;
		min-width: 0;
		margin: 0 !important;
	}

	.fpp-idx-search-scope .sidx-searchform .sidx-beds-and-baths .sidx-field-options,
	.fpp-idx-search-scope .sidx-searchform .sidx-beds-and-baths .sidx-dropdown,
	.fpp-idx-search-scope .sidx-searchform .sidx-beds-and-baths .sidx-floating-menu-anchor,
	#fpp-search-page .sidx-searchform .sidx-beds-and-baths .sidx-field-options,
	#fpp-search-page .sidx-searchform .sidx-beds-and-baths .sidx-dropdown,
	#fpp-search-page .sidx-searchform .sidx-beds-and-baths .sidx-floating-menu-anchor {
		display: block;
		width: 100%;
	}

	.fpp-idx-search-scope .sidx-searchform .sidx-basic > .sidx-range .sidx-dropdown,
	.fpp-idx-search-scope .sidx-searchform .sidx-basic > .sidx-types .sidx-dropdown,
	.fpp-idx-search-scope .sidx-searchform .sidx-basic > .sidx-locations-field-wrapper .sidx-dropdown,
	#fpp-search-page .sidx-searchform .sidx-basic > .sidx-range .sidx-dropdown,
	#fpp-search-page .sidx-searchform .sidx-basic > .sidx-types .sidx-dropdown,
	#fpp-search-page .sidx-searchform .sidx-basic > .sidx-locations-field-wrapper .sidx-dropdown {
		width: 100%;
	}

	.fpp-idx-search-scope .sidx-searchform .sidx-basic .sidx-field,
	#fpp-search-page .sidx-searchform .sidx-basic .sidx-field {
		width: 100%;
	}

	.fpp-idx-search-scope .sidx-searchform .sidx-basic > button.sidx-primary,
	#fpp-search-page .sidx-searchform .sidx-basic > button.sidx-primary {
		max-width: none !important;
		width: 100% !important;
		flex: 1 1 100% !important;
	}
}
