/**
 * Theme isolation — plugin button/input chrome when Appearance → style_controls is on.
 * Loaded last on checkout, account, and thank-you.
 */

html.wf-js .wf-nojs-only,
html.wf-js body.wf-style-controls .wf-nojs-only,
html.wf-js body.wf-style-controls button.wf-btn.wf-nojs-only,
html.wf-js body.wf-style-controls a.wf-btn.wf-nojs-only,
html.wf-js body.wf-style-controls button.wf-nojs-only {
	display: none !important;
}

html:not(.wf-js) .wf-js-only {
	display: none !important;
}

html body .wf-otp button.wf-otp__change,
html body.wf-style-controls .wf-otp button.wf-otp__change {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline !important;
	width: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;
	height: auto !important;
	margin: 0 0.15em !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	color: var(--wf-accent, #1a1a1a) !important;
	font: inherit !important;
	font-size: inherit !important;
	font-weight: 700 !important;
	line-height: inherit !important;
	letter-spacing: normal !important;
	text-decoration: underline !important;
	text-underline-offset: 2px !important;
	text-transform: none !important;
}

html body .wf-otp button.wf-otp__resend,
html body.wf-style-controls .wf-otp button.wf-otp__resend {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: block !important;
	width: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;
	height: auto !important;
	margin: 12px auto 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	color: #8c8c8c !important;
	font: inherit !important;
	font-size: 0.875rem !important;
	font-weight: 500 !important;
	letter-spacing: normal !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
}

html body .wf-otp button.wf-otp__resend:not(:disabled),
html body.wf-style-controls .wf-otp button.wf-otp__resend:not(:disabled) {
	color: var(--wf-accent, #1a1a1a) !important;
	font-weight: 700 !important;
	text-decoration: underline !important;
	text-underline-offset: 2px !important;
	cursor: pointer !important;
}

html body.wf-style-controls a.wf-btn:not(.wf-nojs-only):not(.wf-address__btn--add),
html body.wf-style-controls button.wf-btn:not(.wf-nojs-only):not(.wf-address__btn--add),
html body.wf-style-controls input.wf-btn:not(.wf-nojs-only),
html body.wf-style-controls .wf-map-picker a.wf-map-picker__btn,
html body.wf-style-controls .wf-map-overlay a.wf-map-overlay__btn,
html body.wf-style-controls .wf-address-modal a.wf-address__btn:not(.wf-address__btn--add),
html body.wf-style-controls .wf-address-modal button.wf-address__btn:not(.wf-address__btn--add),
html body.wf-style-controls .wf-account a.wf-account__btn,
html body.wf-style-controls .wf-account button.wf-account__btn,
html body.wf-style-controls .wf-account button.wf-account__btn.button,
html body.wf-style-controls a.wf-apply-coupon,
html body.wf-style-controls button.wf-apply-coupon {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px;
	box-sizing: border-box !important;
	width: auto;
	height: auto !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 8px 14px !important;
	border: 1px solid var(--wf-accent, #1a1a1a) !important;
	border-radius: var(--wf-radius, 8px) !important;
	background: #fff !important;
	background-image: none !important;
	background-color: #fff !important;
	color: var(--wf-text, #1a1a1a) !important;
	box-shadow: none !important;
	text-shadow: none !important;
	text-decoration: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-style: normal !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	cursor: pointer !important;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;
}

html body.wf-style-controls a.wf-btn.wf-address__btn--add,
html body.wf-style-controls .wf-address a.wf-address__btn--add {
	border: 1px solid var(--wf-border, #e8e8e8) !important;
	border-color: var(--wf-border, #e8e8e8) !important;
	background: #fff !important;
	background-color: #fff !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body.wf-style-controls a.wf-btn:hover,
html body.wf-style-controls button.wf-btn:hover,
html body.wf-style-controls a.wf-btn:focus,
html body.wf-style-controls button.wf-btn:focus,
html body.wf-style-controls .wf-map-overlay a.wf-map-overlay__btn:hover,
html body.wf-style-controls .wf-map-picker a.wf-map-picker__btn:hover {
	opacity: 1;
	filter: none;
	text-decoration: none !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body.wf-style-controls a.wf-btn--primary,
html body.wf-style-controls button.wf-btn--primary,
html body.wf-style-controls .wf-otp button.wf-otp__btn,
html body.wf-style-controls .wf-otp button.wf-btn.wf-otp__btn,
html body.wf-style-controls .wf-map-overlay a.wf-map-overlay__btn--primary,
html body.wf-style-controls .wf-address-modal button.wf-address__btn--primary,
html body.wf-style-controls .wf-address-modal a.wf-address__btn--primary,
html body.wf-style-controls .wf-slots-sheet button.wf-slots-sheet__confirm,
html body.wf-style-controls button.wf-slots-sheet__confirm,
html body.wf-style-controls .wf-account a.wf-account__btn:not(.wf-account__btn--ghost),
html body.wf-style-controls .wf-account button.wf-account__btn:not(.wf-account__btn--ghost),
html body.wf-style-controls a.wf-apply-coupon,
html body.wf-style-controls button.wf-apply-coupon,
html body.wf-style-controls a.wf-cart-totals__checkout,
html body.wf-cart-page-enabled a.wf-cart-totals__checkout,
html body.wf-cart-page-enabled a.wf-cart-mobile-bar__checkout,
html body.wf-style-controls a.wf-cart-mobile-bar__checkout,
html body.wf-style-controls .wf-cart-mobile-bar a.wf-btn,
html body.wf-style-controls .wf-cart-mobile-bar a.button {
	background: var(--wf-accent, #1a1a1a) !important;
	background-color: var(--wf-accent, #1a1a1a) !important;
	border-color: var(--wf-accent, #1a1a1a) !important;
	color: #fff !important;
}

html body .wf-slots button.wf-slots__trigger,
html body button.wf-slots__trigger,
html body.wf-style-controls .wf-slots button.wf-slots__trigger,
html body.wf-style-controls button.wf-slots__trigger {
	display: none;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 12px !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	height: auto !important;
	margin: 0 !important;
	padding: 12px 14px !important;
	border: 1px solid #ebebeb !important;
	border-radius: 12px !important;
	background: #fff !important;
	background-color: #fff !important;
	background-image: none !important;
	color: var(--wf-text, #1a1a1a) !important;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	letter-spacing: normal !important;
	text-align: start !important;
	text-transform: none !important;
	text-decoration: none !important;
	text-shadow: none !important;
	box-shadow: none !important;
	outline: none !important;
	cursor: pointer !important;
	appearance: none !important;
	-webkit-appearance: none !important;
}

@media (max-width: 767px) {
	html body .wf-slots button.wf-slots__trigger,
	html body button.wf-slots__trigger,
	html body.wf-style-controls .wf-slots button.wf-slots__trigger,
	html body.wf-style-controls button.wf-slots__trigger {
		display: flex !important;
	}
}

html body .wf-slots button.wf-slots__trigger:hover,
html body .wf-slots button.wf-slots__trigger:focus,
html body .wf-slots button.wf-slots__trigger:focus-visible,
html body.wf-style-controls button.wf-slots__trigger:hover,
html body.wf-style-controls button.wf-slots__trigger:focus {
	border-color: #d8d8d8 !important;
	background: #fff !important;
	background-color: #fff !important;
	color: var(--wf-text, #1a1a1a) !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
	opacity: 1 !important;
	outline: none !important;
}

html body .wf-slots__trigger-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	height: 40px !important;
	border-radius: 10px !important;
	background: color-mix(in srgb, var(--wf-accent, #1a1a1a) 8%, #fff) !important;
	color: var(--wf-accent, #1a1a1a) !important;
}

html body .wf-slots__trigger-title {
	color: var(--wf-text, #1a1a1a) !important;
	font-weight: 700 !important;
}

html body .wf-slots__trigger-value {
	color: var(--wf-muted, #8c8c8c) !important;
	font-weight: 400 !important;
}

html body .wf-slots__trigger.is-filled .wf-slots__trigger-value {
	color: var(--wf-text, #1a1a1a) !important;
	font-weight: 600 !important;
}

html body .wf-slots__trigger.is-empty .wf-slots__trigger-value {
	color: var(--wf-accent, #1a1a1a) !important;
	font-weight: 600 !important;
}

html body .wf-slots-sheet button.wf-slots-sheet__confirm,
html body button.wf-slots-sheet__confirm {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 12px 16px !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: var(--wf-accent, #1a1a1a) !important;
	background-color: var(--wf-accent, #1a1a1a) !important;
	color: #fff !important;
	font-weight: 700 !important;
	box-shadow: none !important;
}

html body.wf-style-controls a.wf-btn--primary:hover,
html body.wf-style-controls button.wf-btn--primary:hover,
html body.wf-style-controls .wf-map-overlay a.wf-map-overlay__btn--primary:hover,
html body.wf-style-controls .wf-account a.wf-account__btn:not(.wf-account__btn--ghost):hover,
html body.wf-style-controls .wf-account button.wf-account__btn:not(.wf-account__btn--ghost):hover {
	opacity: 0.92;
	color: #fff !important;
}

html body.wf-style-controls a.wf-btn--ghost,
html body.wf-style-controls button.wf-btn--ghost,
html body.wf-style-controls .wf-map-overlay a.wf-map-overlay__btn--ghost,
html body.wf-style-controls .wf-account a.wf-account__btn--ghost,
html body.wf-style-controls .wf-account button.wf-account__btn--ghost {
	background: #fff !important;
	background-color: #fff !important;
	border-color: var(--wf-accent, #1a1a1a) !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body.wf-style-controls a.wf-btn--ghost:hover,
html body.wf-style-controls button.wf-btn--ghost:hover,
html body.wf-style-controls .wf-map-overlay a.wf-map-overlay__btn--ghost:hover {
	background: #f5f5f5 !important;
	background-color: #f5f5f5 !important;
	color: var(--wf-text, #1a1a1a) !important;
}

/* Map picker — full-width dashed control */
html body.wf-style-controls .wf-map-picker a.wf-map-picker__btn,
html body.wf-style-controls a.wf-map-picker__btn {
	width: 100% !important;
	min-height: 46px !important;
	padding: 10px 14px !important;
	border: 1px dashed #cfcfcf !important;
	border-radius: 10px !important;
	background: #fafafa !important;
	background-color: #fafafa !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body.wf-style-controls .wf-map-picker a.wf-map-picker__btn:hover,
html body.wf-style-controls a.wf-map-picker__btn.is-set {
	border-style: solid !important;
	border-color: var(--wf-accent, #1a1a1a) !important;
	background: #fff !important;
	background-color: #fff !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body .wf-map-overlay a.wf-map-overlay__close {
	position: absolute !important;
	top: 12px !important;
	inset-inline-start: 12px !important;
	inset-inline-end: auto !important;
	right: auto !important;
	left: auto !important;
	width: 36px !important;
	min-height: 36px !important;
	height: 36px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: #f5f5f5 !important;
	background-color: #f5f5f5 !important;
	color: var(--wf-text, #1a1a1a) !important;
	font-size: 0 !important;
	font-weight: 400 !important;
	line-height: 1 !important;
}

html body .wf-map-overlay a.wf-map-overlay__close:hover {
	background: #ebebeb !important;
	background-color: #ebebeb !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body .wf-map-overlay a.wf-map-overlay__btn--primary.is-loading {
	opacity: 0.55 !important;
	cursor: not-allowed !important;
	pointer-events: none !important;
}

html body.wf-style-controls .wf-map-overlay__search {
	appearance: none !important;
	-webkit-appearance: none !important;
	box-shadow: none !important;
	text-shadow: none !important;
}

html body .wf-map-overlay__title {
	margin: 0 0 4px;
	font-size: 16px;
	font-weight: 800;
	text-align: center;
	color: var(--wf-text, #1a1a1a);
}

/* Keep autocomplete above Leaflet map panes */
html body .wf-map-overlay__toolbar,
html body .wf-map-overlay__search-wrap {
	position: relative !important;
	z-index: 30 !important;
}

html body .wf-map-overlay__canvas-wrap {
	z-index: 1 !important;
}

html body .wf-map-overlay__suggestions {
	z-index: 40 !important;
	background: #fff !important;
}

/* Address modal fields — beat theme form-row / input chrome */
html body .wf-address-modal .form-row,
html body .wf-address-modal .wf-field,
html body .wf-address-modal .wf-addr-field {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
}

html body .wf-address-modal .wf-label,
html body .wf-address-modal .form-row > label {
	display: block !important;
	float: none !important;
	width: auto !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	color: var(--wf-text, #1a1a1a) !important;
	background: none !important;
	border: 0 !important;
}

html body.wf-style-controls .wf-address-modal input.wf-input,
html body.wf-style-controls .wf-address-modal input.wf-addr-input,
html body.wf-style-controls .wf-address-modal input.input-text,
html body.wf-style-controls .wf-address-modal textarea.wf-input,
html body.wf-style-controls .wf-address-modal textarea.input-text,
html body.wf-style-controls .wf-address-modal select.wf-input,
html body.wf-style-controls .wf-address-modal select {
	appearance: none !important;
	-webkit-appearance: none !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	border: 1px solid #d9d9d9 !important;
	border-radius: 8px !important;
	background: #fff !important;
	background-color: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
	color: var(--wf-text, #1a1a1a) !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
}

html body.wf-style-controls .wf-address-modal textarea.wf-input,
html body.wf-style-controls .wf-address-modal textarea.input-text {
	min-height: 88px !important;
	resize: vertical;
}

html body.wf-account-enabled .wf-account .show-password-input,
html body.wf-account-enabled .wf-account .wd-show-pass,
html body.wf-account-enabled .wf-account button.show-password-input {
	display: none !important;
}

html body.wf-account-enabled .wf-account .password-input {
	display: block !important;
	position: relative !important;
}

html body.wf-style-controls .wf-account input.input-text,
html body.wf-style-controls .wf-account input[type="text"],
html body.wf-style-controls .wf-account input[type="email"],
html body.wf-style-controls .wf-account input[type="password"],
html body.wf-style-controls .wf-account select,
html body.wf-style-controls .wf-account textarea {
	appearance: none !important;
	-webkit-appearance: none !important;
	background-image: none !important;
	box-shadow: none !important;
}

html body.wf-style-controls .wf-account a.wf-account__btn--ghost:hover,
html body.wf-style-controls .wf-account button.wf-account__btn--ghost:hover {
	background: #f5f5f5 !important;
	background-color: #f5f5f5 !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body.wf-style-controls .wf-account button.wf-account__alt-toggle.wf-account__mode-toggle,
html body.wf-style-controls .wf-account button.wf-account__mode-toggle {
	justify-content: center !important;
	text-align: center !important;
}

html body.wf-style-controls .wf-account button.wf-account__mode-toggle .wf-account__alt-toggle-text {
	display: block !important;
	flex: 1 1 auto !important;
	width: 100% !important;
	text-align: center !important;
}

html body.wf-style-controls .wf-account button.wf-account__alt-toggle {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	height: auto !important;
	min-height: 46px !important;
	margin: 0 !important;
	padding: 10px 14px !important;
	border: 1px solid var(--wf-border, #ececec) !important;
	border-radius: var(--wf-radius, 8px) !important;
	background: #fff !important;
	background-image: none !important;
	color: var(--wf-text, #1a1a1a) !important;
	box-shadow: none !important;
	text-shadow: none !important;
	text-transform: none !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	cursor: pointer !important;
}

html body.wf-style-controls .wf-account button.wf-account__alt-toggle:hover,
html body.wf-style-controls .wf-account button.wf-account__alt-toggle.is-open {
	background: var(--wf-soft, #f5f5f5) !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body.wf-style-controls .wf-account--auth .wf-account__form-actions button.wf-account__btn,
html body.wf-style-controls .wf-account--auth .wf-account__form-actions button.wf-btn {
	width: 100% !important;
}

html body.wf-style-controls #place_order.wf-place-order,
html body.wf-style-controls button.wf-place-order {
	appearance: none !important;
	-webkit-appearance: none !important;
	background-image: none !important;
	box-shadow: none !important;
	text-shadow: none !important;
	text-transform: none !important;
	font-family: inherit !important;
}

html body.wf-style-controls a.wf-thankyou__btn--primary,
html body.wf-style-controls .wf-thankyou a.wf-btn.wf-thankyou__btn--primary {
	background: var(--wf-accent, #1a1a1a) !important;
	background-color: var(--wf-accent, #1a1a1a) !important;
	border-color: var(--wf-accent, #1a1a1a) !important;
	color: #fff !important;
}

html body.wf-style-controls a.wf-thankyou__btn--ghost,
html body.wf-style-controls button.wf-thankyou__btn--ghost,
html body.wf-style-controls .wf-thankyou a.wf-btn.wf-thankyou__btn--ghost,
html body.wf-style-controls .wf-thankyou button.wf-btn.wf-thankyou__btn--ghost {
	background: #fff !important;
	background-color: #fff !important;
	border-color: var(--wf-border, #e8e8e8) !important;
	color: var(--wf-text, #1a1a1a) !important;
}

/* Digikala order detail — theme-proof CTA + compact tools */
html body.wf-style-controls .wf-order-digi a.wf-btn.wf-order-digi__btn--primary,
html body.wf-style-controls .wf-order-digi button.wf-btn.wf-order-digi__btn--primary,
html body.wf-thankyou-enabled .wf-order-digi a.wf-btn.wf-order-digi__btn--primary {
	display: flex !important;
	width: 100% !important;
	min-height: 48px !important;
	background: var(--wf-accent, #1a1a1a) !important;
	background-color: var(--wf-accent, #1a1a1a) !important;
	border-color: var(--wf-accent, #1a1a1a) !important;
	color: #fff !important;
}

html body.wf-style-controls .wf-order-digi a.wf-btn.wf-order-digi__btn--ghost,
html body.wf-style-controls .wf-order-digi button.wf-btn.wf-order-digi__btn--ghost,
html body.wf-thankyou-enabled .wf-order-digi a.wf-btn.wf-order-digi__btn--ghost,
html body.wf-thankyou-enabled .wf-order-digi button.wf-btn.wf-order-digi__btn--ghost {
	display: flex !important;
	width: 100% !important;
	background: #fff !important;
	background-color: #fff !important;
	border-color: #ebebeb !important;
	color: var(--wf-text, #1a1a1a) !important;
}

html body.wf-style-controls .wf-order-digi .wf-order-digi__tools a.wf-btn.wf-order-digi__tool,
html body.wf-style-controls .wf-order-digi .wf-order-digi__tools button.wf-btn.wf-order-digi__tool,
html body.wf-thankyou-enabled .wf-order-digi .wf-order-digi__tools a.wf-btn.wf-order-digi__tool,
html body.wf-thankyou-enabled .wf-order-digi .wf-order-digi__tools button.wf-btn.wf-order-digi__tool {
	flex-direction: column !important;
	gap: 6px !important;
	min-height: 64px !important;
	padding: 10px 6px !important;
	font-size: 11px !important;
	border-color: #ebebeb !important;
	color: var(--wf-text, #1a1a1a) !important;
}

/* Mobile bottom sheets */
@media (max-width: 767px) {
	html body .wf-address-modal.is-mounted,
	html body .wf-map-overlay.is-mounted,
	html body .wf-slots-sheet.is-mounted {
		display: flex !important;
		align-items: flex-end;
		justify-content: center;
		padding: 0;
	}

	html body .wf-address-modal__backdrop,
	html body .wf-map-overlay__backdrop,
	html body .wf-slots-sheet__backdrop {
		opacity: 0;
		transition: opacity 0.38s ease;
	}

	html body .wf-address-modal.is-open .wf-address-modal__backdrop,
	html body .wf-map-overlay.is-open .wf-map-overlay__backdrop,
	html body .wf-slots-sheet.is-open .wf-slots-sheet__backdrop {
		opacity: 1;
	}

	html body .wf-address-modal__dialog,
	html body .wf-map-overlay__dialog,
	html body .wf-slots-sheet__dialog {
		width: 100% !important;
		max-width: none !important;
		margin: 0;
		border-radius: 16px 16px 0 0 !important;
		transform: translate3d(0, 100%, 0);
		transition: transform 0.38s cubic-bezier(0.32, 0.72, 0, 1);
		will-change: transform;
		overscroll-behavior: contain;
	}

	html body .wf-address-modal__dialog {
		max-height: min(92vh, 100%);
		max-height: min(92dvh, 100%);
		padding: 8px 16px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
	}

	html body .wf-slots-sheet__dialog {
		max-height: min(88vh, 100%);
		max-height: min(88dvh, 100%);
		padding: 8px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
	}

	html body .wf-map-overlay__dialog {
		height: min(94vh, 100%) !important;
		height: min(94dvh, 100%) !important;
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	html body .wf-address-modal.is-open .wf-address-modal__dialog,
	html body .wf-map-overlay.is-open .wf-map-overlay__dialog,
	html body .wf-slots-sheet.is-open .wf-slots-sheet__dialog {
		transform: translate3d(0, 0, 0);
	}

	html body .wf-address-modal__dialog::before,
	html body .wf-map-overlay__dialog::before,
	html body .wf-slots-sheet__dialog::before {
		content: "";
		display: block;
		width: 40px;
		height: 4px;
		margin: 6px auto 10px;
		border-radius: 999px;
		background: #d4d4d4;
		flex: 0 0 auto;
	}

	html body .wf-address-modal__actions,
	html body .wf-slots-sheet__actions {
		position: sticky;
		bottom: 0;
		z-index: 2;
		margin-top: 12px;
		padding-top: 12px;
		background: #fff;
	}
}

@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
	html body .wf-address-modal__dialog,
	html body .wf-map-overlay__dialog,
	html body .wf-slots-sheet__dialog,
	html body .wf-address-modal__backdrop,
	html body .wf-map-overlay__backdrop,
	html body .wf-slots-sheet__backdrop {
		transition: none !important;
		transform: none !important;
		opacity: 1 !important;
	}
}

html body a.wf-cart-qty__btn,
html body a.wf-cart-qty__remove,
html body a.wf-order-summary__remove {
	text-decoration: none !important;
	box-shadow: none !important;
}

/* Keep payment info tip trigger tiny — theme buttons often force 40px chrome. */
html body .wf-payment button.wf-payment__info,
html body button.wf-payment__info {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 16px !important;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	max-width: 16px !important;
	max-height: 16px !important;
	margin: 2px 0 0 !important;
	padding: 0 !important;
	gap: 0 !important;
	border: 1.25px solid #b0b0b0 !important;
	border-radius: 50% !important;
	background: #fff !important;
	background-image: none !important;
	background-color: #fff !important;
	color: #6b6b6b !important;
	box-shadow: none !important;
	text-shadow: none !important;
	font-size: 0 !important;
	line-height: 0 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

/* Plugin form chrome — gated by Appearance → style_controls */
html body.wf-style-controls .wf-checkout input[type="text"],
html body.wf-style-controls .wf-checkout input[type="email"],
html body.wf-style-controls .wf-checkout input[type="tel"],
html body.wf-style-controls .wf-checkout input[type="password"],
html body.wf-style-controls .wf-checkout input[type="search"],
html body.wf-style-controls .wf-checkout input[type="number"]:not(.wf-cart-qty__input),
html body.wf-style-controls .wf-checkout input.input-text:not(.wf-cart-qty__input),
html body.wf-style-controls .wf-checkout textarea,
html body.wf-style-controls .wf-checkout select,
html body.wf-style-controls .wf-account input[type="text"],
html body.wf-style-controls .wf-account input[type="email"],
html body.wf-style-controls .wf-account input[type="tel"],
html body.wf-style-controls .wf-account input[type="password"],
html body.wf-style-controls .wf-account input[type="number"]:not(.wf-cart-qty__input),
html body.wf-style-controls .wf-account input.input-text,
html body.wf-style-controls .wf-account textarea,
html body.wf-style-controls .wf-account select,
html body.wf-style-controls .wf-wallet input[type="number"],
html body.wf-style-controls .wf-wallet #wf-wallet-amount,
html body.wf-style-controls .wf-invtype__field input,
html body.wf-style-controls .wf-track input[type="text"],
html body.wf-style-controls .wf-track input[type="tel"],
html body.wf-style-controls .wf-track input[type="email"],
html body.wf-style-controls .wf-guest-email-slot input,
html body.wf-style-controls .wf-coupon-block input,
html body.wf-style-controls #coupon_code,
html body.wf-style-controls .wf-map-overlay__search {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-height: 44px !important;
	height: auto !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	border: 1px solid var(--wf-border, #d9d9d9) !important;
	border-radius: var(--wf-radius, 8px) !important;
	background: #fff !important;
	background-image: none !important;
	box-shadow: none !important;
	outline: none !important;
	color: var(--wf-text, #1a1a1a) !important;
	font-family: inherit !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	box-sizing: border-box !important;
}

html body.wf-style-controls .wf-checkout textarea,
html body.wf-style-controls .wf-account textarea {
	min-height: 88px !important;
	resize: vertical;
}

html body.wf-style-controls .wf-checkout input:not([type="checkbox"]):not([type="radio"]):not(.wf-cart-qty__input):focus,
html body.wf-style-controls .wf-account input:not([type="checkbox"]):not([type="radio"]):not(.wf-cart-qty__input):focus,
html body.wf-style-controls .wf-wallet input[type="number"]:focus,
html body.wf-style-controls .wf-wallet #wf-wallet-amount:focus,
html body.wf-style-controls .wf-invtype__field input:focus,
html body.wf-style-controls .wf-track input:focus,
html body.wf-style-controls .wf-guest-email-slot input:focus,
html body.wf-style-controls #coupon_code:focus,
html body.wf-style-controls .wf-map-overlay__search:focus,
html body.wf-style-controls .wf-checkout select:focus,
html body.wf-style-controls .wf-account select:focus,
html body.wf-style-controls .wf-checkout textarea:focus,
html body.wf-style-controls .wf-account textarea:focus {
	border-color: var(--wf-accent, #1a1a1a) !important;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--wf-accent, #1a1a1a) 14%, transparent) !important;
}

/* Wallet amount — flex row: تومان | number (no absolute overlap) */
html body.wf-style-controls .wf-wallet #wf-wallet-amount,
html body.wf-account-enabled .wf-wallet #wf-wallet-amount,
html body .wf-wallet #wf-wallet-amount {
	padding: 0 14px 0 8px !important;
	width: auto !important;
	border: 0 !important;
	background: transparent !important;
	direction: ltr !important;
	text-align: left !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	min-height: 44px !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

html body.wf-style-controls .wf-wallet .wf-wallet__field-control,
html body .wf-wallet .wf-wallet__field-control {
	border-radius: var(--wf-radius-btn, var(--wf-radius, 8px)) !important;
}

html body.wf-style-controls .wf-wallet #wf-wallet-amount::-webkit-outer-spin-button,
html body.wf-style-controls .wf-wallet #wf-wallet-amount::-webkit-inner-spin-button,
html body .wf-wallet #wf-wallet-amount::-webkit-outer-spin-button,
html body .wf-wallet #wf-wallet-amount::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

html body.wf-style-controls .wf-wallet #wf-wallet-amount,
html body .wf-wallet #wf-wallet-amount {
	-moz-appearance: textfield !important;
	appearance: textfield !important;
}

html body.wf-style-controls .wf-step-btn:not([hidden]):not(.is-hidden),
html body.wf-style-controls .wf-step-mobile-bar .wf-step-btn:not([hidden]):not(.is-hidden),
html body.wf-style-controls .wf-track__submit,
html body.wf-style-controls .wf-checkout .button.wf-place-order,
html body.wf-style-controls .wf-checkout #place_order {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 46px !important;
	padding: 10px 16px !important;
	border-radius: var(--wf-radius-btn, var(--wf-radius, 8px)) !important;
	font-family: inherit !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	text-decoration: none !important;
	box-shadow: none !important;
	text-transform: none !important;
	cursor: pointer !important;
}

html body.wf-style-controls .wf-step-mobile-bar .wf-step-btn[hidden],
html body.wf-style-controls .wf-step-mobile-bar .wf-step-btn.is-hidden,
html body .wf-step-mobile-bar .wf-step-btn[hidden],
html body .wf-step-mobile-bar .wf-step-btn.is-hidden {
	display: none !important;
	flex: none !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

html body.wf-style-controls .wf-checkout input[type="checkbox"],
html body.wf-style-controls .wf-account input[type="checkbox"],
html body.wf-style-controls .wf-checkout input[type="radio"],
html body.wf-style-controls .wf-account input[type="radio"] {
	width: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	border-radius: 4px !important;
}

html body.wf-style-controls .wf-cart-qty input.wf-cart-qty__input,
html body.wf-style-controls .wf-checkout input.wf-cart-qty__input[type="number"] {
	display: block !important;
	width: 34px !important;
	max-width: 34px !important;
	min-width: 34px !important;
	min-height: 0 !important;
	height: 32px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-right: 1px solid var(--dk-border, #e8e8e8) !important;
	border-left: 1px solid var(--dk-border, #e8e8e8) !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	outline: none !important;
	text-align: center !important;
	font-size: var(--wf-fs-sm, 13px) !important;
	font-weight: 700 !important;
	line-height: 32px !important;
	box-sizing: border-box !important;
}

html body.wf-style-controls .wf-cart-qty input.wf-cart-qty__input:focus {
	border-color: var(--dk-border, #e8e8e8) !important;
	box-shadow: none !important;
}

html body.wf-style-controls .wf-step-btn.is-loading .wf-step-btn__spinner,
html body.wf-style-controls .wf-step-mobile-bar .wf-step-btn.is-loading .wf-step-btn__spinner,
html body.wf-style-controls .wf-otp button.wf-otp__btn.is-loading .wf-otp__spinner,
html body.wf-style-controls .wf-suggested__btn.is-loading .wf-suggested__spinner {
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-width: 2px !important;
	border-style: solid !important;
	border-radius: 50% !important;
	background: transparent !important;
	box-shadow: none !important;
	flex: 0 0 auto !important;
}

@media (max-width: 767px) {
	html body.wf-checkout-enabled .wf-otp__card,
	html body.wf-checkout-enabled .wf-shipping,
	html body.wf-checkout-enabled .wf-payment,
	html body.wf-checkout-enabled .wf-order-summary,
	html body.wf-checkout-enabled .wf-coupon-block,
	html body.wf-checkout-enabled .wf-invoice-block,
	html body.wf-checkout-enabled .wf-gift-block,
	html body.wf-style-controls.wf-checkout-enabled .wf-otp__card,
	html body.wf-style-controls.wf-checkout-enabled .wf-order-summary,
	html body.wf-style-controls.wf-checkout-enabled .wf-coupon-block,
	html body.wf-style-controls.wf-checkout-enabled .wf-invoice-block,
	html body.wf-style-controls.wf-checkout-enabled .wf-gift-block {
		border-radius: 0 !important;
		border-left: 0 !important;
		border-right: 0 !important;
		box-shadow: none !important;
	}

	html body.wf-checkout-enabled .wf-otp__card,
	html body.wf-checkout-enabled .wf-address,
	html body.wf-checkout-enabled .wf-shipping,
	html body.wf-checkout-enabled .wf-payment,
	html body.wf-checkout-enabled .wf-order-summary,
	html body.wf-checkout-enabled .wf-coupon-block,
	html body.wf-checkout-enabled .wf-invoice-block,
	html body.wf-checkout-enabled .wf-gift-block {
		border-top: 1px solid var(--wf-border, #eee) !important;
		border-bottom: 0 !important;
	}

	/* Shipping / payment / address — framed cards */
	html body.wf-checkout-enabled .wf-payment__card,
	html body.wf-checkout-enabled .wf-shipping__card,
	html body.wf-style-controls.wf-checkout-enabled .wf-payment__card,
	html body.wf-style-controls.wf-checkout-enabled .wf-shipping__card {
		border: 1px solid var(--wf-border, #e8e8e8) !important;
		border-radius: var(--ma-radius, 8px) !important;
		box-shadow: none !important;
		background: #fff !important;
	}

	html body.wf-checkout-enabled .wf-payment__item.is-selected .wf-payment__card,
	html body.wf-checkout-enabled .wf-shipping__item.is-selected .wf-shipping__card,
	html body.wf-style-controls.wf-checkout-enabled .wf-payment__item.is-selected .wf-payment__card,
	html body.wf-style-controls.wf-checkout-enabled .wf-shipping__item.is-selected .wf-shipping__card {
		border-color: var(--ma-brand, var(--wf-accent, #1a1a1a)) !important;
		box-shadow: 0 0 0 1px var(--ma-brand, var(--wf-accent, #1a1a1a)) !important;
		background: #fafafa !important;
	}

	html body.wf-style-controls.wf-checkout-enabled a.wf-btn.wf-address__btn--add,
	html body.wf-style-controls a.wf-btn.wf-address__btn--add,
	html body.wf-style-controls .wf-address a.wf-address__btn--add {
		width: auto !important;
		min-width: 0 !important;
		min-height: 0 !important;
		height: auto !important;
		padding: 2px 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		background-color: transparent !important;
		box-shadow: none !important;
		color: #8c8c8c !important;
		font-size: 12px !important;
		font-weight: 600 !important;
	}

	html body.wf-style-controls.wf-checkout-enabled a.wf-btn.wf-address__btn--add:hover,
	html body.wf-style-controls a.wf-btn.wf-address__btn--add:hover,
	html body.wf-style-controls .wf-address a.wf-address__btn--add:hover {
		background: transparent !important;
		background-color: transparent !important;
		color: #1a1a1a !important;
		border: 0 !important;
	}

	html body.wf-style-controls .wf-address--empty a.wf-btn.wf-address__btn--add {
		min-height: 36px !important;
		padding: 6px 10px !important;
		border: 1px dashed #c4c4c4 !important;
		border-radius: 8px !important;
		color: #1a1a1a !important;
	}

	html body.wf-checkout-enabled .wf-address__card,
	html body.wf-style-controls.wf-checkout-enabled .wf-address__card {
		border: 1px solid var(--wf-card-border, #1a1a1a) !important;
		border-radius: var(--wf-radius-lg, 8px) !important;
		background: var(--wf-card-bg, #fff) !important;
		box-shadow: none !important;
	}

	html body.wf-checkout-enabled .wf-address__card.is-selected,
	html body.wf-style-controls.wf-checkout-enabled .wf-address__card.is-selected {
		border-color: var(--wf-accent, #1a1a1a) !important;
		background: #fafafa !important;
		box-shadow: 0 0 0 1px var(--wf-accent, #1a1a1a) !important;
	}
}

@media (max-width: 1100px) {
	html body.wf-on-otp .wf-otp__guest,
	html body.wf-on-otp .wf-otp button.wf-otp__send,
	html body.wf-on-otp .wf-otp button.wf-otp__verify,
	html body.wf-style-controls.wf-on-otp .wf-otp button.wf-btn.wf-otp__send,
	html body.wf-style-controls.wf-on-otp .wf-otp button.wf-btn.wf-otp__verify,
	html body.wf-style-controls.wf-on-otp .wf-otp button.wf-btn.wf-otp__send:not(.wf-nojs-only),
	html body.wf-style-controls.wf-on-otp .wf-otp button.wf-btn.wf-otp__verify:not(.wf-nojs-only),
	html body.wf-style-controls.wf-on-otp .wf-otp button.wf-otp__guest-continue {
		display: none !important;
	}
}
