/**
 * Nuvem Search — autocomplete dropdown.
 *
 * Neutral, in-flow suggestion list that sits under the search input. Kept generic
 * (currentColor + subtle tints) so it inherits the host's typography; a host can
 * override any .nuvem-ac* rule for a tighter fit.
 */

.nuvem-ac {
	position: relative;
	margin-top: 1rem;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.nuvem-ac[hidden] {
	display: none;
}

.nuvem-ac-item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.5rem 0.25rem;
	text-decoration: none;
	color: inherit;
	border-radius: 0.375rem;
	transition: background-color 0.15s ease;
}

.nuvem-ac-item:hover,
.nuvem-ac-item.is-active {
	background: rgba(0, 0, 0, 0.05);
}

.nuvem-ac-thumb {
	position: relative;
	flex: none;
	width: 44px;
	height: 44px;
	overflow: hidden;
	border-radius: 0.25rem;
	/* Themable frame: a host can set --nuvem-ac-thumb-bg (e.g. a warm tint). */
	background: var( --nuvem-ac-thumb-bg, rgba( 0, 0, 0, 0.04 ) );
}

.nuvem-ac-thumb img {
	width: 100%;
	height: 100%;
	/* Contain + center: products are often taller than wide, so never crop them;
	   show the whole thing centered horizontally over the frame. */
	object-fit: contain;
	object-position: center;
	display: block;
}

.nuvem-ac-text {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.nuvem-ac-title {
	font-weight: 500;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.nuvem-ac-sub {
	font-size: 0.8125rem;
	line-height: 1.2;
	opacity: 0.6;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
