/* One accessible quantity control shared by product cards, product detail and Cart. */
.kt-card-purchase{display:grid;grid-template-columns:76px minmax(0,1fr);gap:7px;align-items:stretch;min-width:0}
.kt-quantity-picker,.woocommerce .quantity[data-kt-quantity]{display:grid;grid-template-columns:28px minmax(0,1fr) 28px;min-width:0;height:42px;overflow:hidden;background:#fff;border:1px solid #cadcea;border-radius:7px;box-sizing:border-box}
.kt-quantity-picker button,.woocommerce .quantity[data-kt-quantity] button{display:grid;width:100%;height:100%;place-items:center;padding:0;color:#17375f;background:#f7fbfe;border:0;cursor:pointer;font-size:17px;font-weight:650;line-height:1}
.kt-quantity-picker button:first-child,.woocommerce .quantity[data-kt-quantity] button:first-child{border-right:1px solid #dce7ef}
.kt-quantity-picker button:last-child,.woocommerce .quantity[data-kt-quantity] button:last-child{border-left:1px solid #dce7ef}
.kt-quantity-picker button:hover,.kt-quantity-picker button:focus-visible,.woocommerce .quantity[data-kt-quantity] button:hover,.woocommerce .quantity[data-kt-quantity] button:focus-visible{color:#1762e8;background:#edf5ff;outline:0}
.kt-quantity-picker input,.woocommerce .quantity[data-kt-quantity] input.qty{min-width:0!important;width:100%!important;height:100%!important;min-height:0!important;padding:0!important;color:#14365f;background:#fff;border:0!important;border-radius:0!important;box-shadow:none!important;font-size:11px;text-align:center;-moz-appearance:textfield}
.kt-quantity-picker input::-webkit-inner-spin-button,.kt-quantity-picker input::-webkit-outer-spin-button,.woocommerce .quantity[data-kt-quantity] input.qty::-webkit-inner-spin-button,.woocommerce .quantity[data-kt-quantity] input.qty::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
.kt-card-purchase>.button{width:100%!important;min-width:0!important;margin:0!important}
.kt-card-purchase>a{display:flex!important;min-width:0;min-height:42px;align-items:center;justify-content:center;gap:6px;margin:0!important;padding:0 9px!important;color:#fff!important;background:#2868f4!important;border:1px solid #2868f4!important;border-radius:7px!important;font-size:10px!important;font-weight:800!important;line-height:1!important;text-align:center}
.kt-card-purchase>a .kt-ui-icon{flex:0 0 14px;width:14px;height:14px}
.kt-loop-buy .kt-card-purchase{flex:1;grid-template-columns:70px minmax(0,1fr)}
.kt-loop-buy .kt-card-purchase>.button{min-height:42px!important;padding-inline:7px!important}
body.home .kt-v2-product-card .kt-card-purchase{margin-top:6px}
body.home .kt-v2-product-card .kt-card-purchase>a{border-radius:0 0 7px 0!important}
body.home .kt-v2-product-card .kt-card-purchase .kt-quantity-picker{border-radius:0 0 0 7px}
body.single-product .kt-pdp-related-grid .kt-card-purchase{margin-top:8px}

@media(max-width:620px){
  .kt-card-purchase{grid-template-columns:68px minmax(0,1fr);gap:5px}
	.kt-loop-buy .kt-card-purchase{grid-template-columns:62px minmax(0,1fr)}
  .kt-quantity-picker,.woocommerce .quantity[data-kt-quantity]{grid-template-columns:24px minmax(20px,1fr) 24px;height:38px}
  .kt-quantity-picker button,.woocommerce .quantity[data-kt-quantity] button{font-size:15px}
  .kt-quantity-picker input,.woocommerce .quantity[data-kt-quantity] input.qty{font-size:10px}
}

/* Product cards expose only the two compact controls. The numeric value stays
   available to the shared script and Add to bag request. Cart keeps its full
   native field; the primary single-product control uses WooCommerce .quantity. */
body:not(.woocommerce-cart) .kt-quantity-picker{position:relative;grid-template-columns:repeat(2,minmax(0,1fr))}
body:not(.woocommerce-cart) .kt-quantity-picker input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}
body:not(.woocommerce-cart) .kt-quantity-picker.is-quantity-revealed{grid-template-columns:28px minmax(0,1fr) 28px}
body:not(.woocommerce-cart) .kt-quantity-picker.is-quantity-revealed input{
  position:static!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  overflow:visible!important;
  clip:auto!important;
  clip-path:none!important;
  white-space:normal!important;
}
body:not(.woocommerce-cart) .kt-card-purchase>a.is-awaiting-quantity,
body:not(.woocommerce-cart) .kt-card-purchase:has(.kt-quantity-picker:not(.is-quantity-revealed))>a{opacity:.58;cursor:not-allowed}
body:not(.woocommerce-cart) .kt-quantity-picker.needs-quantity{border-color:#e36e43;box-shadow:0 0 0 2px rgba(227,110,67,.15)}
.kt-quantity-hint{grid-column:1/-1;margin-top:1px;color:#a84221;font-size:9px;font-weight:750;line-height:1.25;text-align:left}
@media(max-width:620px){
  body:not(.woocommerce-cart) .kt-quantity-picker.is-quantity-revealed{grid-template-columns:24px minmax(0,1fr) 24px}
  .kt-quantity-hint{font-size:8px}
}
