/**
 * mikrofibraoptom WooCommerce Integration Styles
 * Modern Single Product Page, Pure Filter, Filter Query, Full-Width Cart & Checkout
 */

/* Catalog & Filter Layout */
.site-catalog-container {
  padding-top: var(--uc-space-4);
  padding-bottom: var(--uc-space-16);
}

.wc-empty-cart-message {
  width: 100%;
}

.woocommerce-products-header {
  margin-bottom: var(--uc-space-6);
}

.woocommerce-products-header__title {
  font-size: var(--uc-fz-3xl);
  color: var(--uc-brand-dark);
  margin-bottom: var(--uc-space-2);
}

/* Pure Filter Wrap */
.mikrofibraoptom-catalog-filter-wrap {
  border: 1px solid var(--uc-accent-gray);
  border-radius: var(--uc-radius-lg);
  padding: 0.5rem 1.5rem 0.5rem 1.5rem;
  margin-bottom: var(--uc-space-8);
}

/* Products Query Container #filter-query */
#filter-query,
.mikrofibraoptom-products-query-container {
  min-height: 400px;
  position: relative;
  transition: opacity var(--uc-transition-base);
}

#filter-query.is-loading {
  opacity: 0.4;
  pointer-events: none;
}

#filter-query.is-loading::after {
  content: '';
  position: absolute;
  top: 120px;
  left: 50%;
  transform: translateX(-50%);
  width: 44px;
  height: 44px;
  border: 4px solid var(--uc-accent-mint);
  border-top-color: var(--uc-brand-green);
  border-radius: 50%;
  animation: uc-spin 0.8s linear infinite;
  z-index: 20;
}

@keyframes uc-spin {
  to {
    transform: translateX(-50%) rotate(360deg);
  }
}

/* Pure Filter Load More Button */
.pure-filter-load-more-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: var(--uc-space-8, 2rem) 0 var(--uc-space-4, 1rem);
  text-align: center;
}

.pure-filter-load-more-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  min-width: 220px;
  height: 48px;
  padding: 0 2rem;
  font-family: var(--uc-font-sans, inherit);
  font-size: var(--uc-fz-sm, 0.875rem);
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--uc-brand-dark, #28362e);
  background-color: var(--uc-surface-elevated, #ffffff);
  border: 1.5px solid var(--uc-border, #e2e8f0);
  border-radius: var(--uc-radius-pill, 9999px);
  box-shadow: var(--uc-shadow-xs, 0 1px 2px rgba(18, 33, 25, 0.05));
  cursor: pointer;
  user-select: none;
  position: relative;
  transition: all var(--uc-transition-base, 0.25s cubic-bezier(0.4, 0, 0.2, 1));
}

.pure-filter-load-more-btn:hover {
  color: #ffffff;
  background-color: var(--uc-brand-green, #23633d);
  border-color: var(--uc-brand-green, #23633d);
  box-shadow: var(--uc-shadow-md, 0 8px 24px -4px rgba(18, 33, 25, 0.12));
  transform: translateY(-2px);
}

.pure-filter-load-more-btn:active {
  transform: translateY(0);
  background-color: var(--uc-brand-green-hover, #194a2d);
  border-color: var(--uc-brand-green-hover, #194a2d);
  box-shadow: var(--uc-shadow-xs);
}

.pure-filter-load-more-btn:focus-visible {
  outline: 2px solid var(--uc-brand-green, #23633d);
  outline-offset: 3px;
}

/* Loading & Disabled States */
.pure-filter-load-more-btn:disabled,
.pure-filter-load-more-btn.is-loading,
.pure-filter-load-more-btn.loading {
  opacity: 0.65;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
  box-shadow: none;
}

.pure-filter-load-more-btn.is-loading::before,
.pure-filter-load-more-btn.loading::before {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid currentColor;
  border-top-color: transparent;
  border-radius: 50%;
  animation: uc-btn-spin 0.7s linear infinite;
  margin-right: 0.25rem;
}

@keyframes uc-btn-spin {
  to {
    transform: rotate(360deg);
  }
}

@media (max-width: 576px) {
  .pure-filter-load-more-wrap {
    margin: var(--uc-space-6, 1.5rem) 0 var(--uc-space-2, 0.5rem);
  }

  .pure-filter-load-more-btn {
    width: 100%;
    min-width: 0;
  }
}

/* ==========================================================================
   SUBTLE & STYLISH PRODUCT CARD (Loop / Catalog Grid)
   ========================================================================== */

/* Card Item Container */
li.product.pq-card-item,
ul.products li.product,
.products .product {
  background: #ffffff !important;
  border: 1px solid var(--uc-border-light, #e8edea) !important;
  border-radius: var(--uc-radius-lg, 12px) !important;
  padding: 0.85rem !important;
  box-shadow: 0 1px 3px rgba(18, 33, 25, 0.03) !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  box-sizing: border-box !important;
}

.pure-hover-desktop-parent .pure-loop-buy-wrapper {
  padding: 0px 10px 15px 10px !important;
}

li.product.pq-card-item:hover,
ul.products li.product:hover,
.products .product:hover {
  border-color: rgba(35, 99, 61, 0.2) !important;
  box-shadow: 0 8px 24px -4px rgba(18, 33, 25, 0.08) !important;
  transform: none !important;
  z-index: 15 !important;
}

.wcwc-product-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.query-container-1 {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

/* Image Thumbnail Container */
.query-field-wc-loop-item-thumbnail {
  position: relative !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  overflow: hidden !important;
  margin-bottom: 0.65rem !important;
}

.query-field-wc-loop-item-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

li.product.pq-card-item:hover .query-field-wc-loop-item-thumbnail img,
.products .product:hover .query-field-wc-loop-item-thumbnail img {
  transform: none !important;
}

/* Compact & Refined Title */
.query-field-wc-loop-item-title,
.woocommerce-loop-product__title,
.query-field-wc-loop-item-title h4 {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: var(--uc-brand-dark) !important;
  line-height: 1.35 !important;
  margin: 0 0 0.35rem 0 !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.3rem !important;
  transition: color var(--uc-transition-fast) !important;
}

li.product.pq-card-item:hover .woocommerce-loop-product__title,
li.product.pq-card-item:hover .query-field-wc-loop-item-title h4,
.woocommerce-LoopProduct-link:hover .woocommerce-loop-product__title {
  color: var(--uc-brand-green) !important;
}

/* Price */
.query-field-wc-loop-item-price,
.query-field-wc-loop-item-price .price {
  font-size: 0.95rem !important;
  font-weight: 800 !important;
  color: var(--uc-brand-dark) !important;
  margin-top: auto !important;
  margin-bottom: 0.25rem !important;
  line-height: 1.2 !important;
}

.query-field-wc-loop-item-price .woocommerce-Price-amount {
  color: var(--uc-brand-dark) !important;
}

.query-field-wc-loop-item-price .woocommerce-Price-currencySymbol {
  font-size: 0.88em !important;
  font-weight: 600 !important;
  color: var(--uc-text-secondary) !important;
  margin-left: 2px !important;
}

/* Floating Actions (Wishlist & Compare) */
.wcwc-actions.wcwc-pos-top-right {
  position: absolute !important;
  top: 0.65rem !important;
  right: 0.65rem !important;
  z-index: 4 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.35rem !important;
}

.wcwc-actions .wcwc-btn {
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(4px) !important;
  border: 1px solid var(--uc-border-light) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--uc-text-muted) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05) !important;
  transition: all var(--uc-transition-fast) !important;
}

.wcwc-actions .wcwc-btn:hover {
  background: #ffffff !important;
  color: var(--uc-brand-green) !important;
  border-color: rgba(35, 99, 61, 0.3) !important;
  transform: scale(1.08) !important;
}

.wcwc-actions .wcwc-btn svg {
  width: 14px !important;
  height: 14px !important;
}

/* Buy Action Row (Seamless integration with parent card) */
.pure-loop-buy-wrapper {
  margin-top: 0rem !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
}

/* Seamless connection when bottom overlay is active */
.pure-layout-bottom_overlay,
.pure-layout-bottom-overlay-parent .pure-loop-buy-wrapper {
  background: #ffffff !important;
  border-radius: 0 0 var(--uc-radius-lg, 12px) var(--uc-radius-lg, 12px) !important;
}

.pure-layout-bottom-overlay-parent:hover,
li.product.pq-card-item:hover.pure-hover-desktop-parent {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  border-bottom-color: transparent !important;
}

.pure-layout-bottom-overlay-parent:hover .pure-loop-buy-wrapper,
li.product.pq-card-item:hover .pure-loop-buy-wrapper {
  left: -1px !important;
  right: -1px !important;
  width: calc(100% + 2px) !important;
  background: #ffffff !important;
  border-left: 1px solid rgba(35, 99, 61, 0.2) !important;
  border-right: 1px solid rgba(35, 99, 61, 0.2) !important;
  border-bottom: 1px solid rgba(35, 99, 61, 0.2) !important;
  border-top: none !important;
  box-shadow: 0 10px 24px -4px rgba(18, 33, 25, 0.08) !important;
}

@media (max-width: 991px),
(hover: none) {

  li.product.pq-card-item,
  ul.products li.product,
  .products .product,
  li.product.pq-card-item:hover,
  ul.products li.product:hover,
  .products .product:hover,
  .pure-hover-desktop-parent,
  .pure-hover-desktop-parent:hover,
  .pure-layout-bottom-overlay-parent,
  .pure-layout-bottom-overlay-parent:hover {
    transform: none !important;
    transition: none !important;
    border-radius: var(--uc-radius-lg, 12px) !important;
    border-color: var(--uc-border-light, #e8edea) !important;
    box-shadow: 0 1px 3px rgba(18, 33, 25, 0.03) !important;
  }

  .pure-loop-buy-wrapper,
  .pure-loop-buy-wrapper:hover,
  .pure-layout-bottom_overlay,
  .pure-layout-bottom-overlay-parent .pure-loop-buy-wrapper,
  .pure-layout-bottom-overlay-parent:hover .pure-loop-buy-wrapper,
  li.product.pq-card-item:hover .pure-loop-buy-wrapper,
  .pure-hover-desktop-parent:hover .pure-loop-buy-wrapper,
  .pure-hover-desktop {
    position: static !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0px 10px 15px 10px !important;
    margin-top: 0.5rem !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
  }

  .pure-loop-action-row,
  .pure-loop-action-btn,
  .wcwc-btn,
  .query-field-wc-loop-item-thumbnail img {
    transform: none !important;
    transition: none !important;
  }
}

.pure-loop-action-row {
  display: flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
  width: 100% !important;
}

/* Quantity Selector */
.pure-qty-selector {
  display: inline-flex !important;
  align-items: center !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-sm, 6px) !important;
  background: var(--uc-surface) !important;
  height: 34px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
}

.pure-qty-btn {
  width: 26px !important;
  height: 34px !important;
  border: none !important;
  background: transparent !important;
  color: var(--uc-text-secondary) !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background var(--uc-transition-fast), color var(--uc-transition-fast) !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.pure-qty-btn:hover {
  background: rgba(0, 0, 0, 0.06) !important;
  color: var(--uc-brand-dark) !important;
}

.pure-qty-input {
  width: 32px !important;
  height: 34px !important;
  border: none !important;
  background: transparent !important;
  text-align: center !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  color: var(--uc-brand-dark) !important;
  padding: 0 !important;
  margin: 0 !important;
  -moz-appearance: textfield !important;
}

.pure-qty-input::-webkit-outer-spin-button,
.pure-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/* Action Button (Add to cart) */
.pure-loop-action-btn,
a.pure-loop-action-btn,
button.pure-loop-action-btn,
.woocommerce a.button.pure-loop-action-btn,
.woocommerce button.button.pure-loop-action-btn,
.woocommerce a.button.ajax_add_to_cart.pure-loop-action-btn,
a.button.ajax_add_to_cart.add_to_cart_button.pure-loop-action-btn,
.pure-products-loop .pure-loop-action-btn,
#filter-query .pure-loop-action-btn {
  flex: 1 1 auto !important;
  height: 34px !important;
  padding: 0 0.75rem !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  border-radius: var(--uc-radius-sm, 6px) !important;
  background-color: var(--uc-brand-dark, #122119) !important;
  background: var(--uc-brand-dark, #122119) !important;
  color: #ffffff !important;
  border: 1px solid var(--uc-brand-dark, #122119) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: all var(--uc-transition-fast) !important;
}

.pure-loop-action-btn:hover,
a.pure-loop-action-btn:hover,
button.pure-loop-action-btn:hover,
.woocommerce a.button.pure-loop-action-btn:hover,
.woocommerce button.button.pure-loop-action-btn:hover,
.woocommerce a.button.ajax_add_to_cart.pure-loop-action-btn:hover,
a.button.ajax_add_to_cart.add_to_cart_button.pure-loop-action-btn:hover,
.pure-products-loop .pure-loop-action-btn:hover,
#filter-query .pure-loop-action-btn:hover {
  background-color: var(--uc-brand-green, #23633d) !important;
  background: var(--uc-brand-green, #23633d) !important;
  border-color: var(--uc-brand-green, #23633d) !important;
  color: #ffffff !important;
}

.pure-loop-action-btn.added,
a.pure-loop-action-btn.added,
.woocommerce a.button.pure-loop-action-btn.added {
  background-color: var(--uc-brand-green, #23633d) !important;
  background: var(--uc-brand-green, #23633d) !important;
  color: #ffffff !important;
  border-color: var(--uc-brand-green, #23633d) !important;
}

/* ==========================================================================
   HIGH-END SINGLE PRODUCT LAYOUT (Compact Clean Price, Frameless Gallery)
   ========================================================================== */

.uc-single-product-wrapper {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: clamp(2rem, 4vw, 3.5rem);
  align-items: start;
  margin-bottom: var(--uc-space-12);
}

/* Left Column: Gallery (Frameless, No Border, No Shadow, No Scroll) */
.uc-product-gallery-col {
  position: static;
  width: 100%;
}

.uc-gallery-card {
  background-color: transparent;
  border: none;
  border-radius: var(--uc-radius-lg);
  padding: 0;
  box-shadow: none;
  overflow: visible;
}

/* Right Column: Info & Buy Box */
.uc-product-info-col {
  display: flex;
  flex-direction: column;
}

/* Status Bar: Stock Status + SKU */
.uc-product-status-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}

.uc-status-tags {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.uc-stock-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 0.2rem 0.6rem;
  border-radius: var(--uc-radius-pill);
}

.uc-stock-badge.in-stock {
  background-color: var(--uc-accent-mint);
  color: var(--uc-accent-mint-deep);
  border: 1px solid var(--uc-accent-mint-dark);
}

.uc-stock-badge.out-of-stock {
  background-color: var(--uc-accent-gray);
  color: var(--uc-text-muted);
}

.uc-stock-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: var(--uc-brand-green);
  display: inline-block;
}

.uc-sale-badge {
  background-color: #fef2f2;
  color: #dc2626;
  border: 1px solid #fecaca;
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 0.15rem 0.55rem;
  border-radius: var(--uc-radius-pill);
}

.uc-sku-label {
  font-size: var(--uc-fz-xs);
  color: var(--uc-text-muted);
  font-weight: 500;
}

.uc-sku-label span {
  color: var(--uc-brand-dark);
  font-weight: 700;
}

/* Refined Clean Heading */
.uc-product-heading {
  font-family: var(--uc-font-sans);
  font-size: clamp(1.4rem, 2.2vw, 1.8rem);
  font-weight: 700;
  color: var(--uc-brand-dark);
  line-height: 1.25;
  letter-spacing: -0.015em;
  margin: 0.6rem 0 0.6rem 0;
}

/* Compact Seamless Price Block */
.uc-price-block {
  padding-bottom: 0.85rem;
  margin-bottom: 0.85rem;
  border-bottom: 1px solid var(--uc-border-light);
}

.uc-price-main {
  font-size: clamp(1.6rem, 2.4vw, 1.95rem);
  font-weight: 800;
  color: var(--uc-brand-dark);
  display: flex;
  align-items: baseline;
  gap: 0.65rem;
  line-height: 1.1;
  margin-bottom: 1.25rem;
  margin-top: 1.25rem;
}

.uc-price-main del {
  font-size: 1.05rem;
  color: var(--uc-text-light);
  font-weight: 400;
}

.uc-price-main ins {
  text-decoration: none;
  color: var(--uc-brand-green);
}

.uc-price-main .woocommerce-Price-currencySymbol {
  font-weight: 700;
  margin-left: 2px;
}

.uc-price-caption {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  flex-wrap: wrap;
  font-size: 0.78rem;
  font-weight: 500;
  color: var(--uc-text-muted);
}

.uc-price-dot-sep {
  color: var(--uc-border);
}

/* Lead Short Description */
.uc-product-lead {
  font-size: 0.92rem;
  color: var(--uc-text-secondary);
  line-height: 1.55;
  margin-bottom: 1.15rem;
}

/* Purchase Box (Add to Cart + Quantity) */
.uc-purchase-box {
  margin-bottom: 1.35rem;
}

/* Hide WooCommerce native in-stock text rendered above the button */
.uc-purchase-box .stock,
.single-product .stock.in-stock,
.single-product .stock.out-of-stock {
  display: none !important;
}

.uc-purchase-box form.cart {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  flex-wrap: wrap;
  width: 100%;
  box-sizing: border-box;
}

.uc-purchase-box form.cart .single_add_to_cart_button {
  margin: 0 !important;
}

/* Clean WooCommerce Quantity Stepper Widget (Single Product Pages Only) */
.single-product .uc-purchase-box .quantity,
.single-product form.cart .quantity {
  display: inline-flex !important;
  align-items: center !important;
  background-color: var(--uc-surface) !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-md) !important;
  padding: 2px !important;
  height: 46px !important;
  box-sizing: border-box !important;
  transition: all var(--uc-transition-fast) !important;
  margin: 0 !important;
}

.single-product .uc-purchase-box .quantity:focus-within,
.single-product form.cart .quantity:focus-within {
  border-color: var(--uc-brand-green) !important;
  box-shadow: 0 0 0 3px rgba(35, 99, 61, 0.12) !important;
  background-color: #ffffff !important;
}

.single-product .quantity .uc-qty-btn {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: #ffffff !important;
  border: 1px solid var(--uc-border-light) !important;
  border-radius: calc(var(--uc-radius-md) - 2px) !important;
  color: var(--uc-brand-dark) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: all var(--uc-transition-fast) !important;
  user-select: none !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
}

.single-product .quantity .uc-qty-btn:hover {
  background-color: var(--uc-accent-mint) !important;
  border-color: var(--uc-brand-green) !important;
  color: var(--uc-brand-green) !important;
  transform: none !important;
}

.single-product .quantity .uc-qty-btn:active {
  transform: scale(0.94) !important;
}

.single-product .quantity input.qty,
.single-product .uc-purchase-box .quantity .qty {
  width: 52px !important;
  height: 40px !important;
  min-width: 38px !important;
  padding: 0 0.25rem !important;
  text-align: center !important;
  font-family: inherit !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: var(--uc-brand-dark) !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  -moz-appearance: textfield !important;
  appearance: textfield !important;
}

.single-product .quantity input.qty::-webkit-outer-spin-button,
.single-product .quantity input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.uc-purchase-box form.cart .single_add_to_cart_button {
  height: 46px;
  padding: 0 clamp(1.5rem, 3vw, 2.25rem);
  font-size: 0.95rem;
  font-weight: 700;
  background: linear-gradient(135deg, var(--uc-brand-dark) 0%, #1c3e29 100%);
  color: #ffffff;
  border: none;
  border-radius: var(--uc-radius-md);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  transition: all var(--uc-transition-base);
  box-shadow: var(--uc-shadow-sm);
  flex-grow: 1;
}

.uc-purchase-box form.cart .single_add_to_cart_button:hover {
  background: linear-gradient(135deg, var(--uc-brand-green) 0%, #153a23 100%);
  box-shadow: var(--uc-shadow-hover);
  transform: translateY(-2px);
}

/* Mobile Layout - Clean Grid & Symmetrical Gaps */
@media (max-width: 600px) {
  .uc-purchase-box form.cart {
    display: flex !important;
    flex-wrap: wrap !important;
    row-gap: 0.65rem !important;
    column-gap: 0.65rem !important;
    width: 100% !important;
  }

  .single-product .uc-purchase-box .quantity,
  .single-product form.cart .quantity {
    flex: 0 0 auto !important;
  }

  .uc-purchase-box form.cart .single_add_to_cart_button {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
  }

  .wcwc-single-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0.65rem !important;
    width: 100% !important;
  }

  .wcwc-single-actions .wcwc-btn {
    width: 100% !important;
    border-radius: 10px !important;
  }
}

/* 2x2 Trust Chips Grid */
.uc-trust-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.65rem;
  margin-bottom: 1.25rem;
}

.uc-trust-chip {
  background-color: var(--uc-surface);
  border: 1px solid var(--uc-border-light);
  border-radius: var(--uc-radius-md);
  padding: 0.65rem 0.8rem;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  transition: all var(--uc-transition-fast);
}

.uc-trust-chip:hover {
  background-color: #ffffff;
  border-color: var(--uc-accent-mint-dark);
  box-shadow: var(--uc-shadow-xs);
}

.uc-trust-icon {
  font-size: 1.2rem;
  line-height: 1;
  flex-shrink: 0;
}

.uc-trust-text {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.uc-trust-text strong {
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--uc-brand-dark);
  line-height: 1.25;
}

.uc-trust-text span {
  font-size: 0.7rem;
  color: var(--uc-text-muted);
  line-height: 1.3;
}

/* Quick Meta */
.uc-product-quick-meta {
  padding-top: 0.75rem;
  border-top: 1px solid var(--uc-border-light);
  font-size: var(--uc-fz-xs);
  color: var(--uc-text-muted);
}

.uc-product-quick-meta a {
  color: var(--uc-brand-green);
  font-weight: 600;
}

.uc-product-quick-meta a:hover {
  text-decoration: underline;
}

/* ==========================================================================
   TABS & ATTRIBUTES SPECIFICATION TABLE (Clean & Elegant Layout)
   ========================================================================== */

.uc-product-tabs-wrapper {
  margin-top: var(--uc-space-10);
  border-top: 1px solid var(--uc-border-light);
  padding-top: var(--uc-space-6);
}

.woocommerce-tabs ul.tabs {
  display: flex;
  gap: 0.65rem;
  padding: 0 !important;
  margin: 0 0 1.25rem 0 !important;
  border-bottom: none !important;
  flex-wrap: wrap;
}

.woocommerce-tabs ul.tabs li {
  background: var(--uc-surface) !important;
  border: 1px solid var(--uc-border-light) !important;
  border-radius: var(--uc-radius-pill) !important;
  margin: 0 !important;
  padding: 0.55rem 1.25rem !important;
  transition: all var(--uc-transition-fast);
}

.woocommerce-tabs ul.tabs li.active {
  background: var(--uc-brand-dark) !important;
  border-color: var(--uc-brand-dark) !important;
}

.woocommerce-tabs ul.tabs li.active a {
  color: #ffffff !important;
}

.woocommerce-tabs ul.tabs li a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  font-weight: 700 !important;
  color: var(--uc-text) !important;
  font-size: var(--uc-fz-sm) !important;
  text-decoration: none;
}

/* Contrast Circular Counter Badge */
.uc-tab-count {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 5px !important;
  border-radius: var(--uc-radius-pill) !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  background-color: var(--uc-accent-mint-dark) !important;
  color: var(--uc-brand-dark) !important;
  box-sizing: border-box !important;
  transition: all var(--uc-transition-fast) !important;
}

.woocommerce-tabs ul.tabs li.active a .uc-tab-count {
  background-color: rgba(255, 255, 255, 0.25) !important;
  color: #ffffff !important;
}

.woocommerce-tabs ul.tabs li:hover:not(.active) a .uc-tab-count {
  background-color: var(--uc-brand-green) !important;
  color: #ffffff !important;
}

.woocommerce-tabs .panel {
  background: #ffffff;
  border: 1px solid var(--uc-border-light);
  border-radius: var(--uc-radius-xl);
  padding: clamp(1.25rem, 3vw, 2rem);
  box-shadow: var(--uc-shadow-card);
  line-height: 1.7;
  color: var(--uc-text-secondary);
  font-size: 0.95rem;
}

.woocommerce-tabs .panel h2 {
  font-size: var(--uc-fz-lg);
  color: var(--uc-brand-dark);
  margin-bottom: 1rem;
}

/* ==========================================================================
   PRODUCT ATTRIBUTES / SPECIFICATIONS TABLE (Compact & Stylish - Full Width)
   ========================================================================== */

.woocommerce table.woocommerce-product-attributes,
.woocommerce table.shop_attributes,
table.woocommerce-product-attributes,
table.shop_attributes {
  display: table !important;
  width: 100% !important;
  max-width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-md) !important;
  background-color: #ffffff !important;
  overflow: hidden !important;
  margin: 0 0 1.25rem 0 !important;
  font-size: 0.85rem !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
  table-layout: fixed !important;
}

.woocommerce table.shop_attributes tbody,
table.shop_attributes tbody,
table.woocommerce-product-attributes tbody {
  display: table-row-group !important;
}

.woocommerce table.shop_attributes tr,
table.shop_attributes tr,
table.woocommerce-product-attributes tr {
  display: table-row !important;
  border-bottom: 1px solid var(--uc-border-light) !important;
  transition: background-color var(--uc-transition-fast) !important;
}

.woocommerce table.shop_attributes tr:last-child,
table.shop_attributes tr:last-child,
table.woocommerce-product-attributes tr:last-child {
  border-bottom: none !important;
}

.woocommerce table.shop_attributes tr:nth-child(even),
table.shop_attributes tr:nth-child(even),
table.woocommerce-product-attributes tr:nth-child(even) {
  background-color: var(--uc-surface) !important;
}

.woocommerce table.shop_attributes tr:hover,
table.shop_attributes tr:hover,
table.woocommerce-product-attributes tr:hover {
  background-color: var(--uc-accent-mint-light) !important;
}

.woocommerce table.shop_attributes th,
table.shop_attributes th,
table.woocommerce-product-attributes th.woocommerce-product-attributes-item__label {
  display: table-cell !important;
  float: none !important;
  width: 35% !important;
  min-width: 0 !important;
  max-width: none !important;
  padding: 0.6rem 0.85rem !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  color: var(--uc-text-muted) !important;
  text-align: left !important;
  border-right: 1px solid var(--uc-border-light) !important;
  border-bottom: none !important;
  font-style: normal !important;
  vertical-align: middle !important;
  line-height: 1.35 !important;
  word-break: break-word !important;
}

.woocommerce table.shop_attributes td,
table.shop_attributes td,
table.woocommerce-product-attributes td.woocommerce-product-attributes-item__value {
  display: table-cell !important;
  float: none !important;
  width: 65% !important;
  min-width: 0 !important;
  padding: 0.6rem 0.85rem !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: var(--uc-brand-dark) !important;
  border-bottom: none !important;
  vertical-align: middle !important;
  line-height: 1.4 !important;
  word-break: break-word !important;
}

table.woocommerce-product-attributes td p,
table.shop_attributes td p,
.woocommerce table.shop_attributes td p {
  margin: 0 !important;
  padding: 0 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  color: inherit !important;
  line-height: inherit !important;
}

table.woocommerce-product-attributes td a,
table.shop_attributes td a,
.woocommerce table.shop_attributes td a {
  color: var(--uc-brand-green) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

table.woocommerce-product-attributes td a:hover,
table.shop_attributes td a:hover,
.woocommerce table.shop_attributes td a:hover {
  color: var(--uc-brand-dark) !important;
  text-decoration: underline !important;
}

/* Mobile & Small Screens Table Refinement */
@media (max-width: 600px) {

  .mikrofibraoptom-catalog-filter-wrap {
    padding: 1.5rem 1.5rem 1.5rem 1.5rem;
  }

  .woocommerce table.shop_attributes,
  table.shop_attributes,
  table.woocommerce-product-attributes {
    display: table !important;
    width: 100% !important;
    table-layout: fixed !important;
  }

  .woocommerce table.shop_attributes tbody,
  table.shop_attributes tbody {
    display: table-row-group !important;
  }

  .woocommerce table.shop_attributes tr,
  table.shop_attributes tr {
    display: table-row !important;
  }

  .woocommerce table.shop_attributes th,
  table.shop_attributes th,
  table.woocommerce-product-attributes th.woocommerce-product-attributes-item__label {
    display: table-cell !important;
    float: none !important;
    width: 40% !important;
    padding: 0.55rem 0.65rem !important;
    font-size: 0.78rem !important;
    line-height: 1.3 !important;
  }

  .woocommerce table.shop_attributes td,
  table.shop_attributes td,
  table.woocommerce-product-attributes td.woocommerce-product-attributes-item__value {
    display: table-cell !important;
    float: none !important;
    width: 60% !important;
    padding: 0.55rem 0.65rem !important;
    font-size: 0.82rem !important;
    line-height: 1.35 !important;
  }
}

/* Related Products */
.related.products {
  margin-top: var(--uc-space-12);
}

.related.products>h2 {
  font-size: var(--uc-fz-xl);
  color: var(--uc-brand-dark);
  margin-bottom: var(--uc-space-6);
}

/* ==========================================================================
   NOTICES & ALERTS
   ========================================================================== */

.woocommerce-notices-wrapper,
.woocommerce-NoticeGroup {
  width: 100%;
  clear: both;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  padding: 0.95rem 1.4rem !important;
  border-radius: var(--uc-radius-lg) !important;
  margin-bottom: var(--uc-space-6) !important;
  font-size: var(--uc-fz-sm) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 1rem 1.5rem !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  box-sizing: border-box !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
  clear: both !important;
  float: none !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
  display: none !important;
  content: "" !important;
}

.woocommerce-message {
  background-color: var(--uc-status-success-bg) !important;
  border: 1px solid var(--uc-status-success-border) !important;
  border-left: 4px solid var(--uc-status-success-accent) !important;
  color: var(--uc-status-success-text) !important;
}

.woocommerce-info {
  background-color: var(--uc-status-info-bg) !important;
  border: 1px solid var(--uc-status-info-border) !important;
  border-left: 4px solid var(--uc-status-info-accent) !important;
  color: var(--uc-status-info-text) !important;
}

.woocommerce-error {
  background-color: var(--uc-status-error-bg) !important;
  border: 1px solid var(--uc-status-error-border) !important;
  border-left: 4px solid var(--uc-status-error-accent) !important;
  color: var(--uc-status-error-text) !important;
  list-style: none !important;
}

ul.woocommerce-error {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  padding-left: 1.75rem !important;
}

ul.woocommerce-error li {
  list-style: disc !important;
  margin-bottom: 0.25rem !important;
}

ul.woocommerce-error li:last-child {
  margin-bottom: 0 !important;
}

/* Action Buttons & Links in Notices (All types: restore-item, showcoupon, showlogin, buttons) */
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
  margin-left: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0.5rem 1.25rem !important;
  border-radius: var(--uc-radius-md) !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  line-height: 1.25 !important;
  cursor: pointer !important;
  transition: all var(--uc-transition-fast) !important;
  box-shadow: var(--uc-shadow-xs) !important;
  float: none !important;
}

.woocommerce-info a {
  background-color: var(--uc-brand-green) !important;
  color: var(--uc-text-inverse) !important;
  border: 1px solid var(--uc-brand-green) !important;
}

.woocommerce-info a:hover {
  background-color: var(--uc-brand-green-hover) !important;
  border-color: var(--uc-brand-green-hover) !important;
  color: var(--uc-text-inverse) !important;
  transform: translateY(-1px);
  box-shadow: var(--uc-shadow-sm) !important;
}

.woocommerce-message a {
  background-color: var(--uc-brand-dark) !important;
  color: var(--uc-text-inverse) !important;
  border: 1px solid var(--uc-brand-dark) !important;
}

.woocommerce-message a:hover {
  background-color: var(--uc-brand-green) !important;
  border-color: var(--uc-brand-green) !important;
  color: var(--uc-text-inverse) !important;
  transform: translateY(-1px);
  box-shadow: var(--uc-shadow-sm) !important;
}

.woocommerce-error a {
  background-color: var(--uc-status-error-accent) !important;
  color: var(--uc-text-inverse) !important;
  border: 1px solid var(--uc-status-error-accent) !important;
}

.woocommerce-error a:hover {
  background-color: var(--uc-status-error-hover) !important;
  border-color: var(--uc-status-error-hover) !important;
  color: var(--uc-text-inverse) !important;
  transform: translateY(-1px);
  box-shadow: var(--uc-shadow-sm) !important;
}

@media (max-width: 640px) {

  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.75rem !important;
    padding: 0.85rem 1.1rem !important;
  }

  .woocommerce-message a,
  .woocommerce-info a,
  .woocommerce-error a {
    margin-left: 0 !important;
    width: 100% !important;
    text-align: center !important;
  }
}

/* ==========================================================================
   PRODUCT REVIEWS & RATING FORM
   ========================================================================== */

#reviews.woocommerce-Reviews {
  background-color: #ffffff;
  border: 1px solid var(--uc-border);
  border-radius: var(--uc-radius-xl);
  padding: clamp(1.75rem, 3.5vw, 2.5rem);
  box-shadow: var(--uc-shadow-card);
  margin-top: var(--uc-space-8);
  margin-bottom: var(--uc-space-12);
}

#reviews #comments {
  margin-bottom: 2rem;
}

#reviews #comments .woocommerce-Reviews-title {
  font-size: var(--uc-fz-xl);
  font-weight: 800;
  color: var(--uc-brand-dark);
  margin-bottom: 1rem;
  letter-spacing: -0.01em;
}

.woocommerce-noreviews {
  background-color: var(--uc-surface);
  border: 1px solid var(--uc-border-light);
  border-radius: var(--uc-radius-md);
  padding: 1rem 1.25rem;
  color: var(--uc-text-secondary);
  font-size: var(--uc-fz-sm);
  margin: 0;
}

/* Review List (when reviews exist) */
#reviews .commentlist {
  list-style: none;
  padding: 0;
  margin: 0 0 2rem 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

#reviews .commentlist li.review {
  background-color: var(--uc-surface);
  border: 1px solid var(--uc-border-light);
  border-radius: var(--uc-radius-lg);
  padding: 1.25rem;
  transition: all var(--uc-transition-fast);
}

#reviews .commentlist li.review:hover {
  border-color: var(--uc-accent-mint-dark);
  background-color: #ffffff;
  box-shadow: var(--uc-shadow-xs);
}

#reviews .comment_container {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}

#reviews .comment_container img.avatar {
  width: 44px;
  height: 44px;
  border-radius: var(--uc-radius-pill);
  border: 1px solid var(--uc-border);
  flex-shrink: 0;
}

#reviews .comment-text {
  flex: 1;
}

#reviews .comment-text .meta {
  font-size: var(--uc-fz-xs);
  color: var(--uc-text-muted);
  margin-bottom: 0.5rem;
}

#reviews .comment-text .meta strong {
  color: var(--uc-brand-dark);
  font-size: var(--uc-fz-sm);
}

#reviews .comment-text .description {
  font-size: var(--uc-fz-sm);
  color: var(--uc-text);
  line-height: 1.55;
  margin: 0;
}

/* Star Rating Display */
.woocommerce .star-rating {
  overflow: hidden;
  position: relative;
  height: 1.2em;
  line-height: 1.2;
  font-size: 0.95rem;
  width: 5.4em;
  font-family: inherit;
  letter-spacing: 2px;
}

.woocommerce .star-rating::before {
  content: '★★★★★';
  color: var(--uc-border);
  float: left;
  top: 0;
  left: 0;
  position: absolute;
}

.woocommerce .star-rating span {
  overflow: hidden;
  float: left;
  top: 0;
  left: 0;
  position: absolute;
  padding-top: 1.5em;
}

.woocommerce .star-rating span::before {
  content: '★★★★★';
  top: 0;
  position: absolute;
  left: 0;
  color: #f59e0b;
}

/* Review Form */
#review_form_wrapper {
  background-color: var(--uc-surface);
  border: 1px solid var(--uc-border-light);
  border-radius: var(--uc-radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
}

#reply-title.comment-reply-title {
  display: block;
  font-size: var(--uc-fz-lg);
  font-weight: 800;
  color: var(--uc-brand-dark);
  margin-bottom: 1.25rem;
  line-height: 1.35;
}

#reply-title.comment-reply-title small a {
  font-size: var(--uc-fz-xs);
  font-weight: 500;
  color: #ef4444;
  margin-left: 0.5rem;
  text-decoration: underline;
}

#commentform {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Star Rating Selector in Form */
.comment-form-rating {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  margin-bottom: 0.5rem;
}

.comment-form-rating label {
  font-size: var(--uc-fz-sm);
  font-weight: 700;
  color: var(--uc-brand-dark);
}

.comment-form-rating .required {
  color: #ef4444;
}

.comment-form-rating p.stars {
  margin: 0;
  line-height: 1;
}

.comment-form-rating p.stars span {
  display: inline-flex;
  gap: 4px;
  align-items: center;
}

/* Neutralize WooCommerce default icon font overrides */
.woocommerce #reviews p.stars a,
#reviews p.stars a,
p.stars a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  position: relative !important;
  font-size: 0 !important;
  color: transparent !important;
  text-decoration: none !important;
  border: none !important;
  background: transparent !important;
  margin: 0 !important;
  cursor: pointer !important;
  overflow: visible !important;
}

.woocommerce #reviews p.stars a::after,
#reviews p.stars a::after,
p.stars a::after {
  display: none !important;
  content: "" !important;
}

.woocommerce #reviews p.stars a::before,
#reviews p.stars a::before,
p.stars a::before {
  content: '★' !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-size: 24px !important;
  line-height: 1 !important;
  color: #cbd5e1 !important;
  display: block !important;
  position: static !important;
  text-indent: 0 !important;
  text-align: center !important;
  transition: color 0.15s ease, transform 0.15s ease !important;
}

/* Hover States */
.woocommerce #reviews p.stars:hover a::before,
#reviews p.stars:hover a::before {
  color: #f59e0b !important;
}

.woocommerce #reviews p.stars a:hover~a::before,
#reviews p.stars a:hover~a::before {
  color: #cbd5e1 !important;
}

.woocommerce #reviews p.stars a:hover::before,
#reviews p.stars a:hover::before {
  transform: scale(1.2) !important;
}

/* Selected / Active Rating State */
.woocommerce #reviews p.stars.selected a.active::before,
#reviews p.stars.selected a.active::before {
  color: #f59e0b !important;
}

.woocommerce #reviews p.stars.selected a.active~a::before,
#reviews p.stars.selected a.active~a::before {
  color: #cbd5e1 !important;
}

/* Comment Form Textarea & Inputs */
.comment-form-comment,
.comment-form-author,
.comment-form-email {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin: 0;
}

.comment-form-comment label,
.comment-form-author label,
.comment-form-email label {
  font-size: var(--uc-fz-sm);
  font-weight: 700;
  color: var(--uc-brand-dark);
}

.comment-form-comment textarea#comment {
  width: 100%;
  min-height: 120px;
  padding: 0.85rem 1rem;
  font-family: inherit;
  font-size: var(--uc-fz-base);
  color: var(--uc-text);
  background-color: #ffffff;
  border: 1.5px solid var(--uc-border);
  border-radius: var(--uc-radius-md);
  outline: none;
  resize: vertical;
  box-sizing: border-box;
  transition: all var(--uc-transition-fast);
}

.comment-form-comment textarea#comment:focus,
.comment-form-author input:focus,
.comment-form-email input:focus {
  border-color: var(--uc-brand-green);
  box-shadow: 0 0 0 3px rgba(35, 99, 61, 0.12);
  background-color: #ffffff;
}

.comment-form-author input,
.comment-form-email input {
  width: 100%;
  height: 44px;
  padding: 0 1rem;
  font-family: inherit;
  font-size: var(--uc-fz-base);
  color: var(--uc-text);
  background-color: #ffffff;
  border: 1.5px solid var(--uc-border);
  border-radius: var(--uc-radius-md);
  outline: none;
  box-sizing: border-box;
  transition: all var(--uc-transition-fast);
}

/* Form Submit Button */
.comment-form .form-submit {
  margin-top: 0.5rem;
  margin-bottom: 0;
}

.comment-form .form-submit input#submit.submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 46px;
  padding: 0 2rem;
  font-family: inherit;
  font-size: 0.95rem;
  font-weight: 700;
  color: #ffffff;
  background: linear-gradient(135deg, var(--uc-brand-dark) 0%, #1c3e29 100%);
  border: none;
  border-radius: var(--uc-radius-md);
  cursor: pointer;
  box-shadow: var(--uc-shadow-sm);
  transition: all var(--uc-transition-base);
}

.comment-form .form-submit input#submit.submit:hover {
  background: linear-gradient(135deg, var(--uc-brand-green) 0%, #153a23 100%);
  box-shadow: var(--uc-shadow-hover);
  transform: translateY(-2px);
}

/* ==========================================================================
   CART TOTALS & COLLATERALS
   ========================================================================== */

.fc-wrapper .cart-collaterals,
.woocommerce .fc-wrapper .cart-collaterals {
  padding: 0 !important;
  background: transparent !important;
}

.cart-collaterals .cart_totals {
  background: #ffffff !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-xl) !important;
  padding: clamp(1.25rem, 2vw, 1.75rem) !important;
  box-shadow: var(--uc-shadow-card) !important;
  box-sizing: border-box !important;
}

.cart-collaterals .cart_totals>h2 {
  font-size: var(--uc-fz-lg) !important;
  font-weight: 800 !important;
  color: var(--uc-brand-dark) !important;
  margin-top: 0 !important;
  margin-bottom: 1rem !important;
  padding-bottom: 0.5rem !important;
  border-bottom: 1px solid var(--uc-border-light) !important;
}

/* Cart Totals Table */
.cart-collaterals .cart_totals table.shop_table,
.cart-collaterals .cart_totals table.shop_table tbody,
.woocommerce-cart .cart_totals table.shop_table_responsive,
.woocommerce-cart .cart_totals table.shop_table_responsive tbody {
  display: block !important;
  width: 100% !important;
}

.cart-collaterals .cart_totals table.shop_table,
.woocommerce-cart .cart_totals table.shop_table_responsive {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid var(--uc-border-light) !important;
  border-radius: var(--uc-radius-lg) !important;
  background: var(--uc-surface) !important;
  overflow: hidden !important;
  margin: 0 0 1.25rem 0 !important;
  box-sizing: border-box !important;
}

/* Disable WooCommerce default responsive pseudo-labels on totals table */
.woocommerce .cart-collaterals .cart_totals table.shop_table tr td::before,
.cart-collaterals .cart_totals table.shop_table tr td::before,
.woocommerce-cart .cart_totals table.shop_table_responsive tr td::before,
.woocommerce-page table.shop_table_responsive.shop_table.cart_totals tr td::before,
.woocommerce table.shop_table_responsive.cart_totals tr td::before {
  content: none !important;
  display: none !important;
}

.cart-collaterals .cart_totals table.shop_table tr,
.woocommerce-cart .cart_totals table.shop_table_responsive tr {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
  border-bottom: 1px solid var(--uc-border-light) !important;
}

.cart-collaterals .cart_totals table.shop_table tr:last-child,
.woocommerce-cart .cart_totals table.shop_table_responsive tr:last-child {
  border-bottom: none !important;
}

.cart-collaterals .cart_totals table.shop_table th,
.cart-collaterals .cart_totals table.shop_table td,
.woocommerce-cart .cart_totals table.shop_table_responsive th,
.woocommerce-cart .cart_totals table.shop_table_responsive td {
  padding: 0.75rem 1rem !important;
  border: none !important;
  font-size: 0.84rem !important;
  vertical-align: middle !important;
  line-height: 1.4 !important;
  box-sizing: border-box !important;
}

.cart-collaterals .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table_responsive th,
.woocommerce-cart .cart_totals table.shop_table_responsive tr th {
  display: block !important;
  color: var(--uc-text-secondary) !important;
  font-weight: 600 !important;
  text-align: left !important;
  flex: 1 1 auto !important;
  white-space: nowrap !important;
}

.cart-collaterals .cart_totals table.shop_table td,
.woocommerce-cart .cart_totals table.shop_table_responsive td,
.woocommerce-cart .cart_totals table.shop_table_responsive tr td {
  display: block !important;
  color: var(--uc-brand-dark) !important;
  text-align: right !important;
  flex: 0 0 auto !important;
  clear: none !important;
}

.cart-collaterals .cart_totals table.shop_table .amount,
.cart-collaterals .cart_totals table.shop_table bdi,
.woocommerce-cart .cart_totals table.shop_table_responsive .amount,
.woocommerce-cart .cart_totals table.shop_table_responsive bdi {
  white-space: nowrap !important;
  display: inline !important;
}

/* Shipping row full-width stacked layout on all devices (desktop + mobile) */
.woocommerce .cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals,
.cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals,
.cart-collaterals .cart_totals table.shop_table tr.shipping,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.woocommerce-shipping-totals,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.shipping {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.woocommerce .cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals th,
.cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals th,
.cart-collaterals .cart_totals table.shop_table tr.shipping th,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.woocommerce-shipping-totals th,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.shipping th {
  display: block !important;
  width: 100% !important;
  padding: 0.85rem 1rem 0.35rem 1rem !important;
  border-bottom: none !important;
  text-align: left !important;
  font-weight: 700 !important;
  color: var(--uc-brand-dark) !important;
  flex: 1 1 100% !important;
}

.woocommerce .cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals td,
.cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals td,
.cart-collaterals .cart_totals table.shop_table tr.shipping td,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.woocommerce-shipping-totals td,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.shipping td {
  display: block !important;
  width: 100% !important;
  padding: 0 1rem 0.85rem 1rem !important;
  text-align: left !important;
  box-sizing: border-box !important;
  flex: 1 1 100% !important;
  clear: both !important;
}

.woocommerce .cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals td::before,
.cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals td::before,
.cart-collaterals .cart_totals table.shop_table tr.shipping td::before,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.woocommerce-shipping-totals td::before,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.shipping td::before {
  display: none !important;
  content: none !important;
}

.cart-collaterals .cart_totals table.shop_table ul#shipping_method,
.woocommerce-cart .cart_totals table.shop_table_responsive ul#shipping_method {
  list-style: none !important;
  padding: 0 !important;
  margin: 0.25rem 0 0 0 !important;
  text-align: left !important;
  font-size: 0.84rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.5rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.cart-collaterals .cart_totals table.shop_table ul#shipping_method li,
.woocommerce-cart .cart_totals table.shop_table_responsive ul#shipping_method li {
  margin: 0 !important;
  padding: 0.6rem 0.75rem !important;
  font-weight: 500 !important;
  color: var(--uc-brand-dark) !important;
  background: #ffffff !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.6rem !important;
  cursor: pointer !important;
  transition: border-color 0.2s ease, background-color 0.2s ease !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

.cart-collaterals .cart_totals table.shop_table ul#shipping_method li:hover,
.woocommerce-cart .cart_totals table.shop_table_responsive ul#shipping_method li:hover {
  border-color: var(--uc-brand-green, #23633d) !important;
  background-color: var(--uc-accent-mint-light, #f0fdf4) !important;
}

.cart-collaterals .cart_totals table.shop_table ul#shipping_method li input[type="radio"],
.cart-collaterals .cart_totals table.shop_table ul#shipping_method li input.shipping_method,
.woocommerce-cart .cart_totals table.shop_table_responsive ul#shipping_method li input[type="radio"],
.woocommerce-cart .cart_totals table.shop_table_responsive ul#shipping_method li input.shipping_method {
  margin: 0.2rem 0 0 0 !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
  accent-color: var(--uc-brand-green, #23633d) !important;
}

.cart-collaterals .cart_totals table.shop_table ul#shipping_method li label,
.woocommerce-cart .cart_totals table.shop_table_responsive ul#shipping_method li label {
  margin: 0 !important;
  cursor: pointer !important;
  font-size: 0.82rem !important;
  line-height: 1.4 !important;
  color: var(--uc-brand-dark) !important;
  flex: 1 1 auto !important;
  text-align: left !important;
  display: inline !important;
}

.cart-collaterals .cart_totals table.shop_table ul#shipping_method li label .amount,
.woocommerce-cart .cart_totals table.shop_table_responsive ul#shipping_method li label .amount {
  font-weight: 700 !important;
  color: var(--uc-brand-green, #23633d) !important;
  white-space: nowrap !important;
}

.cart-collaterals .cart_totals .woocommerce-shipping-destination,
.woocommerce-cart .cart_totals table.shop_table_responsive .woocommerce-shipping-destination {
  font-size: 0.75rem !important;
  color: var(--uc-text-muted) !important;
  margin: 0.4rem 0 0 0 !important;
  text-align: left !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  width: 100% !important;
}

.cart-collaterals .cart_totals .woocommerce-shipping-calculator,
.woocommerce-cart .cart_totals table.shop_table_responsive .woocommerce-shipping-calculator {
  margin-top: 0.5rem !important;
  text-align: left !important;
  width: 100% !important;
}

/* Order Total Highlight */
.woocommerce .cart-collaterals .cart_totals table.shop_table tr.order-total,
.cart-collaterals .cart_totals table.shop_table tr.order-total,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.order-total {
  background: var(--uc-accent-mint-light) !important;
  border-top: 2px solid var(--uc-brand-green) !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
}

.woocommerce .cart-collaterals .cart_totals table.shop_table tr.order-total th,
.woocommerce .cart-collaterals .cart_totals table.shop_table tr.order-total td,
.cart-collaterals .cart_totals table.shop_table tr.order-total th,
.cart-collaterals .cart_totals table.shop_table tr.order-total td,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.order-total th,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.order-total td {
  border: none !important;
  padding: 0.9rem 1rem !important;
}

.cart-collaterals .cart_totals table.shop_table tr.order-total th,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.order-total th {
  font-size: 0.95rem !important;
  font-weight: 800 !important;
  color: var(--uc-brand-dark) !important;
  text-align: left !important;
  flex: 1 1 auto !important;
  display: block !important;
}

.cart-collaterals .cart_totals table.shop_table tr.order-total td,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.order-total td {
  text-align: right !important;
  flex: 0 0 auto !important;
  display: block !important;
}

.cart-collaterals .cart_totals table.shop_table tr.order-total .woocommerce-Price-amount,
.woocommerce-cart .cart_totals table.shop_table_responsive tr.order-total .woocommerce-Price-amount {
  color: var(--uc-brand-green) !important;
  font-size: 1.25rem !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  display: inline-block !important;
}

/* Promo Code Box in Totals */
.fc-coupon-in-totals {
  background: var(--uc-surface) !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-md) !important;
  padding: 0.85rem 1rem !important;
  margin: 1rem 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.5rem !important;
  box-sizing: border-box !important;
}

.fc-coupon-in-totals label {
  width: 100% !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  color: var(--uc-brand-dark) !important;
  margin-bottom: 0.2rem !important;
  display: block !important;
}

.fc-coupon-in-totals input.fc-coupon-input {
  flex: 1 1 140px !important;
  height: 38px !important;
  padding: 0 0.75rem !important;
  font-size: 0.82rem !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-sm) !important;
  color: var(--uc-text) !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
  transition: all var(--uc-transition-fast) !important;
}

.fc-coupon-in-totals input.fc-coupon-input:focus {
  border-color: var(--uc-border-focus) !important;
  box-shadow: 0 0 0 2px rgba(35, 99, 61, 0.12) !important;
  outline: none !important;
}

.fc-coupon-in-totals button.fc-apply-coupon {
  height: 38px !important;
  padding: 0 1rem !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  background-color: var(--uc-brand-green) !important;
  color: var(--uc-text-inverse) !important;
  border: 1px solid var(--uc-brand-green) !important;
  border-radius: var(--uc-radius-sm) !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: all var(--uc-transition-fast) !important;
}

.fc-coupon-in-totals button.fc-apply-coupon:hover {
  background-color: var(--uc-brand-green-hover) !important;
  border-color: var(--uc-brand-green-hover) !important;
}

.fc-coupon-in-totals .fc-coupon-notice {
  width: 100% !important;
  font-size: 0.78rem !important;
  margin-top: 0.2rem !important;
}

/* Proceed to Checkout Button */
.woocommerce .wc-proceed-to-checkout,
.cart_totals .wc-proceed-to-checkout,
.wc-proceed-to-checkout {
  padding: 0 !important;
  margin: 1.25rem 0 0 0 !important;
  width: 100% !important;
}

#billing_country_field {
  display: none !important;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce a.checkout-button.button.alt,
.wc-proceed-to-checkout a.checkout-button,
.cart_totals a.checkout-button,
a.checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 48px !important;
  padding: 0 1.5rem !important;
  background: var(--uc-brand-green) !important;
  color: var(--uc-text-inverse) !important;
  border: 1px solid var(--uc-brand-green) !important;
  border-radius: var(--uc-radius-md) !important;
  font-size: 0.95rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-shadow: var(--uc-shadow-md) !important;
  transition: all var(--uc-transition-fast) !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  float: none !important;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce a.checkout-button.button.alt:hover,
.wc-proceed-to-checkout a.checkout-button:hover,
.cart_totals a.checkout-button:hover,
a.checkout-button:hover {
  background: var(--uc-brand-green-hover) !important;
  border-color: var(--uc-brand-green-hover) !important;
  color: var(--uc-text-inverse) !important;
  transform: translateY(-2px);
  box-shadow: var(--uc-shadow-hover) !important;
}

/* ==========================================================================
   CHECKOUT & COUPON FORM
   ========================================================================== */

/* Coupon Toggle & Form */
.woocommerce-form-coupon-toggle {
  margin-bottom: var(--uc-space-4);
}

.woocommerce form.checkout_coupon,
form.checkout_coupon.woocommerce-form-coupon {
  display: none;
  background: var(--uc-surface) !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-lg) !important;
  padding: 1.25rem 1.5rem !important;
  margin-bottom: var(--uc-space-8) !important;
  box-shadow: var(--uc-shadow-xs) !important;
  clear: both !important;
}

.woocommerce form.checkout_coupon .form-row.form-row-first,
form.checkout_coupon .form-row.form-row-first {
  float: left !important;
  width: calc(100% - 200px) !important;
  min-width: 180px !important;
  margin: 0 1.25rem 0 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.woocommerce form.checkout_coupon .form-row.form-row-last,
form.checkout_coupon .form-row.form-row-last {
  float: right !important;
  width: 175px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.woocommerce form.checkout_coupon .clear,
form.checkout_coupon .clear {
  clear: both !important;
  display: block !important;
  width: 100% !important;
  height: 0 !important;
}

@media (max-width: 580px) {

  .woocommerce form.checkout_coupon .form-row.form-row-first,
  form.checkout_coupon .form-row.form-row-first {
    float: none !important;
    width: 100% !important;
    margin: 0 0 0.75rem 0 !important;
  }

  .woocommerce form.checkout_coupon .form-row.form-row-last,
  form.checkout_coupon .form-row.form-row-last {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
  }

  form.checkout_coupon button[name="apply_coupon"] {
    width: 100% !important;
  }
}

form.checkout_coupon input#coupon_code {
  width: 100% !important;
  height: 46px !important;
  padding: 0 1rem !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-md) !important;
  font-size: var(--uc-fz-sm) !important;
  background: #ffffff !important;
  color: var(--uc-text) !important;
  box-sizing: border-box !important;
  transition: all var(--uc-transition-fast) !important;
}

form.checkout_coupon input#coupon_code:focus {
  border-color: var(--uc-border-focus) !important;
  box-shadow: 0 0 0 3px rgba(35, 99, 61, 0.12) !important;
  outline: none !important;
}

form.checkout_coupon button[name="apply_coupon"] {
  height: 46px !important;
  padding: 0 1.5rem !important;
  background-color: var(--uc-brand-green) !important;
  color: var(--uc-text-inverse) !important;
  border: 1px solid var(--uc-brand-green) !important;
  border-radius: var(--uc-radius-md) !important;
  font-weight: 700 !important;
  font-size: var(--uc-fz-sm) !important;
  cursor: pointer !important;
  transition: all var(--uc-transition-fast) !important;
  box-shadow: var(--uc-shadow-xs) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
}

form.checkout_coupon button[name="apply_coupon"]:hover {
  background-color: var(--uc-brand-green-hover) !important;
  border-color: var(--uc-brand-green-hover) !important;
  transform: translateY(-1px);
  box-shadow: var(--uc-shadow-sm) !important;
}

/* Main Checkout Form Layout (2 Columns on Desktop) */
form.checkout.woocommerce-checkout {
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  gap: 2.25rem !important;
  align-items: start !important;
  margin-top: var(--uc-space-4) !important;
  margin-bottom: var(--uc-space-12) !important;
}

/* Customer Details (Left Column) */
form.checkout #customer_details {
  grid-column: 1 !important;
  background: #ffffff;
  border: 1px solid var(--uc-border);
  border-radius: var(--uc-radius-xl);
  padding: clamp(1.5rem, 3vw, 2.25rem);
  box-shadow: var(--uc-shadow-card);
  width: 100%;
  box-sizing: border-box;
  float: none !important;
  margin: 0 !important;
}

form.checkout .col-1,
form.checkout .col-2 {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

form.checkout #customer_details h3 {
  font-size: var(--uc-fz-lg);
  font-weight: 800;
  color: var(--uc-brand-dark);
  margin: 0 0 1.25rem 0;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--uc-border-light);
}

.woocommerce-additional-fields {
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--uc-border-light);
}

/* Form Fields Grid */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-additional-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.15rem 1rem;
}

.woocommerce form .form-row:not(.uc-checkout-privacy-row),
.woocommerce-checkout .form-row:not(.uc-checkout-privacy-row) {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

.woocommerce-billing-fields__field-wrapper .form-row-first,
.woocommerce-billing-fields__field-wrapper .form-row-last {
  grid-column: span 1;
}

.woocommerce-billing-fields__field-wrapper .form-row-wide,
.woocommerce-billing-fields__field-wrapper .address-field,
.woocommerce-additional-fields__field-wrapper .form-row,
.woocommerce-additional-fields__field-wrapper .notes {
  grid-column: span 2;
}

#billing_city_field,
#billing_state_field,
#billing_postcode_field {
  grid-column: span 2;
}

/* Form Labels */
.woocommerce form .form-row:not(.uc-checkout-privacy-row) label:not(.checkbox),
.woocommerce-checkout label:not(.checkbox):not([for="uc_privacy_policy_agree"]) {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: var(--uc-text) !important;
  margin-bottom: 0.35rem !important;
  line-height: 1.3 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.25rem !important;
}

.woocommerce form .form-row label .required,
.woocommerce-checkout label .required {
  color: #ef4444 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.woocommerce form .form-row label .optional,
.woocommerce-checkout label .optional {
  color: var(--uc-text-muted) !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
}

/* Input Fields, Textareas, Selects */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout select,
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea {
  width: 100% !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-md) !important;
  padding: 0.7rem 1rem !important;
  font-size: var(--uc-fz-sm) !important;
  color: var(--uc-text) !important;
  background-color: #ffffff !important;
  line-height: 1.45 !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
  transition: all var(--uc-transition-fast) !important;
  box-sizing: border-box !important;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout textarea:focus {
  border-color: var(--uc-border-focus) !important;
  box-shadow: 0 0 0 3px rgba(35, 99, 61, 0.12) !important;
  outline: none !important;
}

.woocommerce form .form-row textarea,
.woocommerce-checkout textarea {
  min-height: 85px !important;
  resize: vertical !important;
}

/* Select2 / SelectWoo */
.woocommerce .select2-container--default .select2-selection--single {
  height: 44px !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-md) !important;
  display: flex !important;
  align-items: center !important;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 44px !important;
  padding-left: 1rem !important;
  color: var(--uc-text) !important;
  font-size: var(--uc-fz-sm) !important;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 44px !important;
  right: 8px !important;
}

/* Order Review (Right Column) */
#order_review_heading {
  display: none !important;
}

form.checkout #order_review {
  grid-column: 2 !important;
  background: #ffffff;
  border: 1px solid var(--uc-border);
  border-radius: var(--uc-radius-xl);
  padding: clamp(1.5rem, 2.5vw, 2rem);
  box-shadow: var(--uc-shadow-card);
  position: sticky !important;
  top: 2rem !important;
  box-sizing: border-box;
  width: 100%;
}

/* Review Order Table */
table.shop_table.woocommerce-checkout-review-order-table,
table.shop_table.woocommerce-checkout-review-order-table thead,
table.shop_table.woocommerce-checkout-review-order-table tbody,
table.shop_table.woocommerce-checkout-review-order-table tfoot {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

table.shop_table.woocommerce-checkout-review-order-table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: none !important;
  margin: 0 0 1.5rem 0 !important;
  background: transparent !important;
}

table.shop_table.woocommerce-checkout-review-order-table thead tr,
table.shop_table.woocommerce-checkout-review-order-table tbody tr {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

table.shop_table.woocommerce-checkout-review-order-table thead th {
  background: var(--uc-surface) !important;
  color: var(--uc-text-secondary) !important;
  font-size: 0.78rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  font-weight: 700 !important;
  padding: 0.75rem 1.15rem !important;
  border: none !important;
  border-bottom: 2px solid var(--uc-border) !important;
  box-sizing: border-box !important;
}

table.shop_table.woocommerce-checkout-review-order-table thead th:first-child {
  border-top-left-radius: var(--uc-radius-md) !important;
  flex: 1 1 auto !important;
  text-align: left !important;
}

table.shop_table.woocommerce-checkout-review-order-table thead th:last-child {
  border-top-right-radius: var(--uc-radius-md) !important;
  text-align: right !important;
  flex: 0 0 auto !important;
}

table.shop_table.woocommerce-checkout-review-order-table tbody td {
  padding: 0.85rem 1.15rem !important;
  border: none !important;
  border-bottom: 1px solid var(--uc-border-light) !important;
  font-size: 0.88rem !important;
  color: var(--uc-text) !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
}

table.shop_table.woocommerce-checkout-review-order-table td.product-name {
  line-height: 1.4 !important;
  font-weight: 500 !important;
  flex: 1 1 auto !important;
  text-align: left !important;
}

table.shop_table.woocommerce-checkout-review-order-table .product-quantity {
  color: var(--uc-brand-green) !important;
  font-weight: 700 !important;
  background: var(--uc-accent-mint-light) !important;
  padding: 0.15rem 0.5rem !important;
  border-radius: var(--uc-radius-sm) !important;
  font-size: 0.78rem !important;
  margin-left: 0.35rem !important;
  display: inline-block !important;
}

table.shop_table.woocommerce-checkout-review-order-table td.product-total {
  text-align: right !important;
  font-weight: 700 !important;
  color: var(--uc-brand-dark) !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

table.shop_table.woocommerce-checkout-review-order-table tr td::before,
table.shop_table.woocommerce-checkout-review-order-table tfoot tr td::before {
  content: none !important;
  display: none !important;
}

/* Visually Highlighted TFOOT Block */
table.shop_table.woocommerce-checkout-review-order-table tfoot {
  background: var(--uc-surface) !important;
  border-radius: var(--uc-radius-lg) !important;
  overflow: hidden !important;
  border: 1px solid var(--uc-border-light) !important;
  margin-top: 1rem !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr {
  background: var(--uc-surface) !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
  border-bottom: 1px solid var(--uc-border-light) !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot th,
table.shop_table.woocommerce-checkout-review-order-table tfoot td {
  padding: 0.9rem 1.15rem !important;
  border: none !important;
  font-size: 0.92rem !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot th {
  font-weight: 600 !important;
  color: var(--uc-text-secondary) !important;
  text-align: left !important;
  flex: 1 1 auto !important;
  white-space: nowrap !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot td {
  text-align: right !important;
  color: var(--uc-brand-dark) !important;
  flex: 0 0 auto !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot .amount,
table.shop_table.woocommerce-checkout-review-order-table tfoot bdi {
  white-space: nowrap !important;
  display: inline !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals,
table.shop_table.woocommerce-checkout-review-order-table tfoot tr.shipping {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  border-bottom: none !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals th,
table.shop_table.woocommerce-checkout-review-order-table tfoot tr.shipping th {
  display: block !important;
  width: 100% !important;
  padding: 0.85rem 1.15rem 0.25rem 1.15rem !important;
  border-bottom: none !important;
  text-align: left !important;
  flex: 1 1 100% !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals td,
table.shop_table.woocommerce-checkout-review-order-table tfoot tr.shipping td {
  display: block !important;
  width: 100% !important;
  padding: 0 1.15rem 0.85rem 1.15rem !important;
  text-align: left !important;
  box-sizing: border-box !important;
  flex: 1 1 100% !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals ul#shipping_method {
  list-style: none !important;
  padding: 0 !important;
  margin: 0.25rem 0 0 0 !important;
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.5rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals ul#shipping_method li {
  margin: 0 !important;
  padding: 0.6rem 0.75rem !important;
  font-weight: 500 !important;
  color: var(--uc-brand-dark) !important;
  background: #ffffff !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.6rem !important;
  cursor: pointer !important;
  transition: border-color 0.2s ease, background-color 0.2s ease !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals ul#shipping_method li:hover {
  border-color: var(--uc-brand-green, #23633d) !important;
  background-color: var(--uc-accent-mint-light, #f0fdf4) !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals ul#shipping_method li input[type="radio"],
table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals ul#shipping_method li input.shipping_method {
  margin: 0.2rem 0 0 0 !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
  accent-color: var(--uc-brand-green, #23633d) !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals ul#shipping_method li label {
  margin: 0 !important;
  cursor: pointer !important;
  font-size: 0.82rem !important;
  line-height: 1.4 !important;
  color: var(--uc-brand-dark) !important;
  flex: 1 1 auto !important;
  text-align: left !important;
  display: inline !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals ul#shipping_method li label .amount {
  font-weight: 700 !important;
  color: var(--uc-brand-green, #23633d) !important;
  white-space: nowrap !important;
}

/* Order Total Row */
table.shop_table.woocommerce-checkout-review-order-table tfoot tr.order-total {
  background: var(--uc-accent-mint-light) !important;
  border-top: 2px solid var(--uc-brand-green) !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.order-total th,
table.shop_table.woocommerce-checkout-review-order-table tfoot tr.order-total td {
  border: none !important;
  padding: 1.25rem 1.15rem !important;
  box-sizing: border-box !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.order-total th {
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: var(--uc-brand-dark) !important;
  flex: 1 1 auto !important;
  white-space: nowrap !important;
  text-align: left !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.order-total td {
  text-align: right !important;
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

table.shop_table.woocommerce-checkout-review-order-table tfoot tr.order-total .woocommerce-Price-amount {
  color: var(--uc-brand-green) !important;
  font-size: 1.4rem !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  display: inline-block !important;
}

/* Payment Methods */
#payment.woocommerce-checkout-payment {
  background: var(--uc-surface) !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-lg) !important;
  padding: 1.25rem !important;
  margin-top: 1.5rem !important;
}

#payment ul.payment_methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 1.25rem 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.75rem !important;
  border: none !important;
}

#payment ul.payment_methods li.wc_payment_method {
  background: #ffffff !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-md) !important;
  padding: 0.9rem 1.1rem !important;
  transition: all var(--uc-transition-fast) !important;
  margin: 0 !important;
}

#payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked) {
  border-color: var(--uc-brand-green) !important;
  box-shadow: 0 0 0 1px var(--uc-brand-green) !important;
}

#payment ul.payment_methods li.wc_payment_method label {
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  color: var(--uc-brand-dark) !important;
  cursor: pointer !important;
  margin-left: 0.5rem !important;
  display: inline-flex !important;
  align-items: center !important;
}

#payment ul.payment_methods li.wc_payment_method input[type="radio"] {
  accent-color: var(--uc-brand-green) !important;
  width: 18px !important;
  height: 18px !important;
  vertical-align: middle !important;
  cursor: pointer !important;
}

#payment .payment_box {
  position: relative !important;
  background: var(--uc-surface) !important;
  border: 1px solid var(--uc-border) !important;
  border-radius: var(--uc-radius-md) !important;
  padding: 0.85rem 1.15rem !important;
  margin-top: 0.75rem !important;
  font-size: 0.85rem !important;
  color: var(--uc-text-secondary) !important;
  line-height: 1.5 !important;
}

#payment .payment_box::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: -7px !important;
  left: 20px !important;
  width: 12px !important;
  height: 12px !important;
  background-color: var(--uc-surface) !important;
  border-left: 1px solid var(--uc-border) !important;
  border-top: 1px solid var(--uc-border) !important;
  border-right: none !important;
  border-bottom: none !important;
  transform: rotate(45deg) !important;
  margin: 0 !important;
  z-index: 2 !important;
}

#payment .payment_box p {
  margin: 0 !important;
}

/* Hide redundant passive text since interactive checkbox with link is present */
.woocommerce-privacy-policy-text {
  display: none !important;
}

/* Mandatory Checkout Privacy Policy Row */
.uc-checkout-privacy-row {
  margin: 0.6rem 0 0.85rem !important;
  padding: 0 !important;
  clear: both !important;
  width: 100% !important;
  float: none !important;
  display: block !important;
}

.uc-checkout-privacy-row .woocommerce-input-wrapper {
  display: block !important;
  width: 100% !important;
}

.uc-checkout-privacy-row label.checkbox {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 0.55rem !important;
  width: 100% !important;
  font-size: 0.72rem !important;
  color: var(--uc-text-muted, #64748b) !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
  margin: 0 !important;
  font-weight: 400 !important;
}

.uc-checkout-privacy-row input[type="checkbox"],
.uc-checkout-privacy-row .input-checkbox {
  margin: 0.15rem 0 0 0 !important;
  flex-shrink: 0 !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  max-width: 15px !important;
  accent-color: var(--uc-brand-green, #23633d) !important;
  cursor: pointer !important;
  float: none !important;
  display: inline-block !important;
}

.uc-checkout-privacy-row .uc-checkout-privacy-text {
  flex: 1 1 auto !important;
  display: inline !important;
}

.uc-checkout-privacy-row .uc-checkout-privacy-text a {
  color: var(--uc-brand-green, #23633d) !important;
  font-weight: 500 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
  transition: color var(--uc-transition-fast) !important;
  display: inline !important;
  opacity: 0.95;
}

.uc-checkout-privacy-row .uc-checkout-privacy-text a:hover {
  color: var(--uc-brand-dark, #163323) !important;
  opacity: 1;
}

.uc-checkout-privacy-row .required {
  color: #dc2626 !important;
  text-decoration: none !important;
  font-weight: bold !important;
  display: inline !important;
  opacity: 0.85;
}

/* Place Order Button */
#payment button#place_order,
#payment #place_order,
.woocommerce-checkout button#place_order,
.woocommerce-checkout #place_order {
  margin-top: 0 !important;
  width: 100% !important;
  background: var(--uc-brand-green) !important;
  color: var(--uc-text-inverse) !important;
  border: 1px solid var(--uc-brand-green) !important;
  border-radius: var(--uc-radius-md) !important;
  padding: 1rem 1.5rem !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all var(--uc-transition-fast) !important;
  box-shadow: var(--uc-shadow-md) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  float: none !important;
}

#payment button#place_order:hover,
#payment #place_order:hover {
  background: var(--uc-brand-green-hover) !important;
  border-color: var(--uc-brand-green-hover) !important;
  transform: translateY(-2px);
  box-shadow: var(--uc-shadow-hover) !important;
}

/* Responsive */
@media (max-width: 991px) {
  .uc-single-product-wrapper {
    grid-template-columns: 1fr;
    gap: var(--uc-space-8);
  }

  .woocommerce-cart .woocommerce,
  .woocommerce-checkout form.checkout,
  form.checkout.woocommerce-checkout {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: 1fr !important;
    gap: 1.75rem !important;
    width: 100% !important;
  }

  .woocommerce-cart .cart-collaterals,
  .woocommerce-checkout #order_review,
  form.checkout #order_review {
    position: static !important;
    width: 100% !important;
  }

  .woocommerce-billing-fields__field-wrapper,
  .woocommerce-shipping-fields__field-wrapper,
  .woocommerce-additional-fields__field-wrapper {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }

  .woocommerce-billing-fields__field-wrapper .form-row,
  .woocommerce-billing-fields__field-wrapper .form-row-first,
  .woocommerce-billing-fields__field-wrapper .form-row-last,
  .woocommerce-billing-fields__field-wrapper .form-row-wide,
  .woocommerce-billing-fields__field-wrapper .address-field,
  .woocommerce-additional-fields__field-wrapper .form-row,
  .woocommerce-additional-fields__field-wrapper .notes,
  #billing_first_name_field,
  #billing_last_name_field,
  #billing_country_field,
  #billing_address_1_field,
  #billing_city_field,
  #billing_state_field,
  #billing_postcode_field,
  #billing_email_field,
  #billing_phone_field {
    width: 100% !important;
    grid-column: auto !important;
    float: none !important;
  }

  form.checkout_coupon.woocommerce-form-coupon {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.75rem !important;
  }

  form.checkout_coupon .form-row-first,
  form.checkout_coupon .form-row-last {
    width: 100% !important;
    flex: 1 1 100% !important;
    float: none !important;
  }

  form.checkout_coupon button[name="apply_coupon"] {
    width: 100% !important;
  }
}

@media (max-width: 580px) {
  .uc-trust-grid {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   SUPER STYLISH ADD-TO-CART TOAST NOTIFICATION
   ========================================================================== */

/* ==========================================================================
   SUPER STYLISH & LUXURY ADD-TO-CART TOAST NOTIFICATION
   ========================================================================== */

.uc-cart-toast {
  position: fixed;
  z-index: 99999;
  top: 85px;
  right: 20px;
  width: min(330px, calc(100vw - 24px));
  box-sizing: border-box;
  display: none;
  pointer-events: auto;
  user-select: none;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.uc-cart-toast.is-visible {
  display: block;
  animation: ucToastSpringEntrance 0.45s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

.uc-cart-toast.is-hiding {
  display: block;
  animation: ucToastSmoothExit 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  pointer-events: none;
}

.uc-cart-toast__inner {
  position: relative;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(24px) saturate(190%);
  -webkit-backdrop-filter: blur(24px) saturate(190%);
  border: 1px solid rgba(35, 99, 61, 0.18);
  border-radius: 16px;
  padding: 0.75rem 2rem 0.75rem 0.85rem;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  box-shadow:
    0 20px 40px -10px rgba(18, 33, 25, 0.18),
    0 0 0 1px rgba(255, 255, 255, 0.9) inset,
    0 1px 3px rgba(35, 99, 61, 0.08);
  cursor: pointer;
  overflow: hidden;
  transition: transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.25s cubic-bezier(0.2, 0.8, 0.2, 1), border-color 0.25s ease;
}

.uc-cart-toast__inner::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
  animation: ucToastShimmer 2.5s infinite;
  pointer-events: none;
}

.uc-cart-toast__inner:hover {
  transform: translateY(-3px) scale(1.015);
  box-shadow:
    0 24px 48px -10px rgba(18, 33, 25, 0.25),
    0 0 0 1px rgba(35, 99, 61, 0.25),
    0 4px 14px rgba(35, 99, 61, 0.12);
  border-color: rgba(35, 99, 61, 0.35);
}

/* Compact Thumbnail with Checkmark Badge */
.uc-cart-toast__thumb-box {
  position: relative;
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  border-radius: 12px;
  background: var(--uc-surface, #f8faf9);
  border: 1px solid var(--uc-border-light, #e8edea);
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}

.uc-cart-toast__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 11px;
  display: block;
}

.uc-cart-toast__badge {
  position: absolute;
  bottom: -3px;
  right: -3px;
  width: 18px;
  height: 18px;
  background: linear-gradient(135deg, var(--uc-brand-green, #23633d), #10b981);
  color: #ffffff;
  border: 2px solid #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 6px rgba(35, 99, 61, 0.4);
}

.uc-cart-toast__badge svg {
  display: block;
}

/* Compact Body & Content */
.uc-cart-toast__body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.uc-cart-toast__status {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--uc-brand-green, #23633d);
  line-height: 1.2;
}

.uc-cart-toast__pulse {
  width: 7px;
  height: 7px;
  background-color: var(--uc-brand-green, #23633d);
  border-radius: 50%;
  display: inline-block;
  box-shadow: 0 0 0 0 rgba(35, 99, 61, 0.6);
  animation: ucToastPulse 1.6s infinite;
}

.uc-cart-toast__title {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--uc-brand-dark, #122119);
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 195px;
}

.uc-cart-toast__price {
  font-size: 0.84rem;
  font-weight: 800;
  color: var(--uc-brand-green, #23633d);
  line-height: 1.2;
  white-space: nowrap;
}

/* Clean close button */
.uc-cart-toast button.uc-cart-toast__close,
button.uc-cart-toast__close {
  position: absolute !important;
  top: 9px !important;
  right: 9px !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  max-width: 24px !important;
  max-height: 24px !important;
  border-radius: 50% !important;
  background: rgba(0, 0, 0, 0.05) !important;
  border: none !important;
  color: var(--uc-text-muted, #94a3b8) !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  z-index: 10 !important;
  box-sizing: border-box !important;
  outline: none !important;
  box-shadow: none !important;
}

.uc-cart-toast button.uc-cart-toast__close svg,
button.uc-cart-toast__close svg {
  display: block !important;
  width: 12px !important;
  height: 12px !important;
  stroke: currentColor !important;
  stroke-width: 2.5 !important;
  fill: none !important;
  pointer-events: none !important;
}

.uc-cart-toast button.uc-cart-toast__close:hover,
button.uc-cart-toast__close:hover {
  background: rgba(35, 99, 61, 0.15) !important;
  color: var(--uc-brand-green, #23633d) !important;
  transform: rotate(90deg);
}

/* Progress Countdown Bar */
.uc-cart-toast__progress-track {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: rgba(35, 99, 61, 0.08);
  overflow: hidden;
  border-bottom-left-radius: 16px;
  border-bottom-right-radius: 16px;
}

.uc-cart-toast__progress-bar {
  height: 100%;
  width: 100%;
  background: linear-gradient(90deg, var(--uc-brand-green, #23633d), #10b981, #34d399);
  box-shadow: 0 0 8px rgba(16, 185, 129, 0.5);
  transform-origin: left;
}

.uc-cart-toast__inner:hover .uc-cart-toast__progress-bar {
  animation-play-state: paused !important;
}

/* Animations */
@keyframes ucToastSpringEntrance {
  0% {
    opacity: 0;
    transform: translate3d(0, -28px, 0) scale(0.88);
  }

  65% {
    opacity: 1;
    transform: translate3d(0, 4px, 0) scale(1.02);
  }

  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}

@keyframes ucToastSmoothExit {
  0% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }

  100% {
    opacity: 0;
    transform: translate3d(40px, 0, 0) scale(0.9);
  }
}

@keyframes ucToastPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(35, 99, 61, 0.7);
  }

  70% {
    box-shadow: 0 0 0 7px rgba(35, 99, 61, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(35, 99, 61, 0);
  }
}

@keyframes ucToastShimmer {
  0% {
    left: -100%;
  }

  40% {
    left: 100%;
  }

  100% {
    left: 100%;
  }
}

@keyframes ucToastBarAnim {
  0% {
    width: 100%;
  }

  100% {
    width: 0%;
  }
}

/* Premium Checkout Processing Loader Overlay */
.blockUI.blockOverlay,
.woocommerce .blockUI.blockOverlay {
  background: rgba(255, 255, 255, 0.82) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  opacity: 1 !important;
  z-index: 99999 !important;
  transition: opacity 0.3s ease !important;
}

.woocommerce .blockUI.blockMsg,
.blockUI.blockMsg {
  border: none !important;
  background: transparent !important;
  z-index: 100000 !important;
}

.woocommerce-checkout.processing .blockUI.blockOverlay::after,
.woocommerce-checkout.processing::after,
.blockUI.blockOverlay::after {
  content: '' !important;
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 52px !important;
  height: 52px !important;
  border: 4px solid rgba(35, 99, 61, 0.15) !important;
  border-top-color: var(--uc-brand-green, #23633d) !important;
  border-right-color: var(--uc-brand-green, #23633d) !important;
  border-radius: 50% !important;
  animation: ucLuxurySpin 0.75s cubic-bezier(0.4, 0, 0.2, 1) infinite !important;
  box-shadow: 0 0 24px rgba(35, 99, 61, 0.18) !important;
  z-index: 100001 !important;
}

@keyframes ucLuxurySpin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }

  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

/* Mobile Symmetrical Positioning */
@media (max-width: 600px) {
  .uc-cart-toast {
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .uc-cart-toast__inner {
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .uc-cart-toast__title {
    max-width: calc(100vw - 150px);
  }
}

/* ==========================================================================
   PREMIUM THANK YOU / ORDER RECEIVED PAGE
   ========================================================================== */

.woocommerce-order {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Success Hero Banner */
.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
  position: relative !important;
  background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%) !important;
  border: 1px solid #bbf7d0 !important;
  border-radius: var(--uc-radius-xl, 16px) !important;
  padding: 1.5rem 1.75rem 1.5rem 4.25rem !important;
  color: var(--uc-brand-dark, #122119) !important;
  font-size: 1.25rem !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  margin: 0 0 1.5rem 0 !important;
  box-shadow: 0 4px 20px -2px rgba(35, 99, 61, 0.08) !important;
  box-sizing: border-box !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
}

.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received::before {
  content: '' !important;
  position: absolute !important;
  left: 1.5rem !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 2.25rem !important;
  height: 2.25rem !important;
  background: var(--uc-brand-green, #23633d) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E") no-repeat center !important;
  background-size: 1.25rem !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 12px rgba(35, 99, 61, 0.25) !important;
}

/* Order Overview Stat Cards - 5 columns on desktop across 100% */
ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details,
.woocommerce ul.order_details {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 1.5rem 0 !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0.75rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details::before,
ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details::after,
.woocommerce ul.order_details::before,
.woocommerce ul.order_details::after {
  display: none !important;
  content: none !important;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details li,
.woocommerce ul.order_details li {
  background: #ffffff !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-lg, 12px) !important;
  padding: 1rem 1.15rem !important;
  margin: 0 !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 0.35rem !important;
  font-size: 0.75rem !important;
  color: var(--uc-text-secondary, #64748b) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 8px rgba(18, 33, 25, 0.04) !important;
  transition: all 0.2s ease !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details li:hover,
.woocommerce ul.order_details li:hover {
  border-color: var(--uc-brand-green, #23633d) !important;
  box-shadow: 0 6px 20px rgba(35, 99, 61, 0.08) !important;
  transform: translateY(-2px) !important;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details li strong,
.woocommerce ul.order_details li strong {
  font-size: 0.95rem !important;
  color: var(--uc-brand-dark, #122119) !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details li.order strong,
.woocommerce ul.order_details li.order strong {
  color: var(--uc-brand-green, #23633d) !important;
  font-size: 1.3rem !important;
  font-weight: 800 !important;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details li.total strong,
.woocommerce ul.order_details li.total strong {
  color: var(--uc-brand-green, #23633d) !important;
  font-size: 1.2rem !important;
  font-weight: 800 !important;
}

/* Payment Note */
.woocommerce-order>p:not(.woocommerce-notice):not(.woocommerce-order-overview) {
  background: var(--uc-surface, #f8faf9) !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-left: 4px solid var(--uc-brand-green, #23633d) !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  padding: 1rem 1.25rem !important;
  margin: 0 0 1.75rem 0 !important;
  font-size: 0.95rem !important;
  color: var(--uc-brand-dark, #122119) !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* 2-Column Grid on Desktop */
@media (min-width: 960px) {
  .woocommerce-order {
    display: grid !important;
    grid-template-columns: 1fr 360px !important;
    gap: 1.5rem !important;
    align-items: start !important;
  }

  .woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received,
  ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details,
  .woocommerce-order>p:not(.woocommerce-notice):not(.woocommerce-order-overview) {
    grid-column: 1 / -1 !important;
  }

  .woocommerce-order-details {
    grid-column: 1 !important;
    margin-bottom: 0 !important;
  }

  .woocommerce-customer-details {
    grid-column: 2 !important;
    margin-bottom: 0 !important;
  }
}

/* Sections */
.woocommerce-order-details,
.woocommerce-customer-details {
  background: #ffffff !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-xl, 16px) !important;
  padding: clamp(1.25rem, 2.5vw, 1.75rem) !important;
  box-shadow: 0 4px 20px -2px rgba(18, 33, 25, 0.05) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

.woocommerce-order-details__title,
.woocommerce-column__title {
  font-size: 1.2rem !important;
  font-weight: 800 !important;
  color: var(--uc-brand-dark, #122119) !important;
  margin-top: 0 !important;
  margin-bottom: 1.25rem !important;
  padding-bottom: 0.65rem !important;
  border-bottom: 2px solid var(--uc-border-light, #e8edea) !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.6rem !important;
}

.woocommerce-order-details__title::before,
.woocommerce-column__title::before {
  content: '' !important;
  display: inline-block !important;
  width: 4px !important;
  height: 1.2rem !important;
  background: var(--uc-brand-green, #23633d) !important;
  border-radius: 2px !important;
}

/* Order Details Table */
table.woocommerce-table--order-details.shop_table.order_details {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid var(--uc-border-light, #e8edea) !important;
  border-radius: var(--uc-radius-lg, 12px) !important;
  background: #ffffff !important;
  overflow: hidden !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

table.woocommerce-table--order-details.shop_table.order_details thead th {
  background: var(--uc-surface, #f8faf9) !important;
  color: var(--uc-text-secondary, #64748b) !important;
  font-size: 0.78rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  font-weight: 700 !important;
  padding: 0.85rem 1.25rem !important;
  border: none !important;
  border-bottom: 1px solid var(--uc-border, #e2e8f0) !important;
}

table.woocommerce-table--order-details.shop_table.order_details thead th.product-total {
  text-align: right !important;
}

table.woocommerce-table--order-details.shop_table.order_details tbody td {
  padding: 1rem 1.25rem !important;
  border: none !important;
  border-bottom: 1px solid var(--uc-border-light, #e8edea) !important;
  font-size: 0.92rem !important;
  color: var(--uc-brand-dark, #122119) !important;
  vertical-align: middle !important;
}

table.woocommerce-table--order-details.shop_table.order_details tbody td.product-name a {
  color: var(--uc-brand-dark, #122119) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  transition: color 0.2s ease !important;
}

table.woocommerce-table--order-details.shop_table.order_details tbody td.product-name a:hover {
  color: var(--uc-brand-green, #23633d) !important;
}

table.woocommerce-table--order-details.shop_table.order_details .product-quantity {
  color: var(--uc-brand-green, #23633d) !important;
  font-weight: 700 !important;
  background: var(--uc-accent-mint-light, #f0fdf4) !important;
  border: 1px solid rgba(35, 99, 61, 0.15) !important;
  padding: 0.15rem 0.5rem !important;
  border-radius: var(--uc-radius-sm, 6px) !important;
  font-size: 0.78rem !important;
  margin-left: 0.4rem !important;
  display: inline-block !important;
  white-space: nowrap !important;
}

table.woocommerce-table--order-details.shop_table.order_details tbody td.product-total {
  text-align: right !important;
  font-weight: 700 !important;
  color: var(--uc-brand-dark, #122119) !important;
  white-space: nowrap !important;
}

/* TFOOT */
table.woocommerce-table--order-details.shop_table.order_details tfoot tr {
  border-bottom: 1px solid var(--uc-border-light, #e8edea) !important;
}

table.woocommerce-table--order-details.shop_table.order_details tfoot th,
table.woocommerce-table--order-details.shop_table.order_details tfoot td {
  padding: 0.8rem 1.25rem !important;
  border: none !important;
  font-size: 0.9rem !important;
  vertical-align: middle !important;
}

table.woocommerce-table--order-details.shop_table.order_details tfoot th {
  color: var(--uc-text-secondary, #64748b) !important;
  font-weight: 600 !important;
  text-align: left !important;
}

table.woocommerce-table--order-details.shop_table.order_details tfoot td {
  text-align: right !important;
  color: var(--uc-brand-dark, #122119) !important;
  font-weight: 600 !important;
}

table.woocommerce-table--order-details.shop_table.order_details tfoot tr:last-child {
  border-bottom: none !important;
}

/* Highlight Total row */
table.woocommerce-table--order-details.shop_table.order_details tfoot tr:nth-last-child(2) {
  background: var(--uc-accent-mint-light, #f0fdf4) !important;
}

table.woocommerce-table--order-details.shop_table.order_details tfoot tr:nth-last-child(2) th,
table.woocommerce-table--order-details.shop_table.order_details tfoot tr:nth-last-child(2) td {
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  color: var(--uc-brand-dark, #122119) !important;
}

table.woocommerce-table--order-details.shop_table.order_details tfoot tr:nth-last-child(2) td .amount {
  color: var(--uc-brand-green, #23633d) !important;
  font-size: 1.2rem !important;
  font-weight: 800 !important;
}

/* Customer Details / Address */
.woocommerce-customer-details address {
  font-style: normal !important;
  line-height: 1.7 !important;
  color: var(--uc-brand-dark, #122119) !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  background: var(--uc-surface, #f8faf9) !important;
  border: 1px solid var(--uc-border-light, #e8edea) !important;
  border-radius: var(--uc-radius-lg, 12px) !important;
  padding: 1.25rem 1.5rem !important;
}

.woocommerce-customer-details address p {
  margin: 0.5rem 0 0 0 !important;
  font-weight: 500 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  color: var(--uc-text-secondary, #64748b) !important;
  word-break: break-all !important;
}

.woocommerce-customer-details--phone::before {
  content: '📞' !important;
  font-size: 0.9rem !important;
}

.woocommerce-customer-details--email::before {
  content: '✉️' !important;
  font-size: 0.9rem !important;
}

/* Responsive */
@media (max-width: 959px) {
  ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
  }

  .woocommerce-order-details,
  .woocommerce-customer-details {
    margin-bottom: 1.5rem !important;
  }
}

@media (max-width: 640px) {
  .woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
    padding: 1.25rem 1.25rem 1.25rem 3.6rem !important;
    font-size: 1.05rem !important;
  }

  .woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received::before {
    left: 1rem !important;
    width: 1.85rem !important;
    height: 1.85rem !important;
    background-size: 1.05rem !important;
  }

  ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
    grid-template-columns: 1fr 1fr !important;
    gap: 0.6rem !important;
  }

  ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details li:last-child {
    grid-column: 1 / -1 !important;
  }

  table.woocommerce-table--order-details.shop_table.order_details thead th,
  table.woocommerce-table--order-details.shop_table.order_details tbody td,
  table.woocommerce-table--order-details.shop_table.order_details tfoot th,
  table.woocommerce-table--order-details.shop_table.order_details tfoot td {
    padding: 0.75rem 0.85rem !important;
    font-size: 0.85rem !important;
  }
}

/* ==========================================================================
   WOOCOMMERCE MY ACCOUNT (Личный кабинет) - Modern B2B Theme Design
   ========================================================================== */

.woocommerce-account .site-main .container,
.woocommerce-account .entry-content > .woocommerce {
  max-width: 1240px;
  margin: 0 auto;
}

/* Clear default WooCommerce legacy floats */
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after {
  content: none !important;
}

/* Logged in users: 2-column sidebar grid */
.woocommerce-account.logged-in .woocommerce,
body.logged-in.woocommerce-account .woocommerce,
.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
  display: grid !important;
  grid-template-columns: 270px 1fr !important;
  gap: 2rem !important;
  align-items: start !important;
  margin-top: var(--uc-space-6, 1.5rem) !important;
  margin-bottom: var(--uc-space-12, 3rem) !important;
  width: 100% !important;
  max-width: 1240px !important;
}

/* Logged out users (Login/Registration): 100% Full Width Block */
.woocommerce-account:not(.logged-in) .woocommerce,
body:not(.logged-in) .woocommerce-account .woocommerce,
.woocommerce-account .woocommerce:has(#customer_login),
.woocommerce:has(#customer_login) {
  display: block !important;
  width: 100% !important;
  max-width: 1240px !important;
  margin-top: var(--uc-space-6, 1.5rem) !important;
  margin-bottom: var(--uc-space-12, 3rem) !important;
}

/* Left Sidebar Navigation */
.woocommerce-MyAccount-navigation {
  float: none !important;
  width: 100% !important;
  background: #ffffff !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-xl, 16px) !important;
  padding: 0.85rem !important;
  box-shadow: var(--uc-shadow-card, 0 4px 20px -2px rgba(18, 33, 25, 0.05)) !important;
  position: sticky !important;
  top: 90px !important;
  z-index: 10 !important;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.35rem !important;
}

.woocommerce-MyAccount-navigation-link {
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce-MyAccount-navigation-link a {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  padding: 0.75rem 1rem !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  font-size: var(--uc-fz-sm, 0.875rem) !important;
  font-weight: 600 !important;
  color: var(--uc-text-secondary, #475569) !important;
  text-decoration: none !important;
  transition: all var(--uc-transition-fast, 0.15s ease) !important;
  position: relative !important;
}

.woocommerce-MyAccount-navigation-link a:hover {
  background-color: var(--uc-accent-mint-light, #f2faf4) !important;
  color: var(--uc-brand-green, #23633d) !important;
  transform: translateX(3px) !important;
}

.woocommerce-MyAccount-navigation-link.is-active a {
  background-color: var(--uc-accent-mint, #e2f3e7) !important;
  color: var(--uc-brand-green, #23633d) !important;
  font-weight: 700 !important;
}

.woocommerce-MyAccount-navigation-link.is-active a::before {
  content: '';
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 3.5px;
  border-radius: 0 3px 3px 0;
  background-color: var(--uc-brand-green, #23633d);
}

/* Sidebar Icons */
.woocommerce-MyAccount-navigation-link a::after {
  content: '';
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  order: -1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.8;
  transition: opacity 0.15s ease;
}

.woocommerce-MyAccount-navigation-link a:hover::after,
.woocommerce-MyAccount-navigation-link.is-active a::after {
  opacity: 1;
}

.woocommerce-MyAccount-navigation-link--dashboard a::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2323633d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7'%3E%3C/rect%3E%3Crect x='14' y='3' width='7' height='7'%3E%3C/rect%3E%3Crect x='14' y='14' width='7' height='7'%3E%3C/rect%3E%3Crect x='3' y='14' width='7' height='7'%3E%3C/rect%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--orders a::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2323633d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z'%3E%3C/path%3E%3Cline x1='3' y1='6' x2='21' y2='6'%3E%3C/line%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'%3E%3C/path%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--edit-address a::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2323633d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'%3E%3C/path%3E%3Ccircle cx='12' cy='10' r='3'%3E%3C/circle%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--edit-account a::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2323633d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'%3E%3C/path%3E%3Ccircle cx='12' cy='7' r='4'%3E%3C/circle%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--wishlist a::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2323633d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'%3E%3C/path%3E%3C/svg%3E");
}

.woocommerce-MyAccount-navigation-link--customer-logout {
  margin-top: 0.65rem !important;
  padding-top: 0.65rem !important;
  border-top: 1px solid var(--uc-border-light, #edf2f7) !important;
}

.woocommerce-MyAccount-navigation-link--customer-logout a {
  color: #dc2626 !important;
}

.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
  background-color: #fef2f2 !important;
  color: #b91c1c !important;
}

.woocommerce-MyAccount-navigation-link--customer-logout a::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23dc2626' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'%3E%3C/path%3E%3Cpolyline points='16 17 21 12 16 7'%3E%3C/polyline%3E%3Cline x1='21' y1='12' x2='9' y2='12'%3E%3C/line%3E%3C/svg%3E");
}

/* Right Content Area Card */
.woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
  background: #ffffff !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-xl, 16px) !important;
  padding: clamp(1.5rem, 3.5vw, 2.75rem) !important;
  box-shadow: var(--uc-shadow-card, 0 4px 20px -2px rgba(18, 33, 25, 0.05)) !important;
}

.woocommerce-MyAccount-content p {
  font-size: var(--uc-fz-base, 0.95rem) !important;
  line-height: 1.65 !important;
  color: var(--uc-text-secondary, #475569) !important;
  margin-bottom: 1.25rem !important;
}

.woocommerce-MyAccount-content p a {
  color: var(--uc-brand-green, #23633d) !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

.woocommerce-MyAccount-content p a:hover {
  color: var(--uc-brand-dark, #28362e) !important;
}

/* ==========================================================================
   Customer Login & Registration Page (#customer_login)
   ========================================================================== */
#customer_login::before,
#customer_login::after,
.col2-set#customer_login::before,
.col2-set#customer_login::after,
.u-columns#customer_login::before,
.u-columns#customer_login::after {
  content: none !important;
  display: none !important;
}

#customer_login.col2-set,
.woocommerce #customer_login,
.woocommerce-account #customer_login,
#customer_login {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 2rem !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 1.5rem 0 3.5rem 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  float: none !important;
  clear: both !important;
}

.woocommerce-account #customer_login .u-column1,
#customer_login .col-1,
#customer_login .u-column1 {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

.woocommerce-account #customer_login .u-column2,
#customer_login .col-2,
#customer_login .u-column2 {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

@media (max-width: 860px) {
  #customer_login.col2-set,
  .woocommerce #customer_login,
  .woocommerce-account #customer_login,
  #customer_login {
    grid-template-columns: 1fr !important;
    gap: 1.75rem !important;
  }

  .woocommerce-account #customer_login .u-column1,
  #customer_login .col-1,
  #customer_login .u-column1 {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .woocommerce-account #customer_login .u-column2,
  #customer_login .col-2,
  #customer_login .u-column2 {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }
}

.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2,
#customer_login .col-1,
#customer_login .col-2,
#customer_login .u-column1,
#customer_login .u-column2 {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 2.25rem 2.5rem !important;
  background: #ffffff !important;
  border: 1.5px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-xl, 16px) !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05) !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.woocommerce-account #customer_login .u-column1:hover,
.woocommerce-account #customer_login .u-column2:hover,
#customer_login .col-1:hover,
#customer_login .col-2:hover {
  box-shadow: 0 8px 30px -4px rgba(35, 99, 61, 0.08) !important;
}

#customer_login h2 {
  font-size: 1.45rem !important;
  font-weight: 800 !important;
  color: var(--uc-brand-dark, #163323) !important;
  margin: 0 0 1.5rem 0 !important;
  padding-bottom: 0.85rem !important;
  border-bottom: 1.5px solid var(--uc-border-light, #f1f5f9) !important;
  line-height: 1.2 !important;
}

#customer_login form.login,
#customer_login form.register,
#customer_login form.woocommerce-form-login,
#customer_login form.woocommerce-form-register {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

#customer_login .form-row {
  width: 100% !important;
  margin: 0 0 1.15rem 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
  display: flex !important;
  flex-direction: column !important;
}

#customer_login label {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: var(--uc-brand-dark, #28362e) !important;
  margin-bottom: 0.4rem !important;
  line-height: 1.3 !important;
}

#customer_login input.input-text {
  width: 100% !important;
  height: 48px !important;
  background-color: var(--uc-surface, #f8faf9) !important;
  border: 1.5px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  padding: 0 1rem !important;
  font-size: 0.95rem !important;
  color: var(--uc-text, #1e293b) !important;
  font-family: inherit !important;
  box-sizing: border-box !important;
  transition: all 0.15s ease !important;
}

#customer_login input.input-text:focus {
  background-color: #ffffff !important;
  border-color: var(--uc-brand-green, #23633d) !important;
  box-shadow: 0 0 0 3px rgba(35, 99, 61, 0.12) !important;
  outline: none !important;
}

#customer_login .password-input {
  position: relative !important;
  width: 100% !important;
  display: block !important;
}

#customer_login .password-input input {
  padding-right: 44px !important;
}

#customer_login .show-password-input {
  position: absolute !important;
  right: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  cursor: pointer !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  width: 24px !important;
  height: 24px !important;
  opacity: 0.55 !important;
  transition: opacity 0.15s ease !important;
}

#customer_login .show-password-input:hover {
  opacity: 1 !important;
}

#customer_login label.woocommerce-form-login__rememberme {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 0.55rem !important;
  font-size: 0.82rem !important;
  color: var(--uc-text-secondary, #475569) !important;
  cursor: pointer !important;
  margin: 0.25rem 0 1.25rem 0 !important;
  font-weight: 400 !important;
}

#customer_login label.woocommerce-form-login__rememberme input.woocommerce-form__input-checkbox {
  width: 16px !important;
  height: 16px !important;
  accent-color: var(--uc-brand-green, #23633d) !important;
  margin: 0 !important;
  cursor: pointer !important;
}

#customer_login button.woocommerce-form-login__submit,
#customer_login button.woocommerce-form-register__submit,
#customer_login button[name="login"],
#customer_login button[name="register"] {
  width: 100% !important;
  height: 48px !important;
  background: linear-gradient(135deg, var(--uc-brand-green, #23633d) 0%, #194a2d 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px -2px rgba(35, 99, 61, 0.35) !important;
  transition: all 0.2s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 0.5rem !important;
}

#customer_login button.woocommerce-form-login__submit:hover,
#customer_login button.woocommerce-form-register__submit:hover,
#customer_login button[name="login"]:hover,
#customer_login button[name="register"]:hover {
  background: linear-gradient(135deg, #2b774a 0%, #153e26 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px -2px rgba(35, 99, 61, 0.45) !important;
}

#customer_login .lost_password {
  margin: 1.15rem 0 0 0 !important;
  text-align: center !important;
  font-size: 0.85rem !important;
}

#customer_login .lost_password a {
  color: var(--uc-brand-green, #23633d) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  font-weight: 500 !important;
}

#customer_login .lost_password a:hover {
  color: var(--uc-brand-dark, #163323) !important;
}

#customer_login .woocommerce-form-register p:not(.form-row) {
  font-size: 0.82rem !important;
  color: var(--uc-text-secondary, #64748b) !important;
  line-height: 1.45 !important;
  margin: 0 0 1rem 0 !important;
}

#customer_login .woocommerce-privacy-policy-text {
  display: block !important;
  font-size: 0.72rem !important;
  color: var(--uc-text-muted, #64748b) !important;
  line-height: 1.4 !important;
  margin: 0.5rem 0 1rem 0 !important;
}

#customer_login .woocommerce-privacy-policy-text a {
  color: var(--uc-brand-green, #23633d) !important;
  text-decoration: underline !important;
}

/* Forms (Edit Account / Profile / Address / Login) */
.woocommerce-EditAccountForm,
.woocommerce-address-fields {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.85rem !important;
}

.woocommerce-EditAccountForm .form-row,
.woocommerce-address-fields .form-row {
  margin: 0 0 1rem 0 !important;
  padding: 0 !important;
}

.woocommerce-account .form-row.form-row-first {
  float: left !important;
  width: 48.5% !important;
}

.woocommerce-account .form-row.form-row-last {
  float: right !important;
  width: 48.5% !important;
}

.woocommerce-account .form-row.form-row-wide {
  clear: both !important;
  width: 100% !important;
}

.woocommerce-account .clear {
  clear: both !important;
}

/* Labels */
.woocommerce-account label {
  display: block !important;
  font-size: var(--uc-fz-sm, 0.875rem) !important;
  font-weight: 600 !important;
  color: var(--uc-brand-dark, #28362e) !important;
  margin-bottom: 0.35rem !important;
}

.woocommerce-account label .required {
  color: #dc2626 !important;
  text-decoration: none !important;
}

/* Input Fields */
.woocommerce-account input.input-text,
.woocommerce-account select,
.woocommerce-account textarea {
  width: 100% !important;
  height: 48px !important;
  background-color: var(--uc-surface, #f8faf9) !important;
  border: 1.5px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  padding: 0.65rem 1rem !important;
  font-size: var(--uc-fz-base, 0.95rem) !important;
  color: var(--uc-text, #1e293b) !important;
  font-family: inherit !important;
  transition: all var(--uc-transition-fast, 0.15s ease) !important;
  box-sizing: border-box !important;
}

.woocommerce-account textarea {
  height: auto !important;
  min-height: 110px !important;
}

.woocommerce-account input.input-text:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus {
  background-color: #ffffff !important;
  border-color: var(--uc-brand-green, #23633d) !important;
  box-shadow: 0 0 0 3px rgba(35, 99, 61, 0.12) !important;
  outline: none !important;
}

/* Description spans under inputs */
.woocommerce-account span[id$="_description"] {
  display: block !important;
  font-size: var(--uc-fz-xs, 0.8rem) !important;
  color: var(--uc-text-muted, #64748b) !important;
  margin-top: 0.35rem !important;
  font-style: normal !important;
  line-height: 1.4 !important;
}

.woocommerce-account span[id$="_description"] em {
  font-style: normal !important;
}

/* Password Input & Show Toggle */
.woocommerce-account span.password-input {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.woocommerce-account .show-password-input {
  position: absolute !important;
  right: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  cursor: pointer !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  width: 20px !important;
  height: 20px !important;
  opacity: 0.55 !important;
  transition: opacity 0.15s ease !important;
}

.woocommerce-account .show-password-input:hover {
  opacity: 1 !important;
}

/* Password Change Fieldset Box */
.woocommerce-EditAccountForm fieldset {
  border: 1.5px solid var(--uc-accent-mint-dark, #b8e6c4) !important;
  background: linear-gradient(135deg, var(--uc-accent-mint-light, #f2faf4) 0%, #ffffff 100%) !important;
  border-radius: var(--uc-radius-lg, 12px) !important;
  padding: 1.5rem !important;
  margin: 1.5rem 0 1.25rem 0 !important;
}

.woocommerce-EditAccountForm fieldset legend {
  font-size: var(--uc-fz-md, 1.05rem) !important;
  font-weight: 700 !important;
  color: var(--uc-brand-dark, #28362e) !important;
  padding: 0 0.65rem !important;
  margin-left: 0.5rem !important;
}

/* Primary Action Buttons */
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account a.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 48px !important;
  padding: 0 2.25rem !important;
  background: linear-gradient(135deg, var(--uc-brand-green, #23633d) 0%, #194a2d 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: var(--uc-radius-pill, 9999px) !important;
  font-size: var(--uc-fz-sm, 0.875rem) !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px -2px rgba(35, 99, 61, 0.35) !important;
  transition: all var(--uc-transition-base, 0.2s ease) !important;
  text-decoration: none !important;
}

.woocommerce-account button.button:hover,
.woocommerce-account input.button:hover,
.woocommerce-account a.button:hover {
  background: linear-gradient(135deg, #2b774a 0%, #153e26 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px -2px rgba(35, 99, 61, 0.45) !important;
  color: #ffffff !important;
}

/* Orders Table Modern Styling */
.woocommerce-orders-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-lg, 12px) !important;
  overflow: hidden !important;
  margin: 1.25rem 0 !important;
}

.woocommerce-orders-table th {
  background-color: var(--uc-surface, #f8faf9) !important;
  color: var(--uc-brand-dark, #28362e) !important;
  font-size: var(--uc-fz-xs, 0.8125rem) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 1rem 1.25rem !important;
  border-bottom: 1px solid var(--uc-border, #e2e8f0) !important;
  border-top: none !important;
}

.woocommerce-orders-table td {
  padding: 1.15rem 1.25rem !important;
  font-size: var(--uc-fz-sm, 0.875rem) !important;
  color: var(--uc-text, #1e293b) !important;
  border-bottom: 1px solid var(--uc-border-light, #edf2f7) !important;
  vertical-align: middle !important;
}

.woocommerce-orders-table tr:last-child td {
  border-bottom: none !important;
}

.woocommerce-orders-table tr:hover td {
  background-color: var(--uc-surface, #f8faf9) !important;
}

.woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions a.button {
  height: 36px !important;
  padding: 0 1.25rem !important;
  font-size: 0.8125rem !important;
}

/* Address Cards Grid */
.woocommerce-Addresses {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 1.5rem !important;
  margin-top: 1.25rem !important;
}

.woocommerce-Address {
  background: var(--uc-surface, #f8faf9) !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-lg, 12px) !important;
  padding: 1.5rem !important;
  box-shadow: var(--uc-shadow-xs, 0 1px 2px rgba(18, 33, 25, 0.05)) !important;
}

.woocommerce-Address header.title {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 1rem !important;
  padding-bottom: 0.75rem !important;
  border-bottom: 1px solid var(--uc-border-light, #edf2f7) !important;
}

.woocommerce-Address header.title h3 {
  font-size: var(--uc-fz-md, 1.1rem) !important;
  color: var(--uc-brand-dark, #28362e) !important;
  margin: 0 !important;
}

.woocommerce-Address header.title .edit {
  font-size: var(--uc-fz-xs, 0.8125rem) !important;
  font-weight: 700 !important;
  color: var(--uc-brand-green, #23633d) !important;
  text-decoration: none !important;
}

.woocommerce-Address address {
  font-style: normal !important;
  font-size: var(--uc-fz-sm, 0.875rem) !important;
  line-height: 1.6 !important;
  color: var(--uc-text-secondary, #475569) !important;
}

/* Responsive Account Layout */
@media (max-width: 860px) {
  .woocommerce-account.logged-in .woocommerce {
    grid-template-columns: 1fr !important;
    gap: 1.25rem !important;
  }

  .woocommerce-MyAccount-navigation {
    position: static !important;
  }

  .woocommerce-MyAccount-navigation ul {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)) !important;
    gap: 0.4rem !important;
  }

  .woocommerce-MyAccount-navigation-link a {
    padding: 0.65rem 0.75rem !important;
    font-size: 0.8125rem !important;
    flex-direction: column !important;
    text-align: center !important;
    gap: 0.35rem !important;
  }

  .woocommerce-MyAccount-navigation-link a::after {
    margin: 0 !important;
  }

  .woocommerce-MyAccount-navigation-link.is-active a::before {
    display: none !important;
  }

  .woocommerce-MyAccount-navigation-link--customer-logout {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: none !important;
  }

  .woocommerce-account #customer_login {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }

  .woocommerce-account .form-row.form-row-first,
  .woocommerce-account .form-row.form-row-last {
    float: none !important;
    width: 100% !important;
  }
}

/* Wishlist Table Styling in My Account */
.wcwc-wishlist-wrap {
  width: 100% !important;
  margin: 0 !important;
  border: 1px solid var(--uc-border, #e2e8f0) !important;
  border-radius: var(--uc-radius-lg, 12px) !important;
  overflow: hidden !important;
}

.wcwc-wishlist-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

.wcwc-wishlist-table thead th {
  background-color: var(--uc-surface, #f8faf9) !important;
  color: var(--uc-brand-dark, #28362e) !important;
  font-size: var(--uc-fz-xs, 0.8125rem) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 1rem 1.25rem !important;
  border-bottom: 1px solid var(--uc-border, #e2e8f0) !important;
}

.wcwc-wishlist-table tbody td {
  padding: 1.15rem 1.25rem !important;
  font-size: var(--uc-fz-sm, 0.875rem) !important;
  color: var(--uc-text, #1e293b) !important;
  border-bottom: 1px solid var(--uc-border-light, #edf2f7) !important;
  vertical-align: middle !important;
}

.wcwc-wishlist-table tbody tr:last-child td {
  border-bottom: none !important;
}

.wcwc-wishlist-image img {
  width: 64px !important;
  height: 64px !important;
  object-fit: cover !important;
  border-radius: var(--uc-radius-md, 8px) !important;
  display: block !important;
}

.wcwc-wishlist-name a {
  font-weight: 700 !important;
  color: var(--uc-brand-dark, #28362e) !important;
  text-decoration: none !important;
  font-size: 0.95rem !important;
  transition: color var(--uc-transition-fast) !important;
}

.wcwc-wishlist-name a:hover {
  color: var(--uc-brand-green, #23633d) !important;
}

.wcwc-wishlist-price {
  font-weight: 700 !important;
  color: var(--uc-brand-green, #23633d) !important;
  font-size: 1rem !important;
}

.wcwc-wishlist-cart a.button {
  height: 38px !important;
  padding: 0 1.25rem !important;
  font-size: 0.8125rem !important;
}

.wcwc-remove-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  color: #dc2626 !important;
  background-color: #fef2f2 !important;
  transition: all var(--uc-transition-fast) !important;
  text-decoration: none !important;
}

.wcwc-remove-btn:hover {
  background-color: #dc2626 !important;
  color: #ffffff !important;
  transform: scale(1.1) !important;
}

.wcwc-empty {
  text-align: center !important;
  padding: 3rem 1.5rem !important;
  color: var(--uc-text-secondary, #475569) !important;
  font-size: 1rem !important;
}