.rb-swatch-scroller {
	position: relative;
}

.db-variation-swathes-box:not([data-attribute]) {
	display: flex !important;
	flex-wrap: nowrap !important;
	overflow-x: auto;
	overflow-y: hidden;
	gap: 4px;
	scroll-snap-type: x proximity;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.db-variation-swathes-box:not([data-attribute])::-webkit-scrollbar {
	display: none;
}

.db-variation-swathes-box:not([data-attribute]) .db-variation-control-box {
	flex: 0 0 auto;
	scroll-snap-align: start;
}

.rb-swatch-arrow {
	display: none;
	position: absolute;
	top: 50%;
	z-index: 2;
	width: 22px;
	height: 22px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 4px rgba(0, 0, 0, .25);
	transform: translateY(-50%);
	cursor: pointer;
}

.rb-swatch-arrow::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 7px;
	height: 7px;
	border-top: 2px solid #222;
	border-right: 2px solid #222;
}

.rb-swatch-next {
	left: -6px;
}

.rb-swatch-next::before {
	transform: translate(-30%, -50%) rotate(-135deg);
}

.rb-swatch-prev {
	right: -6px;
}

.rb-swatch-prev::before {
	transform: translate(-70%, -50%) rotate(45deg);
}

@media (hover: hover) and (pointer: fine) {
	.rb-can-scroll .rb-swatch-arrow:not([hidden]) {
		display: block;
	}
}

.woocommerce-product-gallery > .flex-direction-nav {
	display: none;
}

/* ===== Checkout ===== */
form.woocommerce-checkout { padding-bottom: 60px !important; }
form.woocommerce-checkout::after { content: ""; display: table; clear: both; }
#place_order { margin-bottom: 16px !important; }
.woocommerce-checkout .woocommerce-privacy-policy-text { text-align: center; font-size: 13px; margin-top: 0 !important; }
.woocommerce-checkout .woocommerce-privacy-policy-text p { margin: 0 !important; }
.woocommerce-checkout p:has(> #flashy_accept_marketing) { display: flex !important; align-items: flex-start; gap: 10px; }
.woocommerce-checkout p:has(> #flashy_accept_marketing) label { display: block !important; margin: 0 !important; flex: 1; line-height: 1.6; }
#flashy_accept_marketing {
	-webkit-appearance: none !important; appearance: none !important;
	position: static !important; opacity: 1 !important; visibility: visible !important; clip: auto !important;
	flex-shrink: 0; width: 18px !important; height: 18px !important; margin: 3px 0 0 0 !important;
	border: 1.5px solid #222 !important; border-radius: 3px;
	background: #fff no-repeat center / 12px; cursor: pointer;
}
#flashy_accept_marketing:checked {
	background-color: #222;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' d='M3 8.5l3.5 3.5L13 4.5'/%3E%3C/svg%3E");
}

/* ===== Product: stamp name required ===== */
.single_add_to_cart_button.wcd-blocked { opacity: .5; cursor: not-allowed; }
#wcd_name_stamp_text.wcd-error { border-bottom-color: #e2401c !important; }
.wcd-stamp-error { display: none; color: #e2401c; font-size: 13px; margin-top: 6px; }
.wcd-stamp-error.is-visible { display: block; }

/* Keep swatch scroller from widening the page in RTL */
.rb-swatch-scroller { overflow-x: clip; overflow-clip-margin: 8px; }
