/**
 * Widget wyszukiwarki RSPO.
 *
 * Style domyślne są celowo minimalne — wygląd ustawia się w zakładce Style
 * widgetu, tak jak w natywnych widgetach Elementor Pro.
 */

.cu-search {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	width: 100%;
}

.cu-search__form {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.cu-search__label {
	font-weight: 600;
}

/* Wiersz z samym polem — wyszukiwanie rusza w trakcie pisania, bez przycisku. */
.cu-search__row {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.cu-search__input {
	flex: 1 1 12rem;
	min-width: 0;
	padding: 0.7rem 0.9rem;
	border: 1px solid #c9d2cc;
	border-radius: 4px;
	background: #ffffff;
	font: inherit;
}

.cu-search__results {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/*
 * Maksymalną wysokość ustawia skrypt na podstawie faktycznych kart,
 * bo ich wysokość zależy od typografii wybranej w Elementorze i od tego,
 * ile linii zajmie długa nazwa placówki.
 */
.cu-search__results.is-scrollable {
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;

	/* Miejsce na pasek, żeby karty nie skakały po jego pojawieniu się. */
	padding-right: 6px;
}

.cu-search__results.is-scrollable:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.cu-search__results.is-scrollable::-webkit-scrollbar {
	width: 8px;
}

.cu-search__results.is-scrollable::-webkit-scrollbar-track {
	background: rgba( 0, 0, 0, 0.05 );
	border-radius: 4px;
}

.cu-search__results.is-scrollable::-webkit-scrollbar-thumb {
	background: rgba( 0, 0, 0, 0.22 );
	border-radius: 4px;
}

.cu-search__results.is-scrollable::-webkit-scrollbar-thumb:hover {
	background: rgba( 0, 0, 0, 0.34 );
}

.cu-search__result {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 1rem 1.15rem;
	border: 1px solid #d8e0da;
	border-radius: 4px;
	background: #ffffff;
}

.cu-search__title {
	margin: 0;
	font-size: 1.05rem;
	line-height: 1.35;
}

.cu-search__amount {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

.cu-search__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 1.1rem;
	margin: 0;
	font-size: 0.86rem;
}

.cu-search__meta-label {
	opacity: 0.7;
}

.cu-search__message {
	margin: 0 0 0.75rem;
	line-height: 1.55;
}

.cu-search__message--empty,
.cu-search__message--error,
.cu-search__message--hint {
	margin-bottom: 0;
}

.cu-search__message--hint {
	opacity: 0.75;
	font-size: 0.9em;
}

.cu-search__message--more {
	margin: 0.75rem 0 0;
	font-size: 0.88em;
	opacity: 0.8;
}

.cu-search.is-loading .cu-search__output {
	opacity: 0.55;
}
