.sheen-product-search {
	/* Layout only. BeTheme controls the normal field and button styling. */
	display: grid !important;
	grid-template-columns: var(--sheen-category-width, 170px) minmax(0, 1fr) auto;
	align-items: stretch;
	position: relative;
	width: 100%;
	min-width: 0;
}

.sheen-product-search__category {
	min-width: 0;
}

.sheen-product-search__categories,
.sheen-product-search__input-wrap,
.sheen-product-search__submit {
	box-sizing: border-box;
	margin: 0;
}

.sheen-product-search__categories {
	width: 100%;
}

.sheen-product-search__input-wrap {
	position: relative;
	min-width: 0;
	width: 100% !important;
}

.sheen-product-search__input {
	width: 100% !important;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
}

.sheen-product-search__submit {
	width: auto !important;
	align-self: stretch;
	cursor: pointer;
}

.sheen-product-search__results {
	position: absolute;
	z-index: 9999;
	top: calc(100% + 2px);
	left: 0;
	right: 0;
	max-height: 420px;
	overflow-y: auto;
	border: 1px solid rgba(0, 0, 0, .12);
	background: #fff;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .16);
	text-align: left;
}

.sheen-product-search__results ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.sheen-product-search__results li {
	margin: 0;
	border-bottom: 1px solid rgba(0, 0, 0, .08);
}

.sheen-product-search__results li:last-child {
	border-bottom: 0;
}

.sheen-product-search__results a {
	display: flex;
	gap: 12px;
	align-items: center;
	padding: 10px 12px;
	color: inherit;
	text-decoration: none;
}

.sheen-product-search__results a:hover {
	background: rgba(0, 0, 0, .04);
}

.sheen-product-search__image {
	flex: 0 0 52px;
	width: 52px;
}

.sheen-product-search__image img {
	display: block;
	width: 52px;
	height: 52px;
	object-fit: contain;
}

.sheen-product-search__details,
.sheen-product-search__name,
.sheen-product-search__price {
	display: block;
}

.sheen-product-search__name {
	font-weight: 600;
}

.sheen-product-search__price {
	margin-top: 3px;
}

.sheen-product-search__loading,
.sheen-product-search__empty {
	margin: 0;
	padding: 14px;
}

@media (max-width: 767px) {
	.sheen-product-search {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.sheen-product-search__category {
		grid-column: 1 / -1;
	}

	.sheen-product-search__input-wrap {
		grid-column: 1;
	}
}
