/* =====================================================================
 * Persian Peacock Commerce — UI layer: icon system, button icons, validation,
 * notices, order confirmation / view order redesign. Loaded after store.css.
 * ===================================================================== */

:root {
  --ppc-i-bag: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M6%207h12l1%2014H5L6%207z%27/%3E%3Cpath%20d=%27M9%2010V6a3%203%200%200%201%206%200v4%27/%3E%3C/svg%3E");
  --ppc-i-lock: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Crect%20x=%275%27%20y=%2711%27%20width=%2714%27%20height=%2710%27%20rx=%272%27/%3E%3Cpath%20d=%27M8%2011V7a4%204%200%200%201%208%200v4%27/%3E%3C/svg%3E");
  --ppc-i-truck: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M3%206h11v10H3z%27/%3E%3Cpath%20d=%27M14%209h4l3%203.5V16h-7%27/%3E%3Ccircle%20cx=%277%27%20cy=%2718%27%20r=%272%27/%3E%3Ccircle%20cx=%2717.5%27%20cy=%2718%27%20r=%272%27/%3E%3C/svg%3E");
  --ppc-i-alert: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Ccircle%20cx=%2712%27%20cy=%2712%27%20r=%279%27/%3E%3Cpath%20d=%27M12%207.5v5.5%27/%3E%3Cpath%20d=%27M12%2016.5h.01%27/%3E%3C/svg%3E");
  --ppc-i-check: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Ccircle%20cx=%2712%27%20cy=%2712%27%20r=%279%27/%3E%3Cpath%20d=%27m8%2012.5%202.8%202.8L16.5%209.5%27/%3E%3C/svg%3E");
  --ppc-i-tick: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27m5%2012.5%204.5%204.5L19%207.5%27/%3E%3C/svg%3E");
  --ppc-i-receipt: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M6%203h12v18l-3-2-3%202-3-2-3%202V3z%27/%3E%3Cpath%20d=%27M9%208h6%27/%3E%3Cpath%20d=%27M9%2012h6%27/%3E%3C/svg%3E");
  --ppc-i-pin: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M12%2021s-7-6.2-7-11a7%207%200%200%201%2014%200c0%204.8-7%2011-7%2011z%27/%3E%3Ccircle%20cx=%2712%27%20cy=%2710%27%20r=%272.5%27/%3E%3C/svg%3E");
  --ppc-i-phone: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M5%204h4l2%205-2.5%201.5a11%2011%200%200%200%205%205L15%2013l5%202v4a2%202%200%200%201-2%202A16%2016%200%200%201%203%206a2%202%200%200%201%202-2z%27/%3E%3C/svg%3E");
  --ppc-i-mail: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Crect%20x=%273%27%20y=%275%27%20width=%2718%27%20height=%2714%27%20rx=%272%27/%3E%3Cpath%20d=%27m3%207%209%206%209-6%27/%3E%3C/svg%3E");
  --ppc-i-info: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Ccircle%20cx=%2712%27%20cy=%2712%27%20r=%279%27/%3E%3Cpath%20d=%27M12%2011v5.5%27/%3E%3Cpath%20d=%27M12%207.5h.01%27/%3E%3C/svg%3E");
  --ppc-i-cash: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Crect%20x=%272.5%27%20y=%276%27%20width=%2719%27%20height=%2712%27%20rx=%272%27/%3E%3Ccircle%20cx=%2712%27%20cy=%2712%27%20r=%272.5%27/%3E%3Cpath%20d=%27M6%209.5v5M18%209.5v5%27/%3E%3C/svg%3E");
  --ppc-i-calendar: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Crect%20x=%273.5%27%20y=%275%27%20width=%2717%27%20height=%2715%27%20rx=%272%27/%3E%3Cpath%20d=%27M3.5%2010h17M8%203v4M16%203v4%27/%3E%3C/svg%3E");
  --ppc-i-hash: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M5%209h14M5%2015h14M10%204%208%2020M16%204l-2%2016%27/%3E%3C/svg%3E");
  --ppc-i-card: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Crect%20x=%272.5%27%20y=%275%27%20width=%2719%27%20height=%2714%27%20rx=%272%27/%3E%3Cpath%20d=%27M2.5%2010h19%27/%3E%3C/svg%3E");
  --ppc-i-arrow: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M5%2012h14%27/%3E%3Cpath%20d=%27m13%206%206%206-6%206%27/%3E%3C/svg%3E");
  --ppc-i-search: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Ccircle%20cx=%2711%27%20cy=%2711%27%20r=%276.5%27/%3E%3Cpath%20d=%27m20%2020-4.2-4.2%27/%3E%3C/svg%3E");
  --ppc-i-box: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M3%207.5%2012%203l9%204.5v9L12%2021l-9-4.5z%27/%3E%3Cpath%20d=%27m3%207.5%209%204.5%209-4.5M12%2012v9%27/%3E%3C/svg%3E");
  --ppc-i-home: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M4%2011%2012%204l8%207v9H4z%27/%3E%3Cpath%20d=%27M10%2020v-5h4v5%27/%3E%3C/svg%3E");
  --ppc-i-tag: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M3%2012V4h8l9%209-8%208z%27/%3E%3Ccircle%20cx=%277.5%27%20cy=%278.5%27%20r=%271.5%27/%3E%3C/svg%3E");
  --ppc-i-user: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Ccircle%20cx=%2712%27%20cy=%278%27%20r=%274%27/%3E%3Cpath%20d=%27M4%2021a8%208%200%200%201%2016%200%27/%3E%3C/svg%3E");
  --ppc-i-login: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27black%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M14%204h5v16h-5%27/%3E%3Cpath%20d=%27M10%208l4%204-4%204%27/%3E%3Cpath%20d=%27M14%2012H3%27/%3E%3C/svg%3E");
}
:root {
  --ppc-ic-receipt: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%230b5352%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M6%203h12v18l-3-2-3%202-3-2-3%202V3z%27/%3E%3Cpath%20d=%27M9%208h6%27/%3E%3Cpath%20d=%27M9%2012h6%27/%3E%3C/svg%3E");
  --ppc-ic-pin: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%230b5352%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M12%2021s-7-6.2-7-11a7%207%200%200%201%2014%200c0%204.8-7%2011-7%2011z%27/%3E%3Ccircle%20cx=%2712%27%20cy=%2710%27%20r=%272.5%27/%3E%3C/svg%3E");
  --ppc-ic-box: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%230b5352%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M3%207.5%2012%203l9%204.5v9L12%2021l-9-4.5z%27/%3E%3Cpath%20d=%27m3%207.5%209%204.5%209-4.5M12%2012v9%27/%3E%3C/svg%3E");
  --ppc-ic-truck: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%230b5352%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M3%206h11v10H3z%27/%3E%3Cpath%20d=%27M14%209h4l3%203.5V16h-7%27/%3E%3Ccircle%20cx=%277%27%20cy=%2718%27%20r=%272%27/%3E%3Ccircle%20cx=%2717.5%27%20cy=%2718%27%20r=%272%27/%3E%3C/svg%3E");
  --ppc-ic-home: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%230b5352%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27M4%2011%2012%204l8%207v9H4z%27/%3E%3Cpath%20d=%27M10%2020v-5h4v5%27/%3E%3C/svg%3E");
  --ppc-ic-check: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%230b5352%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Ccircle%20cx=%2712%27%20cy=%2712%27%20r=%279%27/%3E%3Cpath%20d=%27m8%2012.5%202.8%202.8L16.5%209.5%27/%3E%3C/svg%3E");
  --ppc-ic-tick: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%230b5352%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27m5%2012.5%204.5%204.5L19%207.5%27/%3E%3C/svg%3E");
  --ppc-ic-tick-white: url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%2024%2024%27%20fill=%27none%27%20stroke=%27%23ffffff%27%20stroke-width=%272%27%20stroke-linecap=%27round%27%20stroke-linejoin=%27round%27%3E%3Cpath%20d=%27m5%2012.5%204.5%204.5L19%207.5%27/%3E%3C/svg%3E");
}

/* Generic mask icon helper: <span class="ppc-ico" style="--i:var(--ppc-i-bag)"></span> */
.ppc-ico {
  display: inline-block;
  width: 18px;
  height: 18px;
  flex: none;
  background: currentColor;
  -webkit-mask: var(--i) center / contain no-repeat;
  mask: var(--i) center / contain no-repeat;
  vertical-align: middle;
}

/* ---------------------------------------------------------------------
 * BUTTON ICONS — consistent leading icons on the primary commerce actions
 * ------------------------------------------------------------------- */
.single_add_to_cart_button,
.ppc-qa__add,
body.woocommerce-checkout #place_order,
.elementor-menu-cart__footer-buttons .elementor-button,
form.woocommerce-form-track-order button[type=submit],
.woocommerce-MyAccount-orders .button.ppc-track,
.woocommerce-orders-table .button.ppc-track {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
}
.single_add_to_cart_button::before,
.ppc-qa__add::before,
body.woocommerce-checkout #place_order::before,
.elementor-menu-cart__footer-buttons .elementor-button::before,
form.woocommerce-form-track-order button[type=submit]::before,
.woocommerce-orders-table .button.ppc-track::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  flex: none;
  background: currentColor;
  -webkit-mask: var(--ppc-btn-icon, var(--ppc-i-bag)) center / contain no-repeat;
  mask: var(--ppc-btn-icon, var(--ppc-i-bag)) center / contain no-repeat;
  position: static !important;
  margin: 0 !important;
  border: 0 !important;
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}
.single_add_to_cart_button,
.ppc-qa__add { --ppc-btn-icon: var(--ppc-i-bag); }
body.woocommerce-checkout #place_order { --ppc-btn-icon: var(--ppc-i-lock); }
.elementor-menu-cart__footer-buttons .elementor-button--view-cart { --ppc-btn-icon: var(--ppc-i-bag); }
.elementor-menu-cart__footer-buttons .elementor-button--checkout { --ppc-btn-icon: var(--ppc-i-lock); }
form.woocommerce-form-track-order button[type=submit] { --ppc-btn-icon: var(--ppc-i-truck); }
.woocommerce-orders-table .button.ppc-track { --ppc-btn-icon: var(--ppc-i-truck); }
.elementor-menu-cart__footer-buttons .elementor-button::before { width: 15px; height: 15px; }
.elementor-menu-cart__footer-buttons .elementor-button .elementor-button-text { display: inline !important; white-space: nowrap !important; flex: none !important; }
/* Loading state: swap the icon for a spinner ring. */
.single_add_to_cart_button.loading::before,
.single_add_to_cart_button.ppc-loading::before,
.ppc-qa__add.ppc-busy::before,
body.woocommerce-checkout .processing #place_order::before {
  -webkit-mask: none !important;
  mask: none !important;
  background: transparent !important;
  border: 2px solid currentColor !important;
  border-right-color: transparent !important;
  border-radius: 50%;
  width: 15px;
  height: 15px;
  animation: ppc-spin .7s linear infinite !important;
}
.single_add_to_cart_button.loading::after { display: none !important; }
@keyframes ppc-spin { to { transform: rotate(360deg); } }

/* ---------------------------------------------------------------------
 * QUANTITY STEPPERS — product page had two "+" icons drawn on top of each
 * other (theme overlay buttons + the mini-cart stepper spans). Keep one set.
 * ------------------------------------------------------------------- */
form.cart .quantity:has(.qty-button) .nova-minicart-qty-button { display: none !important; }
/* Elementor sets this input to 40px (!important, 6 classes) — outrank it so the number is centred between − and +. */
body.single-product form.cart .quantity:has(.qty-button) input.qty.input-text.text,
body form.cart .quantity:has(.qty-button) input.qty.input-text.text {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  text-align: center !important;
  padding: 0 34px !important;
  font-weight: 600;
}
form.cart .quantity .qty-button { color: var(--ppc-ink) !important; }
form.cart .quantity .qty-button:hover { color: var(--ppc-brand) !important; }

/* ---------------------------------------------------------------------
 * NOTICES — one consistent style (with icons) for errors, info and success
 * ------------------------------------------------------------------- */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.wc-block-components-notice-banner {
  position: relative !important;
  list-style: none !important;
  margin: 0 0 20px !important;
  padding: 16px 18px 16px 58px !important;
  border-radius: 14px !important;
  border: 1px solid var(--ppc-line) !important;
  background: #fff !important;
  color: var(--ppc-ink) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  box-shadow: 0 10px 30px -22px rgba(0, 0, 0, .35) !important;
  text-align: left !important;
}
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
  content: "" !important;
  position: absolute !important;
  left: 18px !important;
  top: 15px !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  background: currentColor;
  -webkit-mask: var(--ppc-notice-icon, var(--ppc-i-info)) center / contain no-repeat;
  mask: var(--ppc-notice-icon, var(--ppc-i-info)) center / contain no-repeat;
  font-size: 0 !important;
  line-height: 0 !important;
  color: inherit;
}
.woocommerce-error { --ppc-notice-icon: var(--ppc-i-alert); background: #fff8f7 !important; border-color: #f2c9c4 !important; border-left: 4px solid #b42318 !important; }
.woocommerce-error::before { background: #b42318 !important; }
.woocommerce-message { --ppc-notice-icon: var(--ppc-i-check); background: #f3f9f7 !important; border-color: #cfe5de !important; border-left: 4px solid var(--ppc-brand) !important; }
.woocommerce-message::before { background: var(--ppc-brand) !important; }
.woocommerce-info { --ppc-notice-icon: var(--ppc-i-info); background: #faf8f4 !important; border-left: 4px solid #8a7a5c !important; }
.woocommerce-info::before { background: #8a7a5c !important; }
.woocommerce-error li,
.woocommerce-error li strong,
.woocommerce-error li a { color: var(--ppc-ink) !important; }
.woocommerce-error a,
.woocommerce-info a,
.woocommerce-message a:not(.button) { color: var(--ppc-brand) !important; font-weight: 600; }
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
  float: right;
  margin: -4px 0 0 12px !important;
  height: 36px;
  padding: 0 16px !important;
  border-radius: 999px !important;
  background: var(--ppc-brand) !important;
  color: #fff !important;
  font-size: 11.5px !important;
  letter-spacing: .1em;
  line-height: 36px !important;
}

/* ---------------------------------------------------------------------
 * CHECKOUT VALIDATION
 * Error summary card (built by JS from WooCommerce's error list) + inline
 * field messages with icons + valid/invalid field states.
 * ------------------------------------------------------------------- */
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout { grid-column: 1 / -1; margin: 0 0 22px; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .wc-block-components-notice-banner.is-error {
  padding: 18px 20px 14px 62px !important;
}
body.woocommerce-checkout .ppc-err-title {
  display: block;
  margin: 0 0 8px !important;
  font: 600 15px/1.35 Poppins, sans-serif;
  color: #8a1c13 !important;
}
body.woocommerce-checkout .ppc-err-sub { display: block; margin: -4px 0 10px; font-size: 12.5px; color: var(--ppc-mute); }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li {
  position: relative;
  margin: 0 !important;
  padding: 7px 0 7px 22px !important;
  border-top: 1px dashed #f0d4d0;
  font-size: 13.5px !important;
}
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li:first-of-type,
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li.ppc-err-head + li { border-top: 0; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li.ppc-err-head { padding: 0 0 4px !important; border: 0 !important; cursor: default; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li.ppc-err-head::before,
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li.ppc-err-head::after { display: none !important; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 14px;
  height: 14px;
  background: #b42318;
  -webkit-mask: var(--ppc-i-alert) center / contain no-repeat;
  mask: var(--ppc-i-alert) center / contain no-repeat;
}
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li[data-id] { cursor: pointer; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li[data-id]:hover { color: #b42318 !important; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li[data-id]::after {
  content: "Fix";
  margin-left: 8px;
  font: 600 10.5px Poppins, sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #b42318;
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li strong { font-weight: 600 !important; }

/* Field states */
body.woocommerce-checkout .form-row { position: relative; }
body.woocommerce-checkout .form-row.woocommerce-invalid .input-text,
body.woocommerce-checkout .form-row.woocommerce-invalid select,
body.woocommerce-checkout .form-row.woocommerce-invalid .select2-selection {
  border-color: #d92d20 !important;
  background-color: #fffafa !important;
  box-shadow: 0 0 0 3px rgba(217, 45, 32, .10) !important;
}
body.woocommerce-checkout .form-row.woocommerce-validated .input-text:not(:placeholder-shown) {
  border-color: #9cc3b5 !important;
  padding-right: 40px !important;
  background-image: none !important;
}
body.woocommerce-checkout .form-row.woocommerce-validated:not(.ppc-no-tick) .woocommerce-input-wrapper:has(.input-text:not(:placeholder-shown):not(textarea))::after {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 17px;
  width: 16px;
  height: 16px;
  background: #1f8f6a;
  -webkit-mask: var(--ppc-i-tick) center / contain no-repeat;
  mask: var(--ppc-i-tick) center / contain no-repeat;
  pointer-events: none;
}
body.woocommerce-checkout .woocommerce-input-wrapper { position: relative; display: block; }
/* Inline messages (WooCommerce's .checkout-inline-error-message + ours) */
body.woocommerce-checkout .checkout-inline-error-message,
body.woocommerce-checkout .ppc-field-msg {
  display: flex !important;
  align-items: flex-start;
  gap: 6px;
  margin: 7px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  font-size: 12.5px !important;
  line-height: 1.4 !important;
  font-weight: 500;
  color: #b42318 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
body.woocommerce-checkout .checkout-inline-error-message::before,
body.woocommerce-checkout .ppc-field-msg::before {
  content: "";
  flex: none;
  width: 14px;
  height: 14px;
  margin-top: 1px;
  background: currentColor;
  -webkit-mask: var(--ppc-i-alert) center / contain no-repeat;
  mask: var(--ppc-i-alert) center / contain no-repeat;
}
body.woocommerce-checkout .form-row:not(.woocommerce-invalid) .ppc-field-msg { display: none !important; }
body.woocommerce-checkout .ppc-field-hint { display: block; margin: 6px 0 0; font-size: 12px; color: var(--ppc-mute); }
body.woocommerce-checkout .form-row.woocommerce-invalid .ppc-field-hint { display: none; }
/* Remove the theme's red underline bar below invalid fields. */
body.woocommerce-checkout .form-row.woocommerce-invalid::after,
body.woocommerce-checkout .form-row.woocommerce-invalid .woocommerce-input-wrapper::before { display: none !important; }
@keyframes ppc-shake { 0%, 100% { transform: none; } 20%, 60% { transform: translateX(-4px); } 40%, 80% { transform: translateX(4px); } }
body.woocommerce-checkout .form-row.ppc-shake { animation: ppc-shake .35s ease; }
@media (prefers-reduced-motion: reduce) { body.woocommerce-checkout .form-row.ppc-shake { animation: none; } }

/* ---------------------------------------------------------------------
 * ORDER RECEIVED + MY ACCOUNT → VIEW ORDER
 * ------------------------------------------------------------------- */
.woocommerce-order { max-width: 1040px; margin: 0 auto; }
.woocommerce-order p.woocommerce-thankyou-order-received,
.woocommerce-order p.woocommerce-notice--success {
  position: relative;
  margin: 8px 0 22px !important;
  padding: 18px 20px 18px 64px !important;
  border-radius: 16px;
  background: #f3f9f7;
  border: 1px solid #cfe5de;
  font: 500 16px/1.55 Poppins, sans-serif !important;
  color: var(--ppc-ink) !important;
}
.woocommerce-order p.woocommerce-thankyou-order-received::before,
.woocommerce-order p.woocommerce-notice--success::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 18px;
  width: 28px;
  height: 28px;
  background: var(--ppc-brand);
  -webkit-mask: var(--ppc-i-check) center / contain no-repeat;
  mask: var(--ppc-i-check) center / contain no-repeat;
}
ul.woocommerce-order-overview {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 18px !important;
  padding: 0 !important;
  list-style: none !important;
}
ul.woocommerce-order-overview::before, ul.woocommerce-order-overview::after { display: none !important; }
ul.woocommerce-order-overview li {
  position: relative;
  float: none !important;
  margin: 0 !important;
  padding: 14px 14px 14px 50px !important;
  border: 1px solid var(--ppc-line) !important;
  border-radius: 14px;
  background: #fff;
  font: 600 10.5px/1.3 Poppins, sans-serif !important;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ppc-mute) !important;
  min-width: 0;
}
ul.woocommerce-order-overview li::before {
  content: "";
  position: absolute;
  left: 14px;
  top: 50%;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  border-radius: 50%;
  background: var(--ppc-brand);
  -webkit-mask: var(--oi, var(--ppc-i-info)) center / 18px no-repeat;
  mask: var(--oi, var(--ppc-i-info)) center / 18px no-repeat;
}
ul.woocommerce-order-overview li strong {
  display: block;
  margin-top: 5px;
  font: 600 14px/1.35 Poppins, sans-serif !important;
  letter-spacing: 0;
  text-transform: none;
  color: var(--ppc-ink) !important;
  overflow-wrap: anywhere;
}
ul.woocommerce-order-overview li.woocommerce-order-overview__order { --oi: var(--ppc-i-hash); }
ul.woocommerce-order-overview li.woocommerce-order-overview__date { --oi: var(--ppc-i-calendar); }
ul.woocommerce-order-overview li.woocommerce-order-overview__email { --oi: var(--ppc-i-mail); }
ul.woocommerce-order-overview li.woocommerce-order-overview__total { --oi: var(--ppc-i-tag); }
ul.woocommerce-order-overview li.woocommerce-order-overview__payment-method { --oi: var(--ppc-i-card); }
ul.woocommerce-order-overview li.woocommerce-order-overview__total strong { color: var(--ppc-brand) !important; }
@media (max-width: 1024px) { ul.woocommerce-order-overview { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  ul.woocommerce-order-overview { grid-template-columns: 1fr 1fr; gap: 10px; }
  ul.woocommerce-order-overview li.woocommerce-order-overview__email { grid-column: 1 / -1; }
}
/* Payment instructions (COD / bank) right after the overview */
.woocommerce-order > ul.woocommerce-order-overview + p,
.woocommerce-order .ppc-pay-note {
  position: relative;
  margin: 0 0 28px !important;
  padding: 14px 18px 14px 54px;
  border-radius: 14px;
  background: #faf8f4;
  border: 1px dashed #d9cfbd;
  font-size: 14px;
  color: #3c4a49;
}
.woocommerce-order > ul.woocommerce-order-overview + p::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  margin-top: -11px;
  width: 22px;
  height: 22px;
  background: #8a7a5c;
  -webkit-mask: var(--ppc-i-cash) center / contain no-repeat;
  mask: var(--ppc-i-cash) center / contain no-repeat;
}
/* Order details card */
.woocommerce-order-details,
.woocommerce-customer-details { margin: 0 0 28px !important; }
.woocommerce-order-details__title,
.woocommerce-column__title,
.woocommerce-order h2 {
  font-size: 24px !important;
  margin: 0 0 14px !important;
  color: var(--ppc-ink) !important;
}
table.woocommerce-table--order-details {
  width: 100%;
  border: 1px solid var(--ppc-line) !important;
  border-radius: 16px !important;
  border-collapse: separate !important;
  border-spacing: 0;
  overflow: hidden;
  background: #fff;
  margin: 0 !important;
}
table.woocommerce-table--order-details th,
table.woocommerce-table--order-details td {
  padding: 14px 18px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--ppc-line) !important;
  background: transparent !important;
  font-size: 14px;
  vertical-align: middle;
}
table.woocommerce-table--order-details thead th {
  font: 600 10.5px Poppins, sans-serif !important;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ppc-mute) !important;
  background: #faf8f4 !important;
}
table.woocommerce-table--order-details tfoot tr:last-child th,
table.woocommerce-table--order-details tfoot tr:last-child td { border-bottom: 0 !important; }
table.woocommerce-table--order-details tfoot th { font-weight: 500 !important; color: var(--ppc-mute) !important; }
table.woocommerce-table--order-details tfoot td { text-align: right; font-weight: 600; }
table.woocommerce-table--order-details tfoot tr:has(th:first-child:is(:empty)) { display: none; }
table.woocommerce-table--order-details td.product-total,
table.woocommerce-table--order-details th.product-total { text-align: right; }
table.woocommerce-table--order-details td.product-name { overflow: hidden; }
table.woocommerce-table--order-details td.product-name .ppc-item-thumb { float: left; margin: 0 14px 0 0; }
table.woocommerce-table--order-details td.product-name .ppc-item-text { display: block; overflow: hidden; }
table.woocommerce-table--order-details td.product-name .product-quantity { display: inline-block; margin: 2px 0 0 !important; }
table.woocommerce-table--order-details td.product-name a { color: var(--ppc-ink) !important; font-weight: 500; text-decoration: none; }
table.woocommerce-table--order-details td.product-name .product-quantity { color: var(--ppc-mute); font-weight: 500; margin-left: 4px; }
table.woocommerce-table--order-details td.product-name .wc-item-meta { margin: 4px 0 0; padding: 0; list-style: none; font-size: 12.5px; color: var(--ppc-mute); }
.ppc-item-thumb { flex: none; width: 56px; height: 70px; border-radius: 10px; overflow: hidden; background: #f4f1ec; }
.ppc-item-thumb img { width: 100% !important; height: 100% !important; object-fit: cover; object-position: top center; display: block; }
.ppc-item-text { min-width: 0; }
@media (max-width: 640px) {
  table.woocommerce-table--order-details th,
  table.woocommerce-table--order-details td { padding: 12px 14px !important; }
  .ppc-item-thumb { width: 46px; height: 58px; }
}
/* Address cards */
.woocommerce-customer-details .woocommerce-columns--addresses {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin: 0 !important;
}
.woocommerce-customer-details .woocommerce-columns--addresses::before,
.woocommerce-customer-details .woocommerce-columns--addresses::after { display: none !important; }
.woocommerce-customer-details .woocommerce-column {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 20px 22px !important;
  border: 1px solid var(--ppc-line);
  border-radius: 16px;
  background: #fff;
}
.woocommerce-customer-details .woocommerce-column__title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 21px !important;
}
.woocommerce-customer-details .woocommerce-column__title::before {
  content: "";
  width: 36px;
  height: 36px;
  flex: none;
  border-radius: 50%;
  background: #e2ecec var(--ci, none) center / 18px no-repeat;
}
.woocommerce-customer-details .woocommerce-column--billing-address .woocommerce-column__title,
.woocommerce-customer-details > h2.woocommerce-column__title { --ci: var(--ppc-ic-receipt); }
.woocommerce-customer-details .woocommerce-column--shipping-address .woocommerce-column__title { --ci: var(--ppc-ic-pin); }
.woocommerce-customer-details address {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  font-style: normal !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #3c4a49 !important;
  background: transparent !important;
}
.woocommerce-customer-details address p { position: relative; margin: 8px 0 0 !important; padding-left: 26px !important; font-size: 14px; }
.woocommerce-customer-details address p::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 16px;
  height: 16px;
  background: var(--ppc-brand);
  -webkit-mask: var(--ai) center / contain no-repeat;
  mask: var(--ai) center / contain no-repeat;
}
.woocommerce-customer-details address p.woocommerce-customer-details--phone { --ai: var(--ppc-i-phone); }
.woocommerce-customer-details address p.woocommerce-customer-details--email { --ai: var(--ppc-i-mail); }
@media (max-width: 767px) { .woocommerce-customer-details .woocommerce-columns--addresses { grid-template-columns: 1fr; } }
/* View-order status line + order notes */
.woocommerce-view-order .woocommerce-MyAccount-content > p:first-child,
.woocommerce-MyAccount-content > p:has(> mark.order-status) {
  padding: 14px 18px;
  border-radius: 14px;
  background: #faf8f4;
  border: 1px solid var(--ppc-line);
}
.woocommerce-MyAccount-content mark,
.woocommerce-order mark {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 999px;
  background: #e2ecec;
  color: var(--ppc-brand);
  font-weight: 600;
}
.woocommerce-MyAccount-content mark.order-status { text-transform: capitalize; }
.woocommerce-OrderUpdates { list-style: none; margin: 0 0 24px; padding: 0; }
.woocommerce-OrderUpdate { padding: 12px 16px; border: 1px solid var(--ppc-line); border-radius: 12px; margin: 0 0 10px; }
.order-again .button { border-radius: 999px !important; }

/* ---------------------------------------------------------------------
 * SHIPMENT TRACKER (redesign)
 * ------------------------------------------------------------------- */
.ppc-track { margin: 0 0 28px !important; padding: 22px 24px !important; border-radius: 18px !important; }
.ppc-track__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 22px; }
.ppc-track__head .ppc-track__title { margin: 0 !important; display: flex; align-items: center; gap: 10px; }
.ppc-track__head .ppc-track__title::before {
  content: ""; width: 36px; height: 36px; border-radius: 50%; flex: none;
  background: #e2ecec var(--ppc-ic-truck) center / 18px no-repeat;
}
.ppc-track__pill {
  padding: 6px 12px; border-radius: 999px; background: #e2ecec; color: var(--ppc-brand);
  font: 600 10.5px Poppins, sans-serif; letter-spacing: .12em; text-transform: uppercase; white-space: nowrap;
}
.ppc-track__pill--delivered { background: var(--ppc-brand); color: #fff; }
.ppc-track__steps { margin: 0 0 20px !important; }
.ppc-track__step::before { top: 13px !important; height: 3px !important; border-radius: 3px; }
.ppc-track__dot { width: 28px !important; height: 28px !important; border-width: 2px !important; display: grid; place-items: center; }
.ppc-track__step.ppc-done .ppc-track__dot { background: var(--ppc-brand) var(--ppc-ic-tick-white) center / 14px no-repeat !important; }
.ppc-track__step.ppc-current .ppc-track__dot {
  background: #fff !important; border-color: var(--ppc-brand) !important;
  box-shadow: 0 0 0 6px rgba(11, 83, 82, .12) !important;
}
.ppc-track__step.ppc-current .ppc-track__dot::after {
  content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--ppc-brand);
  animation: ppc-pulse 1.6s ease-in-out infinite;
}
@keyframes ppc-pulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(.6); opacity: .6; } }
.ppc-track__label { font-size: 12px; line-height: 1.3; }
.ppc-track__meta { padding: 14px 16px; border-radius: 12px; background: #faf8f4; }
.ppc-track__meta .ppc-track__note { position: relative; padding-left: 28px; }
.ppc-track__meta .ppc-track__note::before {
  content: ""; position: absolute; left: 0; top: 1px; width: 18px; height: 18px;
  background: #8a7a5c; -webkit-mask: var(--ppc-i-box) center / contain no-repeat; mask: var(--ppc-i-box) center / contain no-repeat;
}
@media (max-width: 600px) {
  .ppc-track { padding: 18px 16px !important; }
  .ppc-track__dot { width: 24px !important; height: 24px !important; }
  .ppc-track__step::before { top: 11px !important; }
  .ppc-track__label { font-size: 10.5px; }
  .ppc-track__head .ppc-track__title::before { width: 30px; height: 30px; background-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .ppc-track__step.ppc-current .ppc-track__dot::after { animation: none; } }

/* ---------------------------------------------------------------------
 * WHATSAPP HELP CARD
 * ------------------------------------------------------------------- */
.ppc-wa-cta {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  margin: 0 0 28px;
  padding: 18px 20px;
  border-radius: 18px;
  background: linear-gradient(135deg, #f3f9f5 0%, #faf8f4 100%);
  border: 1px solid #d6eadd;
}
.ppc-wa-cta__icon {
  width: 46px; height: 46px; border-radius: 50%;
  display: grid; place-items: center;
  background: #1f8f4e; color: #fff;
}
.ppc-wa-cta__icon svg { width: 24px; height: 24px; }
.ppc-wa-cta__text strong { display: block; font: 600 15px/1.35 Poppins, sans-serif; color: var(--ppc-ink); }
.ppc-wa-cta__text p { margin: 3px 0 0 !important; font-size: 13.5px; line-height: 1.5; color: #4a5655; }
@media (max-width: 640px) {
  .ppc-wa-cta { grid-template-columns: auto minmax(0, 1fr); }
  .ppc-wa-cta .ppc-wa-btn { grid-column: 1 / -1; justify-content: center; width: 100%; }
}

/* Theme (app.css) paints the notice group itself salmon with an icon-font ⚠, and draws a 2px salmon
   bar under invalid rows — neutralise both so only the new summary card / inline messages show. */
body.woocommerce-checkout .woocommerce-NoticeGroup,
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout {
  display: block !important;
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  color: inherit !important;
}
body.woocommerce-checkout .woocommerce-NoticeGroup::before,
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout::before,
body.woocommerce-checkout .woocommerce-NoticeGroup::after { display: none !important; content: none !important; }
body.woocommerce-checkout .woocommerce-NoticeGroup > * { width: 100%; max-width: none; }
body.woocommerce-checkout .form-row.woocommerce-invalid::before,
body.woocommerce-checkout .form-row.woocommerce-invalid-required-field::before { display: none !important; content: none !important; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li { display: block !important; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li[data-id]::after { display: inline !important; }
body.woocommerce-checkout .form-row.woocommerce-validated::before { display: none !important; content: none !important; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li[data-id] { padding-right: 64px !important; }
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li[data-id]::after {
  position: absolute;
  right: 0;
  top: 8px;
  margin: 0 !important;
  padding: 3px 10px;
  border-radius: 999px;
  background: #fde8e6;
  text-decoration: none !important;
}
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li[data-id]:hover::after { background: #b42318; color: #fff; }

/* My Account (Elementor account widget is a CSS grid): keep the grid column at the viewport width so the
   swipeable chip menu scrolls inside it instead of stretching the whole column (which clipped content). */
@media (max-width: 767px) {
  body.woocommerce-account .e-my-account-tab .woocommerce,
  body.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
    grid-template-columns: minmax(0, 1fr) !important;
    min-width: 0;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation,
  body.woocommerce-account .woocommerce-MyAccount-content { min-width: 0 !important; max-width: 100vw; }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul { max-width: 100vw; }
}
/* Notices that contain a button (e.g. "Confirm email address"): text and button side by side, no overlap. */
.woocommerce-info:has(> .button),
.woocommerce-message:has(> .button),
.woocommerce-error:has(> .button) {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
}
.woocommerce-info > .button,
.woocommerce-message > .button,
.woocommerce-error > .button {
  order: 2;
  float: none !important;
  margin: 0 0 0 auto !important;
  flex: none;
  white-space: nowrap;
  position: static !important;
}

/* Order status line ("Order #… was placed on … and is currently …") — order tracking + view order. */
p.order-info,
.woocommerce-MyAccount-content > p:has(> mark.order-number) {
  margin: 0 0 22px !important;
  padding: 14px 18px !important;
  border-radius: 14px;
  background: #faf8f4;
  border: 1px solid var(--ppc-line);
  font-size: 14px;
  line-height: 1.9;
  color: #3c4a49;
}
p.order-info mark,
.woocommerce-order-details mark,
.woocommerce mark.order-number,
.woocommerce mark.order-date,
.woocommerce mark.order-status {
  display: inline-block;
  padding: 1px 10px;
  border-radius: 999px;
  background: #e2ecec !important;
  color: var(--ppc-brand) !important;
  font-weight: 600;
  line-height: 1.6;
}
.woocommerce mark.order-status { background: var(--ppc-brand) !important; color: #fff !important; text-transform: capitalize; }

/* Login / register: WooCommerce adds its own eye toggle after the Motion plugin adds a "Show" text toggle —
   two controls overlapped. Keep WooCommerce's (accessible) one. */
.ppm-pw:has(.show-password-input) > .ppm-pw-toggle,
.ppm-pw:has(.password-input) > .ppm-pw-toggle { display: none !important; }
.nova-login-wrapper.no_popup .show-password-input {
  opacity: .75 !important;
  right: 10px !important;
}
/* Account buttons with icons */
.nova-login-wrapper.no_popup button[type=submit] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.nova-login-wrapper.no_popup button[type=submit]::before {
  content: "";
  width: 17px;
  height: 17px;
  flex: none;
  background: currentColor;
  -webkit-mask: var(--ppc-i-login) center / contain no-repeat;
  mask: var(--ppc-i-login) center / contain no-repeat;
}
.nova-login-wrapper.no_popup button[name=register]::before {
  -webkit-mask-image: var(--ppc-i-user);
  mask-image: var(--ppc-i-user);
}
.ppc-qa__title { font-family: "Cormorant Garamond", Georgia, serif !important; font-weight: 500 !important; font-size: 28px !important; letter-spacing: 0 !important; }
@media (max-width: 640px) { .ppc-qa__title { font-size: 22px !important; } }
