/* KAZIO PRODUCT MOBILE EXACT CSS V2
   Source targets:
   - catalog/view/template/product/product.twig
     .kz-qty-cart > .input-group > .input-group-text + #input-quantity + #button-cart
   - catalog/view/javascript/kazio-club-v1.js injects .kz-club-v1-product-nudge
   Mobile only. No JS.
*/

@media (max-width: 768px) {
  #product-info.kz-product-page,
  #product-info.kz-product-page #content,
  #product-info.kz-product-page .kz-product-main,
  #product-info.kz-product-page .kz-product-info-card,
  #product-info.kz-product-page #product.kz-purchase-box {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  #product-info.kz-product-page #product.kz-purchase-box {
    overflow: hidden !important;
  }

  /*
    باشگاه کازیو / امتیاز محصول:
    این کلاس توسط kazio-club-v1.js تزریق می‌شود.
    آیکن ستاره دیگر نباید بیرون کارت بزند یا محو شود.
  */
  #product-info.kz-product-page .kz-club-v1-product-nudge {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    float: none !important;
    clear: both !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;

    margin: 0 0 12px 0 !important;
    padding: 10px 11px !important;

    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 9px !important;

    direction: rtl !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    border-radius: 16px !important;
  }

  #product-info.kz-product-page .kz-club-v1-product-nudge > span {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    float: none !important;

    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;

    margin: 0 !important;
    padding: 0 !important;

    display: inline-grid !important;
    place-items: center !important;
    align-self: center !important;
    justify-self: center !important;
    box-sizing: border-box !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  #product-info.kz-product-page .kz-club-v1-product-nudge > p {
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: right !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    box-sizing: border-box !important;
  }

  #product-info.kz-product-page .kz-club-v1-product-nudge > p b {
    display: block !important;
    margin-bottom: 2px !important;
  }

  /*
    افزودن به سبد:
    ساختار دقیق product.twig:
    .kz-qty-cart .input-group -> .input-group-text + #input-quantity + #button-cart
  */
  #product-info.kz-product-page .kz-qty-cart {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  #product-info.kz-product-page .kz-qty-cart .input-group {
    direction: ltr !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 58px 50px !important;
    grid-template-areas: "cart qty label" !important;
    align-items: stretch !important;
    gap: 8px !important;

    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    flex-wrap: unset !important;
  }

  #product-info.kz-product-page .kz-qty-cart .input-group-text {
    grid-area: label !important;
    direction: rtl !important;

    width: 100% !important;
    max-width: 50px !important;
    min-width: 0 !important;
    height: 48px !important;
    min-height: 48px !important;

    margin: 0 !important;
    padding: 0 6px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 15px !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    font-size: 11px !important;
    font-weight: 900 !important;
  }

  #product-info.kz-product-page .kz-qty-cart #input-quantity,
  #product-info.kz-product-page .kz-qty-cart input[name="quantity"] {
    grid-area: qty !important;
    direction: ltr !important;

    width: 58px !important;
    max-width: 58px !important;
    min-width: 0 !important;
    height: 48px !important;
    min-height: 48px !important;

    margin: 0 !important;
    padding: 0 4px !important;

    text-align: center !important;
    border-radius: 15px !important;
    box-sizing: border-box !important;
  }

  #product-info.kz-product-page .kz-qty-cart #button-cart {
    grid-area: cart !important;
    direction: rtl !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 48px !important;
    min-height: 48px !important;

    margin: 0 !important;
    padding: 0 10px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;

    border-radius: 16px !important;
    box-sizing: border-box !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;

    position: static !important;
    inset: auto !important;
    transform: none !important;
  }
}

@media (max-width: 390px) {
  #product-info.kz-product-page .kz-qty-cart .input-group {
    grid-template-columns: minmax(0, 1fr) 52px 44px !important;
    gap: 6px !important;
  }

  #product-info.kz-product-page .kz-qty-cart .input-group-text {
    max-width: 44px !important;
    height: 46px !important;
    min-height: 46px !important;
    font-size: 10px !important;
  }

  #product-info.kz-product-page .kz-qty-cart #input-quantity,
  #product-info.kz-product-page .kz-qty-cart input[name="quantity"] {
    width: 52px !important;
    max-width: 52px !important;
    height: 46px !important;
    min-height: 46px !important;
  }

  #product-info.kz-product-page .kz-qty-cart #button-cart {
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 8px !important;
    font-size: 13px !important;
  }
}

@media (max-width: 340px) {
  #product-info.kz-product-page .kz-qty-cart .input-group {
    grid-template-columns: minmax(0, 1fr) 50px !important;
    grid-template-areas: "cart qty" !important;
  }

  #product-info.kz-product-page .kz-qty-cart .input-group-text {
    display: none !important;
  }

  #product-info.kz-product-page .kz-qty-cart #input-quantity,
  #product-info.kz-product-page .kz-qty-cart input[name="quantity"] {
    width: 50px !important;
    max-width: 50px !important;
  }
}
