/**
 * VERO Design System
 * Shared visual overrides for the plugin storefront surfaces.
 */

@import url('https://fonts.googleapis.com/css2?family=Prata&family=Work+Sans:ital,wght@0,300..700;1,300..700&display=swap');

:root {
  --vero-ink-950: #181714;
  --vero-ink-800: #3d3b36;
  --vero-ink-700: #56534c;
  --vero-ink-500: #8b877e;
  --vero-ink-400: #b8b3aa;
  --vero-ink-200: #e5e2dc;
  --vero-ink-100: #f3f1ed;
  --vero-ink-50: #faf9f7;
  --vero-white: #fff;
  --vero-brand-800: #842b5a;
  --vero-brand-700: #a33a70;
  --vero-brand-600: #b44a7e;
  --vero-brand-100: #f8e1ec;
  --vero-denim-700: #315475;
  --vero-denim-600: #3c668e;
  --vero-denim-100: #e6edf4;
  --vero-clay-600: #a95136;
  --vero-clay-100: #f7e5df;
  --vero-green-700: #3f6b50;
  --vero-green-100: #e8f1eb;
  --vero-red-700: #8b3d35;
  --vero-red-100: #f7e8e5;
  --vero-font-display: 'Prata', Georgia, serif;
  --vero-font-body: 'Work Sans', Arial, sans-serif;
  --vero-radius-xs: 2px;
  --vero-radius-sm: 4px;
  --vero-radius-md: 6px;
  --vero-radius-lg: 10px;
  --vero-shadow-sm: 0 1px 2px rgba(24, 23, 20, .06);
  --vero-shadow-md: 0 4px 12px rgba(24, 23, 20, .08);
  --vero-shadow-lg: 0 12px 32px rgba(24, 23, 20, .12);
  --vero-focus: 0 0 0 3px rgba(163, 58, 112, .2);
  --rovers-accent: var(--vero-brand-700);
  --rovers-accent-dark: var(--vero-brand-800);
  --rovers-accent-soft: var(--vero-brand-100);
  --rovers-border: var(--vero-ink-200);
  --rovers-border-strong: var(--vero-ink-400);
  --rovers-muted: var(--vero-ink-700);
  --rovers-soft: var(--vero-ink-50);
  --rovers-text: var(--vero-ink-950);
  --rovers-success: var(--vero-green-700);
  --rovers-error: var(--vero-red-700);
  --rovers-radius: var(--vero-radius-md);
  --rovers-shadow: var(--vero-shadow-md);
}

/* Typography and flat editorial surfaces. */
.rovers-checkout-page,
.rovers-header-address,
.rovers-account-panel,
.rovers-product-shipping,
.rovers-free-shipping,
.rovers-cart-shipping,
.rovers-order-received,
[class*="rovers-wholesale"] {
  color: var(--vero-ink-950);
  font-family: var(--vero-font-body);
}

.rovers-checkout-page h1,
.rovers-checkout-page h2,
.rovers-order-card-head h2,
.rovers-product-shipping-dialog-head h2,
.rovers-order-received h1,
.rovers-account-panel h2 {
  color: var(--vero-ink-950) !important;
  font-family: var(--vero-font-display) !important;
  font-weight: 400 !important;
  letter-spacing: -.01em;
}

.rovers-checkout-page,
.rovers-checkout-shell {
  background: var(--vero-ink-50) !important;
  background-image: none !important;
}

.rovers-step,
.rovers-order-card,
.rovers-payment-box,
.rovers-product-shipping,
.rovers-product-shipping-dialog,
.rovers-product-shipping-rate,
.rovers-free-shipping,
.rovers-cart-shipping,
.rovers-account-panel,
.rovers-company-panel,
.rovers-rate-list,
.rovers-order-received-card {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-md) !important;
  background: var(--vero-white) !important;
  background-image: none !important;
  box-shadow: none !important;
}

.rovers-step.is-open,
.rovers-product-shipping-dialog {
  border-color: var(--vero-ink-400) !important;
  box-shadow: var(--vero-shadow-md) !important;
}

/* Display hierarchy. */
.rovers-step-heading strong,
.rovers-company-title,
.rovers-product-shipping-group h3,
.rovers-free-shipping-head strong,
.rovers-review-table .product-name > strong {
  color: var(--vero-ink-950) !important;
}

.rovers-step-summary,
.rovers-muted,
.rovers-review-variation,
.rovers-product-shipping-note,
.rovers-product-shipping-rate-copy small,
.rovers-free-shipping-location-copy span {
  color: var(--vero-ink-700) !important;
}

.rovers-order-card-head a,
.rovers-change-location,
.rovers-postcode-lookup-link,
.rovers-product-shipping-summary .rovers-product-shipping-trigger {
  color: var(--vero-denim-700) !important;
  text-decoration-color: currentColor !important;
}

/* Buttons: compact, square and typographically consistent. */
.rovers-primary,
.rovers-place-order,
.rovers-apply-coupon,
.rovers-cart-shipping button,
.rovers-product-shipping-submit,
.rovers-free-shipping-location-button,
.rovers-account-panel button[type="submit"] {
  border: 1px solid var(--vero-ink-950) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-ink-950) !important;
  background-image: none !important;
  color: var(--vero-white) !important;
  box-shadow: none !important;
  font-family: var(--vero-font-body) !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  transition: background-color 120ms cubic-bezier(.4, 0, .2, 1), border-color 120ms cubic-bezier(.4, 0, .2, 1) !important;
}

.rovers-primary:hover,
.rovers-place-order:hover,
.rovers-apply-coupon:hover,
.rovers-cart-shipping button:hover,
.rovers-product-shipping-submit:hover,
.rovers-free-shipping-location-button:hover,
.rovers-account-panel button[type="submit"]:hover {
  border-color: var(--vero-ink-800) !important;
  background: var(--vero-ink-800) !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Inputs and selectable controls. */
.rovers-checkout-page input:not([type="radio"]):not([type="checkbox"]),
.rovers-checkout-page select,
.rovers-checkout-page textarea,
.rovers-product-shipping input,
.rovers-cart-shipping input,
.rovers-header-address input,
.rovers-account-panel input {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
  font-family: var(--vero-font-body) !important;
}

.rovers-checkout-page input:focus,
.rovers-checkout-page select:focus,
.rovers-checkout-page textarea:focus,
.rovers-product-shipping input:focus,
.rovers-cart-shipping input:focus,
.rovers-header-address input:focus,
.rovers-account-panel input:focus {
  border-color: var(--vero-denim-600) !important;
  box-shadow: var(--vero-focus) !important;
  outline: none !important;
}

.rovers-delivery-tabs button,
.rovers-company-grid > button[data-company],
.rovers-rate-item,
.rovers-product-shipping-more,
.rovers-product-shipping-trigger {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
}

.rovers-delivery-tabs button.is-active {
  border-color: var(--vero-denim-600) !important;
  background: var(--vero-denim-600) !important;
  color: var(--vero-white) !important;
  box-shadow: none !important;
}

.rovers-company-grid > button[data-company].is-active,
.rovers-rate-item.is-selected {
  border-color: var(--vero-denim-600) !important;
  background: var(--vero-denim-100) !important;
  box-shadow: inset 3px 0 var(--vero-denim-600) !important;
}

.rovers-rate-item input:checked + .rovers-rate-radio::after,
.rovers-step-number,
.rovers-progress span.is-active b {
  border-color: var(--vero-ink-950) !important;
  background: var(--vero-ink-950) !important;
  color: var(--vero-white) !important;
}

/* Semantic states: denim for wholesale, clay for promotions, muted feedback. */
.rovers-wholesale-price,
.rovers-wholesale-label,
.rovers-wholesale-comparison ins,
.rovers-summary-subtotal-label small,
.rovers-review-unit-price {
  color: var(--vero-denim-700) !important;
}

.rovers-wholesale-price,
.rovers-wholesale-row,
.rovers-wholesale-notice {
  border-color: var(--vero-denim-100) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-denim-100) !important;
  background-image: none !important;
}

.rovers-sale,
.rovers-discount,
.rovers-payment-discount,
.rovers-promo-badge {
  color: var(--vero-clay-600) !important;
  background: var(--vero-clay-100) !important;
}

.rovers-free-shipping-region.is-complete > p,
.rovers-free-shipping-total,
.rovers-promotional-rate-price ins,
.rovers-success {
  color: var(--vero-green-700) !important;
}

.rovers-free-shipping-region.is-complete .rovers-free-shipping-fill {
  background: var(--vero-green-700) !important;
}

.rovers-field-error,
.rovers-inline-error,
.rovers-product-shipping-status.is-error,
.rovers-cart-shipping .is-error {
  color: var(--vero-red-700) !important;
}

.rovers-inline-error {
  border-color: #dfbdb7 !important;
  background: var(--vero-red-100) !important;
}

/* Restrained motion and consistent detail treatment. */
.rovers-free-shipping-fill {
  background: var(--vero-ink-800) !important;
  background-image: none !important;
}

.rovers-product-shipping-icon,
.rovers-product-shipping-rate-icon,
.rovers-rate-icon,
.rovers-company-mark,
.rovers-contact-item,
.rovers-invoice-summary,
.rovers-product-shipping-address,
.rovers-product-shipping-cart-note {
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-ink-100) !important;
}

.rovers-payment-trust {
  color: var(--vero-green-700) !important;
}

.rovers-payment-trust span::before {
  content: '';
  width: 5px;
  height: 5px;
  flex: 0 0 5px;
  border-radius: 50%;
  background: currentColor;
}

.rovers-payment-trust span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

/* Cart and mini-cart controls rendered outside the plugin wrappers. */
.woocommerce-cart .cart_totals,
.woocommerce-cart .cart_totals .woocommerce-shipping-methods > li,
.woocommerce-cart .cart_totals .rovers-cart-postcode-calculator,
.rovers-mini-cart-total {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-md) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
  font-family: var(--vero-font-body) !important;
}

.woocommerce-cart .cart_totals > h2 {
  font-family: var(--vero-font-display) !important;
  font-weight: 400 !important;
}

.woocommerce-cart .cart_totals .rovers-cart-postcode-controls input#calc_shipping_postcode {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
  font-family: var(--vero-font-body) !important;
}

.woocommerce-cart .cart_totals .rovers-cart-postcode-controls input#calc_shipping_postcode:focus {
  border-color: var(--vero-denim-600) !important;
  box-shadow: var(--vero-focus) !important;
}

.woocommerce-cart .cart_totals .rovers-cart-postcode-controls button,
.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button,
#cart-sidebar .woocommerce-mini-cart__buttons a.checkout {
  border: 1px solid var(--vero-ink-950) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-ink-950) !important;
  color: var(--vero-white) !important;
  box-shadow: none !important;
  font-family: var(--vero-font-body) !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

.woocommerce-cart .cart_totals .rovers-cart-postcode-controls button:hover,
.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button:hover,
#cart-sidebar .woocommerce-mini-cart__buttons a.checkout:hover {
  border-color: var(--vero-ink-800) !important;
  background: var(--vero-ink-800) !important;
}

#cart-sidebar .woocommerce-mini-cart__buttons a:not(.checkout) {
  border: 1px solid var(--vero-ink-400) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: transparent !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
  font-family: var(--vero-font-body) !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

.woocommerce-cart .cart_totals .rovers-cart-rate-price,
.rovers-mini-cart-total-amount {
  color: var(--vero-ink-950) !important;
}

.woocommerce-cart .cart_totals .rovers-cart-rate-price del,
.rovers-mini-cart-total-comparison del,
.rovers-wholesale-comparison del {
  color: var(--vero-ink-500) !important;
}

.woocommerce-cart .cart_totals .rovers-cart-rate-price ins,
.rovers-mini-cart-total-comparison ins,
.rovers-wholesale-comparison ins {
  color: var(--vero-denim-700) !important;
}

/* Wholesale pricing and product-page promotional information. */
.rovers-wholesale-price {
  border: 1px solid var(--vero-denim-100) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-denim-100) !important;
  color: var(--vero-denim-700) !important;
  box-shadow: none !important;
}

.rovers-wholesale-price strong,
.rovers-wholesale-price .amount,
.rovers-wholesale-comparison ins .amount {
  color: var(--vero-denim-700) !important;
}

.rovers-wholesale-price small,
.rovers-wholesale-minimum,
.rovers-social-proof,
.rovers-loop-review-count {
  color: var(--vero-ink-700) !important;
}

.rovers-loop-star,
.rovers-single-social-proof .star-rating {
  color: var(--vero-clay-600) !important;
}

.single-product .rovers-bank-transfer-notice {
  border-color: var(--vero-denim-100) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-denim-100) !important;
  color: var(--vero-denim-700) !important;
}

.rovers-address-modal__backdrop,
.rovers-product-shipping-backdrop {
  background: rgba(24, 23, 20, .55) !important;
}

.rovers-address-modal__panel,
.rovers-product-shipping-dialog {
  border: 1px solid var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-lg) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  box-shadow: var(--vero-shadow-lg) !important;
}

/* Header address, saved addresses and their forms. */
.rovers-header-address {
  color: var(--vero-ink-950) !important;
}

.rovers-header-address__copy small,
.rovers-address-summary__row small,
.rovers-account-addresses__intro > p,
.rovers-account-address-card__details dt {
  color: var(--vero-ink-700) !important;
}

.rovers-address-summary__section,
.rovers-address-invoice,
.rovers-account-address-card {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-md) !important;
  background: var(--vero-white) !important;
  box-shadow: none !important;
}

.rovers-address-field input,
.rovers-address-field select,
.rovers-address-field textarea {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
  font-family: var(--vero-font-body) !important;
}

.rovers-address-field input:focus,
.rovers-address-field select:focus,
.rovers-address-field textarea:focus {
  border-color: var(--vero-denim-600) !important;
  box-shadow: var(--vero-focus) !important;
}

.rovers-address-actions button[type="submit"],
button.rovers-account-addresses__edit.button {
  border: 1px solid var(--vero-ink-950) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-ink-950) !important;
  color: var(--vero-white) !important;
  box-shadow: none !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

.rovers-address-actions button:not([type="submit"]),
.rovers-address-summary__actions button {
  border: 1px solid var(--vero-ink-400) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: transparent !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
}

.rovers-account-address-card__status.is-complete {
  background: var(--vero-green-100) !important;
  color: var(--vero-green-700) !important;
}

.rovers-account-address-card__status.is-incomplete {
  background: var(--vero-clay-100) !important;
  color: var(--vero-clay-600) !important;
}

/* Confirmation and bank details. WhatsApp keeps its official brand colour. */
.rovers-bank-details,
.rovers-bank-details [data-rovers-bank-card] {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-md) !important;
  background: var(--vero-white) !important;
  box-shadow: none !important;
}

.rovers-bank-card-header {
  border-color: var(--vero-ink-200) !important;
  background: var(--vero-white) !important;
}

.rovers-bank-after-order > header h2,
.rovers-order-whatsapp h2 {
  color: var(--vero-ink-950) !important;
  font-family: var(--vero-font-display) !important;
  font-weight: 400 !important;
}

.rovers-bank-icon,
.rovers-bank-monogram,
.rovers-bank-dot.is-active {
  background: var(--vero-ink-950) !important;
  color: var(--vero-white) !important;
}

.rovers-copy,
.rovers-bank-nav {
  border-color: var(--vero-ink-400) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
}

.rovers-order-whatsapp {
  border-color: var(--vero-green-100) !important;
  border-radius: var(--vero-radius-md) !important;
  background: var(--vero-green-100) !important;
  box-shadow: none !important;
}

.rovers-order-whatsapp p {
  color: var(--vero-green-700) !important;
}

/* Product tabs and shipping states. */
.rovers-product-tab-trigger,
.nasa-content.rovers-elessi-tab-accordion > .ns-woo-tab-title {
  border-color: var(--vero-ink-200) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  font-family: var(--vero-font-body) !important;
}

.rovers-product-tab-trigger:focus-visible,
.nasa-content.rovers-elessi-tab-accordion > .ns-woo-tab-title:focus-visible {
  box-shadow: var(--vero-focus) !important;
  outline: none !important;
}

.rovers-product-shipping-popover,
.rovers-product-shipping-rate,
.rovers-product-shipping-empty-cart,
.rovers-free-shipping-progress {
  border-color: var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-md) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
}

.rovers-free-shipping-track {
  background: var(--vero-ink-200) !important;
}

.rovers-free-shipping-cart,
.rovers-free-shipping-gift {
  border-color: var(--vero-ink-950) !important;
  background: var(--vero-white) !important;
  color: var(--vero-ink-950) !important;
}

.rovers-free-shipping-region.is-complete .rovers-free-shipping-cart,
.rovers-free-shipping-region.is-complete .rovers-free-shipping-gift {
  border-color: var(--vero-green-700) !important;
  color: var(--vero-green-700) !important;
}

/* Exact VERO input contract for WooCommerce checkout fields. */
.rovers-checkout-page .form-row label,
.rovers-checkout-page .rovers-invoice-fields .form-row > label,
.rovers-checkout-page .rovers-address-simple .form-row label,
.rovers-checkout-page .rovers-step[data-step="shipping"] .form-row label,
.rovers-custom-carrier > label {
  margin-bottom: 6px !important;
  color: var(--vero-ink-700) !important;
  background: transparent !important;
  font-family: var(--vero-font-body) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.rovers-checkout-page .form-row .required,
.rovers-custom-carrier .required {
  color: var(--vero-red-700) !important;
}

.rovers-checkout-page input.input-text,
.rovers-checkout-page input[type="text"],
.rovers-checkout-page input[type="email"],
.rovers-checkout-page input[type="tel"],
.rovers-checkout-page input[type="number"],
.rovers-checkout-page input[type="password"],
.rovers-checkout-page select,
.rovers-checkout-page textarea,
.rovers-checkout-page .select2-container .select2-selection--single,
.rovers-checkout-page .andreani-sucursales-select,
.rovers-checkout-page .correoargentino_branch_select,
.rovers-checkout-page #rovers_custom_carrier_name {
  width: 100% !important;
  min-height: 48px !important;
  border: 1px solid var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-sm) !important;
  background-color: var(--vero-white) !important;
  background-image: none !important;
  color: var(--vero-ink-950) !important;
  box-shadow: none !important;
  font-family: var(--vero-font-body) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  transition: border-color 120ms cubic-bezier(.4, 0, .2, 1), box-shadow 120ms cubic-bezier(.4, 0, .2, 1) !important;
}

.rovers-checkout-page input.input-text,
.rovers-checkout-page input[type="text"],
.rovers-checkout-page input[type="email"],
.rovers-checkout-page input[type="tel"],
.rovers-checkout-page input[type="number"],
.rovers-checkout-page input[type="password"] {
  height: 48px !important;
  padding: 0 14px !important;
}

.rovers-checkout-page select,
.rovers-checkout-page .select2-container .select2-selection--single,
.rovers-checkout-page .andreani-sucursales-select,
.rovers-checkout-page .correoargentino_branch_select {
  height: 48px !important;
  padding: 0 40px 0 14px !important;
}

.rovers-checkout-page textarea {
  min-height: 96px !important;
  padding: 12px 14px !important;
  resize: vertical;
}

.rovers-checkout-page input::placeholder,
.rovers-checkout-page textarea::placeholder,
.rovers-checkout-page .select2-selection__placeholder {
  color: var(--vero-ink-500) !important;
  opacity: 1 !important;
}

.rovers-checkout-page input.input-text:hover,
.rovers-checkout-page input[type="text"]:hover,
.rovers-checkout-page input[type="email"]:hover,
.rovers-checkout-page input[type="tel"]:hover,
.rovers-checkout-page input[type="number"]:hover,
.rovers-checkout-page select:hover,
.rovers-checkout-page textarea:hover,
.rovers-checkout-page .select2-container .select2-selection--single:hover {
  border-color: var(--vero-ink-400) !important;
  box-shadow: none !important;
}

.rovers-checkout-page input.input-text:focus,
.rovers-checkout-page input[type="text"]:focus,
.rovers-checkout-page input[type="email"]:focus,
.rovers-checkout-page input[type="tel"]:focus,
.rovers-checkout-page input[type="number"]:focus,
.rovers-checkout-page input[type="password"]:focus,
.rovers-checkout-page select:focus,
.rovers-checkout-page textarea:focus,
.rovers-checkout-page .select2-container--open .select2-selection--single,
.rovers-checkout-page .select2-container--focus .select2-selection--single {
  border-color: var(--vero-denim-600) !important;
  box-shadow: var(--vero-focus) !important;
  outline: none !important;
}

/* Completed fields remain neutral: confirmation is communicated by the step,
   not by the old green inset bar on every individual input. */
.rovers-checkout-page .woocommerce-validated input:not([type="radio"]):not([type="checkbox"]),
.rovers-checkout-page .woocommerce-validated select,
.rovers-checkout-page .woocommerce-validated textarea,
.rovers-checkout-page .rovers-address-simple .woocommerce-validated input:not([type="radio"]):not([type="checkbox"]),
.rovers-checkout-page .rovers-address-simple .woocommerce-validated textarea,
.rovers-checkout-page .rovers-step[data-step="shipping"] .woocommerce-validated input:not([type="radio"]):not([type="checkbox"]),
.rovers-checkout-page .rovers-step[data-step="shipping"] .woocommerce-validated select,
.rovers-checkout-page .rovers-step[data-step="shipping"] .woocommerce-validated textarea,
.rovers-checkout-page .rovers-invoice-fields .woocommerce-validated input,
.rovers-checkout-page .rovers-invoice-fields .woocommerce-validated select,
.rovers-checkout-page .rovers-invoice-fields .woocommerce-validated textarea,
.rovers-checkout-page .rovers-andreani-branch .woocommerce-validated select,
.rovers-checkout-page select.andreani-sucursales-select.woocommerce-validated,
.rovers-checkout-page .rovers-custom-carrier.woocommerce-validated #rovers_custom_carrier_name {
  padding-right: 14px !important;
  border-color: var(--vero-ink-200) !important;
  background-color: var(--vero-white) !important;
  background-image: none !important;
  box-shadow: none !important;
}

.rovers-checkout-page .woocommerce-validated input:focus,
.rovers-checkout-page .woocommerce-validated select:focus,
.rovers-checkout-page .woocommerce-validated textarea:focus {
  border-color: var(--vero-denim-600) !important;
  box-shadow: var(--vero-focus) !important;
}

.rovers-checkout-page .woocommerce-invalid input:not([type="radio"]):not([type="checkbox"]),
.rovers-checkout-page .woocommerce-invalid select,
.rovers-checkout-page .woocommerce-invalid textarea,
.rovers-checkout-page .rovers-invalid input,
.rovers-checkout-page .rovers-invalid select,
.rovers-checkout-page .rovers-invalid textarea {
  border-color: var(--vero-red-700) !important;
  background-color: var(--vero-white) !important;
  background-image: none !important;
  box-shadow: 0 0 0 3px rgba(139, 61, 53, .12) !important;
}

.rovers-checkout-page .select2-container .select2-selection__rendered {
  padding: 0 !important;
  color: var(--vero-ink-950) !important;
  font-size: 16px !important;
  line-height: 46px !important;
}

.select2-container--open .select2-dropdown {
  border: 1px solid var(--vero-ink-200) !important;
  border-radius: var(--vero-radius-sm) !important;
  background: var(--vero-white) !important;
  box-shadow: var(--vero-shadow-md) !important;
  font-family: var(--vero-font-body) !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
  background: var(--vero-denim-600) !important;
  color: var(--vero-white) !important;
}

.rovers-checkout-page input:-webkit-autofill,
.rovers-checkout-page input:-webkit-autofill:hover,
.rovers-checkout-page input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--vero-ink-950) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--vero-white) inset !important;
  caret-color: var(--vero-ink-950) !important;
}

@media (prefers-reduced-motion: reduce) {
  .rovers-checkout-page *,
  .rovers-product-shipping *,
  .rovers-header-address * {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Brand palette from the storefront reference: berry actions and blush panels. */
.rovers-primary,
.rovers-place-order,
.rovers-apply-coupon,
.rovers-cart-shipping button,
.rovers-product-shipping-submit,
.rovers-free-shipping-location-button,
.rovers-account-panel button[type="submit"],
.rovers-address-actions button[type="submit"],
button.rovers-account-addresses__edit.button,
.woocommerce-cart .cart_totals .rovers-cart-postcode-controls button,
.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button,
#cart-sidebar .woocommerce-mini-cart__buttons a.checkout,
.single-product .nasa-buy-now,
.single-product .nasa-buy-now-ajax {
  border-color: var(--vero-brand-700) !important;
  background: var(--vero-brand-700) !important;
  background-image: none !important;
  color: var(--vero-white) !important;
}

.rovers-primary:hover,
.rovers-primary:focus,
.rovers-place-order:hover,
.rovers-place-order:focus,
.rovers-apply-coupon:hover,
.rovers-apply-coupon:focus,
.rovers-cart-shipping button:hover,
.rovers-cart-shipping button:focus,
.rovers-product-shipping-submit:hover,
.rovers-product-shipping-submit:focus,
.rovers-free-shipping-location-button:hover,
.rovers-free-shipping-location-button:focus,
.rovers-account-panel button[type="submit"]:hover,
.rovers-account-panel button[type="submit"]:focus,
.rovers-address-actions button[type="submit"]:hover,
.rovers-address-actions button[type="submit"]:focus,
button.rovers-account-addresses__edit.button:hover,
button.rovers-account-addresses__edit.button:focus,
.woocommerce-cart .cart_totals .rovers-cart-postcode-controls button:hover,
.woocommerce-cart .cart_totals .rovers-cart-postcode-controls button:focus,
.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button:hover,
.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button:focus,
#cart-sidebar .woocommerce-mini-cart__buttons a.checkout:hover,
#cart-sidebar .woocommerce-mini-cart__buttons a.checkout:focus,
.single-product .nasa-buy-now:hover,
.single-product .nasa-buy-now:focus,
.single-product .nasa-buy-now-ajax:hover,
.single-product .nasa-buy-now-ajax:focus {
  border-color: var(--vero-brand-800) !important;
  background: var(--vero-brand-800) !important;
  color: var(--vero-white) !important;
}

#cart-sidebar .woocommerce-mini-cart__buttons a:not(.checkout),
.rovers-address-actions button:not([type="submit"]),
.rovers-address-summary__actions button,
.rovers-copy,
.rovers-bank-nav {
  border-color: var(--vero-brand-700) !important;
  background: var(--vero-white) !important;
  color: var(--vero-brand-700) !important;
}

.rovers-delivery-tabs button.is-active,
.rovers-rate-item input:checked + .rovers-rate-radio::after,
.rovers-step-number,
.rovers-progress span.is-active b,
.rovers-bank-icon,
.rovers-bank-monogram,
.rovers-bank-dot.is-active {
  border-color: var(--vero-brand-700) !important;
  background: var(--vero-brand-700) !important;
  color: var(--vero-white) !important;
}

/* Secondary product action follows the outlined button from the reference. */
.single-product form.cart .single_add_to_cart_button {
  border-color: var(--vero-brand-700) !important;
  background: var(--vero-white) !important;
  background-image: none !important;
  color: var(--vero-brand-700) !important;
}

.single-product form.cart .single_add_to_cart_button:hover,
.single-product form.cart .single_add_to_cart_button:focus {
  border-color: var(--vero-brand-800) !important;
  background: var(--vero-brand-100) !important;
  color: var(--vero-brand-800) !important;
}

/* Compact promotional pills may carry the brand colour without tinting rows. */
.rovers-wholesale-price {
  border-color: transparent !important;
  background: transparent !important;
  color: var(--vero-brand-800) !important;
}

.rovers-wholesale-price strong,
.rovers-wholesale-price .amount,
.rovers-wholesale-price .rovers-wholesale-amount,
.rovers-wholesale-price .rovers-wholesale-minimum {
  color: var(--vero-brand-800) !important;
}

.woocommerce ul.products li.product .rovers-wholesale-price .rovers-wholesale-amount,
.woocommerce ul.products li.product .rovers-wholesale-price .rovers-wholesale-amount .amount,
.single-product .rovers-wholesale-price .rovers-wholesale-amount,
.single-product .rovers-wholesale-price .rovers-wholesale-amount .amount {
  font-weight: 700 !important;
}

.single-product .summary .rovers-wholesale-price .rovers-wholesale-amount,
.single-product .summary .rovers-wholesale-price .rovers-wholesale-amount .amount,
.single-product .product-info .rovers-wholesale-price .rovers-wholesale-amount,
.single-product .product-info .rovers-wholesale-price .rovers-wholesale-amount .amount {
  font-size: 1.7em !important;
  line-height: 1.05 !important;
}

.woocommerce ul.products li.product .rovers-wholesale-price .rovers-wholesale-amount,
.woocommerce ul.products li.product .rovers-wholesale-price .rovers-wholesale-amount .amount,
ul.products li.product .rovers-wholesale-price .rovers-wholesale-amount,
ul.products li.product .rovers-wholesale-price .rovers-wholesale-amount .amount {
  font-size: 24px !important;
  line-height: 1.05 !important;
}

.woocommerce ul.products li.product .product-info-wrap > .price,
.woocommerce ul.products li.product .product-info-wrap > .price .amount,
.woocommerce ul.products li.product .product-info-wrap > .info-price,
.woocommerce ul.products li.product .product-info-wrap > .info-price .price,
.woocommerce ul.products li.product .product-info-wrap > .info-price .amount,
.woocommerce ul.products li.product .nasa-product-content-wrap > .price,
.woocommerce ul.products li.product .nasa-product-content-wrap > .price .amount,
.woocommerce ul.products li.product .nasa-product-content-wrap > .info-price,
.woocommerce ul.products li.product .nasa-product-content-wrap > .info-price .price,
.woocommerce ul.products li.product .nasa-product-content-wrap > .info-price .amount,
ul.products li.product .product-info-wrap > .price,
ul.products li.product .product-info-wrap > .price .amount,
ul.products li.product .nasa-product-content-wrap > .price,
ul.products li.product .nasa-product-content-wrap > .price .amount {
  font-size: 18px !important;
  line-height: 1.15 !important;
}

/* Elessi renders the actual product card as div.product in shop, home and
   related sliders, even when an outer ul.products exists. */
.products .product .product-info-wrap > .rovers-wholesale-price .rovers-wholesale-amount,
.products .product .product-info-wrap > .rovers-wholesale-price .rovers-wholesale-amount .amount,
.products .product .nasa-product-content-wrap > .rovers-wholesale-price .rovers-wholesale-amount,
.products .product .nasa-product-content-wrap > .rovers-wholesale-price .rovers-wholesale-amount .amount {
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
}

.products .product .product-info-wrap > .price-wrap .price,
.products .product .product-info-wrap > .price-wrap .price .amount,
.products .product .product-info-wrap > .info-price,
.products .product .product-info-wrap > .info-price .price,
.products .product .product-info-wrap > .info-price .amount,
.products .product .nasa-product-content-wrap > .price-wrap .price,
.products .product .nasa-product-content-wrap > .price-wrap .price .amount,
.products .product .nasa-product-content-wrap > .info-price,
.products .product .nasa-product-content-wrap > .info-price .price,
.products .product .nasa-product-content-wrap > .info-price .amount {
  font-size: 18px !important;
  line-height: 1.15 !important;
}

.single-product .rovers-wholesale-price {
  gap: 7px !important;
}

.single-product .rovers-wholesale-price strong,
.single-product .rovers-wholesale-price .rovers-wholesale-minimum {
  font-size: 13px !important;
  line-height: 1.2 !important;
}

.single-product .rovers-wholesale-price small {
  min-height: 20px !important;
  padding: 3px 8px !important;
  font-size: 11px !important;
}

.rovers-wholesale-price small {
  background: var(--vero-brand-700) !important;
  color: var(--vero-white) !important;
}

.single-product .rovers-bank-transfer-notice {
  border-color: transparent !important;
  background: transparent !important;
  color: var(--vero-brand-800) !important;
}

.single-product .rovers-bank-transfer-notice strong {
  background: var(--vero-brand-100) !important;
  color: var(--vero-brand-800) !important;
}

.single-product .rovers-bank-transfer-notice span {
  color: var(--vero-brand-800) !important;
}

/* Checkout repeats the product-page wholesale hierarchy and brand palette. */
.rovers-checkout-page .rovers-review-line-total .rovers-wholesale-comparison ins,
.rovers-checkout-page .rovers-review-line-total .rovers-wholesale-comparison ins .amount,
.rovers-checkout-page .rovers-summary-subtotal ins,
.rovers-checkout-page .rovers-summary-subtotal ins .amount,
.rovers-checkout-page .rovers-review-unit-price,
.rovers-checkout-page .rovers-review-unit-price .amount {
  color: var(--vero-brand-800) !important;
}

.rovers-checkout-page .rovers-review-line-total .rovers-wholesale-comparison ins {
  font-size: 19px !important;
}

.rovers-checkout-page .rovers-summary-subtotal-label small {
  min-height: 24px !important;
  padding: 4px 9px !important;
  border-color: #e8bfd2 !important;
  background: var(--vero-brand-100) !important;
  color: var(--vero-brand-800) !important;
  font-size: 10px !important;
}

.rovers-checkout-page .rovers-summary-subtotal-label {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--vero-brand-800) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}

.rovers-checkout-page .rovers-summary-original-subtotal,
.rovers-checkout-page .rovers-summary-original-subtotal .amount {
  color: var(--vero-ink-500) !important;
  font: inherit !important;
  text-decoration: line-through !important;
}

.rovers-checkout-page .rovers-summary-wholesale-subtotal,
.rovers-checkout-page .rovers-summary-wholesale-subtotal .amount {
  color: var(--vero-brand-800) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.rovers-checkout-page .rovers-wholesale-subtotal-row > th,
.rovers-checkout-page .rovers-wholesale-subtotal-row > td {
  padding-top: 8px !important;
  padding-bottom: 20px !important;
}

.rovers-checkout-page .rovers-free-shipping-progress {
  display: none !important;
}

.rovers-checkout-page .rovers-company-grid > button[data-company].is-active,
.rovers-checkout-page .rovers-rate-item.is-selected {
  border-color: var(--vero-brand-700) !important;
  background: var(--vero-brand-100) !important;
  box-shadow: inset 3px 0 var(--vero-brand-700) !important;
}

/* Cart and side-cart use the same berry palette as product and checkout. */
.woocommerce-cart .rovers-wholesale-comparison ins,
.woocommerce-cart .rovers-wholesale-comparison ins .amount,
.woocommerce-cart .rovers-wholesale-line-total,
.woocommerce-cart .cart_totals .rovers-cart-wholesale-row th,
.woocommerce-cart .cart_totals .rovers-cart-wholesale-row td,
.widget_shopping_cart .rovers-wholesale-comparison ins,
.widget_shopping_cart .rovers-wholesale-comparison ins .amount,
.woocommerce-mini-cart .rovers-wholesale-comparison ins,
.woocommerce-mini-cart .rovers-wholesale-comparison ins .amount,
.rovers-mini-cart-total-comparison ins,
.rovers-mini-cart-total-comparison ins .amount {
  color: var(--vero-brand-800) !important;
}

.woocommerce-cart .rovers-wholesale-row,
.woocommerce-cart .rovers-wholesale-notice,
.widget_shopping_cart .rovers-wholesale-row,
.widget_shopping_cart .rovers-wholesale-notice,
.woocommerce-mini-cart .rovers-wholesale-row,
.woocommerce-mini-cart .rovers-wholesale-notice {
  border-color: transparent !important;
  background: transparent !important;
  background-image: none !important;
}

.woocommerce-cart .cart_totals tr.fee th,
.woocommerce-cart .cart_totals tr.fee td,
.woocommerce-cart .cart_totals tr.fee .amount {
  color: var(--vero-brand-800) !important;
}

.woocommerce-cart .cart_totals .rovers-cart-postcode-controls input#calc_shipping_postcode:focus {
  border-color: var(--vero-brand-700) !important;
  box-shadow: var(--vero-focus) !important;
}

.woocommerce-cart .woocommerce-cart-form button.button,
.woocommerce-cart .woocommerce-cart-form .coupon button.button,
.woocommerce-cart .woocommerce-cart-form input.button {
  border: 1px solid var(--vero-brand-700) !important;
  background: var(--vero-white) !important;
  background-image: none !important;
  color: var(--vero-brand-700) !important;
  box-shadow: none !important;
}

.woocommerce-cart .woocommerce-cart-form button.button:hover,
.woocommerce-cart .woocommerce-cart-form button.button:focus,
.woocommerce-cart .woocommerce-cart-form input.button:hover,
.woocommerce-cart .woocommerce-cart-form input.button:focus {
  border-color: var(--vero-brand-800) !important;
  background: var(--vero-brand-100) !important;
  color: var(--vero-brand-800) !important;
}

.woocommerce-cart .woocommerce-shipping-methods input[type="radio"],
.widget_shopping_cart input[type="radio"],
.woocommerce-mini-cart input[type="radio"] {
  accent-color: var(--vero-brand-700) !important;
}

.woocommerce-cart .rovers-free-shipping-title-highlight,
.widget_shopping_cart .rovers-free-shipping-title-highlight,
.woocommerce-mini-cart .rovers-free-shipping-title-highlight {
  color: var(--vero-brand-700) !important;
}

.woocommerce-cart .rovers-free-shipping-fill,
.widget_shopping_cart .rovers-free-shipping-fill,
.woocommerce-mini-cart .rovers-free-shipping-fill {
  background: var(--vero-brand-700) !important;
  background-image: none !important;
}

.woocommerce-cart .rovers-free-shipping-cart,
.woocommerce-cart .rovers-free-shipping-gift,
.widget_shopping_cart .rovers-free-shipping-cart,
.widget_shopping_cart .rovers-free-shipping-gift,
.woocommerce-mini-cart .rovers-free-shipping-cart,
.woocommerce-mini-cart .rovers-free-shipping-gift {
  border-color: var(--vero-brand-700) !important;
  color: var(--vero-brand-700) !important;
}
