/* Ketabbashi unified cart preview and quantity controls. */
.kb-cart-preview-overlay[hidden],
.kb-cart-preview[hidden] { display: none !important; }
.kb-cart-preview-overlay {
  position: fixed; inset: 0; z-index: 1000084;
  background: rgba(21, 24, 39, .24); backdrop-filter: blur(1px);
}
.kb-cart-preview {
  position: fixed; z-index: 1000086; top: 112px; bottom: 22px; left: 22px;
  display: flex; flex-direction: column; box-sizing: border-box;
  width: min(380px, calc(100vw - 32px)); max-height: calc(100dvh - 134px);
  direction: rtl; text-align: right; color: #29243b; background: #fff;
  border: 1px solid #e9e4ef; border-radius: 15px; box-shadow: 0 14px 46px rgba(27, 24, 49, .2);
  overflow: hidden; font-family: inherit;
}
.kb-cart-preview__header {
  position: relative; flex: 0 0 auto; display: flex; align-items: flex-start; justify-content: space-between; gap: 12px;
  padding: 17px 17px 14px; border-bottom: 1px solid #efedf3; background: #fff;
}
.kb-cart-preview__heading { display: flex; align-items: flex-start; gap: 10px; min-width: 0; }
.kb-cart-preview__success {
  display: inline-flex; flex: 0 0 24px; width: 24px; height: 24px; align-items: center; justify-content: center;
  border-radius: 50%; background: #eaf7ee; color: #198443; font-size: 14px; font-weight: 800;
}
.kb-cart-preview__heading strong { display: block; margin: 0; font-size: 14px; line-height: 1.6; font-weight: 850; }
.kb-cart-preview__status { margin: 3px 0 0; font-size: 11px; line-height: 1.6; color: #77806f; }
.kb-cart-preview__close {
  appearance: none; flex: 0 0 28px; width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center;
  margin: -3px -3px 0 0; padding: 0; border: 1px solid #ebe6f1; border-radius: 50%; background: #faf8fc;
  color: #67538e; box-shadow: none; font: 500 19px/1 Arial, sans-serif; cursor: pointer;
}
.kb-cart-preview__content { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 0 16px; }
.kb-cart-preview__loading, .kb-cart-preview__empty { margin: 0; padding: 28px 4px; text-align: center; color: #767184; font-size: 13px; line-height: 1.9; }
.kb-cart-preview-item { display: grid; grid-template-columns: 70px minmax(0,1fr); align-items: start; gap: 12px; padding: 15px 0; border-bottom: 1px solid #efedf3; }
.kb-cart-preview-item__image { display: flex; align-items: center; justify-content: center; width: 70px; height: 88px; border-radius: 8px; background: #fbfafc; }
.kb-cart-preview-item__image img { display: block; width: auto; max-width: 62px; max-height: 78px; object-fit: contain; }
.kb-cart-preview-item__main { min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 7px; }
.kb-cart-preview-item__name { display: -webkit-box; max-width: 100%; overflow: hidden; color: #383148; text-decoration: none; font-size: 12px; line-height: 1.8; font-weight: 750; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.kb-cart-preview-item__price { color: #322c47; font-size: 12px; font-weight: 800; line-height: 1.6; }
.kb-cart-preview-item__price del { margin-inline-end: 5px; color: #aaa4b0; font-size: 10px; font-weight: 500; }
.kb-cart-preview-item__price ins { text-decoration: none; }
.kb-cart-preview-item__price .woocommerce-Price-currencySymbol { font-size: 10px; }
.kb-cart-preview-item__controls { display: inline-flex; align-items: center; gap: 5px; min-height: 29px; padding: 3px; border: 1px solid #e6e0ef; border-radius: 999px; background: #fff; }
.kb-cart-qty-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; min-width: 25px; width: 25px; height: 25px; padding: 0; border: 0; border-radius: 50%; background: #f5f0fb; color: #6240b5; font: 600 17px/1 Arial, sans-serif; cursor: pointer; box-shadow: none; }
.kb-cart-qty-button:disabled { opacity: .35; cursor: not-allowed; }
.kb-cart-preview-item__qty { min-width: 19px; text-align: center; font-size: 11px; font-weight: 800; color: #302a43; }
.kb-cart-preview-item__remove { appearance: none; border: 0; padding: 4px 6px; border-radius: 5px; color: #8b5360; background: transparent; font: inherit; font-size: 10px; cursor: pointer; box-shadow: none; }
.kb-cart-preview-item__remove:hover { background: #fff2f3; color: #b33b4e; }
.kb-cart-preview__footer { flex: 0 0 auto; padding: 13px 16px 16px; border-top: 1px solid #efedf3; background: #fff; }
.kb-cart-preview__subtotal { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 12px; font-size: 12px; color: #6b6578; }
.kb-cart-preview__subtotal strong { color: #28233a; font-size: 14px; font-weight: 900; }
.kb-cart-preview__go-cart { display: flex; align-items: center; justify-content: center; min-height: 42px; padding: 9px 14px; border-radius: 9px; background: #6240b5; color: #fff !important; text-decoration: none !important; font-size: 12px; font-weight: 800; box-shadow: none; }
.kb-cart-preview__go-cart:hover { background: #51339a; }
.kb-cart-preview__continue { appearance: none; display: block; width: 100%; margin-top: 6px; padding: 7px 10px; border: 0; background: transparent; color: #777084; font: inherit; font-size: 11px; cursor: pointer; box-shadow: none; }
body.kb-cart-preview-open { overflow: hidden; }

/* Product page quantity/status after a product enters the cart. */
body.single-product form.cart .quantity.kb-quantity-enhanced,
body.woocommerce-cart .woocommerce-cart-form .quantity.kb-quantity-enhanced {
  display: inline-flex !important; align-items: center !important; justify-content: center; gap: 4px;
  box-sizing: border-box; width: max-content; max-width: 100%; padding: 3px; overflow: visible !important;
  direction: ltr; border: 1px solid #e5dff0; border-radius: 999px; background: #fff;
}
.kb-quantity-control-button {
  appearance: none; display: inline-flex !important; align-items: center; justify-content: center;
  flex: 0 0 30px; width: 30px; min-width: 30px; height: 30px; min-height: 30px; margin: 0 !important; padding: 0 !important;
  border: 0 !important; border-radius: 50% !important; background: #f4effa !important; color: #6240b5 !important;
  box-shadow: none !important; font: 600 17px/1 Arial, sans-serif !important; cursor: pointer;
}
.kb-quantity-control-button:hover { background: #eae1f7 !important; }
body.single-product form.cart .quantity.kb-quantity-enhanced input.qty,
body.woocommerce-cart .woocommerce-cart-form .quantity.kb-quantity-enhanced input.qty {
  box-sizing: border-box; flex: 0 1 42px; width: 42px !important; min-width: 34px; min-height: 30px !important; height: 30px;
  margin: 0 !important; padding: 0 2px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important;
  box-shadow: none !important; text-align: center; font-size: 12px; color: #332c48;
}
/* High-specificity rules are intentional: the theme's single-product CTA uses !important display rules. */
body.single-product .kb-product-purchase .summary form.cart .quantity.kb-native-quantity-hidden,
body.single-product .kb-product-purchase.has-custom-price-row form.cart .quantity.kb-native-quantity-hidden { display: none !important; }
body.single-product .kb-product-purchase .summary form.cart .single_add_to_cart_button.kb-cart-added-button-hidden,
body.single-product .kb-product-purchase.has-custom-price-row form.cart .single_add_to_cart_button.kb-cart-added-button-hidden { display: none !important; }
.kb-native-quantity-hidden { display: none !important; }
.kb-cart-added-button-hidden { display: none !important; }
body.single-product .kb-product-purchase form.cart .kb-product-cart-state {
  display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 8px;
  box-sizing: border-box; width: 100%; min-width: 0; min-height: 52px; margin: 0 !important; padding: 5px 8px;
  border: 1px solid #e5e5e8; border-radius: 10px; background: #fff; box-shadow: none;
}
.kb-product-cart-state[hidden] { display: none !important; }
.kb-product-cart-state__action {
  appearance: none; display: inline-flex !important; flex: 0 0 38px; align-items: center; justify-content: center; box-sizing: border-box;
  width: 38px; min-width: 38px; height: 38px; min-height: 38px; margin: 0 !important; padding: 0 !important;
  border: 0 !important; border-radius: 8px !important; background: #fff !important; color: #ef4056 !important;
  box-shadow: none !important; font: 700 21px/1 Arial, sans-serif !important; cursor: pointer;
}
.kb-product-cart-state__action:hover { background: #fff2f4 !important; }
.kb-product-cart-state__remove { color: #ef4056 !important; font-size: 20px !important; }
.kb-product-cart-state__remove { font-size: 0 !important; }
.kb-product-cart-state__remove svg { display: block; width: 18px; height: 18px; }
.kb-product-cart-state__step:disabled { opacity: .4; cursor: not-allowed; }
.kb-product-cart-state__qty { flex: 1 1 auto; min-width: 28px; text-align: center; font-size: 14px; font-weight: 800; color: #252532; font-variant-numeric: tabular-nums; }
.kb-cart-inline-error { margin: 8px 0 0; color: #a82f41; font-size: 12px; line-height: 1.8; }

/* Mobile drawer: a compact sheet that clears the fixed bottom navigation. */
@media (max-width: 680px) {
  .kb-cart-preview-overlay { z-index: 1000084; }
  .kb-cart-preview {
    top: auto; left: 8px; right: 8px; bottom: calc(76px + env(safe-area-inset-bottom, 0px));
    width: auto; max-height: min(74dvh, calc(100dvh - 110px - env(safe-area-inset-bottom, 0px)));
    border-radius: 15px; box-shadow: 0 12px 42px rgba(27,24,49,.23);
  }
  .kb-cart-preview__header { padding: 13px 13px 11px; }
  .kb-cart-preview__content { padding-inline: 12px; }
  .kb-cart-preview-item { grid-template-columns: 60px minmax(0,1fr); gap: 10px; padding: 12px 0; }
  .kb-cart-preview-item__image { width: 60px; height: 76px; }
  .kb-cart-preview-item__image img { max-width: 54px; max-height: 68px; }
  .kb-cart-preview-item__main { gap: 5px; }
  .kb-cart-preview__footer { padding: 11px 12px calc(12px + env(safe-area-inset-bottom, 0px)); }
  .kb-cart-preview__go-cart { min-height: 40px; }
  body.single-product .kb-product-purchase form.cart .kb-product-cart-state { min-height: 50px; padding: 4px 6px; }
  .kb-product-cart-state__action { flex-basis: 36px; width: 36px; min-width: 36px; height: 36px; min-height: 36px; }
  body.single-product form.cart .quantity.kb-quantity-enhanced { margin-inline-end: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .kb-cart-preview, .kb-cart-preview-overlay { scroll-behavior: auto; }
}


/* v1.16.41: product page shows only the add button before the first click.
   After adding, the quantity stepper replaces that exact button location. */
body.single-product .kb-product-purchase .summary form.cart .quantity,
body.single-product .kb-product-purchase.has-custom-price-row form.cart .quantity,
body.single-product .kb-product-purchase form.cart .quantity.kb-quantity-enhanced {
  display: none !important;
}
body.single-product .kb-product-purchase .summary form.cart .kb-product-cart-state,
body.single-product .kb-product-purchase.has-custom-price-row form.cart .kb-product-cart-state {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 52px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 5px 8px !important;
  border: 1px solid #ded7ee !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
}
body.single-product .kb-product-purchase .summary form.cart .kb-product-cart-state[hidden],
body.single-product .kb-product-purchase.has-custom-price-row form.cart .kb-product-cart-state[hidden] {
  display: none !important;
}
@media (max-width: 680px) {
  body.single-product .kb-product-purchase .summary form.cart .kb-product-cart-state,
  body.single-product .kb-product-purchase.has-custom-price-row form.cart .kb-product-cart-state {
    min-height: 50px !important;
    padding: 4px 6px !important;
  }
}


/* v1.16.44 — hard-isolate cart controls from site-wide / plugin button styles.
   Several global button rules were expanding these small controls into large red pills.
   Keep every rule scoped and explicit so the cart drawer and inline stepper stay compact. */
html body .kb-cart-preview button,
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state button {
  appearance: none !important;
  -webkit-appearance: none !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  float: none !important;
  position: relative !important;
  inset: auto !important;
  margin: 0 !important;
  transform: none !important;
  filter: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  text-indent: 0 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  outline-offset: 2px;
  vertical-align: middle !important;
}

/* Cart preview heading: a small, neutral close icon instead of a themed CTA button. */
html body .kb-cart-preview button.kb-cart-preview__close {
  flex: 0 0 30px !important;
  width: 30px !important;
  min-width: 30px !important;
  max-width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  padding: 0 !important;
  border: 1px solid #ebe5f2 !important;
  border-radius: 50% !important;
  background: #f8f5fc !important;
  color: #66518f !important;
  font: 400 18px/1 Arial, sans-serif !important;
}
html body .kb-cart-preview button.kb-cart-preview__close:hover {
  background: #eee7f8 !important;
  border-color: #ded2f0 !important;
  color: #4e3789 !important;
}

/* Drawer quantity +/- controls are always 28px circles. */
html body .kb-cart-preview .kb-cart-preview-item__controls {
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 5px !important;
  width: max-content !important;
  max-width: 100% !important;
  min-height: 34px !important;
  padding: 3px 5px !important;
  border: 1px solid #e6e0ef !important;
  border-radius: 999px !important;
  background: #fff !important;
}
html body .kb-cart-preview button.kb-cart-qty-button {
  flex: 0 0 27px !important;
  width: 27px !important;
  min-width: 27px !important;
  max-width: 27px !important;
  height: 27px !important;
  min-height: 27px !important;
  max-height: 27px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #f3eefb !important;
  color: #6240b5 !important;
  font: 700 16px/1 Arial, sans-serif !important;
  cursor: pointer !important;
}
html body .kb-cart-preview button.kb-cart-qty-button:hover:not(:disabled) {
  background: #e9def8 !important;
  color: #4c318f !important;
}
html body .kb-cart-preview button.kb-cart-qty-button:disabled {
  opacity: .38 !important;
  cursor: not-allowed !important;
}
html body .kb-cart-preview .kb-cart-preview-item__qty {
  display: inline-block !important;
  flex: 0 0 auto !important;
  min-width: 23px !important;
  width: auto !important;
  max-width: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #302a43 !important;
  background: transparent !important;
  text-align: center !important;
  font-family: inherit !important; font-size: 12px !important; font-weight: 800 !important; line-height: 1.5 !important;
}
html body .kb-cart-preview button.kb-cart-preview-item__remove {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 48px !important;
  max-width: 65px !important;
  height: 27px !important;
  min-height: 27px !important;
  max-height: 27px !important;
  margin: 0 !important;
  padding: 0 8px !important;
  border: 1px solid #f0d8dc !important;
  border-radius: 8px !important;
  background: #fff8f8 !important;
  color: #b54453 !important;
  font-family: inherit !important; font-size: 10px !important; font-weight: 700 !important; line-height: 1.2 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
html body .kb-cart-preview button.kb-cart-preview-item__remove:hover {
  border-color: #eabfc6 !important;
  background: #fff0f2 !important;
  color: #9d2f40 !important;
}

/* Footer: primary destination stays purple; continue-shopping stays a quiet text action. */
html body .kb-cart-preview a.kb-cart-preview__go-cart {
  display: flex !important;
  width: 100% !important;
  min-height: 42px !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 9px 14px !important;
  border: 1px solid #6240b5 !important;
  border-radius: 9px !important;
  background: #6240b5 !important;
  color: #fff !important;
  font-family: inherit !important; font-size: 12px !important; font-weight: 800 !important; line-height: 1.5 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}
html body .kb-cart-preview a.kb-cart-preview__go-cart:hover {
  background: #51339a !important;
  border-color: #51339a !important;
}
html body .kb-cart-preview button.kb-cart-preview__continue {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 30px !important;
  max-height: none !important;
  margin: 5px 0 0 !important;
  padding: 7px 8px !important;
  border: 0 !important;
  border-radius: 6px !important;
  background: transparent !important;
  color: #777084 !important;
  font-family: inherit !important; font-size: 11px !important; font-weight: 600 !important; line-height: 1.6 !important;
  box-shadow: none !important;
}
html body .kb-cart-preview button.kb-cart-preview__continue:hover {
  background: #f7f4fb !important;
  color: #4e3789 !important;
}

/* Product-page in-place stepper: fixed compact controls, never full-width red pills. */
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  direction: ltr !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 52px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 5px 8px !important;
  overflow: visible !important;
  border: 1px solid #ded7ee !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state button.kb-product-cart-state__action {
  flex: 0 0 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #e8e0f4 !important;
  border-radius: 50% !important;
  background: #f5f0fb !important;
  color: #6240b5 !important;
  font: 700 18px/1 Arial, sans-serif !important;
  box-shadow: none !important;
  cursor: pointer !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state button.kb-product-cart-state__action:hover:not(:disabled) {
  background: #e9def8 !important;
  border-color: #d8c9f0 !important;
  color: #4c318f !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state button.kb-product-cart-state__remove {
  background: #fff5f6 !important;
  border-color: #f1dce0 !important;
  color: #bb4554 !important;
  font-size: 0 !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state button.kb-product-cart-state__remove svg {
  display: block !important;
  flex: 0 0 17px !important;
  width: 17px !important;
  min-width: 17px !important;
  max-width: 17px !important;
  height: 17px !important;
  min-height: 17px !important;
  max-height: 17px !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state .kb-product-cart-state__qty {
  display: block !important;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 28px !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #252532 !important;
  text-align: center !important;
  font-family: inherit !important; font-size: 14px !important; font-weight: 800 !important; line-height: 1.5 !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state button:disabled {
  opacity: .4 !important;
  cursor: not-allowed !important;
}
@media (max-width: 680px) {
  html body .kb-cart-preview button.kb-cart-preview__close { flex-basis: 28px !important; width: 28px !important; min-width: 28px !important; max-width: 28px !important; height: 28px !important; min-height: 28px !important; max-height: 28px !important; }
  html body .kb-cart-preview button.kb-cart-qty-button { flex-basis: 26px !important; width: 26px !important; min-width: 26px !important; max-width: 26px !important; height: 26px !important; min-height: 26px !important; max-height: 26px !important; }
  html body.single-product .kb-product-purchase form.cart .kb-product-cart-state { min-height: 48px !important; padding: 4px 6px !important; }
  html body.single-product .kb-product-purchase form.cart .kb-product-cart-state button.kb-product-cart-state__action { flex-basis: 34px !important; width: 34px !important; min-width: 34px !important; max-width: 34px !important; height: 34px !important; min-height: 34px !important; max-height: 34px !important; }
}

/* v1.16.45: cache-busted, isolated Digikala-style inline quantity control.
   This does not depend on any legacy .kb-product-cart-state rules. */
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645,
html body.single-product .kb-product-purchase.has-custom-price-row form.cart .kb-product-cart-state-v1645 {
  appearance: none !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  direction: ltr !important;
  writing-mode: horizontal-tb !important;
  position: relative !important;
  float: none !important;
  clear: none !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  margin: 0 !important;
  padding: 5px 8px !important;
  border: 1px solid #ded7ee !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645 > button.kb-product-cart-state-v1645__action {
  appearance: none !important;
  display: inline-flex !important;
  position: static !important;
  float: none !important;
  clear: none !important;
  order: 0 !important;
  align-self: center !important;
  flex: 0 0 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #e8e0f4 !important;
  border-radius: 50% !important;
  background: #f5f0fb !important;
  color: #6240b5 !important;
  font-family: Arial, sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-align: center !important;
  white-space: nowrap !important;
  writing-mode: horizontal-tb !important;
  box-shadow: none !important;
  transform: none !important;
  cursor: pointer !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645 > button.kb-product-cart-state-v1645__action:hover:not(:disabled) {
  border-color: #d8c9f0 !important;
  background: #e9def8 !important;
  color: #4c318f !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645 > button.kb-product-cart-state-v1645__remove {
  border-color: #f1dce0 !important;
  background: #fff5f6 !important;
  color: #bb4554 !important;
  font-size: 0 !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645 > button.kb-product-cart-state-v1645__remove svg {
  display: block !important;
  flex: 0 0 17px !important;
  width: 17px !important;
  min-width: 17px !important;
  max-width: 17px !important;
  height: 17px !important;
  min-height: 17px !important;
  max-height: 17px !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645 > .kb-product-cart-state-v1645__qty {
  display: block !important;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 28px !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #252532 !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.5 !important;
  text-align: center !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645 > button:disabled { opacity: .4 !important; cursor: not-allowed !important; }
/* Hide any legacy panel during the moment before the current script reconciles the cart. */
html body.single-product .kb-product-purchase form.cart .kb-product-cart-state:not(.kb-product-cart-state-v1645) { display: none !important; }
@media (max-width: 680px) {
  html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645,
  html body.single-product .kb-product-purchase.has-custom-price-row form.cart .kb-product-cart-state-v1645 { height: 48px !important; min-height: 48px !important; max-height: 48px !important; padding: 4px 6px !important; }
  html body.single-product .kb-product-purchase form.cart .kb-product-cart-state-v1645 > button.kb-product-cart-state-v1645__action { flex-basis: 34px !important; width: 34px !important; min-width: 34px !important; max-width: 34px !important; height: 34px !important; min-height: 34px !important; max-height: 34px !important; }
}


/* v1.16.46: visible feedback for stock-limit rejections. */
.kb-cart-preview__feedback {
  margin: 0 14px 10px !important;
  padding: 9px 11px !important;
  border: 1px solid #f1c8ce !important;
  border-radius: 8px !important;
  background: #fff4f5 !important;
  color: #963344 !important;
  font-size: 11px !important;
  line-height: 1.8 !important;
}
.kb-cart-preview__feedback[hidden] { display:none !important; }
.kb-cart-preview__status.is-error { color:#963344 !important; }
.kb-quantity-stock-message {
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  margin:6px 0 0 !important;
  padding:7px 9px !important;
  border-radius:7px !important;
  background:#fff4f5 !important;
  color:#963344 !important;
  font-size:11px !important;
  line-height:1.8 !important;
  direction:rtl !important;
}
