/**
 * Multishop BD 9.3.5 extensions.
 * Palette variables remain the single source for storefront presentation.
 */

/* Timer colors are separately editable, while countdown accents continue to
   follow the active design palette and the checkout SVG border animation. */
html body.ecartup-storefront.woocommerce-checkout .rivrun-checkout-reserve-timer {
	background: var(--multishop-timer-bg, var(--rivrun-surface, #fff)) !important;
	color: var(--multishop-timer-text, var(--rivrun-text, #241d28)) !important;
}

html body.ecartup-storefront.woocommerce-checkout .rivrun-checkout-reserve-timer :is(.rivrun-timer-text, .rivrun-timer-title) {
	color: inherit !important;
}

body.woocommerce-cart .rivrun-cart-expiry-timer {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) max-content !important;
	align-items: center !important;
	gap: 16px !important;
	width: min(100%, 1440px) !important;
	min-height: 58px !important;
	margin: 0 auto 24px !important;
	padding: 10px 14px !important;
	box-sizing: border-box !important;
	border: 1px solid var(--rivrun-border, #b9dffc) !important;
	border-radius: 14px !important;
	background: var(--multishop-timer-bg, var(--rivrun-surface, #fff)) !important;
	color: var(--multishop-timer-text, var(--rivrun-text, #020e52)) !important;
	box-shadow: none !important;
}

body.woocommerce-cart .rivrun-cart-expiry-timer .rivrun-timer-text {
	display: flex !important;
	align-items: baseline !important;
	flex-wrap: wrap !important;
	gap: 4px 10px !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	color: inherit !important;
}

body.woocommerce-cart .rivrun-cart-expiry-timer :is(.rivrun-timer-title, .rivrun-timer-subtitle) {
	display: block !important;
	margin: 0 !important;
	color: inherit !important;
	line-height: 1.3 !important;
}

body.woocommerce-cart .rivrun-cart-expiry-timer .rivrun-timer-title {
	font-size: 14px !important;
	font-weight: 800 !important;
}

body.woocommerce-cart .rivrun-cart-expiry-timer .rivrun-timer-subtitle {
	font-size: 12px !important;
	font-weight: 500 !important;
	opacity: .78 !important;
}

body.woocommerce-cart .rivrun-cart-expiry-timer .rivrun-countdown {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 92px !important;
	min-height: 34px !important;
	margin: 0 !important;
	padding: 4px 10px !important;
	box-sizing: border-box !important;
	border: 1px solid color-mix(in srgb, var(--rivrun-accent-2, #f6055d) 32%, var(--rivrun-border, #b9dffc)) !important;
	border-radius: 999px !important;
	background: color-mix(in srgb, var(--rivrun-accent-2, #f6055d) 7%, var(--rivrun-surface, #fff)) !important;
	color: var(--rivrun-accent-2, #f6055d) !important;
	font-size: 14px !important;
	font-weight: 850 !important;
	font-variant-numeric: tabular-nums !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

@media (max-width: 600px) {
	body.woocommerce-cart .rivrun-cart-expiry-timer {
		gap: 10px !important;
		min-height: 54px !important;
		margin-bottom: 14px !important;
		padding: 8px 10px !important;
		border-radius: 12px !important;
	}

	body.woocommerce-cart .rivrun-cart-expiry-timer .rivrun-timer-text {
		display: grid !important;
		gap: 1px !important;
	}

	body.woocommerce-cart .rivrun-cart-expiry-timer .rivrun-timer-title {
		font-size: 11.5px !important;
	}

	body.woocommerce-cart .rivrun-cart-expiry-timer .rivrun-timer-subtitle {
		font-size: 10px !important;
	}

	body.woocommerce-cart .rivrun-cart-expiry-timer .rivrun-countdown {
		min-width: 78px !important;
		min-height: 32px !important;
		padding-inline: 8px !important;
		font-size: 12px !important;
	}
}

/* Optional order note. WooCommerce still owns the order_comments value and
   stores it on the order using its native checkout handler. */
html body.woocommerce-checkout .multishop-order-note-toggle {
	margin: 0 !important;
	padding: 14px 0 0 !important;
	color: var(--rivrun-text, #020e52) !important;
}

html body.woocommerce-checkout .multishop-order-note-toggle__label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 0 !important;
	cursor: pointer !important;
	font-weight: 750 !important;
	line-height: 1.3 !important;
}

html body.woocommerce-checkout .multishop-order-note-toggle__checkbox {
	flex: 0 0 26px !important;
	width: 26px !important;
	height: 26px !important;
	margin: 0 !important;
	accent-color: var(--rivrun-accent, #15a9f8) !important;
}

html body.woocommerce-checkout .multishop-order-note-toggle__panel {
	margin-top: 12px !important;
}

html body.woocommerce-checkout .multishop-order-note-toggle__panel[hidden] {
	display: none !important;
}

html body.woocommerce-checkout .multishop-order-note-toggle__panel .form-row {
	margin: 0 !important;
}

html body.woocommerce-checkout .multishop-order-note-toggle__panel textarea {
	width: 100% !important;
	min-height: 90px !important;
	resize: vertical !important;
}

/* Popup colors come from dedicated Theme Options. */
html body.woocommerce-checkout .rivrun-checkout-toast {
	background: var(--ecartup-popup-background-color, var(--rivrun-surface, #fff)) !important;
	color: var(--ecartup-popup-text-color, var(--rivrun-text, #020e52)) !important;
}

html body.woocommerce-checkout .rivrun-checkout-toast-close {
	color: var(--ecartup-popup-text-color, var(--rivrun-text, #020e52)) !important;
}

html body.ecartup-checkout-notices-popup.woocommerce-checkout :is(.woocommerce-notices-wrapper, .woocommerce-NoticeGroup) > :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) {
	background: var(--ecartup-popup-background-color, var(--rivrun-surface, #fff)) !important;
	color: var(--ecartup-popup-text-color, var(--rivrun-text, #020e52)) !important;
}

/* Existing Gutenberg header, normal sticky behavior. No border, transparency,
   shadow or replacement navigation is introduced. */
body.multishop-site-header-sticky .wp-site-blocks > header.wp-block-template-part,
body.multishop-site-header-sticky .wp-site-blocks > .wp-block-template-part:has(> header),
body.multishop-site-header-sticky .wp-site-blocks > .wp-block-template-part:has(.ecup-v5-header-wrap) {
	position: sticky !important;
	top: var(--wp-admin--admin-bar--height, 0px) !important;
	z-index: 1000 !important;
	border: 0 !important;
	box-shadow: none !important;
	isolation: isolate !important;
}

body.multishop-site-header-sticky .wp-site-blocks > header.wp-block-template-part:not(.has-background),
body.multishop-site-header-sticky .wp-site-blocks > .wp-block-template-part:has(> header),
body.multishop-site-header-sticky .wp-site-blocks > .wp-block-template-part:has(.ecup-v5-header-wrap) {
	background: var(--rivrun-bg, var(--wp--preset--color--base, #fff)) !important;
}

body.multishop-site-header-sticky .wp-site-blocks > .wp-block-template-part:has(> header) > header:not(.has-background) {
	background: var(--rivrun-bg, var(--wp--preset--color--base, #fff)) !important;
}

/* WooCommerce classic and block order-confirmation pages. */
body.woocommerce-order-received :is(.woocommerce-order, .wp-block-woocommerce-order-confirmation) {
	width: min(100%, 1120px) !important;
	margin-inline: auto !important;
	color: var(--rivrun-text, #020e52) !important;
}

body.woocommerce-order-received :is(
	.woocommerce-thankyou-order-received,
	.wc-block-order-confirmation-status,
	.wp-block-woocommerce-order-confirmation-status
) {
	margin: 0 0 20px !important;
	padding: 18px 20px !important;
	border: 1px solid color-mix(in srgb, var(--rivrun-accent, #15a9f8) 45%, var(--rivrun-border, #b9dffc)) !important;
	border-radius: 14px !important;
	background: color-mix(in srgb, var(--rivrun-accent, #15a9f8) 8%, var(--rivrun-surface, #fff)) !important;
	color: var(--rivrun-text, #020e52) !important;
	font-size: clamp(18px, 2.2vw, 26px) !important;
	font-weight: 850 !important;
	line-height: 1.3 !important;
}

body.woocommerce-order-received ul.woocommerce-order-overview {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 10px !important;
	margin: 0 0 22px !important;
	padding: 0 !important;
	list-style: none !important;
}

body.woocommerce-order-received ul.woocommerce-order-overview li,
body.woocommerce-order-received :is(
	.wc-block-order-confirmation-summary,
	.wp-block-woocommerce-order-confirmation-summary,
	.wc-block-order-confirmation-totals-wrapper,
	.wp-block-woocommerce-order-confirmation-totals-wrapper,
	.wc-block-order-confirmation-billing-address,
	.wp-block-woocommerce-order-confirmation-billing-address,
	.wc-block-order-confirmation-shipping-address,
	.wp-block-woocommerce-order-confirmation-shipping-address,
	.wc-block-order-confirmation-additional-information,
	.wp-block-woocommerce-order-confirmation-additional-information,
	.woocommerce-order-details,
	.woocommerce-customer-details,
	.woocommerce-bacs-bank-details
) {
	box-sizing: border-box !important;
	border: 1px solid var(--rivrun-border, #b9dffc) !important;
	border-radius: 14px !important;
	background: var(--rivrun-surface, #fff) !important;
	color: var(--rivrun-text, #020e52) !important;
	box-shadow: none !important;
}

body.woocommerce-order-received ul.woocommerce-order-overview li {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 14px !important;
	border-right: 1px solid var(--rivrun-border, #b9dffc) !important;
	line-height: 1.45 !important;
}

body.woocommerce-order-received :is(
	.woocommerce-order-details,
	.woocommerce-customer-details,
	.woocommerce-bacs-bank-details,
	.wc-block-order-confirmation-summary,
	.wp-block-woocommerce-order-confirmation-summary,
	.wc-block-order-confirmation-totals-wrapper,
	.wp-block-woocommerce-order-confirmation-totals-wrapper,
	.wc-block-order-confirmation-billing-address,
	.wp-block-woocommerce-order-confirmation-billing-address,
	.wc-block-order-confirmation-shipping-address,
	.wp-block-woocommerce-order-confirmation-shipping-address,
	.wc-block-order-confirmation-additional-information,
	.wp-block-woocommerce-order-confirmation-additional-information
) {
	margin: 0 0 18px !important;
	padding: clamp(16px, 2.4vw, 24px) !important;
}

body.woocommerce-order-received :is(.woocommerce-order-details__title, .woocommerce-column__title, h2, h3) {
	color: var(--rivrun-text, #020e52) !important;
}

body.woocommerce-order-received :is(table.shop_table, table.woocommerce-table) {
	width: 100% !important;
	border: 0 !important;
	border-collapse: collapse !important;
	background: transparent !important;
	color: var(--rivrun-text, #020e52) !important;
}

body.woocommerce-order-received :is(table.shop_table, table.woocommerce-table) :is(th, td) {
	padding: 12px 8px !important;
	border: 0 !important;
	border-bottom: 1px solid var(--rivrun-border, #b9dffc) !important;
	background: transparent !important;
	color: inherit !important;
}

body.woocommerce-order-received address {
	padding: 0 !important;
	border: 0 !important;
	color: var(--rivrun-text, #020e52) !important;
	font-style: normal !important;
	line-height: 1.65 !important;
}

body.woocommerce-order-received a {
	color: var(--rivrun-link, var(--rivrun-accent-2, #f6055d)) !important;
}

@media (max-width: 780px) {
	body.woocommerce-order-received ul.woocommerce-order-overview {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 480px) {
	body.woocommerce-order-received ul.woocommerce-order-overview {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.woocommerce-order-received :is(
		.woocommerce-order-details,
		.woocommerce-customer-details,
		.woocommerce-bacs-bank-details,
		.wc-block-order-confirmation-summary,
		.wp-block-woocommerce-order-confirmation-summary,
		.wc-block-order-confirmation-totals-wrapper,
		.wp-block-woocommerce-order-confirmation-totals-wrapper,
		.wc-block-order-confirmation-billing-address,
		.wp-block-woocommerce-order-confirmation-billing-address,
		.wc-block-order-confirmation-shipping-address,
		.wp-block-woocommerce-order-confirmation-shipping-address,
		.wc-block-order-confirmation-additional-information,
		.wp-block-woocommerce-order-confirmation-additional-information
	) {
		padding: 14px !important;
		border-radius: 12px !important;
	}
}


/* One2TenX 11.25 — Single Product tablet/Safari safety.
   Gutenberg can preserve is-not-stacked-on-mobile on saved templates; override
   it only for the primary product gallery/summary columns at narrow widths. */
@media (max-width: 900px) {
  body.single-product .wp-block-columns.is-not-stacked-on-mobile:has(.wp-block-woocommerce-product-gallery),
  body.single-product .wp-block-columns.is-not-stacked-on-mobile:has(.wc-block-product-gallery),
  body.single-product .wp-block-columns.is-not-stacked-on-mobile:has(.woocommerce-product-gallery){
    flex-wrap:wrap!important;
  }
  body.single-product .wp-block-columns.is-not-stacked-on-mobile:has(.wp-block-woocommerce-product-gallery) > .wp-block-column,
  body.single-product .wp-block-columns.is-not-stacked-on-mobile:has(.wc-block-product-gallery) > .wp-block-column,
  body.single-product .wp-block-columns.is-not-stacked-on-mobile:has(.woocommerce-product-gallery) > .wp-block-column{
    flex-basis:100%!important;
    width:100%!important;
    min-width:0!important;
  }
}

@media (max-width: 782px) {
  body.single-product .wp-block-columns.is-not-stacked-on-mobile{
    flex-wrap:wrap!important;
  }
  body.single-product .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column{
    flex-basis:100%!important;
    width:100%!important;
    min-width:0!important;
  }
}
