:root {
	--wid-blue: #0077c5;
	--wid-ink: #000;
	--wid-bar-icon: #0c0000;
	--wid-text: #43454b;
	--wid-error: #e2401c;
	--wid-error-text: #c4361a;
	--wid-success: #0f834d;
	--wid-field-bg: #f5f6f7;
	--wid-field-border: #7a7f85;
	--wid-white: #fff;
	--wid-backdrop: rgba(0, 0, 0, .5);
	--wid-shadow: 0 0 35px rgba(0, 0, 0, .1);
	--wid-radius: 4px;
	--wid-space: 16px;
	--wid-tap: 48px;
}

.storefront-handheld-footer-bar {
	bottom: 0;
}

.storefront-handheld-footer-bar ul li > a {
	color: var(--wid-bar-icon);
}

.storefront-handheld-footer-bar ul li.search.active::before {
	content: "";
	position: fixed;
	inset: 0;
	background: var(--wid-backdrop);
}

.wid-search {
	display: none;
}

.storefront-handheld-footer-bar ul li.search.active .wid-search {
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1000;
	max-height: 100vh;
	max-height: 100dvh;
	overflow-y: auto;
	padding: var(--wid-space);
	background: var(--wid-white);
	box-shadow: var(--wid-shadow);
	text-align: left;
}

.wid-search__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
}

.wid-search__title {
	margin: 0;
	color: var(--wid-ink);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.3;
}

.wid-search__close {
	width: var(--wid-tap);
	height: var(--wid-tap);
	margin-right: -12px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wid-ink);
	font-size: 32px;
	line-height: 1;
}

.wid-search__close:hover,
.wid-search__close:focus {
	background: transparent;
	color: var(--wid-blue);
}

.storefront-handheld-footer-bar ul li.search .wid-search .site-search {
	position: static;
	padding: 0;
	background: transparent;
}

.wid-search div[id*="ajaxsearchlite"].wpdreams_asl_container,
.wid-search div.asl_w {
	padding: 0;
	background: transparent;
}

.wid-search div.asl_m .probox {
	height: var(--wid-tap);
	border: 1px solid var(--wid-field-border);
	border-radius: var(--wid-radius);
	background: var(--wid-field-bg);
}

.wid-search div.asl_m .probox .proinput {
	font-size: 16px;
}

.wid-search div.asl_m .probox .proinput input {
	height: calc(var(--wid-tap) - 2px);
	font-size: 16px;
}

.wid-search div.asl_w .probox .proinput input.autocomplete {
	margin-top: calc(2px - var(--wid-tap)) !important;
}

.wid-search div.asl_m .probox .promagnifier,
.wid-search div.asl_m .probox .proloading,
.wid-search div.asl_m .probox .proclose {
	width: calc(var(--wid-tap) - 2px);
	height: calc(var(--wid-tap) - 2px);
}

.wid-search div.asl_m .probox .promagnifier {
	border-radius: 0 var(--wid-radius) var(--wid-radius) 0;
	background: var(--wid-blue);
}

.wid-search div.asl_m .probox .promagnifier .innericon svg {
	fill: var(--wid-white);
}

.wid-search div.asl_m:focus-within .probox {
	outline: 2px solid var(--wid-blue);
	outline-offset: 1px;
}

@media (max-width: 767px) {
	.search-results .site-content {
		margin-top: var(--wid-space);
	}

	.search-results .site-content .col-full {
		display: flex;
		flex-direction: column;
	}

	.search-results #secondary {
		order: 1;
	}

	.search-results .woocommerce-products-header__title {
		margin-bottom: var(--wid-space);
		font-size: 1.5rem;
	}
}

.woocommerce-checkout form.checkout .input-text {
	padding: 12px;
	border: 1px solid var(--wid-field-border);
	border-radius: var(--wid-radius);
	background: var(--wid-field-bg);
	font-size: 16px;
}

.woocommerce-checkout form.checkout .input-text:focus {
	border-color: var(--wid-blue);
	outline: 2px solid var(--wid-blue);
	outline-offset: 1px;
	background: var(--wid-white);
}

.woocommerce-checkout form.checkout .woocommerce-invalid .input-text {
	border-color: var(--wid-error);
}

.woocommerce-checkout form.checkout .woocommerce-validated .input-text {
	border-color: var(--wid-success);
}

.wid-field-error {
	display: block;
	margin-top: 4px;
	color: var(--wid-error-text);
	font-size: 14px;
}

#place_order:disabled {
	opacity: .5;
	cursor: not-allowed;
}

.wid-missing {
	position: relative;
	margin: 0 0 14px;
	padding: 12px var(--wid-space);
	border: 1px solid var(--wid-error);
	border-radius: var(--wid-radius);
	background: var(--wid-white);
	box-shadow: var(--wid-shadow);
	color: var(--wid-text);
	font-size: 14px;
}

.wid-missing::after {
	content: "";
	position: absolute;
	bottom: -8px;
	left: 32px;
	width: 14px;
	height: 14px;
	border-right: 1px solid var(--wid-error);
	border-bottom: 1px solid var(--wid-error);
	background: var(--wid-white);
	transform: rotate(45deg);
}

.wid-missing[hidden] {
	display: none;
}

.wid-missing__title {
	margin: 0 0 8px;
	color: var(--wid-ink);
	font-weight: 600;
	line-height: 1.4;
}

.wid-missing__list {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.wid-missing__list li {
	margin: 0;
}

.wid-missing__link {
	padding: 6px 10px;
	border: 1px solid var(--wid-error);
	border-radius: var(--wid-radius);
	background: var(--wid-white);
	color: var(--wid-error-text);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.3;
}

.wid-missing__link:hover,
.wid-missing__link:focus {
	background: var(--wid-error-text);
	color: var(--wid-white);
}

.wid-missing__link:focus-visible {
	outline: 2px solid var(--wid-blue);
	outline-offset: 2px;
}
