/**
 * MT Design System — спільні компоненти (усі маршрути).
 * Канон для product_card.stock_row, product_card.action.
 * Див. docs/design-system/components.yaml
 */

/* --- product_card.stock_row --- */
.product-thumb .ch-stock-status,
.mt-home-product .ch-stock-status,
body.mt-inner-page.product-product #product .right-block-inner .ch-stock-status {
  align-items: center;
  flex-wrap: wrap;
  row-gap: 4px;
  gap: 8px;
  width: 100%;
  margin-bottom: 8px;
}

.product-thumb .ch-stock-status .mt-listing-sku,
.mt-home-product .ch-stock-status .mt-listing-sku {
  margin-bottom: 0;
  flex: 0 1 auto;
  width: fit-content;
  max-width: 100%;
  align-self: flex-start;
}

body.mt-inner-page.product-product #product .right-block-inner .ch-stock-status .mt-listing-sku {
  margin-bottom: 0;
  flex: 0 1 auto;
  min-width: 0;
}

.product-thumb .ch-stock-status .stock-status,
.mt-home-product .ch-stock-status .stock-status,
body.mt-inner-page.product-product #product .right-block-inner .ch-stock-status .stock-status {
  margin-left: auto;
  flex: 0 0 auto;
  white-space: nowrap;
}

.product-thumb .ch-stock-status .stock-status.instock,
.mt-home-product .ch-stock-status .stock-status.instock {
  font-size: 10px;
}

/* SKU-плашка (паритет головної) */
.product-thumb .mt-listing-sku {
  align-self: flex-start;
  max-width: 100%;
  margin-bottom: 8px;
  padding: 3px 9px;
  border-radius: var(--mt-radius-sm, 2px);
  border: 1px solid rgba(0, 0, 0, 0.06);
  background: var(--mt-soft);
  color: var(--mt-gray);
  font-family: var(--mt-font-mono);
  font-size: var(--mt-tech-size-sm);
  font-weight: var(--mt-tech-weight-sm);
  letter-spacing: var(--mt-tech-tracking-sm);
  line-height: var(--mt-tech-lh);
  font-variant-numeric: tabular-nums;
}

.product-thumb .ch-stock-status .mt-listing-sku {
  margin-bottom: 0;
}

/* Legacy «Модель:» зверху картки */
.product-thumb > .product-model {
  display: none !important;
}

/* --- product_card.action (листинг) — outline → active fill, як на головній --- */
.product-thumb .btn-product-details {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--mt-border);
  border-radius: var(--mt-radius-md);
  background: transparent;
  color: var(--mt-black);
  font-weight: 700;
  box-shadow: none;
  transition:
    background 0.2s,
    border-color 0.2s,
    color 0.2s;
}

.product-thumb:hover .btn-product-details,
.product-thumb:focus-within .btn-product-details,
.product-thumb .btn-product-details:hover,
.product-thumb .btn-product-details:focus,
.product-thumb .btn-product-details:active {
  background: var(--mt-bronze);
  border-color: var(--mt-bronze);
  color: var(--mt-white);
}

/* --- button.cta primary (кошик, форми, callback) --- */
.mt-btn-primary {
  border: 0;
  border-radius: var(--mt-radius-sm);
  background: var(--mt-btn-grad);
  color: var(--mt-white);
  font-weight: 700;
  box-shadow: var(--mt-btn-shadow);
  transition:
    background 0.2s ease,
    box-shadow 0.2s ease;
}

.mt-btn-primary:hover,
.mt-btn-primary:focus-visible,
.mt-btn-primary:active {
  background: var(--mt-btn-grad-hover);
  color: var(--mt-white);
  box-shadow: var(--mt-btn-shadow-hover);
}

/* --- ui.back_top (legacy stylesheet.css border-radius: 10px; position right) --- */
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) #back-top {
  right: auto;
  left: 10px;
  bottom: var(--mt-back-top-bottom-mobile) !important;
}

@media (min-width: 992px) {
  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) #back-top {
    left: 20px;
    bottom: var(--mt-back-top-bottom-desktop) !important;
  }
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .btn-back-top {
  width: var(--mt-back-top-size);
  height: var(--mt-back-top-size);
  border: 1px solid var(--mt-back-top-border-idle);
  background: var(--mt-back-top-bg-idle);
  color: var(--mt-back-top-icon-idle);
  border-radius: var(--mt-radius-sm);
  box-shadow: var(--mt-back-top-shadow-idle) !important;
  -webkit-backdrop-filter: blur(var(--mt-back-top-blur));
  backdrop-filter: blur(var(--mt-back-top-blur));
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    color 0.2s ease;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .btn-back-top svg path {
  fill: currentColor;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .btn-back-top:hover,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .btn-back-top:focus-visible {
  background: var(--mt-back-top-bg-hover);
  border-color: var(--mt-back-top-border-hover);
  color: var(--mt-back-top-icon-hover);
  box-shadow: var(--mt-back-top-shadow-hover) !important;
  outline: none;
}

@media (prefers-reduced-motion: reduce) {
  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .btn-back-top {
    transition: none;
  }
}

/* --- ui.scroll.minimal (див. components.yaml ui.scroll.minimal) --- */
.mt-scroll-none {
  scrollbar-width: none;
}

.mt-scroll-none::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-scroll-y,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-side-nav--accordion,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-drawer__body,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  :is(#mt-shell-search-form, #mt-shell-search-form-checkout, #mt-home #mt-home-search-form)
  .header-search
  .categories
  .dropdown-menu,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  .header-search
  .search_autocomplete
  .autocomplete-wrapper,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-contact__dropdown,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .header-cart-scroll,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .chm-account-menu-content {
  scrollbar-width: thin;
  scrollbar-color: var(--mt-scrollbar-thumb) transparent;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-scroll-y::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-side-nav--accordion::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-drawer__body::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  :is(#mt-shell-search-form, #mt-shell-search-form-checkout, #mt-home #mt-home-search-form)
  .header-search
  .categories
  .dropdown-menu::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  .header-search
  .search_autocomplete
  .autocomplete-wrapper::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-contact__dropdown::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .header-cart-scroll::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .chm-account-menu-content::-webkit-scrollbar {
  width: 4px;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-scroll-y:hover::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-side-nav--accordion:hover::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-drawer__body:hover::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  :is(#mt-shell-search-form, #mt-shell-search-form-checkout, #mt-home #mt-home-search-form)
  .header-search
  .categories
  .dropdown-menu:hover::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  .header-search
  .search_autocomplete
  .autocomplete-wrapper:hover::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-contact__dropdown:hover::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .header-cart-scroll:hover::-webkit-scrollbar,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .chm-account-menu-content:hover::-webkit-scrollbar {
  width: 6px;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-scroll-y::-webkit-scrollbar-track,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-side-nav--accordion::-webkit-scrollbar-track,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-drawer__body::-webkit-scrollbar-track,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  :is(#mt-shell-search-form, #mt-shell-search-form-checkout, #mt-home #mt-home-search-form)
  .header-search
  .categories
  .dropdown-menu::-webkit-scrollbar-track,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  .header-search
  .search_autocomplete
  .autocomplete-wrapper::-webkit-scrollbar-track,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-contact__dropdown::-webkit-scrollbar-track,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .header-cart-scroll::-webkit-scrollbar-track,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .chm-account-menu-content::-webkit-scrollbar-track {
  background: transparent;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-scroll-y::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-side-nav--accordion::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-drawer__body::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  :is(#mt-shell-search-form, #mt-shell-search-form-checkout, #mt-home #mt-home-search-form)
  .header-search
  .categories
  .dropdown-menu::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  .header-search
  .search_autocomplete
  .autocomplete-wrapper::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-contact__dropdown::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .header-cart-scroll::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .chm-account-menu-content::-webkit-scrollbar-thumb {
  background-color: var(--mt-scrollbar-thumb);
  border-radius: 999px;
  border: transparent;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-scroll-y:hover::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-side-nav--accordion:hover::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-drawer__body:hover::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  :is(#mt-shell-search-form, #mt-shell-search-form-checkout, #mt-home #mt-home-search-form)
  .header-search
  .categories
  .dropdown-menu:hover::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  .header-search
  .search_autocomplete
  .autocomplete-wrapper:hover::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-contact__dropdown:hover::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .header-cart-scroll:hover::-webkit-scrollbar-thumb,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .chm-account-menu-content:hover::-webkit-scrollbar-thumb {
  background-color: var(--mt-scrollbar-thumb-hover);
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-scroll-y::-webkit-scrollbar-button,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-side-nav--accordion::-webkit-scrollbar-button,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-drawer__body::-webkit-scrollbar-button,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  :is(#mt-shell-search-form, #mt-shell-search-form-checkout, #mt-home #mt-home-search-form)
  .header-search
  .categories
  .dropdown-menu::-webkit-scrollbar-button,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  .header-search
  .search_autocomplete
  .autocomplete-wrapper::-webkit-scrollbar-button,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-contact__dropdown::-webkit-scrollbar-button,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .header-cart-scroll::-webkit-scrollbar-button,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .chm-account-menu-content::-webkit-scrollbar-button {
  display: none;
  width: 0;
  height: 0;
}

:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-scroll-y::-webkit-scrollbar-corner,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-side-nav--accordion::-webkit-scrollbar-corner,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-drawer__body::-webkit-scrollbar-corner,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  :is(#mt-shell-search-form, #mt-shell-search-form-checkout, #mt-home #mt-home-search-form)
  .header-search
  .categories
  .dropdown-menu::-webkit-scrollbar-corner,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
  .header-search
  .search_autocomplete
  .autocomplete-wrapper::-webkit-scrollbar-corner,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .mt-home-contact__dropdown::-webkit-scrollbar-corner,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .header-cart-scroll::-webkit-scrollbar-corner,
:is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active) .chm-account-menu-content::-webkit-scrollbar-corner {
  display: none;
}

/* --- product.buy_box checkout price --- */
.mt-product-buybox__price .price,
.mt-product-buybox__price .price .price-new {
  color: var(--mt-pdp-price-color);
  font-family: var(--mt-pdp-price-font);
  font-size: var(--mt-pdp-price-size);
  font-weight: var(--mt-price-weight);
  line-height: var(--mt-pdp-price-lh);
  letter-spacing: 0;
}

/* --- product.qty_stepper — outline secondary (PDP + quickview) --- */
#popup-quickview .quantity-adder.mt-qty-stepper,
#product .quantity-adder.mt-qty-stepper {
  flex: 0 0 auto !important;
  max-width: none !important;
  width: auto !important;
  margin-right: 0 !important;
  line-height: 1;
  z-index: 1;
}

.mt-qty-stepper__inner {
  display: inline-flex;
  flex-direction: row;
  align-items: stretch;
  box-sizing: border-box;
  height: var(--mt-qty-stepper-h);
  min-height: var(--mt-qty-stepper-h);
  border: 1px solid var(--mt-qty-border);
  border-radius: var(--mt-radius-sm);
  background: var(--mt-qty-bg);
  overflow: hidden;
}

#popup-quickview .mt-qty-stepper .add-up,
#popup-quickview .mt-qty-stepper .add-down,
#product .mt-qty-stepper .add-up,
#product .mt-qty-stepper .add-down,
.mt-qty-stepper__btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 var(--mt-qty-btn-w);
  width: var(--mt-qty-btn-w) !important;
  min-width: var(--mt-qty-btn-w);
  height: 100% !important;
  min-height: var(--mt-qty-stepper-h);
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--mt-qty-bg);
  color: var(--mt-ink);
  font-size: inherit;
  line-height: 1;
  cursor: pointer;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
  transition:
    background 0.2s ease,
    color 0.2s ease;
}

#popup-quickview .mt-qty-stepper .add-down,
#product .mt-qty-stepper .add-down,
.mt-qty-stepper__btn.add-down {
  border-right: 1px solid var(--mt-qty-divider) !important;
}

#popup-quickview .mt-qty-stepper .add-up,
#product .mt-qty-stepper .add-up,
.mt-qty-stepper__btn.add-up {
  border-left: 1px solid var(--mt-qty-divider) !important;
}

.mt-qty-stepper__btn svg {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
}

#popup-quickview .mt-qty-stepper .add-up:hover,
#popup-quickview .mt-qty-stepper .add-up:focus-visible,
#popup-quickview .mt-qty-stepper .add-up:active,
#popup-quickview .mt-qty-stepper .add-down:hover,
#popup-quickview .mt-qty-stepper .add-down:focus-visible,
#popup-quickview .mt-qty-stepper .add-down:active,
#product .mt-qty-stepper .add-up:hover,
#product .mt-qty-stepper .add-up:focus-visible,
#product .mt-qty-stepper .add-up:active,
#product .mt-qty-stepper .add-down:hover,
#product .mt-qty-stepper .add-down:focus-visible,
#product .mt-qty-stepper .add-down:active,
.mt-qty-stepper__btn:hover,
.mt-qty-stepper__btn:focus-visible,
.mt-qty-stepper__btn:active {
  background: var(--mt-qty-btn-hover-bg) !important;
  color: #fff !important;
  outline: 0;
}

.mt-qty-stepper__btn:focus-visible {
  box-shadow: inset 0 0 0 2px var(--mt-qty-btn-hover-bg);
}

/* Mobile: завжди активний стан для кнопок кількості (touch-devices не підтримують :hover) */
@media (max-width: 767.98px) {
  #popup-quickview .mt-qty-stepper .add-up,
  #popup-quickview .mt-qty-stepper .add-down,
  #product .mt-qty-stepper .add-up,
  #product .mt-qty-stepper .add-down,
  .mt-qty-stepper__btn {
    background: var(--mt-qty-btn-hover-bg) !important;
    color: #fff !important;
  }
}

#popup-quickview .mt-qty-stepper .quantity-number input,
#product .mt-qty-stepper .quantity-number input,
.mt-qty-stepper__input {
  flex: 1 1 var(--mt-qty-input-w);
  width: var(--mt-qty-input-w) !important;
  min-width: var(--mt-qty-input-w);
  max-width: var(--mt-qty-input-w);
  height: 100% !important;
  min-height: var(--mt-qty-stepper-h);
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--mt-qty-bg) !important;
  box-shadow: none !important;
  color: var(--mt-ink);
  font-family: var(--mt-pdp-price-font);
  font-size: var(--mt-qty-font-size);
  font-weight: var(--mt-qty-font-weight);
  line-height: var(--mt-qty-stepper-h);
  text-align: center;
  font-variant-numeric: tabular-nums;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}

.mt-qty-stepper__input:focus {
  outline: 0;
  box-shadow: inset 0 0 0 1px var(--mt-qty-btn-hover-bg);
}

.mt-qty-stepper__input:disabled {
  background: var(--mt-soft) !important;
  color: var(--mt-muted);
  cursor: not-allowed;
}

.mt-qty-stepper--disabled .mt-qty-stepper__btn {
  pointer-events: none;
  opacity: 0.45;
}

/* --- product.buy_box CTA (B2B: graphite default, bronze hover) --- */
.mt-product-buybox__checkout .mt-product-buybox__actions-primary .btn-general:not(.btn-notify-stock) {
  min-height: 54px;
  padding: 12px 22px;
  border: 0 !important;
  border-radius: var(--mt-radius-sm);
  background: var(--mt-pdp-cta-primary-bg) !important;
  color: #fff !important;
  font-family: var(--mt-pdp-cta-font);
  font-size: var(--mt-pdp-cta-size);
  font-weight: var(--mt-price-weight);
  line-height: var(--mt-pdp-cta-lh);
  box-shadow: none;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease;
}

.mt-product-buybox__checkout .mt-product-buybox__actions-primary .btn-general:not(.btn-notify-stock) .icon-cart-add {
  background: #fff !important;
}

.mt-product-buybox__checkout .mt-product-buybox__actions-primary .btn-general:not(.btn-notify-stock):hover,
.mt-product-buybox__checkout .mt-product-buybox__actions-primary .btn-general:not(.btn-notify-stock):focus,
.mt-product-buybox__checkout .mt-product-buybox__actions-primary .btn-general:not(.btn-notify-stock):focus-visible,
.mt-product-buybox__checkout .mt-product-buybox__actions-primary .btn-general:not(.btn-notify-stock):active {
  background: var(--mt-pdp-cta-hover-bg) !important;
  border-color: var(--mt-pdp-cta-hover-bg) !important;
  color: #fff !important;
}

.mt-product-buybox__checkout .mt-product-buybox__actions-primary .btn-general.is-active:not(.btn-notify-stock) {
  background: var(--mt-charcoal) !important;
  border-color: var(--mt-charcoal) !important;
  color: #fff !important;
}

/* --- product.sticky_cart_footer CTA (канон buybox, компактний розмір) --- */
body.mt-inner-page .add-to-cart-footer .btn-general:not(.btn-notify-stock) {
  min-height: 48px;
  padding: 12px 20px;
  border: 0 !important;
  border-radius: var(--mt-radius-sm);
  background: var(--mt-pdp-cta-primary-bg) !important;
  color: #fff !important;
  font-family: var(--mt-pdp-cta-font);
  font-size: 15px;
  font-weight: var(--mt-price-weight);
  line-height: 1.2;
  box-shadow: none;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease;
}

body.mt-inner-page .add-to-cart-footer .btn-general:not(.btn-notify-stock) .icon-cart-add {
  background: #fff !important;
}

body.mt-inner-page .add-to-cart-footer .btn-general:not(.btn-notify-stock):hover,
body.mt-inner-page .add-to-cart-footer .btn-general:not(.btn-notify-stock):focus,
body.mt-inner-page .add-to-cart-footer .btn-general:not(.btn-notify-stock):focus-visible,
body.mt-inner-page .add-to-cart-footer .btn-general:not(.btn-notify-stock):active {
  background: var(--mt-pdp-cta-hover-bg) !important;
  border-color: var(--mt-pdp-cta-hover-bg) !important;
  color: #fff !important;
}

body.mt-inner-page .add-to-cart-footer .btn-general.is-active:not(.btn-notify-stock) {
  background: var(--mt-charcoal) !important;
  border-color: var(--mt-charcoal) !important;
  color: #fff !important;
}

.mt-product-buybox__checkout .mt-product-buybox__actions-secondary .btn-sample-request {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  margin-top: 0;
  padding: 12px 20px;
  border: 1px solid var(--mt-graphite);
  border-radius: var(--mt-radius-sm);
  background: #fff;
  color: var(--mt-pdp-cta-color);
  font-family: var(--mt-pdp-cta-font);
  font-size: var(--mt-pdp-cta-size);
  font-weight: var(--mt-price-weight);
  line-height: var(--mt-pdp-cta-lh);
  box-shadow: none;
  cursor: pointer;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease;
}

.mt-product-buybox__checkout .mt-product-buybox__actions-secondary .btn-sample-request:hover,
.mt-product-buybox__checkout .mt-product-buybox__actions-secondary .btn-sample-request:focus-visible,
.mt-product-buybox__checkout .mt-product-buybox__actions-secondary .btn-sample-request:active {
  border-color: var(--mt-pdp-cta-hover-bg);
  background: var(--mt-pdp-cta-hover-bg);
  color: #fff;
  outline: 0;
}

/* --- product.buy_box specs grid (PDP) --- */
.mt-product-buybox__specs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 0;
  width: 100%;
  margin-bottom: var(--mt-buybox-section-gap, 20px);
  padding-bottom: var(--mt-buybox-section-gap, 20px);
  border-bottom: 1px solid var(--mt-border);
}

.mt-product-buybox__spec {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 0 16px;
}

.mt-product-buybox__spec:first-child {
  padding-left: 0;
}

.mt-product-buybox__spec:last-child {
  padding-right: 0;
}

.mt-product-buybox__spec + .mt-product-buybox__spec {
  border-left: 1px solid var(--mt-border);
}

.mt-product-buybox__spec-label {
  color: var(--mt-muted);
  font-size: var(--mt-buybox-spec-label-size, 11px);
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

.mt-product-buybox__spec-value {
  color: var(--mt-ink);
  font-size: var(--mt-buybox-spec-value-size, 15px);
  font-weight: var(--mt-buybox-spec-value-weight, 500);
  line-height: 1.35;
}

.mt-product-buybox__spec--code .mt-product-buybox__spec-value {
  font-family: var(--mt-font-mono);
  font-size: var(--mt-buybox-spec-code-size, var(--mt-tech-size-md));
  font-weight: var(--mt-buybox-spec-value-weight, 500);
  letter-spacing: var(--mt-tech-tracking-md);
  font-variant-numeric: tabular-nums;
}

.mt-product-buybox__spec-copy {
  display: inline-block;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.mt-product-buybox__spec-copy:hover,
.mt-product-buybox__spec-copy:focus-visible {
  color: var(--mt-charcoal-dark);
  outline: 0;
}

.mt-product-buybox__spec-copy.is-copied {
  color: var(--mt-buybox-status-in, #53a974);
}

.mt-product-buybox__spec-value a {
  color: inherit;
  text-decoration: none;
}

.mt-product-buybox__spec-value a:hover,
.mt-product-buybox__spec-value a:focus-visible {
  color: var(--mt-charcoal-dark);
}

.mt-product-buybox__spec-value--origin {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.mt-flag {
  display: block;
  width: 16px;
  height: 11px;
  flex-shrink: 0;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 1px;
  object-fit: cover;
}

.mt-product-buybox__spec-value--status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.mt-product-buybox__spec-value--status.is-in {
  color: var(--mt-ink);
}

.mt-product-buybox__spec-value--status.is-in .mt-product-buybox__status-dot {
  background: var(--mt-buybox-status-in, #53a974);
}

.mt-product-buybox__spec-value--status.is-out {
  color: var(--mt-buybox-status-out, #c45c5c);
}

.mt-product-buybox__status-dot {
  width: 8px;
  height: 8px;
  flex-shrink: 0;
  border-radius: 50%;
  background: currentColor;
}

@media (max-width: 767px) {
  .mt-product-buybox__specs {
    grid-template-columns: 1fr 1fr;
    gap: 16px 0;
  }

  .mt-product-buybox__spec {
    padding: 0 12px;
    border-left: 0 !important;
  }

  .mt-product-buybox__spec:nth-child(odd) {
    padding-left: 0;
  }

  .mt-product-buybox__spec:nth-child(even) {
    padding-right: 0;
    border-left: 1px solid var(--mt-border) !important;
  }

  .mt-product-buybox__spec--status {
    grid-column: 1 / -1;
    padding-left: 0 !important;
    padding-right: 0 !important;
    border-left: 0 !important;
    border-top: 1px solid var(--mt-border);
    padding-top: 16px !important;
  }
}

/* --- account.social_login --- */
.mt-social-login {
  margin-top: 20px;
}

.mt-social-login__divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  color: var(--mt-text-muted, #6b7280);
  font-size: 13px;
}

.mt-social-login__divider::before,
.mt-social-login__divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--mt-border, rgba(0, 0, 0, 0.1));
}

.mt-social-login__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.mt-social-login__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 14px;
  border: 1px solid var(--mt-border, rgba(0, 0, 0, 0.12));
  border-radius: var(--mt-radius-sm, 4px);
  background: var(--mt-surface, #fff);
  color: var(--mt-text, #1a1a1a);
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.mt-social-login__btn:hover,
.mt-social-login__btn:active {
  border-color: var(--mt-bronze, #9a7b4f);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  text-decoration: none;
  color: var(--mt-text, #1a1a1a);
}

.mt-social-login--compact .mt-social-login__divider {
  margin-bottom: 12px;
}

.mt-social-login--compact .mt-social-login__buttons {
  justify-content: center;
}

.mt-social-login--compact .mt-social-login__btn {
  min-width: 40px;
  padding: 8px;
}

#account-login .mt-social-login,
#account-register .mt-social-login {
  margin-top: 16px;
}

.checkout-сustomer .mt-social-login {
  margin-bottom: 16px;
}

/* --- W10-P1: глобальні Chameleon-модулі (cookie, agree, callback, chm-modal) --- */

.chm-cookie-consent {
  color: var(--mt-ink) !important;
  background: var(--mt-charcoal) !important;
  z-index: 10050;
}

.chm-cookie-consent__content,
.chm-cookie-consent__content p {
  color: rgba(255, 255, 255, 0.92) !important;
}

.btn-agree-cookie {
  border: 0 !important;
  border-radius: var(--mt-radius-sm) !important;
  background: var(--mt-btn-grad) !important;
  color: #fff !important;
  font-weight: 700;
  box-shadow: var(--mt-btn-shadow);
}

.btn-agree-cookie:hover,
.btn-agree-cookie:focus,
.btn-agree-cookie:active {
  background: var(--mt-btn-grad-hover) !important;
  color: #fff !important;
}

@media (max-width: 389px) {
  .chm-cookie-consent.active-block-cookie {
    padding-bottom: env(safe-area-inset-bottom, 0);
  }

  body.mt-shell-active .chm-cookie-consent.active-block-cookie {
    bottom: calc(56px + env(safe-area-inset-bottom, 0));
  }
}

#popup-agree .modal-content {
  border: 0;
  border-radius: var(--mt-radius-md);
  overflow: hidden;
}

#popup-agree .agree-header h1 {
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  color: var(--mt-ink);
}

#popup-agree .agree-content {
  color: var(--mt-ink);
  font-size: 14px;
  line-height: 1.55;
}

#popup-agree .btn-agree {
  border: 0 !important;
  border-radius: var(--mt-radius-sm) !important;
  background: var(--mt-btn-grad) !important;
  color: #fff !important;
  font-weight: 700;
}

#popup-agree .btn-agree:hover,
#popup-agree .btn-agree:focus {
  background: var(--mt-btn-grad-hover) !important;
  color: #fff !important;
}

#popup-agree .btn-disagree {
  border: 1px solid var(--mt-border) !important;
  border-radius: var(--mt-radius-sm) !important;
  background: #fff !important;
  color: var(--mt-ink) !important;
}

#modal-callback .modal-content,
#modal-callback .chm-modal .modal-content {
  border: 0;
  border-radius: var(--mt-radius-md);
  overflow: hidden;
}

#modal-callback .modal-title,
#popup-callback .modal-title {
  font-size: 18px;
  font-weight: 800;
  color: var(--mt-ink);
}

#modal-callback .chm-btn-primary,
#popup-callback .chm-btn-primary,
#popup-callback .btn-general,
.modal .chm-modal .chm-btn-primary {
  border: 0;
  border-radius: var(--mt-radius-sm);
  background: var(--mt-btn-grad);
  color: #fff;
  font-weight: 700;
  box-shadow: var(--mt-btn-shadow);
}

#modal-callback .chm-btn-primary:hover,
#popup-callback .chm-btn-primary:hover,
.modal .chm-modal .chm-btn-primary:hover,
#modal-callback .chm-btn-primary:active,
#popup-callback .chm-btn-primary:active,
.modal .chm-modal .chm-btn-primary:active {
  background: var(--mt-btn-grad-hover);
  color: #fff;
}

.modal .chm-modal .form-control {
  border: 1px solid var(--mt-border);
  border-radius: var(--mt-radius-sm);
  color: var(--mt-ink);
}

.modal .chm-modal .form-control:focus {
  border-color: var(--mt-graphite);
  box-shadow: 0 0 0 2px rgba(44, 44, 46, 0.12);
}

.modal .chm-modal .close-modal {
  opacity: 0.7;
}

.modal .chm-modal .close-modal:hover,
.modal .chm-modal .close-modal:active {
  opacity: 1;
}

/* --- Touch / mobile: hover-паритет (завжди hover-fill; картки — fill як на desktop hover) --- */
@media (max-width: 767px), (hover: none) and (pointer: coarse) {
  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    :is(
      .btn-primary,
      .btn-cart,
      .btn-oneclick,
      .chm-btn-primary,
      .btn-general:not(.btn-notify-stock):not(.btn-product-details),
      .btn-agree-cookie,
      #popup-agree .btn-agree,
      .mt-btn-primary,
      .mt-home-product__add
    ):not(:disabled):not(.disabled):not(.is-active) {
    background: var(--mt-btn-grad-hover) !important;
    border-color: transparent !important;
    color: #fff !important;
    box-shadow: var(--mt-btn-shadow-hover);
  }

  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    .btn-general:not(.btn-notify-stock):not(.btn-product-details):not(.is-active)
    .icon-cart-add {
    background: #fff !important;
  }

  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    .mt-product-buybox__checkout
    .mt-product-buybox__actions-primary
    .btn-general:not(.btn-notify-stock):not(.is-active),
  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    .add-to-cart-footer
    .btn-general:not(.btn-notify-stock):not(.is-active) {
    background: var(--mt-pdp-cta-hover-bg) !important;
    border-color: var(--mt-pdp-cta-hover-bg) !important;
    color: #fff !important;
  }

  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    .btn-general.btn-notify-stock:not(.is-active) {
    background: var(--mt-soft) !important;
    border-color: var(--mt-bronze) !important;
    color: var(--mt-bronze) !important;
  }

  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    .product-thumb
    .btn-fastorder:not(:disabled):not(.hidden-quick-order),
  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    #popup-quickview
    .btn-fastorder:not(:disabled):not(.hidden-quick-order) {
    border-color: transparent !important;
    background: #eaedf7 !important;
    color: #000 !important;
  }

  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    :is(
      #product .btn-fastorder,
      #product .btn-sample-request,
      .mt-product-buybox__actions-secondary .btn-sample-request
    ):not(:disabled):not(.hidden-quick-order) {
    border-color: var(--mt-pdp-cta-hover-bg) !important;
    background: var(--mt-pdp-cta-hover-bg) !important;
    color: #fff !important;
  }

  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    :is(.btn-wishlist, .btn-compare):not(.is-active) {
    border: 0 !important;
    background: #eaedf7 !important;
    color: #000 !important;
  }

  :is(body.mt-home-page, body.mt-inner-page, body.mt-shell-active)
    footer
    .btn-newsletter:not(:disabled) {
    background: var(--mt-btn-grad-hover) !important;
    color: #fff !important;
  }

  /* «Деталі» на картці — scroll-center hover (B2B: graphite) */
  body.mt-scroll-hover-enabled .product-thumb.mt-scroll-hover .btn-product-details,
  body.mt-scroll-hover-enabled .product-thumb:focus-within .btn-product-details {
    background: var(--mt-graphite) !important;
    border-color: var(--mt-graphite) !important;
    color: var(--mt-white) !important;
  }

  body.mt-scroll-hover-enabled .product-thumb.mt-scroll-hover .btn-product-details .icon-product-details,
  body.mt-scroll-hover-enabled .product-thumb:focus-within .btn-product-details .icon-product-details {
    width: 16px;
    margin-left: 6px;
    opacity: 1;
  }

  /* «Деталі» на картці — fallback коли scroll-hover JS не активний */
  body:not(.mt-scroll-hover-enabled) .product-thumb .btn-product-details,
  body:not(.mt-scroll-hover-enabled) .mt-home-product__details {
    background: var(--mt-graphite) !important;
    border-color: var(--mt-graphite) !important;
    color: var(--mt-white) !important;
  }

  body:not(.mt-scroll-hover-enabled) .product-thumb .btn-product-details .icon-product-details,
  body:not(.mt-scroll-hover-enabled) .mt-home-product__details-icon {
    width: 16px;
    margin-left: 6px;
    opacity: 1;
  }
}
