.mkp-commerce-page,.mkp-shop-placeholder{padding:46px 0 84px;background:var(--mkp-surface-soft);min-height:65vh}
.mkp-shop-placeholder section{max-width:820px;margin:0 auto;padding:42px;border:1px solid var(--mkp-border);border-radius:24px;background:var(--mkp-surface);text-align:center}
.mkp-shop-placeholder .mkp-v2-kicker{justify-content:center}.mkp-shop-placeholder h1{margin:6px 0;font-size:clamp(2.2rem,5vw,3.8rem)}.mkp-shop-placeholder p{margin:0;color:var(--mkp-muted);font-size:.78rem;line-height:1.95}
.mkp-commerce-page .woocommerce{color:var(--mkp-ink)}.mkp-commerce-page .woocommerce-breadcrumb{margin-bottom:22px;color:var(--mkp-muted);font-size:.6rem}
.mkp-commerce-page .woocommerce-result-count,.mkp-commerce-page .woocommerce-ordering{font-size:.62rem}
.mkp-commerce-page .woocommerce-ordering select{min-height:38px;padding:0 10px;border:1px solid var(--mkp-border);border-radius:10px;background:var(--mkp-surface);color:var(--mkp-ink);font:inherit}
.mkp-commerce-page ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0!important;padding:0!important}
.mkp-commerce-page ul.products::before,.mkp-commerce-page ul.products::after{display:none!important}
.mkp-commerce-page ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:12px!important;border:1px solid var(--mkp-border);border-radius:18px;background:var(--mkp-surface)}
.mkp-commerce-page ul.products li.product img{border-radius:13px}.mkp-commerce-page .woocommerce-loop-product__title{font-size:.82rem!important;line-height:1.65}.mkp-commerce-page .price{color:var(--mkp-accent-600)!important;font-size:.72rem!important;font-weight:900}
.mkp-commerce-page .button,.mkp-commerce-page button.button,.mkp-commerce-page input.button{min-height:38px;padding:8px 13px!important;border-radius:10px!important;background:var(--mkp-primary)!important;color:#fff!important;font:inherit!important;font-size:.62rem!important}
.mkp-commerce-page .button.alt,.mkp-commerce-page button.button.alt{background:var(--mkp-accent)!important}
.mkp-commerce-page .woocommerce-message,.mkp-commerce-page .woocommerce-info,.mkp-commerce-page .woocommerce-error{border:1px solid var(--mkp-border);border-top:0!important;border-right:3px solid var(--mkp-accent)!important;border-radius:12px;background:var(--mkp-surface);color:var(--mkp-ink);font-size:.64rem}
.mkp-commerce-page div.product{padding:20px;border:1px solid var(--mkp-border);border-radius:20px;background:var(--mkp-surface)}.mkp-commerce-page div.product .product_title{font-size:clamp(1.45rem,3vw,2.2rem)}.mkp-commerce-page div.product .woocommerce-product-gallery img{border-radius:16px}
.mkp-commerce-page .quantity .qty,.mkp-commerce-page input.input-text,.mkp-commerce-page textarea,.mkp-commerce-page select{border:1px solid var(--mkp-border);border-radius:9px;background:var(--mkp-surface-soft);color:var(--mkp-ink)}
@media(max-width:900px){.mkp-commerce-page ul.products{grid-template-columns:1fr 1fr}}
@media(max-width:580px){.mkp-commerce-page ul.products{grid-template-columns:1fr}.mkp-shop-placeholder section{padding:28px 18px}}


/* Phase 07-B — plugin-first skin: style native WooCommerce markup, do not replace behavior. */
body.woocommerce-cart .mkp-main,body.woocommerce-checkout .mkp-main{background:var(--mkp-surface-soft)}
body.woocommerce-cart .entry-content,body.woocommerce-checkout .entry-content{max-width:1180px;margin-inline:auto;padding:34px 18px 84px}
.woocommerce .cart_totals,.woocommerce-checkout-review-order,.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register,.woocommerce .woocommerce-MyAccount-content{
  border:1px solid var(--mkp-border);border-radius:16px;background:var(--mkp-surface);box-shadow:none
}
.woocommerce table.shop_table{overflow:hidden;border:1px solid var(--mkp-border)!important;border-radius:14px!important;background:var(--mkp-surface);border-collapse:separate!important}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px!important;border-color:var(--mkp-border)!important;font-size:.66rem}
.woocommerce a.remove{display:grid!important;place-items:center;width:28px!important;height:28px!important;border-radius:9px!important;color:#b64646!important;font-size:1.15rem!important}
.woocommerce a.remove:hover{background:rgba(182,70,70,.1)!important;color:#b64646!important}
.woocommerce .coupon{display:flex;gap:7px;flex-wrap:wrap}.woocommerce .coupon .input-text{min-width:180px!important}
.woocommerce form .form-row label{font-size:.62rem;font-weight:800;color:var(--mkp-ink)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce .select2-container--default .select2-selection--single{
  min-height:43px;padding:8px 10px;border:1px solid var(--mkp-border)!important;border-radius:10px!important;background:var(--mkp-surface-soft)!important;color:var(--mkp-ink)!important;font:inherit
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:26px;color:var(--mkp-ink)}
.woocommerce-checkout #payment{border:1px solid var(--mkp-border);border-radius:16px;background:var(--mkp-surface)!important}
.woocommerce-checkout #payment ul.payment_methods{border-color:var(--mkp-border)!important}.woocommerce-checkout #payment div.payment_box{border-radius:10px;background:var(--mkp-surface-soft)!important;color:var(--mkp-ink)!important}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--mkp-surface-soft)!important}
.woocommerce .woocommerce-tabs ul.tabs{display:flex;gap:6px;padding:0!important;margin:20px 0 12px!important;overflow:auto}.woocommerce .woocommerce-tabs ul.tabs::before{display:none!important}.woocommerce .woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;border:1px solid var(--mkp-border)!important;border-radius:10px!important;background:var(--mkp-surface-soft)!important}.woocommerce .woocommerce-tabs ul.tabs li::before,.woocommerce .woocommerce-tabs ul.tabs li::after{display:none!important}.woocommerce .woocommerce-tabs ul.tabs li a{padding:8px 12px!important;font-size:.61rem!important;color:var(--mkp-muted)!important}.woocommerce .woocommerce-tabs ul.tabs li.active{background:var(--mkp-accent-soft)!important}.woocommerce .woocommerce-tabs ul.tabs li.active a{color:var(--mkp-accent-600)!important}
.woocommerce div.product p.stock{color:var(--mkp-accent-600);font-size:.64rem;font-weight:850}.woocommerce div.product form.cart{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.woocommerce div.product .quantity .qty{min-height:40px}
.woocommerce nav.woocommerce-pagination ul{display:flex!important;gap:5px;border:0!important}.woocommerce nav.woocommerce-pagination ul li{border:0!important}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:grid!important;place-items:center!important;min-width:34px;height:34px;padding:0 8px!important;border:1px solid var(--mkp-border);border-radius:9px;background:var(--mkp-surface);color:var(--mkp-muted);font-size:.6rem}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--mkp-accent-soft);color:var(--mkp-accent-600);border-color:rgba(16,149,79,.25)}

/* WooCommerce Blocks — Cart / Checkout / Product Collection */
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{max-width:1180px;margin-inline:auto!important;color:var(--mkp-ink)}
.wc-block-components-sidebar,.wc-block-cart-items,.wc-block-components-order-summary,.wc-block-checkout__order-notes,.wc-block-checkout__payment-method,.wc-block-components-totals-wrapper{
  border-color:var(--mkp-border)!important
}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,.wc-block-components-address-form input{
  border:1px solid var(--mkp-border)!important;border-radius:10px!important;background:var(--mkp-surface)!important;color:var(--mkp-ink)!important
}
.wc-block-components-button,.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{border-radius:11px!important;background:var(--mkp-primary)!important;color:#fff!important;font-family:inherit!important}
.wc-block-components-product-name,.wc-block-components-totals-item__label,.wc-block-components-totals-item__value{color:var(--mkp-ink)!important}
.wc-block-components-radio-control-accordion-option,.wc-block-components-checkout-step{border-color:var(--mkp-border)!important}
.wc-block-components-radio-control-accordion-option{background:var(--mkp-surface)!important}
.wc-block-components-notice-banner{border-radius:11px!important;border-color:var(--mkp-border)!important;background:var(--mkp-surface)!important;color:var(--mkp-ink)!important}
html[data-mkp-theme="dark"] .select2-dropdown,html[data-mkp-theme="dark"] .select2-results__option{background:#102b31;color:#e8f4ef}
html[data-mkp-theme="dark"] .wc-block-components-radio-control-accordion-option,html[data-mkp-theme="dark"] .wc-block-components-sidebar{background:var(--mkp-surface)!important;color:var(--mkp-ink)!important}
@media(max-width:760px){.woocommerce table.shop_table_responsive tr{margin-bottom:10px;border:1px solid var(--mkp-border);border-radius:12px;background:var(--mkp-surface)}.woocommerce div.product{padding:14px}.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{padding-inline:10px}}


/* ==========================================================
   Phase 08-G.4 — WooCommerce native block layout fix
   Cart/Checkout are rendered outside the generic long-form shell.
   Woo keeps layout ownership; theme applies branded surfaces only.
   ========================================================== */

.mkp-commerce-native-page{
  min-height:68vh;
  padding:48px 0 92px;
  background:
    radial-gradient(circle at 82% 0%,rgba(16,149,79,.075),transparent 30rem),
    var(--mkp-bg);
}

.mkp-commerce-native-page>.mkp-container{
  width:min(1180px,calc(100% - 32px));
  max-width:1180px;
}

.mkp-commerce-native-head{
  margin:0 0 22px;
  text-align:center;
}

.mkp-commerce-native-head .mkp-v2-kicker{
  justify-content:center;
}

.mkp-commerce-native-head h1{
  margin:6px 0 0;
  color:var(--mkp-ink);
  font-family:var(--mkp-heading-font);
  font-size:clamp(1.55rem,2.5vw,2.3rem);
  line-height:1.45;
}

.mkp-commerce-native-content{
  width:100%;
  min-width:0;
  max-width:none;
}

/* Do not inherit generic article/long-form table rules. */
.mkp-commerce-native-content :where(table,thead,tbody,tr,th,td){
  margin:0;
}

.mkp-commerce-native-content :where(th,td){
  min-width:0;
}

.mkp-commerce-native-content :where(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout){
  width:100%;
  max-width:none;
  margin:0!important;
  color:var(--mkp-ink);
}

/* Keep Woo's own responsive layout engine. */
.mkp-commerce-native-content .wc-block-components-sidebar-layout{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  gap:22px;
}

.mkp-commerce-native-content .wc-block-components-main,
.mkp-commerce-native-content .wc-block-components-sidebar{
  min-width:0!important;
  max-width:none;
}

/* Cart main panel. */
.mkp-commerce-native-content .wc-block-cart-items{
  width:100%!important;
  max-width:100%!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:18px!important;
  background:var(--mkp-surface)!important;
  color:var(--mkp-ink)!important;
  box-shadow:none!important;
}

.mkp-commerce-native-content .wp-block-woocommerce-cart.is-large .wc-block-cart-items{
  display:table!important;
  table-layout:auto!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}

.mkp-commerce-native-content .wc-block-cart-items thead{
  background:var(--mkp-surface-soft);
}

.mkp-commerce-native-content .wc-block-cart-items th,
.mkp-commerce-native-content .wc-block-cart-items td{
  padding:13px 14px!important;
  border-color:var(--mkp-border)!important;
  color:var(--mkp-ink)!important;
  font-size:.64rem!important;
  line-height:1.75!important;
  vertical-align:middle!important;
}

.mkp-commerce-native-content .wc-block-cart-items th{
  color:var(--mkp-muted)!important;
  font-size:.56rem!important;
  font-weight:850!important;
}

.mkp-commerce-native-content .wc-block-components-product-name{
  color:var(--mkp-ink)!important;
  font-family:inherit!important;
  font-size:.7rem!important;
  font-weight:850!important;
  line-height:1.75!important;
  text-decoration:none!important;
}

.mkp-commerce-native-content .wc-block-components-product-metadata,
.mkp-commerce-native-content .wc-block-cart-item__prices,
.mkp-commerce-native-content .wc-block-components-product-price{
  color:var(--mkp-muted)!important;
  font-size:.56rem!important;
}

.mkp-commerce-native-content .wc-block-cart-item__image img{
  overflow:hidden;
  border:1px solid var(--mkp-border);
  border-radius:13px;
  background:var(--mkp-surface-soft);
  object-fit:cover;
}

/* Totals sidebar: let Woo position it; only skin it. */
.mkp-commerce-native-content .wc-block-components-sidebar{
  padding:18px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:18px!important;
  background:var(--mkp-surface)!important;
  color:var(--mkp-ink)!important;
  box-shadow:0 14px 34px rgba(11,40,48,.055);
}

.mkp-commerce-native-content .wc-block-components-totals-wrapper{
  padding:12px 0!important;
  border-color:var(--mkp-border)!important;
}

.mkp-commerce-native-content .wc-block-components-totals-item__label,
.mkp-commerce-native-content .wc-block-components-totals-item__value{
  color:var(--mkp-ink)!important;
  font-size:.64rem!important;
}

.mkp-commerce-native-content .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.mkp-commerce-native-content .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-size:.77rem!important;
  font-weight:900!important;
}

.mkp-commerce-native-content .wc-block-components-totals-coupon__button{
  color:var(--mkp-accent)!important;
  font-family:inherit!important;
  font-size:.58rem!important;
  font-weight:850!important;
}

.mkp-commerce-native-content .wc-block-components-quantity-selector{
  overflow:hidden;
  border:1px solid var(--mkp-border)!important;
  border-radius:9px!important;
  background:var(--mkp-surface-soft)!important;
}

.mkp-commerce-native-content .wc-block-components-quantity-selector input{
  color:var(--mkp-ink)!important;
}

.mkp-commerce-native-content .wc-block-cart-item__remove-link{
  color:#c25555!important;
  font-family:inherit!important;
  font-size:.55rem!important;
  text-decoration:none!important;
}

.mkp-commerce-native-content .wc-block-components-button,
.mkp-commerce-native-content .wc-block-cart__submit-button,
.mkp-commerce-native-content .wc-block-components-checkout-place-order-button{
  min-height:48px!important;
  border:0!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,var(--mkp-primary),var(--mkp-accent))!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:.66rem!important;
  font-weight:900!important;
  box-shadow:0 10px 24px rgba(16,149,79,.14);
}

/* Checkout: only surfaces, no manual column ownership. */
.mkp-commerce-native-content .wc-block-checkout__main{
  min-width:0;
}

.mkp-commerce-native-content .wc-block-components-checkout-step,
.mkp-commerce-native-content .wc-block-checkout__order-notes,
.mkp-commerce-native-content .wc-block-checkout__payment-method{
  border-color:var(--mkp-border)!important;
}

.mkp-commerce-native-content .wc-block-components-text-input input,
.mkp-commerce-native-content .wc-block-components-combobox-control input,
.mkp-commerce-native-content .wc-block-components-address-form input{
  min-height:44px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:10px!important;
  background:var(--mkp-surface-soft)!important;
  color:var(--mkp-ink)!important;
  font-family:inherit!important;
}

.mkp-commerce-native-content .wc-block-components-checkout-step__heading h2{
  color:var(--mkp-ink)!important;
  font-family:var(--mkp-heading-font)!important;
  font-size:.86rem!important;
}

/* Single product keeps branded layout, independent from Cart Blocks. */
body.single-product .mkp-commerce-page{
  min-height:70vh;
  padding:48px 0 92px;
  background:
    radial-gradient(circle at 86% 0%,rgba(16,149,79,.08),transparent 30rem),
    var(--mkp-bg);
}

body.single-product .mkp-commerce-page>.mkp-container{
  width:min(1180px,calc(100% - 32px));
}

body.single-product .woocommerce div.product{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:38px;
  align-items:start;
  padding:24px;
  border:1px solid var(--mkp-border);
  border-radius:24px;
  background:var(--mkp-surface);
  box-shadow:0 16px 42px rgba(11,40,48,.055);
}

body.single-product .woocommerce div.product div.images,
body.single-product .woocommerce div.product div.summary{
  float:none!important;
  width:auto!important;
  margin:0!important;
}

body.single-product .woocommerce div.product .woocommerce-product-gallery__wrapper{
  overflow:hidden;
  border:1px solid var(--mkp-border);
  border-radius:18px;
  background:var(--mkp-surface-soft);
}

body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{
  width:100%!important;
  aspect-ratio:1/1;
  object-fit:cover;
}

body.single-product .woocommerce div.product .summary{
  position:sticky;
  top:108px;
  padding:10px 2px;
}

body.single-product .woocommerce div.product .product_title{
  margin:0 0 9px!important;
  color:var(--mkp-ink);
  font-family:var(--mkp-heading-font);
  font-size:clamp(1.5rem,2.7vw,2.35rem)!important;
  line-height:1.5;
}

body.single-product .woocommerce div.product .price{
  margin:8px 0 15px!important;
  color:var(--mkp-accent)!important;
  font-size:.96rem!important;
  font-weight:950!important;
}

body.single-product .woocommerce-product-details__short-description{
  color:var(--mkp-muted);
  font-size:.72rem;
  line-height:2;
}

body.single-product .woocommerce div.product form.cart{
  display:flex!important;
  gap:9px;
  align-items:stretch!important;
  margin:17px 0!important;
  padding:13px;
  border:1px solid var(--mkp-border);
  border-radius:13px;
  background:var(--mkp-surface-soft);
}

body.single-product .woocommerce div.product form.cart .quantity .qty{
  width:70px!important;
  min-height:46px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:9px!important;
  background:var(--mkp-surface)!important;
  color:var(--mkp-ink)!important;
}

body.single-product .woocommerce div.product form.cart .single_add_to_cart_button{
  flex:1;
  min-height:46px!important;
  border:0!important;
  border-radius:9px!important;
  background:linear-gradient(135deg,var(--mkp-primary),var(--mkp-accent))!important;
  color:#fff!important;
  font-size:.66rem!important;
  font-weight:900!important;
}

body.single-product .woocommerce div.product .woocommerce-tabs,
body.single-product .woocommerce div.product .related,
body.single-product .woocommerce div.product .upsells{
  grid-column:1/-1;
}

/* Dark mode */
html[data-mkp-theme="dark"] .mkp-commerce-native-content .wc-block-cart-items,
html[data-mkp-theme="dark"] .mkp-commerce-native-content .wc-block-components-sidebar,
html[data-mkp-theme="dark"] body.single-product .woocommerce div.product{
  border-color:var(--mkp-border)!important;
  background:var(--mkp-surface)!important;
  color:var(--mkp-ink)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.14);
}

html[data-mkp-theme="dark"] .mkp-commerce-native-content .wc-block-cart-items thead,
html[data-mkp-theme="dark"] .mkp-commerce-native-content .wc-block-components-quantity-selector,
html[data-mkp-theme="dark"] body.single-product .woocommerce div.product form.cart{
  background:var(--mkp-surface-soft)!important;
}

/* Woo's own container classes decide stacking; theme only tightens spacing. */
@media(max-width:900px){
  .mkp-commerce-native-page{
    padding-top:36px;
  }

  .mkp-commerce-native-content .wc-block-components-sidebar{
    position:static!important;
    margin-top:14px!important;
  }

  body.single-product .woocommerce div.product{
    grid-template-columns:1fr;
    gap:22px;
  }

  body.single-product .woocommerce div.product .summary{
    position:static;
    padding:0;
  }

  body.single-product .woocommerce div.product .woocommerce-tabs,
  body.single-product .woocommerce div.product .related,
  body.single-product .woocommerce div.product .upsells{
    grid-column:auto;
  }
}

@media(max-width:620px){
  .mkp-commerce-native-page,
  body.single-product .mkp-commerce-page{
    padding:28px 0 74px;
  }

  .mkp-commerce-native-page>.mkp-container,
  body.single-product .mkp-commerce-page>.mkp-container{
    width:min(100% - 20px,1180px);
  }

  .mkp-commerce-native-head{
    margin-bottom:16px;
  }

  .mkp-commerce-native-head h1{
    font-size:1.35rem;
  }

  .mkp-commerce-native-content .wc-block-components-sidebar{
    padding:14px!important;
    border-radius:14px!important;
  }

  .mkp-commerce-native-content .wc-block-cart__submit-container{
    background:var(--mkp-bg)!important;
    color:var(--mkp-border)!important;
  }

  body.single-product .woocommerce div.product{
    padding:14px;
    border-radius:17px;
  }

  body.single-product .woocommerce div.product form.cart{
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr);
  }
}


/* ==========================================================
   Phase 08-G.5 — Cart + Single Product visual polish
   Based on live screenshots after structural Woo isolation.
   ========================================================== */

/* ---------- CART: centered, clean, fully rounded ---------- */
body.woocommerce-cart .mkp-commerce-native-head{
  width:100%;
  max-width:1080px;
  margin-inline:auto;
  text-align:center!important;
}

body.woocommerce-cart .mkp-commerce-native-head h1{
  width:100%;
  text-align:center!important;
}

body.woocommerce-cart .mkp-commerce-native-content{
  width:100%;
}

body.woocommerce-cart .mkp-commerce-native-content .wp-block-woocommerce-cart{
  width:min(100%,1080px)!important;
  max-width:1080px!important;
  margin-inline:auto!important;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-components-sidebar-layout{
  margin-inline:auto!important;
}

/* Force one visually coherent rounded shell around cart rows. */
body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items{
  overflow:hidden!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:20px!important;
  clip-path:inset(0 round 20px);
  background:var(--mkp-surface)!important;
  box-shadow:0 14px 36px rgba(11,40,48,.045)!important;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items thead{
  overflow:hidden;
  background:var(--mkp-surface-soft)!important;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items thead tr:first-child th:first-child{
  border-start-start-radius:19px;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items thead tr:first-child th:last-child{
  border-start-end-radius:19px;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items tbody tr:last-child td:first-child{
  border-end-start-radius:19px;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items tbody tr:last-child td:last-child{
  border-end-end-radius:19px;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items td{
  background:var(--mkp-surface)!important;
}

/* Product row feels like one designed component rather than a raw table. */
body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-item__image img{
  width:68px!important;
  height:68px!important;
  padding:3px;
  border:1px solid var(--mkp-border)!important;
  border-radius:14px!important;
  background:var(--mkp-surface-soft)!important;
  object-fit:cover!important;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-item__product{
  padding-block:18px!important;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-components-product-name{
  display:inline-block;
  margin-bottom:4px!important;
  font-size:.72rem!important;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-item__total{
  padding-inline-end:18px!important;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-components-quantity-selector{
  width:max-content!important;
  min-width:104px;
  margin-top:8px;
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-item__remove-link{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:28px;
  margin-top:8px!important;
  padding:3px 7px!important;
  border-radius:8px;
  background:rgba(194,85,85,.07);
}

body.woocommerce-cart .mkp-commerce-native-content .wc-block-components-sidebar{
  border-radius:20px!important;
}

/* ---------- SINGLE PRODUCT: premium balanced top section ---------- */
body.single-product .woocommerce div.product{
  position:relative;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:34px;
  padding:26px;
  border-radius:26px;
  overflow:visible;
}

body.single-product .woocommerce div.product div.images{
  grid-column:2;
  grid-row:1;
}

body.single-product .woocommerce div.product div.summary{
  grid-column:1;
  grid-row:1;
  position:relative!important;
  top:auto!important;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:100%;
  padding:8px 4px 0;
}

/* Product media */
body.single-product .woocommerce div.product .woocommerce-product-gallery{
  min-width:0;
}

body.single-product .woocommerce div.product .woocommerce-product-gallery__wrapper{
  position:relative;
  overflow:hidden;
  border:1px solid var(--mkp-border);
  border-radius:22px;
  background:
    radial-gradient(circle at 50% 20%,rgba(16,149,79,.055),transparent 18rem),
    var(--mkp-surface-soft);
}

body.single-product .woocommerce div.product .woocommerce-product-gallery__image{
  overflow:hidden;
  border-radius:21px;
}

body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{
  display:block;
}

body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:420px;
  max-height:540px;
  aspect-ratio:1/1;
  object-fit:contain!important;
  padding:22px;
  border-radius:21px!important;
  background:var(--mkp-surface-soft);
}

/* Sale badge: brand green, never Woo gold. */
body.single-product .woocommerce span.onsale,
body.woocommerce-shop .woocommerce span.onsale,
body.post-type-archive-product .woocommerce span.onsale{
  z-index:4!important;
  min-width:auto!important;
  min-height:auto!important;
  margin:0!important;
  padding:6px 10px!important;
  border:1px solid rgba(16,149,79,.26)!important;
  border-radius:999px!important;
  background:#a9edc5!important;
  color:#075c31!important;
  box-shadow:0 8px 22px rgba(16,149,79,.12)!important;
  font-size:.56rem!important;
  font-weight:950!important;
  line-height:1.2!important;
}

html[data-mkp-theme="dark"] body.single-product .woocommerce span.onsale,
html[data-mkp-theme="dark"] body.woocommerce-shop .woocommerce span.onsale,
html[data-mkp-theme="dark"] body.post-type-archive-product .woocommerce span.onsale{
  border-color:rgba(92,228,151,.28)!important;
  background:#63d99a!important;
  color:#062b1a!important;
}

/* Summary hierarchy */
body.single-product .woocommerce div.product .product_title{
  max-width:18ch;
  margin-bottom:12px!important;
  text-wrap:balance;
}

body.single-product .woocommerce div.product .price{
  display:flex;
  gap:7px;
  align-items:baseline;
  flex-wrap:wrap;
  margin-bottom:14px!important;
}

body.single-product .woocommerce div.product .price del{
  color:var(--mkp-muted)!important;
  opacity:.62;
  font-size:.68rem;
}

body.single-product .woocommerce div.product .price ins{
  color:var(--mkp-accent)!important;
  text-decoration:none!important;
}

body.single-product .woocommerce-product-details__short-description{
  max-width:58ch;
  margin-bottom:16px;
}

/* Category/tag meta becomes its own clean information card. */
body.single-product .woocommerce div.product .product_meta{
  order:4;
  display:flex!important;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  margin:4px 0 18px!important;
  padding:12px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:13px!important;
  background:var(--mkp-surface-soft)!important;
  color:var(--mkp-muted)!important;
  font-size:.56rem!important;
  line-height:1.8;
}

body.single-product .woocommerce div.product .product_meta>span{
  display:inline-flex;
  gap:5px;
  align-items:center;
  flex-wrap:wrap;
}

body.single-product .woocommerce div.product .product_meta>span+span{
  padding-inline-start:8px;
  border-inline-start:1px solid var(--mkp-border);
}

body.single-product .woocommerce div.product .product_meta a{
  display:inline-flex;
  align-items:center;
  min-height:27px;
  padding:3px 8px;
  border:1px solid rgba(16,149,79,.18);
  border-radius:999px;
  background:rgba(16,149,79,.08);
  color:var(--mkp-accent)!important;
  font-size:.54rem;
  font-weight:850;
  text-decoration:none!important;
}

/* Use flex order so metadata stays above CTA and CTA can sit at image baseline. */
body.single-product .woocommerce div.product .summary>.product_title{order:1}
body.single-product .woocommerce div.product .summary>.woocommerce-product-rating{order:2}
body.single-product .woocommerce div.product .summary>.price{order:2}
body.single-product .woocommerce div.product .summary>.woocommerce-product-details__short-description{order:3}
body.single-product .woocommerce div.product .summary>form.cart{order:5}

/* CTA is pushed to the physical bottom/left of the summary column. */
body.single-product .woocommerce div.product form.cart{
  align-self:stretch;
  justify-content:flex-end!important;
  margin:auto 0 0!important;
  padding:13px!important;
  border-radius:13px!important;
}

body.single-product .woocommerce div.product form.cart .quantity{
  flex:0 0 auto;
}

body.single-product .woocommerce div.product form.cart .single_add_to_cart_button{
  flex:0 1 auto!important;
  min-width:160px;
  padding-inline:20px!important;
}

/* Keep meta from being stranded after CTA if Woo emits custom spans. */
body.single-product .woocommerce div.product .summary>*:not(.product_title):not(.woocommerce-product-rating):not(.price):not(.woocommerce-product-details__short-description):not(.product_meta):not(form.cart){
  order:3;
}

/* Tabs become a clear second section. */
body.single-product .woocommerce div.product .woocommerce-tabs{
  grid-column:1/-1;
  margin:34px 0 0!important;
  padding:28px 0 0;
  border-top:1px solid var(--mkp-border);
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{
  justify-content:flex-start;
}

body.single-product .woocommerce div.product .woocommerce-Tabs-panel{
  margin-top:0!important;
  padding:18px!important;
  border:1px solid var(--mkp-border);
  border-radius:15px;
  background:var(--mkp-surface-soft);
}

/* Related products: dedicated full-width footer section at bottom. */
body.single-product .woocommerce div.product .related,
body.single-product .woocommerce div.product .upsells{
  grid-column:1/-1;
  width:auto;
  margin:34px -26px -26px!important;
  padding:30px 26px 32px!important;
  border-top:1px solid var(--mkp-border);
  border-radius:0 0 26px 26px;
  background:
    radial-gradient(circle at 85% 0%,rgba(16,149,79,.06),transparent 22rem),
    var(--mkp-surface-soft);
}

body.single-product .woocommerce div.product .related>h2,
body.single-product .woocommerce div.product .upsells>h2{
  margin:0 0 16px!important;
  font-size:1.05rem!important;
}

body.single-product .woocommerce div.product .related ul.products,
body.single-product .woocommerce div.product .upsells ul.products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin:0!important;
}

body.single-product .woocommerce div.product .related ul.products li.product,
body.single-product .woocommerce div.product .upsells ul.products li.product{
  min-width:0;
  border-radius:16px!important;
}

/* Dark polish */
html[data-mkp-theme="dark"] body.single-product .woocommerce div.product .product_meta,
html[data-mkp-theme="dark"] body.single-product .woocommerce div.product .woocommerce-Tabs-panel{
  background:var(--mkp-surface-soft)!important;
}

html[data-mkp-theme="dark"] body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items td{
  background:var(--mkp-surface)!important;
}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  body.single-product .woocommerce div.product{
    grid-template-columns:1fr;
  }

  body.single-product .woocommerce div.product div.images,
  body.single-product .woocommerce div.product div.summary{
    grid-column:1;
    grid-row:auto;
  }

  body.single-product .woocommerce div.product div.images{
    order:1;
  }

  body.single-product .woocommerce div.product div.summary{
    order:2;
    min-height:0;
  }

  body.single-product .woocommerce div.product form.cart{
    margin-top:18px!important;
  }

  body.single-product .woocommerce div.product .woocommerce-tabs{
    grid-column:1;
  }

  body.single-product .woocommerce div.product .related,
  body.single-product .woocommerce div.product .upsells{
    grid-column:1;
  }
}

@media(max-width:620px){
  body.woocommerce-cart .mkp-commerce-native-content .wp-block-woocommerce-cart{
    width:100%!important;
  }

  body.woocommerce-cart .mkp-commerce-native-content .wc-block-cart-items{
    border-radius:15px!important;
    clip-path:inset(0 round 15px);
  }

  body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{
    min-height:0;
    max-height:none;
    padding:12px;
  }

  body.single-product .woocommerce div.product .product_meta{
    align-items:flex-start;
    flex-direction:column;
  }

  body.single-product .woocommerce div.product .product_meta>span+span{
    padding-inline-start:0;
    border-inline-start:0;
  }

  body.single-product .woocommerce div.product form.cart{
    grid-template-columns:68px minmax(0,1fr)!important;
  }

  body.single-product .woocommerce div.product form.cart .single_add_to_cart_button{
    width:100%;
    min-width:0;
  }

  body.single-product .woocommerce div.product .related,
  body.single-product .woocommerce div.product .upsells{
    margin:28px -14px -14px!important;
    padding:24px 14px 26px!important;
    border-radius:0 0 17px 17px;
  }

  body.single-product .woocommerce div.product .related ul.products,
  body.single-product .woocommerce div.product .upsells ul.products{
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   Phase 08-G.6 — Shop cards / filters / mobile real Woo route
   ========================================================== */

body.woocommerce-shop .mkp-commerce-page,
body.post-type-archive-product .mkp-commerce-page,
.mkp-commerce-page--fallback{
  padding:44px 0 92px;
  background:
    radial-gradient(circle at 88% 0%,rgba(16,149,79,.075),transparent 30rem),
    var(--mkp-bg);
}

body.woocommerce-shop .mkp-commerce-page>.mkp-container,
body.post-type-archive-product .mkp-commerce-page>.mkp-container,
.mkp-commerce-page--fallback>.mkp-container{
  width:min(1180px,calc(100% - 32px));
  max-width:1180px;
}

/* ---------- Filter / sorting toolbar ---------- */
.mkp-shop-toolbar{
  display:grid;
  gap:12px;
  margin:12px 0 24px;
  padding:14px;
  border:1px solid var(--mkp-border);
  border-radius:18px;
  background:var(--mkp-surface);
  box-shadow:0 12px 34px rgba(11,40,48,.045);
}

.mkp-shop-filters{
  display:grid;
  grid-template-columns:minmax(220px,1.3fr) minmax(170px,.8fr) minmax(150px,.7fr) auto;
  gap:9px;
  align-items:end;
}

.mkp-shop-filter{
  display:grid;
  gap:6px;
  min-width:0;
}

.mkp-shop-filter>span:first-child,
.mkp-shop-sort>span:first-child{
  color:var(--mkp-muted);
  font-size:.54rem;
  font-weight:850;
}

.mkp-shop-filter input,
.mkp-shop-select select,
.mkp-shop-sort .woocommerce-ordering select{
  width:100%;
  min-height:43px;
  padding:8px 11px;
  border:1px solid var(--mkp-border)!important;
  border-radius:11px!important;
  outline:0;
  background:var(--mkp-surface-soft)!important;
  color:var(--mkp-ink)!important;
  font:inherit!important;
  font-size:.61rem!important;
  box-shadow:none!important;
}

.mkp-shop-filter input:focus,
.mkp-shop-select select:focus,
.mkp-shop-sort .woocommerce-ordering select:focus{
  border-color:rgba(16,149,79,.42)!important;
  box-shadow:0 0 0 3px rgba(16,149,79,.08)!important;
}

.mkp-shop-select{
  position:relative;
  display:block;
}

.mkp-shop-select select,
.mkp-shop-sort select{
  appearance:none!important;
  -webkit-appearance:none!important;
  padding-left:34px!important;
}

.mkp-shop-select>svg,
.mkp-shop-sort>svg{
  position:absolute;
  left:11px;
  bottom:13px;
  width:16px;
  height:16px;
  pointer-events:none;
  fill:none;
  stroke:var(--mkp-muted);
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.mkp-shop-filter-actions{
  display:flex;
  gap:7px;
  align-items:center;
}

.mkp-shop-filter-actions button,
.mkp-shop-filter-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:43px;
  padding:8px 13px;
  border-radius:11px;
  font:inherit;
  font-size:.58rem;
  font-weight:900;
  text-decoration:none;
}

.mkp-shop-filter-actions button{
  border:0;
  background:linear-gradient(135deg,var(--mkp-primary),var(--mkp-accent));
  color:#fff;
  cursor:pointer;
}

.mkp-shop-filter-actions a{
  border:1px solid var(--mkp-border);
  background:var(--mkp-surface-soft);
  color:var(--mkp-muted);
}

.mkp-shop-toolbar__bottom{
  display:flex;
  gap:14px;
  align-items:end;
  justify-content:space-between;
  padding-top:11px;
  border-top:1px solid var(--mkp-border);
}

.mkp-shop-result-count .woocommerce-result-count{
  float:none!important;
  margin:0!important;
  color:var(--mkp-muted);
  font-size:.56rem;
}

.mkp-shop-sort{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(190px,240px);
  gap:8px;
  align-items:center;
}

.mkp-shop-sort>span:first-child{
  align-self:center;
}

.mkp-shop-sort .woocommerce-ordering{
  float:none!important;
  margin:0!important;
}

.mkp-shop-sort>svg{
  bottom:13px;
}

/* ---------- Product grid ---------- */
body.woocommerce-shop .mkp-commerce-page ul.products,
body.post-type-archive-product .mkp-commerce-page ul.products,
.mkp-commerce-page--fallback ul.products{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:0!important;
}

body.woocommerce-shop ul.products li.product,
body.post-type-archive-product ul.products li.product,
.mkp-commerce-page--fallback ul.products li.product{
  position:relative;
  display:flex!important;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  padding:13px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:20px!important;
  background:var(--mkp-surface)!important;
  box-shadow:0 12px 34px rgba(11,40,48,.04);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}

body.woocommerce-shop ul.products li.product:hover,
body.post-type-archive-product ul.products li.product:hover,
.mkp-commerce-page--fallback ul.products li.product:hover{
  transform:translateY(-3px);
  border-color:rgba(16,149,79,.26)!important;
  box-shadow:0 18px 42px rgba(11,40,48,.07);
}

body.woocommerce-shop ul.products li.product .woocommerce-LoopProduct-link,
body.post-type-archive-product ul.products li.product .woocommerce-LoopProduct-link,
.mkp-commerce-page--fallback ul.products li.product .woocommerce-LoopProduct-link{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
  color:inherit;
  text-decoration:none;
}

body.woocommerce-shop ul.products li.product img,
body.post-type-archive-product ul.products li.product img,
.mkp-commerce-page--fallback ul.products li.product img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:4/5;
  margin:0 0 12px!important;
  padding:10px;
  border:1px solid var(--mkp-border);
  border-radius:16px!important;
  background:var(--mkp-surface-soft);
  object-fit:contain;
}

body.woocommerce-shop .woocommerce-loop-product__title,
body.post-type-archive-product .woocommerce-loop-product__title,
.mkp-commerce-page--fallback .woocommerce-loop-product__title{
  margin:0!important;
  padding:4px 6px!important;
  color:var(--mkp-ink);
  font-size:.72rem!important;
  line-height:1.75;
  text-align:center;
  text-wrap:balance;
}

/* Price gets its own centered branded box. */
body.woocommerce-shop ul.products li.product .price,
body.post-type-archive-product ul.products li.product .price,
.mkp-commerce-page--fallback ul.products li.product .price{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:calc(100% - 12px);
  min-height:42px;
  margin:10px auto 12px!important;
  padding:7px 10px!important;
  border:1px solid rgba(16,149,79,.17);
  border-radius:12px;
  background:linear-gradient(145deg,rgba(16,149,79,.08),var(--mkp-surface-soft));
  color:var(--mkp-accent)!important;
  font-size:.67rem!important;
  font-weight:950!important;
  line-height:1.4;
  text-align:center;
}

body.woocommerce-shop ul.products li.product .price del,
body.post-type-archive-product ul.products li.product .price del,
.mkp-commerce-page--fallback ul.products li.product .price del{
  color:var(--mkp-muted)!important;
  font-size:.54rem!important;
  font-weight:700;
  opacity:.68;
}

body.woocommerce-shop ul.products li.product .price ins,
body.post-type-archive-product ul.products li.product .price ins,
.mkp-commerce-page--fallback ul.products li.product .price ins{
  color:var(--mkp-accent)!important;
  text-decoration:none!important;
}

.mkp-price-free{
  color:var(--mkp-accent)!important;
  font-size:.7rem;
  font-weight:950;
}

/* Physical left side of each RTL card. */
body.woocommerce-shop ul.products li.product>a.button,
body.post-type-archive-product ul.products li.product>a.button,
.mkp-commerce-page--fallback ul.products li.product>a.button{
  align-self:flex-start!important;
  min-height:40px;
  margin-top:auto!important;
  margin-right:auto!important;
  margin-left:0!important;
  padding:8px 13px!important;
  border-radius:10px!important;
  background:var(--mkp-primary)!important;
  color:#fff!important;
  font-size:.58rem!important;
  font-weight:900!important;
}

body.woocommerce-shop ul.products li.product>a.button:hover,
body.post-type-archive-product ul.products li.product>a.button:hover,
.mkp-commerce-page--fallback ul.products li.product>a.button:hover{
  background:var(--mkp-accent)!important;
}

/* Sale badge — broad selectors because Woo can render classic/block variants. */
body.woocommerce-shop .onsale,
body.post-type-archive-product .onsale,
.mkp-commerce-page--fallback .onsale,
body.woocommerce-shop .wc-block-grid__product-onsale,
body.post-type-archive-product .wc-block-grid__product-onsale,
body.woocommerce-shop .wc-block-components-product-sale-badge,
body.post-type-archive-product .wc-block-components-product-sale-badge{
  z-index:5!important;
  top:12px!important;
  right:12px!important;
  left:auto!important;
  min-width:auto!important;
  min-height:auto!important;
  padding:6px 10px!important;
  border:1px solid rgba(16,149,79,.28)!important;
  border-radius:999px!important;
  background:#a9edc5!important;
  background-color:#a9edc5!important;
  color:#075c31!important;
  box-shadow:0 8px 22px rgba(16,149,79,.13)!important;
  font-size:.55rem!important;
  font-weight:950!important;
  line-height:1.2!important;
}

html[data-mkp-theme="dark"] body.woocommerce-shop .onsale,
html[data-mkp-theme="dark"] body.post-type-archive-product .onsale,
html[data-mkp-theme="dark"] .mkp-commerce-page--fallback .onsale{
  border-color:rgba(99,217,154,.35)!important;
  background:#63d99a!important;
  background-color:#63d99a!important;
  color:#062b1a!important;
}

/* ---------- Mobile ---------- */
@media(max-width:900px){
  .mkp-shop-filters{
    grid-template-columns:1fr 1fr;
  }

  .mkp-shop-filter--search,
  .mkp-shop-filter-actions{
    grid-column:1/-1;
  }

  body.woocommerce-shop .mkp-commerce-page ul.products,
  body.post-type-archive-product .mkp-commerce-page ul.products,
  .mkp-commerce-page--fallback ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:620px){
  body.woocommerce-shop .mkp-commerce-page,
  body.post-type-archive-product .mkp-commerce-page,
  .mkp-commerce-page--fallback{
    padding:28px 0 76px;
  }

  body.woocommerce-shop .mkp-commerce-page>.mkp-container,
  body.post-type-archive-product .mkp-commerce-page>.mkp-container,
  .mkp-commerce-page--fallback>.mkp-container{
    width:min(100% - 20px,1180px);
  }

  .mkp-shop-toolbar{
    padding:11px;
    border-radius:15px;
  }

  .mkp-shop-filters{
    grid-template-columns:1fr;
  }

  .mkp-shop-filter--search,
  .mkp-shop-filter-actions{
    grid-column:auto;
  }

  .mkp-shop-filter-actions{
    justify-content:stretch;
  }

  .mkp-shop-filter-actions button{
    flex:1;
  }

  .mkp-shop-toolbar__bottom{
    display:grid;
    gap:9px;
  }

  .mkp-shop-sort{
    grid-template-columns:1fr;
  }

  .mkp-shop-sort>svg{
    bottom:13px;
  }

  body.woocommerce-shop .mkp-commerce-page ul.products,
  body.post-type-archive-product .mkp-commerce-page ul.products,
  .mkp-commerce-page--fallback ul.products{
    grid-template-columns:1fr!important;
    gap:11px;
  }

  body.woocommerce-shop ul.products li.product,
  body.post-type-archive-product ul.products li.product,
  .mkp-commerce-page--fallback ul.products li.product{
    padding:11px!important;
    border-radius:16px!important;
  }

  body.woocommerce-shop ul.products li.product img,
  body.post-type-archive-product ul.products li.product img,
  .mkp-commerce-page--fallback ul.products li.product img{
    aspect-ratio:16/12;
    padding:8px;
    object-fit:contain;
  }
}


/* ==========================================================
   Phase 08-G.7 — Shop price visibility / custom toolbar / mobile route
   ========================================================== */

/* ---------- Price hierarchy ---------- */
body.woocommerce-shop ul.products li.product .price,
body.post-type-archive-product ul.products li.product .price,
.mkp-commerce-page--fallback ul.products li.product .price{
  min-height:52px!important;
  gap:9px!important;
  padding:9px 12px!important;
  border-color:rgba(16,149,79,.24)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(16,149,79,.09),transparent 75%),
    var(--mkp-surface-soft)!important;
  font-size:.86rem!important;
  line-height:1.5!important;
}

/* Current / discounted price: primary visual anchor. */
body.woocommerce-shop ul.products li.product .price ins,
body.post-type-archive-product ul.products li.product .price ins,
.mkp-commerce-page--fallback ul.products li.product .price ins{
  color:#1cc76d!important;
  font-size:.92rem!important;
  font-weight:950!important;
  text-decoration:none!important;
  opacity:1!important;
}

body.woocommerce-shop ul.products li.product .price ins .woocommerce-Price-amount,
body.post-type-archive-product ul.products li.product .price ins .woocommerce-Price-amount,
.mkp-commerce-page--fallback ul.products li.product .price ins .woocommerce-Price-amount{
  color:#1cc76d!important;
  font-size:.92rem!important;
  font-weight:950!important;
}

/* Old price: visible red strike-through, not a tiny gray afterthought. */
body.woocommerce-shop ul.products li.product .price del,
body.post-type-archive-product ul.products li.product .price del,
.mkp-commerce-page--fallback ul.products li.product .price del{
  color:#e76868!important;
  font-size:.7rem!important;
  font-weight:800!important;
  opacity:.9!important;
  text-decoration-line:line-through!important;
  text-decoration-color:#ff5f68!important;
  text-decoration-thickness:2px!important;
}

body.woocommerce-shop ul.products li.product .price del .woocommerce-Price-amount,
body.post-type-archive-product ul.products li.product .price del .woocommerce-Price-amount,
.mkp-commerce-page--fallback ul.products li.product .price del .woocommerce-Price-amount{
  color:#e76868!important;
  font-size:.7rem!important;
  font-weight:800!important;
}

body.woocommerce-shop ul.products li.product .price>.woocommerce-Price-amount,
body.post-type-archive-product ul.products li.product .price>.woocommerce-Price-amount,
.mkp-commerce-page--fallback ul.products li.product .price>.woocommerce-Price-amount,
.mkp-price-free{
  color:#1cc76d!important;
  font-size:.9rem!important;
  font-weight:950!important;
}

body.woocommerce-shop ul.products li.product .price .woocommerce-Price-currencySymbol,
body.post-type-archive-product ul.products li.product .price .woocommerce-Price-currencySymbol,
.mkp-commerce-page--fallback ul.products li.product .price .woocommerce-Price-currencySymbol{
  font-size:.66em!important;
  font-weight:850!important;
}

/* ---------- Entirely custom toolbar: no browser-native open select menus ---------- */
.mkp-shop-toolbar{
  position:relative;
  z-index:12;
  gap:13px!important;
  padding:15px!important;
  border-radius:20px!important;
  background:
    linear-gradient(145deg,rgba(16,149,79,.025),transparent 45%),
    var(--mkp-surface)!important;
}

.mkp-shop-toolbar__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 2px 12px;
  border-bottom:1px solid var(--mkp-border);
}

.mkp-shop-toolbar__head>div:first-child{
  display:grid;
  gap:2px;
}

.mkp-shop-toolbar__head strong{
  color:var(--mkp-ink);
  font-size:.72rem;
  font-weight:950;
}

.mkp-shop-toolbar__head span{
  color:var(--mkp-muted);
  font-size:.52rem;
}

.mkp-shop-toolbar__head .woocommerce-result-count{
  float:none!important;
  margin:0!important;
  color:var(--mkp-muted);
  font-size:.56rem!important;
}

.mkp-shop-toolbar__controls{
  display:grid;
  grid-template-columns:minmax(260px,1.35fr) repeat(3,minmax(160px,.72fr)) auto;
  gap:9px;
  align-items:stretch;
}

.mkp-shop-search{
  position:relative;
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto;
  align-items:center;
  min-height:52px;
  padding:5px 5px 5px 8px;
  border:1px solid var(--mkp-border);
  border-radius:13px;
  background:var(--mkp-surface-soft);
}

.mkp-shop-search:focus-within{
  border-color:rgba(16,149,79,.4);
  box-shadow:0 0 0 3px rgba(16,149,79,.07);
}

.mkp-shop-search__icon{
  display:grid;
  place-items:center;
  color:var(--mkp-muted);
}

.mkp-shop-search__icon svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
}

.mkp-shop-search input{
  width:100%;
  min-width:0;
  height:40px;
  padding:0 7px;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:var(--mkp-ink)!important;
  font:inherit!important;
  font-size:.62rem!important;
  box-shadow:none!important;
}

.mkp-shop-search button{
  min-height:40px;
  padding:7px 13px;
  border:0;
  border-radius:9px;
  background:var(--mkp-primary);
  color:#fff;
  font:inherit;
  font-size:.57rem;
  font-weight:900;
  cursor:pointer;
}

.mkp-shop-search button:hover{
  background:var(--mkp-accent);
}

.mkp-shop-dropdown{
  position:relative;
  min-width:0;
  margin:0;
}

.mkp-shop-dropdown>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  min-height:52px;
  padding:7px 11px;
  border:1px solid var(--mkp-border);
  border-radius:13px;
  background:var(--mkp-surface-soft);
  color:var(--mkp-ink);
  cursor:pointer;
  list-style:none;
  user-select:none;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}

.mkp-shop-dropdown>summary::-webkit-details-marker{
  display:none;
}

.mkp-shop-dropdown>summary::marker{
  display:none;
  content:"";
}

.mkp-shop-dropdown[open]>summary,
.mkp-shop-dropdown>summary:hover{
  border-color:rgba(16,149,79,.36);
  background:rgba(16,149,79,.055);
  box-shadow:0 0 0 3px rgba(16,149,79,.06);
}

.mkp-shop-dropdown>summary>span{
  display:grid;
  gap:2px;
  min-width:0;
}

.mkp-shop-dropdown>summary small{
  color:var(--mkp-muted);
  font-size:.48rem;
  font-weight:800;
}

.mkp-shop-dropdown>summary strong{
  overflow:hidden;
  color:var(--mkp-ink);
  font-size:.59rem;
  font-weight:900;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.mkp-shop-dropdown>summary>svg{
  width:16px;
  height:16px;
  flex:0 0 auto;
  fill:none;
  stroke:var(--mkp-muted);
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:transform .18s ease;
}

.mkp-shop-dropdown[open]>summary>svg{
  transform:rotate(180deg);
}

.mkp-shop-dropdown__menu{
  position:absolute;
  z-index:80;
  top:calc(100% + 7px);
  right:0;
  left:0;
  display:grid;
  gap:3px;
  max-height:280px;
  overflow:auto;
  padding:7px;
  border:1px solid var(--mkp-border);
  border-radius:13px;
  background:var(--mkp-surface);
  box-shadow:0 18px 46px rgba(5,25,31,.18);
}

.mkp-shop-dropdown__menu a{
  display:flex;
  align-items:center;
  min-height:37px;
  padding:7px 9px;
  border-radius:9px;
  color:var(--mkp-muted)!important;
  font-size:.56rem;
  font-weight:800;
  line-height:1.6;
  text-decoration:none!important;
}

.mkp-shop-dropdown__menu a:hover{
  background:var(--mkp-surface-soft);
  color:var(--mkp-ink)!important;
}

.mkp-shop-dropdown__menu a.is-active{
  background:rgba(16,149,79,.11);
  color:var(--mkp-accent)!important;
}

.mkp-shop-reset{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:8px 11px;
  border:1px solid var(--mkp-border);
  border-radius:13px;
  background:var(--mkp-surface-soft);
  color:var(--mkp-muted)!important;
  font-size:.54rem;
  font-weight:850;
  text-decoration:none!important;
}

/* Remove obsolete G.6 native-sort row when old markup is cached/mixed. */
.mkp-shop-toolbar>.mkp-shop-filters,
.mkp-shop-toolbar>.mkp-shop-toolbar__bottom{
  display:none!important;
}

/* Fallback Shop page is real content, not "later". */
.mkp-shop-fallback-head{
  display:grid;
  justify-items:center;
  margin:0 0 22px;
  text-align:center;
}

.mkp-shop-fallback-head .mkp-v2-kicker{
  justify-content:center;
}

.mkp-shop-fallback-head h1{
  margin:5px 0 0;
  color:var(--mkp-ink);
  font-size:clamp(1.5rem,3vw,2.3rem);
}

/* Dark mode custom menus */
html[data-mkp-theme="dark"] .mkp-shop-dropdown__menu{
  background:var(--mkp-surface)!important;
  box-shadow:0 20px 50px rgba(0,0,0,.34);
}

@media(max-width:1050px){
  .mkp-shop-toolbar__controls{
    grid-template-columns:1fr 1fr;
  }

  .mkp-shop-search{
    grid-column:1/-1;
  }
}

@media(max-width:620px){
  .mkp-shop-toolbar{
    margin-top:8px;
    padding:11px!important;
    border-radius:16px!important;
  }

  .mkp-shop-toolbar__head{
    display:grid;
    gap:7px;
  }

  .mkp-shop-toolbar__controls{
    grid-template-columns:1fr;
  }

  .mkp-shop-search{
    grid-column:auto;
  }

  .mkp-shop-dropdown__menu{
    position:static;
    margin-top:6px;
    box-shadow:none;
  }

  body.woocommerce-shop ul.products li.product .price,
  body.post-type-archive-product ul.products li.product .price,
  .mkp-commerce-page--fallback ul.products li.product .price{
    min-height:50px!important;
    font-size:.86rem!important;
  }
}


/* ==========================================================
   Phase 08-G.8 — Price order / Product purchase / Meta card / Mobile shop
   ========================================================== */

/* ---------- Archive prices: old price TOP, discounted price BELOW ---------- */
body.woocommerce-shop ul.products li.product .price,
body.post-type-archive-product ul.products li.product .price,
.mkp-commerce-page--fallback ul.products li.product .price{
  flex-direction:column!important;
  gap:3px!important;
}

body.woocommerce-shop ul.products li.product .price del,
body.post-type-archive-product ul.products li.product .price del,
.mkp-commerce-page--fallback ul.products li.product .price del{
  order:1!important;
  display:block!important;
  margin:0!important;
}

body.woocommerce-shop ul.products li.product .price ins,
body.post-type-archive-product ul.products li.product .price ins,
.mkp-commerce-page--fallback ul.products li.product .price ins,
body.woocommerce-shop ul.products li.product .price>.woocommerce-Price-amount,
body.post-type-archive-product ul.products li.product .price>.woocommerce-Price-amount,
.mkp-commerce-page--fallback ul.products li.product .price>.woocommerce-Price-amount,
.mkp-commerce-page--fallback .mkp-price-free{
  order:2!important;
  display:block!important;
  margin:0!important;
}

/* Woo outputs number + currency inside BDI. Reverse the inline-flex so "ریال"
   is physically LEFT of the number in RTL visual presentation. */
body.woocommerce-shop .price .woocommerce-Price-amount bdi,
body.post-type-archive-product .price .woocommerce-Price-amount bdi,
.mkp-commerce-page--fallback .price .woocommerce-Price-amount bdi,
body.single-product .mkp-product-purchase .woocommerce-Price-amount bdi{
  display:inline-flex!important;
  flex-direction:row-reverse!important;
  align-items:baseline;
  gap:.3em;
  direction:ltr!important;
  unicode-bidi:isolate;
}

body.woocommerce-shop .price .woocommerce-Price-currencySymbol,
body.post-type-archive-product .price .woocommerce-Price-currencySymbol,
.mkp-commerce-page--fallback .price .woocommerce-Price-currencySymbol,
body.single-product .mkp-product-purchase .woocommerce-Price-currencySymbol{
  display:inline-block;
  color:inherit!important;
}

/* ---------- Single product summary is a stable vertical composition ---------- */
body.single-product .woocommerce div.product .summary{
  display:flex!important;
  flex-direction:column!important;
  height:100%;
  min-height:100%;
}

body.single-product .woocommerce div.product .summary>.product_title{
  order:1!important;
}

body.single-product .woocommerce div.product .summary>.woocommerce-product-rating{
  order:2!important;
}

body.single-product .woocommerce div.product .summary>.woocommerce-product-details__short-description{
  order:3!important;
}

body.single-product .woocommerce div.product .summary>.mkp-product-meta-card{
  order:4!important;
}

body.single-product .woocommerce div.product .summary>.mkp-product-purchase{
  order:10!important;
}

/* Remove visual effect of legacy default product_meta if another plugin emits it. */
body.single-product .woocommerce div.product .summary>.product_meta{
  display:none!important;
}

/* ---------- Graphic category/tag card ---------- */
.mkp-product-meta-card{
  display:grid;
  gap:8px;
  width:100%;
  margin:16px 0 20px;
  padding:11px;
  border:1px solid var(--mkp-border);
  border-radius:15px;
  background:
    radial-gradient(circle at 88% 0%,rgba(16,149,79,.075),transparent 13rem),
    var(--mkp-surface-soft);
}

.mkp-product-meta-card__row{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:9px;
  align-items:center;
  min-width:0;
  padding:9px;
  border:1px solid var(--mkp-border);
  border-radius:11px;
  background:var(--mkp-surface);
}

.mkp-product-meta-card__icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid rgba(16,149,79,.18);
  border-radius:11px;
  background:rgba(16,149,79,.09);
  color:var(--mkp-accent);
}

.mkp-product-meta-card__icon svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.mkp-product-meta-card__row>div{
  display:grid;
  gap:6px;
  min-width:0;
}

.mkp-product-meta-card__row strong{
  color:var(--mkp-muted);
  font-size:.53rem;
  font-weight:900;
}

.mkp-product-meta-card__chips{
  display:flex;
  gap:5px;
  flex-wrap:wrap;
}

.mkp-product-meta-card__chips a{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:4px 9px;
  border:1px solid rgba(16,149,79,.18);
  border-radius:999px;
  background:rgba(16,149,79,.08);
  color:var(--mkp-accent)!important;
  font-size:.55rem;
  font-weight:900;
  text-decoration:none!important;
}

/* ---------- Purchase box: pinned to bottom-left of summary ---------- */
.mkp-product-purchase{
  display:grid;
  gap:8px;
  width:min(100%,390px);
  margin-top:auto!important;
  margin-right:auto!important;
  margin-left:0!important;
  padding-top:12px;
}

.mkp-product-purchase__price{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:64px;
  padding:10px 13px;
  border:1px solid rgba(16,149,79,.22);
  border-radius:13px;
  background:
    linear-gradient(145deg,rgba(16,149,79,.09),transparent),
    var(--mkp-surface-soft);
}

.mkp-product-purchase__price .price{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:3px!important;
  margin:0!important;
  color:var(--mkp-accent)!important;
}

.mkp-product-purchase__price .price del{
  order:1;
  color:#e76868!important;
  font-size:.72rem!important;
  font-weight:800!important;
  opacity:.92!important;
  text-decoration-line:line-through!important;
  text-decoration-color:#ff5f68!important;
  text-decoration-thickness:2px!important;
}

.mkp-product-purchase__price .price ins,
.mkp-product-purchase__price .price>.woocommerce-Price-amount{
  order:2;
  color:#1cc76d!important;
  font-size:1rem!important;
  font-weight:950!important;
  text-decoration:none!important;
}

.mkp-product-purchase__action{
  width:100%;
}

body.single-product .mkp-product-purchase form.cart{
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-end!important;
  width:100%!important;
  margin:0!important;
  padding:10px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:13px!important;
  background:var(--mkp-surface-soft)!important;
}

body.single-product .mkp-product-purchase form.cart .quantity{
  flex:0 0 auto!important;
}

body.single-product .mkp-product-purchase form.cart .single_add_to_cart_button{
  flex:0 1 auto!important;
  min-width:180px!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Green sale badge remains consistent everywhere. */
body.single-product .woocommerce span.onsale,
body.woocommerce-shop .woocommerce span.onsale,
body.post-type-archive-product .woocommerce span.onsale,
.mkp-commerce-page--fallback .onsale{
  background:#a9edc5!important;
  background-color:#a9edc5!important;
  color:#075c31!important;
  border-color:rgba(16,149,79,.28)!important;
}

/* Related/upsell must stay below the main product composition. */
body.single-product .woocommerce div.product .woocommerce-tabs,
body.single-product .woocommerce div.product .related,
body.single-product .woocommerce div.product .upsells{
  grid-column:1/-1!important;
}

body.single-product .woocommerce div.product .related,
body.single-product .woocommerce div.product .upsells{
  clear:both;
  width:auto!important;
}

/* Fallback mobile shop products stay visible regardless of archive body classes. */
@media(max-width:620px){
  .mkp-commerce-page--fallback ul.products{
    display:grid!important;
    grid-template-columns:1fr!important;
    opacity:1!important;
    visibility:visible!important;
  }

  .mkp-commerce-page--fallback ul.products li.product{
    display:flex!important;
  }

  body.single-product .mkp-product-purchase{
    width:100%;
    margin-inline:0!important;
  }

  body.single-product .mkp-product-purchase form.cart{
    display:grid!important;
    grid-template-columns:68px minmax(0,1fr)!important;
  }

  body.single-product .mkp-product-purchase form.cart .single_add_to_cart_button{
    width:100%!important;
    min-width:0!important;
  }
}


/* ==========================================================
   Phase 08-G.9 — Product bottom dock / explicit price unit / gallery badge
   ========================================================== */

/* ---------- Explicit Iranian price layout ---------- */
/* G8's row-reverse heuristic is superseded by explicit price wrappers. */
.woocommerce-Price-amount bdi:has(.mkp-price-unit){
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  gap:.32em!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
  white-space:nowrap;
}

.mkp-price-unit{
  order:1!important;
  display:inline-flex!important;
  align-items:baseline;
  direction:rtl!important;
  unicode-bidi:isolate!important;
  color:inherit;
  font-size:.72em;
  font-weight:850;
}

.mkp-price-number{
  order:2!important;
  display:inline-block!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
  color:inherit;
  font-size:1em;
  font-weight:inherit;
}

/* Disable the earlier BDI row-reverse rule specifically for the new markup. */
body.woocommerce-shop .price .woocommerce-Price-amount bdi:has(.mkp-price-unit),
body.post-type-archive-product .price .woocommerce-Price-amount bdi:has(.mkp-price-unit),
.mkp-commerce-page--fallback .price .woocommerce-Price-amount bdi:has(.mkp-price-unit),
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit){
  flex-direction:row!important;
}

/* ---------- Single product: equal-height image/summary row ---------- */
body.single-product .woocommerce div.product{
  align-items:stretch!important;
}

body.single-product .woocommerce div.product div.images{
  position:relative!important;
  align-self:stretch;
}

body.single-product .woocommerce div.product .summary{
  align-self:stretch!important;
  height:auto!important;
  min-height:100%!important;
}

/* ---------- Sale badge lives INSIDE gallery ---------- */
body.single-product .woocommerce div.product>span.onsale{
  display:none!important;
}

body.single-product .woocommerce-product-gallery{
  position:relative!important;
}

body.single-product .mkp-product-gallery-sale{
  position:absolute!important;
  z-index:8!important;
  top:12px!important;
  right:12px!important;
  left:auto!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto!important;
  min-width:auto!important;
  height:auto!important;
  min-height:29px!important;
  margin:0!important;
  padding:6px 11px!important;
  border:1px solid rgba(16,149,79,.3)!important;
  border-radius:999px!important;
  background:#a9edc5!important;
  background-color:#a9edc5!important;
  color:#075c31!important;
  box-shadow:0 8px 22px rgba(16,149,79,.14)!important;
  font-size:.55rem!important;
  font-weight:950!important;
  line-height:1!important;
}

/* ---------- Bottom dock fills the empty area beside the image ---------- */
body.single-product .woocommerce div.product .summary>.mkp-product-bottom-dock{
  order:20!important;
}

.mkp-product-bottom-dock{
  display:grid;
  grid-template-columns:minmax(245px,300px) minmax(0,1fr);
  grid-template-areas:"purchase meta";
  gap:10px;
  align-items:stretch;
  width:100%;
  margin-top:auto!important;
  padding-top:18px;
}

.mkp-product-bottom-dock__purchase{
  grid-area:purchase;
  min-width:0;
}

.mkp-product-bottom-dock__meta{
  grid-area:meta;
  min-width:0;
}

/* Meta now lives in the empty bottom area nearer to the image. */
.mkp-product-bottom-dock .mkp-product-meta-card{
  height:100%;
  margin:0!important;
  padding:9px!important;
  gap:7px!important;
  border-radius:14px!important;
}

.mkp-product-bottom-dock .mkp-product-meta-card__row{
  grid-template-columns:34px minmax(0,1fr);
  gap:8px;
  padding:7px!important;
}

.mkp-product-bottom-dock .mkp-product-meta-card__icon{
  width:34px;
  height:34px;
  border-radius:10px;
}

.mkp-product-bottom-dock .mkp-product-meta-card__icon svg{
  width:17px;
  height:17px;
}

.mkp-product-bottom-dock .mkp-product-meta-card__chips a{
  min-height:25px;
  padding:3px 7px;
  font-size:.52rem;
}

/* ---------- Price + Add to Cart become ONE compact purchase card ---------- */
.mkp-product-bottom-dock .mkp-product-purchase{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  width:100%!important;
  height:100%;
  margin:0!important;
  padding:9px!important;
  border:1px solid var(--mkp-border);
  border-radius:14px;
  background:
    radial-gradient(circle at 50% 0%,rgba(16,149,79,.075),transparent 12rem),
    var(--mkp-surface-soft);
}

.mkp-product-bottom-dock .mkp-product-purchase__price{
  min-height:auto!important;
  padding:8px 8px 9px!important;
  border:0!important;
  border-bottom:1px solid var(--mkp-border)!important;
  border-radius:0!important;
  background:transparent!important;
}

.mkp-product-bottom-dock .mkp-product-purchase__price .price{
  gap:2px!important;
}

.mkp-product-bottom-dock .mkp-product-purchase__price .price del{
  font-size:.62rem!important;
}

.mkp-product-bottom-dock .mkp-product-purchase__price .price ins,
.mkp-product-bottom-dock .mkp-product-purchase__price .price>.woocommerce-Price-amount{
  font-size:.82rem!important;
}

.mkp-product-bottom-dock .mkp-product-purchase__action{
  display:flex;
  align-items:flex-end;
  flex:1;
  width:100%;
  padding-top:8px;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  gap:7px!important;
  align-items:stretch!important;
  width:100%!important;
  margin:auto 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .quantity .qty{
  width:58px!important;
  min-height:42px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .single_add_to_cart_button{
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  padding:7px 10px!important;
  font-size:.57rem!important;
}

/* Any old standalone meta/purchase block outside the dock must not duplicate. */
body.single-product .summary>.mkp-product-meta-card,
body.single-product .summary>.mkp-product-purchase{
  display:none!important;
}

/* ---------- Mobile ---------- */
@media(max-width:900px){
  .mkp-product-bottom-dock{
    grid-template-columns:1fr;
    grid-template-areas:
      "meta"
      "purchase";
    margin-top:18px!important;
  }

  .mkp-product-bottom-dock .mkp-product-purchase{
    height:auto;
  }
}

@media(max-width:620px){
  body.single-product .mkp-product-gallery-sale{
    top:8px!important;
    right:8px!important;
  }

  .mkp-product-bottom-dock{
    gap:8px;
    padding-top:12px;
  }

  .mkp-product-bottom-dock .mkp-product-meta-card{
    height:auto;
  }

  /* Legacy /shop/ fallback: do not allow any responsive placeholder/grid rule
     to hide real products. */
  body .mkp-commerce-page--fallback,
  body .mkp-commerce-page--fallback>.mkp-container,
  body .mkp-commerce-page--fallback .woocommerce,
  body .mkp-commerce-page--fallback ul.products{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    max-height:none!important;
  }

  body .mkp-commerce-page--fallback ul.products{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
}


/* ==========================================================
   Phase 08-G.10 — Exact product dock / price / sale polish
   ========================================================== */

/* Iranian price: NUMBER right, "ریال" physical left */
.woocommerce-Price-amount bdi:has(.mkp-price-unit){
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  gap:.34em!important;
  direction:rtl!important;
  unicode-bidi:isolate!important;
  white-space:nowrap!important;
}

.woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number{
  order:1!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
}

.woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit{
  order:2!important;
  direction:rtl!important;
  unicode-bidi:isolate!important;
}

/* Product dock: physical LEFT purchase, physical RIGHT meta */
.mkp-product-bottom-dock{
  direction:ltr!important;
  grid-template-columns:minmax(270px,320px) minmax(0,1fr)!important;
  grid-template-areas:"purchase meta"!important;
  gap:10px!important;
  align-items:stretch!important;
}

.mkp-product-bottom-dock__purchase{
  grid-area:purchase!important;
  direction:rtl!important;
}

.mkp-product-bottom-dock__meta{
  grid-area:meta!important;
  direction:rtl!important;
}

.mkp-product-bottom-dock .mkp-product-meta-card{
  min-height:100%!important;
  align-content:center;
}

/* One compact purchase card */
.mkp-product-bottom-dock .mkp-product-purchase{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  padding:10px!important;
  border-radius:14px!important;
}

.mkp-product-bottom-dock .mkp-product-purchase__price{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:54px!important;
  padding:7px 8px 9px!important;
}

.mkp-product-bottom-dock .mkp-product-purchase__price .price{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  width:100%;
}

.mkp-product-bottom-dock .mkp-product-purchase__price .price del{
  font-size:.62rem!important;
  line-height:1.35!important;
}

.mkp-product-bottom-dock .mkp-product-purchase__price .price ins,
.mkp-product-bottom-dock .mkp-product-purchase__price .price>.woocommerce-Price-amount{
  font-size:.86rem!important;
  line-height:1.35!important;
}

/* Quantity RIGHT, wide button LEFT, same row */
body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
  display:flex!important;
  flex-direction:row!important;
  direction:rtl!important;
  align-items:stretch!important;
  gap:8px!important;
  width:100%!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .quantity{
  order:1!important;
  flex:0 0 58px!important;
  width:58px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .quantity .qty{
  width:58px!important;
  min-width:58px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  text-align:center!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .single_add_to_cart_button{
  order:2!important;
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  min-height:44px!important;
  padding:8px 18px!important;
  font-size:.6rem!important;
  white-space:nowrap!important;
}

/* Sale badge: ONLY on gallery image */
body.single-product .woocommerce div.product>span.onsale,
body.single-product .woocommerce div.product>.onsale{
  display:none!important;
}

body.single-product .woocommerce-product-gallery .mkp-product-gallery-sale{
  top:10px!important;
  right:10px!important;
  left:auto!important;
  display:inline-flex!important;
  min-height:28px!important;
  padding:6px 10px!important;
  border:1px solid rgba(16,149,79,.32)!important;
  border-radius:999px!important;
  background:#a9edc5!important;
  background-color:#a9edc5!important;
  color:#075c31!important;
  box-shadow:0 8px 22px rgba(16,149,79,.15)!important;
}

/* Shop cards use the same green sale badge */
body.woocommerce-shop .onsale,
body.post-type-archive-product .onsale,
.mkp-commerce-page--fallback .onsale{
  background:#a9edc5!important;
  background-color:#a9edc5!important;
  color:#075c31!important;
  border-color:rgba(16,149,79,.3)!important;
}

@media(max-width:900px){
  .mkp-product-bottom-dock{
    direction:rtl!important;
    grid-template-columns:1fr!important;
    grid-template-areas:
      "meta"
      "purchase"!important;
  }

  .mkp-product-bottom-dock__purchase,
  .mkp-product-bottom-dock__meta{
    direction:rtl!important;
  }
}

@media(max-width:620px){
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
    display:flex!important;
    flex-direction:row!important;
    direction:rtl!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .quantity{
    flex:0 0 58px!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .single_add_to_cart_button{
    flex:1 1 auto!important;
  }
}


/* ==========================================================
   Phase 08-G.11 — Left-unit price + bottom-aligned product dock
   ========================================================== */

/* Force Iranian visual order to be: NUMBER on the right, UNIT on the left. */
body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit),
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit),
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit),
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit){
  display:inline-flex!important;
  flex-direction:row!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
  align-items:baseline!important;
  gap:.30em!important;
  white-space:nowrap!important;
}

body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit{
  order:1!important;
  direction:rtl!important;
  unicode-bidi:isolate!important;
}

body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number{
  order:2!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
}

/* Keep the summary column stretched and let the description absorb free space
   so the bottom dock sits visually lower and touches the image bottom line. */
body.single-product .woocommerce div.product{
  align-items:stretch!important;
}

body.single-product .woocommerce div.product .summary{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  min-height:100%!important;
}

body.single-product .woocommerce div.product .summary>.woocommerce-product-details__short-description{
  flex:1 1 auto!important;
  margin-bottom:0!important;
}

body.single-product .woocommerce div.product .summary>.mkp-product-bottom-dock{
  margin-top:auto!important;
  padding-top:12px!important;
}

/* Two bottom cards in one row, visually aligned to the image baseline. */
body.single-product .mkp-product-bottom-dock{
  direction:ltr!important;
  grid-template-columns:minmax(290px,1fr) minmax(210px,240px)!important;
  grid-template-areas:"purchase meta"!important;
  align-items:end!important;
  gap:12px!important;
}

body.single-product .mkp-product-bottom-dock__purchase{
  grid-area:purchase!important;
  direction:rtl!important;
}

body.single-product .mkp-product-bottom-dock__meta{
  grid-area:meta!important;
  direction:rtl!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase,
body.single-product .mkp-product-bottom-dock .mkp-product-meta-card{
  min-height:150px!important;
  height:100%!important;
}

/* Refine the purchase card only a little — no visual redesign. */
body.single-product .mkp-product-bottom-dock .mkp-product-purchase{
  padding:12px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price{
  min-height:64px!important;
  padding:10px 12px 12px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price .price del{
  font-size:.72rem!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price .price ins,
body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price .price>.woocommerce-Price-amount{
  font-size:1rem!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase__action{
  padding-top:12px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
  display:flex!important;
  flex-direction:row!important;
  direction:rtl!important;
  align-items:stretch!important;
  gap:10px!important;
  width:100%!important;
  margin-top:auto!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .single_add_to_cart_button{
  flex:1 1 auto!important;
  min-height:46px!important;
  padding:10px 18px!important;
  font-size:.66rem!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .quantity{
  flex:0 0 58px!important;
  width:58px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .quantity .qty{
  height:46px!important;
  min-height:46px!important;
}

/* On narrow screens stack safely without breaking the mobile fix path. */
@media(max-width:900px){
  body.single-product .mkp-product-bottom-dock{
    direction:rtl!important;
    grid-template-columns:1fr!important;
    grid-template-areas:
      "meta"
      "purchase"!important;
    align-items:stretch!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card{
    min-height:auto!important;
    height:auto!important;
  }
}


/* ==========================================================
   Phase 08-G.12 — Product dock, related center, tabs box, mobile order
   ========================================================== */

/* Price visual order: amount first, currency unit after it, so in RTL the unit sits on the left side. */
body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit),
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit),
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit),
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit){
  display:inline-flex!important;
  flex-direction:row!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
  align-items:baseline!important;
  gap:.28em!important;
  white-space:nowrap!important;
}

body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number{
  order:1!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
}

body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit{
  order:2!important;
  direction:rtl!important;
  unicode-bidi:isolate!important;
}

/* Single product: keep the dock low and aligned to the image base line. */
body.single-product .woocommerce div.product .summary{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
}

body.single-product .woocommerce div.product .summary>.woocommerce-product-details__short-description{
  flex:1 1 auto!important;
}

body.single-product .woocommerce div.product .summary>.mkp-product-bottom-dock{
  margin-top:auto!important;
  padding-top:8px!important;
}

body.single-product .mkp-product-bottom-dock{
  direction:ltr!important;
  grid-template-columns:minmax(280px,1fr) minmax(210px,240px)!important;
  grid-template-areas:"purchase meta"!important;
  align-items:end!important;
  gap:12px!important;
}

body.single-product .mkp-product-bottom-dock__purchase{
  grid-area:purchase!important;
  direction:rtl!important;
  align-self:end!important;
}

body.single-product .mkp-product-bottom-dock__meta{
  grid-area:meta!important;
  direction:rtl!important;
  align-self:end!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase,
body.single-product .mkp-product-bottom-dock .mkp-product-meta-card{
  height:100%!important;
  min-height:142px!important;
}

/* Tabs + description + comments in a clearer boxed section. */
body.single-product .woocommerce div.product .woocommerce-tabs{
  grid-column:1/-1!important;
  margin:32px 0 0!important;
  padding:18px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:22px!important;
  background:var(--mkp-surface-soft)!important;
  box-shadow:0 14px 34px rgba(2,18,25,.18)!important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{
  margin:0 0 14px!important;
}

body.single-product .woocommerce div.product .woocommerce-Tabs-panel{
  border-radius:18px!important;
  background:rgba(255,255,255,.02)!important;
}

/* Related products centered and cleaner. */
body.single-product .woocommerce div.product .related>h2,
body.single-product .woocommerce div.product .upsells>h2{
  text-align:center!important;
}

body.single-product .woocommerce div.product .related ul.products,
body.single-product .woocommerce div.product .upsells ul.products{
  grid-template-columns:repeat(auto-fit,minmax(220px,320px))!important;
  justify-content:center!important;
}

body.single-product .woocommerce div.product .related ul.products li.product,
body.single-product .woocommerce div.product .upsells ul.products li.product{
  margin-inline:auto!important;
}

/* Mobile: swap card order, center everything, keep product UI readable. */
@media(max-width:900px){
  body.single-product .mkp-product-bottom-dock{
    direction:rtl!important;
    grid-template-columns:1fr!important;
    grid-template-areas:
      "purchase"
      "meta"!important;
    align-items:stretch!important;
  }

  body.single-product .woocommerce div.product .summary,
  body.single-product .woocommerce div.product .summary>* ,
  body.single-product .woocommerce div.product .product_title,
  body.single-product .woocommerce div.product .woocommerce-product-details__short-description,
  body.single-product .woocommerce div.product .woocommerce-tabs,
  body.single-product .woocommerce div.product .woocommerce-Tabs-panel,
  body.single-product .woocommerce div.product .related,
  body.single-product .woocommerce div.product .upsells{
    text-align:center!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__row,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__chips,
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price .price,
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
    justify-content:center!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
    margin-inline:auto!important;
  }

  body.single-product .woocommerce div.product .related ul.products,
  body.single-product .woocommerce div.product .upsells ul.products{
    grid-template-columns:minmax(0,1fr)!important;
  }
}


/* ==========================================================
   Phase 08-G.13 — Exact single-product layout + mobile polish
   Final scoped overrides for the six requested items.
   ========================================================== */

/* 1) Iranian price: NUMBER physically right, ریال physically left. */
body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit),
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit),
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit),
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit){
  display:inline-flex!important;
  flex-direction:row!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
  align-items:baseline!important;
  gap:.30em!important;
  white-space:nowrap!important;
}

body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit,
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-unit{
  order:1!important;
  direction:rtl!important;
  unicode-bidi:isolate!important;
}

body.woocommerce-shop .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
body.post-type-archive-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
body.single-product .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number,
.mkp-commerce-page--fallback .woocommerce-Price-amount bdi:has(.mkp-price-unit) .mkp-price-number{
  order:2!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
}

/* 2) Desktop: both bottom cards stay on ONE row and touch gallery baseline. */
body.single-product .woocommerce div.product{
  align-items:start!important;
}

body.single-product .woocommerce div.product .summary{
  display:flex!important;
  flex-direction:column!important;
  align-self:start!important;
  height:auto!important;
  box-sizing:border-box!important;
}

body.single-product .woocommerce div.product .summary>.woocommerce-product-details__short-description{
  flex:0 0 auto!important;
  margin-bottom:0!important;
}

body.single-product .woocommerce div.product .summary>.mkp-product-bottom-dock{
  order:20!important;
  margin-top:auto!important;
  padding-top:10px!important;
}

body.single-product .mkp-product-bottom-dock{
  display:grid!important;
  direction:ltr!important;
  grid-template-columns:minmax(290px,1fr) minmax(220px,245px)!important;
  grid-template-areas:"purchase meta"!important;
  gap:12px!important;
  align-items:end!important;
  width:100%!important;
}

body.single-product .mkp-product-bottom-dock__purchase{
  grid-area:purchase!important;
  direction:rtl!important;
  align-self:end!important;
}

body.single-product .mkp-product-bottom-dock__meta{
  grid-area:meta!important;
  direction:rtl!important;
  align-self:end!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase,
body.single-product .mkp-product-bottom-dock .mkp-product-meta-card{
  height:100%!important;
  min-height:142px!important;
  margin:0!important;
}

/* Purchase card remains compact but usable. */
body.single-product .mkp-product-bottom-dock .mkp-product-purchase{
  padding:11px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price{
  min-height:58px!important;
  padding:8px 10px 10px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase__action{
  padding-top:10px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
  display:flex!important;
  flex-direction:row!important;
  direction:rtl!important;
  align-items:stretch!important;
  gap:9px!important;
  width:100%!important;
  margin-top:auto!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .quantity{
  order:1!important;
  flex:0 0 58px!important;
  width:58px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .single_add_to_cart_button{
  order:2!important;
  flex:1 1 auto!important;
  min-width:0!important;
  min-height:46px!important;
  padding:10px 18px!important;
  font-size:.64rem!important;
}

/* 3) Description + Reviews/Tabs become one clear branded box. */
body.single-product .woocommerce div.product .woocommerce-tabs{
  grid-column:1/-1!important;
  width:100%!important;
  margin:32px 0 0!important;
  padding:18px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 88% 0%,rgba(16,149,79,.055),transparent 24rem),
    var(--mkp-surface-soft)!important;
  box-shadow:0 14px 36px rgba(2,18,25,.11)!important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex!important;
  justify-content:center!important;
  gap:7px!important;
  margin:0 0 14px!important;
  padding:0!important;
}

body.single-product .woocommerce div.product .woocommerce-Tabs-panel,
body.single-product .woocommerce div.product #reviews{
  margin:0!important;
  padding:18px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:17px!important;
  background:var(--mkp-surface)!important;
}

/* 4) Related / Upsell heading and actual product cards centered. */
body.single-product .woocommerce div.product .related,
body.single-product .woocommerce div.product .upsells{
  text-align:center!important;
}

body.single-product .woocommerce div.product .related>h2,
body.single-product .woocommerce div.product .upsells>h2{
  width:100%!important;
  margin-inline:auto!important;
  text-align:center!important;
}

body.single-product .woocommerce div.product .related ul.products,
body.single-product .woocommerce div.product .upsells ul.products{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,300px))!important;
  justify-content:center!important;
  justify-items:center!important;
  gap:14px!important;
  width:100%!important;
  margin-inline:auto!important;
}

body.single-product .woocommerce div.product .related ul.products li.product,
body.single-product .woocommerce div.product .upsells ul.products li.product{
  float:none!important;
  width:100%!important;
  max-width:300px!important;
  margin:0!important;
  text-align:center!important;
}

/* 5 + 6) Mobile: PURCHASE first, META second; center general texts,
   but category/tag card remains natural RTL/right-aligned. */
@media(max-width:900px){
  body.single-product .woocommerce div.product .summary{
    min-height:0!important;
    text-align:center!important;
  }

  body.single-product .woocommerce div.product .product_title,
  body.single-product .woocommerce div.product .woocommerce-product-details__short-description,
  body.single-product .woocommerce div.product .woocommerce-product-details__short-description p,
  body.single-product .woocommerce div.product .stock,
  body.single-product .woocommerce div.product .woocommerce-tabs,
  body.single-product .woocommerce div.product .woocommerce-Tabs-panel,
  body.single-product .woocommerce div.product #reviews,
  body.single-product .woocommerce div.product .related,
  body.single-product .woocommerce div.product .upsells{
    text-align:center!important;
  }

  body.single-product .mkp-product-bottom-dock{
    direction:rtl!important;
    grid-template-columns:1fr!important;
    grid-template-areas:
      "purchase"
      "meta"!important;
    gap:9px!important;
    align-items:stretch!important;
  }

  body.single-product .mkp-product-bottom-dock__purchase{
    grid-area:purchase!important;
  }

  body.single-product .mkp-product-bottom-dock__meta{
    grid-area:meta!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card{
    min-height:auto!important;
    height:auto!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase,
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price,
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase__action{
    text-align:center!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price .price{
    align-items:center!important;
    justify-content:center!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
    justify-content:center!important;
  }

  /* IMPORTANT exception requested by user: Meta text is NOT centered. */
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__row,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__row>div,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__row strong,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__chips,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__chips a{
    text-align:right!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__chips{
    justify-content:flex-start!important;
  }

  body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{
    justify-content:center!important;
  }
}

@media(max-width:620px){
  body.single-product .woocommerce div.product .related ul.products,
  body.single-product .woocommerce div.product .upsells ul.products{
    grid-template-columns:minmax(0,1fr)!important;
  }

  body.single-product .woocommerce div.product .related ul.products li.product,
  body.single-product .woocommerce div.product .upsells ul.products li.product{
    max-width:100%!important;
  }
}


/* ==========================================================
   Phase 08-G.14 — Structural single-product layout fix
   Locks the exact six requested product-page behaviors.
   ========================================================== */

/* 1) Iranian price: explicit wrapper; no :has / bidi guessing. */
.mkp-price-pair{
  display:inline-flex!important;
  flex-direction:row!important;
  direction:ltr!important;
  align-items:baseline!important;
  gap:.30em!important;
  white-space:nowrap!important;
  unicode-bidi:isolate!important;
}

.mkp-price-pair .mkp-price-unit{
  order:1!important;
  direction:rtl!important;
  unicode-bidi:isolate!important;
}

.mkp-price-pair .mkp-price-number{
  order:2!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
}

/* 2) STRUCTURAL desktop grid:
   gallery spans rows 1+2; summary is row 1; dock is row 2.
   This guarantees the two bottom cards align with the gallery bottom edge. */
body.single-product .woocommerce div.product{
  display:grid!important;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
  grid-template-rows:auto 1fr auto auto auto!important;
  column-gap:34px!important;
  row-gap:0!important;
  align-items:stretch!important;
}

body.single-product .woocommerce div.product div.images{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  align-self:stretch!important;
  margin:0!important;
}

body.single-product .woocommerce div.product div.summary{
  grid-column:1!important;
  grid-row:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-self:start!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
}

body.single-product .woocommerce div.product>.mkp-product-bottom-dock{
  grid-column:1!important;
  grid-row:2!important;
  align-self:end!important;
  width:100%!important;
  margin:0!important;
  padding:10px 0 0!important;
}

/* Desktop dock: purchase LEFT, category/tag RIGHT, same baseline. */
body.single-product .mkp-product-bottom-dock{
  display:grid!important;
  direction:ltr!important;
  grid-template-columns:minmax(285px,1fr) minmax(210px,240px)!important;
  grid-template-areas:"purchase meta"!important;
  gap:12px!important;
  align-items:stretch!important;
}

body.single-product .mkp-product-bottom-dock__purchase{
  grid-area:purchase!important;
  direction:rtl!important;
}

body.single-product .mkp-product-bottom-dock__meta{
  grid-area:meta!important;
  direction:rtl!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase,
body.single-product .mkp-product-bottom-dock .mkp-product-meta-card{
  height:100%!important;
  min-height:145px!important;
  margin:0!important;
}

/* Purchase remains price on top; quantity right + wide button left. */
body.single-product .mkp-product-bottom-dock .mkp-product-purchase{
  padding:12px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price{
  min-height:62px!important;
  padding:9px 10px 11px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase__action{
  display:flex!important;
  align-items:flex-end!important;
  flex:1!important;
  padding-top:10px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart{
  display:flex!important;
  flex-direction:row!important;
  direction:rtl!important;
  align-items:stretch!important;
  gap:9px!important;
  width:100%!important;
  margin:auto 0 0!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .quantity{
  order:1!important;
  flex:0 0 58px!important;
  width:58px!important;
}

body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart .single_add_to_cart_button{
  order:2!important;
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  min-height:46px!important;
  padding:10px 18px!important;
  font-size:.65rem!important;
  white-space:nowrap!important;
}

/* 3) Tabs / description / reviews: one obvious branded box below product. */
body.single-product .woocommerce div.product .woocommerce-tabs{
  grid-column:1 / -1!important;
  grid-row:3!important;
  width:100%!important;
  margin:30px 0 0!important;
  padding:20px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 88% 0%,rgba(16,149,79,.065),transparent 25rem),
    var(--mkp-surface-soft)!important;
  box-shadow:0 15px 36px rgba(2,18,25,.13)!important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex!important;
  justify-content:center!important;
  gap:8px!important;
  margin:0 0 15px!important;
  padding:0!important;
}

body.single-product .woocommerce div.product .woocommerce-Tabs-panel,
body.single-product .woocommerce div.product #reviews{
  width:100%!important;
  margin:0!important;
  padding:20px!important;
  border:1px solid var(--mkp-border)!important;
  border-radius:17px!important;
  background:var(--mkp-surface)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}

/* 4) Upsells / Related are separate full-width rows and cards are truly centered. */
body.single-product .woocommerce div.product .upsells{
  grid-column:1 / -1!important;
  grid-row:4!important;
  text-align:center!important;
}

body.single-product .woocommerce div.product .related{
  grid-column:1 / -1!important;
  grid-row:5!important;
  text-align:center!important;
}

body.single-product .woocommerce div.product .related>h2,
body.single-product .woocommerce div.product .upsells>h2{
  width:100%!important;
  text-align:center!important;
}

body.single-product .woocommerce div.product .related ul.products,
body.single-product .woocommerce div.product .upsells ul.products{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:14px!important;
  width:min(100%,980px)!important;
  margin-inline:auto!important;
}

body.single-product .woocommerce div.product .related ul.products li.product,
body.single-product .woocommerce div.product .upsells ul.products li.product{
  float:none!important;
  flex:0 1 280px!important;
  width:min(100%,280px)!important;
  max-width:280px!important;
  margin:0!important;
  text-align:center!important;
}

/* 5 + 6) MOBILE:
   Purchase first, Meta second. General texts center.
   Meta text remains natural RTL/right aligned (explicit exception). */
@media(max-width:900px){
  body.single-product .woocommerce div.product{
    grid-template-columns:1fr!important;
    grid-template-rows:auto!important;
    row-gap:0!important;
  }

  body.single-product .woocommerce div.product div.images{
    grid-column:1!important;
    grid-row:auto!important;
    order:1!important;
  }

  body.single-product .woocommerce div.product div.summary{
    grid-column:1!important;
    grid-row:auto!important;
    order:2!important;
    text-align:center!important;
  }

  body.single-product .woocommerce div.product>.mkp-product-bottom-dock{
    grid-column:1!important;
    grid-row:auto!important;
    order:3!important;
    margin-top:14px!important;
    padding-top:0!important;
  }

  body.single-product .woocommerce div.product .woocommerce-tabs{
    grid-column:1!important;
    grid-row:auto!important;
    order:4!important;
  }

  body.single-product .woocommerce div.product .upsells{
    grid-column:1!important;
    grid-row:auto!important;
    order:5!important;
  }

  body.single-product .woocommerce div.product .related{
    grid-column:1!important;
    grid-row:auto!important;
    order:6!important;
  }

  body.single-product .mkp-product-bottom-dock{
    direction:rtl!important;
    grid-template-columns:1fr!important;
    grid-template-areas:
      "purchase"
      "meta"!important;
    gap:9px!important;
  }

  body.single-product .woocommerce div.product .product_title,
  body.single-product .woocommerce div.product .woocommerce-product-details__short-description,
  body.single-product .woocommerce div.product .woocommerce-product-details__short-description p,
  body.single-product .woocommerce div.product .stock,
  body.single-product .woocommerce div.product .woocommerce-tabs,
  body.single-product .woocommerce div.product .woocommerce-Tabs-panel,
  body.single-product .woocommerce div.product #reviews,
  body.single-product .woocommerce div.product .related,
  body.single-product .woocommerce div.product .upsells,
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase,
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price,
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase__action{
    text-align:center!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-purchase__price .price,
  body.single-product .mkp-product-bottom-dock .mkp-product-purchase form.cart,
  body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{
    justify-content:center!important;
  }

  /* IMPORTANT: category/tag content is intentionally NOT centered. */
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__row,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__row>div,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__row strong,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__chips,
  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__chips a{
    text-align:right!important;
  }

  body.single-product .mkp-product-bottom-dock .mkp-product-meta-card__chips{
    justify-content:flex-start!important;
  }
}

@media(max-width:620px){
  body.single-product .woocommerce div.product .related ul.products li.product,
  body.single-product .woocommerce div.product .upsells ul.products li.product{
    flex-basis:100%!important;
    width:100%!important;
    max-width:100%!important;
  }
}


/* ==========================================================
   Phase 08-G.16.2 — Shop old-price red strike
   This must live in commerce.css because archive/shop pages do
   not load commerce-single-structural.css.
   ========================================================== */

body.woocommerce-shop ul.products li.product .price del,
body.post-type-archive-product ul.products li.product .price del,
body.tax-product_cat ul.products li.product .price del,
body.tax-product_tag ul.products li.product .price del,
.mkp-commerce-page--fallback ul.products li.product .price del{
  position:relative!important;
  display:inline-block!important;
  width:max-content;
  max-width:100%;
  color:#e76868!important;
  opacity:.95!important;
  text-decoration:none!important;
}

body.woocommerce-shop ul.products li.product .price del::after,
body.post-type-archive-product ul.products li.product .price del::after,
body.tax-product_cat ul.products li.product .price del::after,
body.tax-product_tag ul.products li.product .price del::after,
.mkp-commerce-page--fallback ul.products li.product .price del::after{
  content:"";
  position:absolute;
  z-index:4;
  top:50%;
  right:-3px;
  left:-3px;
  height:2px;
  border-radius:999px;
  background:#ff5f68;
  transform:translateY(-50%) rotate(-3deg);
  pointer-events:none;
}

/* Keep every inner Woo price fragment red so the strike reads clearly. */
body.woocommerce-shop ul.products li.product .price del *,
body.post-type-archive-product ul.products li.product .price del *,
body.tax-product_cat ul.products li.product .price del *,
body.tax-product_tag ul.products li.product .price del *,
.mkp-commerce-page--fallback ul.products li.product .price del *{
  color:#e76868!important;
}


/* ==========================================================
   Phase 08-G.18.4 — Empty Cart branded state
   ========================================================== */
body.woocommerce-cart .woocommerce .cart-empty.woocommerce-info{
  position:relative!important;
  display:block!important;
  box-sizing:border-box!important;
  width:min(100%,620px)!important;
  max-width:620px!important;
  margin:0 auto 12px!important;
  padding:20px 18px!important;
  border:1px solid var(--mkp-border)!important;
  border-right:3px solid var(--mkp-accent)!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 86% 0%,rgba(16,149,79,.07),transparent 18rem),
    var(--mkp-surface)!important;
  color:var(--mkp-ink)!important;
  font-family:inherit!important;
  font-size:.64rem!important;
  font-weight:800!important;
  line-height:1.9!important;
  text-align:center!important;
  box-shadow:0 14px 34px rgba(8,37,44,.045)!important;
}

body.woocommerce-cart .woocommerce .cart-empty.woocommerce-info::before{
  display:none!important;
  content:none!important;
}

body.woocommerce-cart .woocommerce .return-to-shop{
  width:100%!important;
  max-width:620px!important;
  margin:0 auto!important;
  text-align:center!important;
}

body.woocommerce-cart .woocommerce .return-to-shop .button.wc-backward{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:190px!important;
  min-height:48px!important;
  margin:0 auto!important;
  padding:10px 18px!important;
  border:1px solid rgba(16,149,79,.22)!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,var(--mkp-primary),var(--mkp-accent))!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:inherit!important;
  font-size:.61rem!important;
  font-weight:950!important;
  line-height:1.2!important;
  text-decoration:none!important;
  box-shadow:0 10px 24px rgba(16,149,79,.14)!important;
  transition:transform .16s ease,box-shadow .18s ease,filter .18s ease!important;
}

body.woocommerce-cart .woocommerce .return-to-shop .button.wc-backward:hover{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  filter:brightness(1.045)!important;
  box-shadow:0 13px 28px rgba(16,149,79,.18)!important;
}

body.woocommerce-cart .woocommerce .return-to-shop .button.wc-backward:active{
  transform:translateY(1px)!important;
}

html[data-mkp-theme="dark"] body.woocommerce-cart .woocommerce .cart-empty.woocommerce-info{
  border-color:rgba(231,242,239,.11)!important;
  border-right-color:var(--mkp-accent)!important;
  background:
    radial-gradient(circle at 86% 0%,rgba(23,167,91,.075),transparent 18rem),
    var(--mkp-surface)!important;
  color:var(--mkp-ink)!important;
  box-shadow:none!important;
}

html[data-mkp-theme="dark"] body.woocommerce-cart .woocommerce .return-to-shop .button.wc-backward{
  border-color:rgba(99,217,143,.20)!important;
  background:linear-gradient(135deg,var(--mkp-primary),var(--mkp-accent))!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

@media(max-width:620px){
  body.woocommerce-cart .woocommerce .cart-empty.woocommerce-info{
    width:100%!important;
    padding:17px 14px!important;
    border-radius:15px!important;
  }

  body.woocommerce-cart .woocommerce .return-to-shop .button.wc-backward{
    width:100%!important;
    max-width:320px!important;
  }
}


/* ==========================================================
   Phase 08-G.18.9 — Shop card CTA row + button true centering
   ========================================================== */

/*
 * Structural row lives outside Woo's product link and directly below price.
 * RTL order keeps Add-to-Cart on the physical right and View Product left.
 */
body.woocommerce-shop ul.products li.product .mkp-shop-card-actions,
body.post-type-archive-product ul.products li.product .mkp-shop-card-actions,
.mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions{
  display:flex!important;
  flex-direction:row!important;
  direction:rtl!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:8px!important;
  width:calc(100% - 12px)!important;
  max-width:100%!important;
  min-width:0!important;
  margin:auto auto 0!important;
  padding:0!important;
}

/* Both CTAs share identical dimensions and real vertical/horizontal centering. */
body.woocommerce-shop ul.products li.product .mkp-shop-card-actions > a.button,
body.post-type-archive-product ul.products li.product .mkp-shop-card-actions > a.button,
.mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions > a.button{
  display:inline-flex!important;
  flex:1 1 0!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:stretch!important;
  min-width:0!important;
  min-height:42px!important;
  height:42px!important;
  margin:0!important;
  padding:7px 10px!important;
  border-radius:10px!important;
  font-family:var(--mkp-font)!important;
  font-size:.56rem!important;
  font-weight:900!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-decoration:none!important;
}

/* Official Woo Add-to-Cart = primary CTA on physical right. */
body.woocommerce-shop ul.products li.product .mkp-shop-card-actions > a.button:not(.mkp-shop-view-product),
body.post-type-archive-product ul.products li.product .mkp-shop-card-actions > a.button:not(.mkp-shop-view-product),
.mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions > a.button:not(.mkp-shop-view-product){
  order:1!important;
  border:1px solid var(--mkp-primary)!important;
  background:var(--mkp-primary)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* View Product = secondary CTA on physical left. */
body.woocommerce-shop ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product,
body.post-type-archive-product ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product,
.mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product{
  order:2!important;
  border:1px solid var(--mkp-border)!important;
  background:var(--mkp-surface-soft)!important;
  color:var(--mkp-ink)!important;
  -webkit-text-fill-color:var(--mkp-ink)!important;
}

body.woocommerce-shop ul.products li.product .mkp-shop-card-actions > a.button:not(.mkp-shop-view-product):hover,
body.post-type-archive-product ul.products li.product .mkp-shop-card-actions > a.button:not(.mkp-shop-view-product):hover,
.mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions > a.button:not(.mkp-shop-view-product):hover{
  border-color:var(--mkp-accent)!important;
  background:var(--mkp-accent)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

body.woocommerce-shop ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product:hover,
body.post-type-archive-product ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product:hover,
.mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product:hover{
  border-color:rgba(16,149,79,.28)!important;
  background:var(--mkp-accent-soft)!important;
  color:var(--mkp-accent)!important;
  -webkit-text-fill-color:var(--mkp-accent)!important;
}

/*
 * Woo inserts `.added_to_cart.wc-forward` after successful AJAX add.
 * G.18.8 popup hides/removes it when JS is active. If JS is unavailable,
 * keep the fallback link on its own centered row instead of breaking the pair.
 */
body.woocommerce-shop ul.products li.product .mkp-shop-card-actions > .added_to_cart.wc-forward,
body.post-type-archive-product ul.products li.product .mkp-shop-card-actions > .added_to_cart.wc-forward,
.mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions > .added_to_cart.wc-forward{
  flex:0 0 100%!important;
  order:3!important;
  min-height:36px!important;
  height:auto!important;
  margin-top:2px!important;
}

/* Dark secondary CTA remains visibly part of the site surface. */
html[data-mkp-theme="dark"] body.woocommerce-shop ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product,
html[data-mkp-theme="dark"] body.post-type-archive-product ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product,
html[data-mkp-theme="dark"] .mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions > .mkp-shop-view-product{
  border-color:rgba(231,242,239,.10)!important;
  background:#152a30!important;
  color:var(--mkp-ink)!important;
  -webkit-text-fill-color:var(--mkp-ink)!important;
}

@media(max-width:380px){
  body.woocommerce-shop ul.products li.product .mkp-shop-card-actions,
  body.post-type-archive-product ul.products li.product .mkp-shop-card-actions,
  .mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions{
    gap:6px!important;
    width:100%!important;
  }

  body.woocommerce-shop ul.products li.product .mkp-shop-card-actions > a.button,
  body.post-type-archive-product ul.products li.product .mkp-shop-card-actions > a.button,
  .mkp-commerce-page--fallback ul.products li.product .mkp-shop-card-actions > a.button{
    padding-inline:7px!important;
    font-size:.52rem!important;
  }
}
