/* Mekrivo market design system — draft theme only.
   Shared visual layer: no product, variant, cart, or checkout behaviour. */

:root {
  --mekrivo-ink: #141414;
  --mekrivo-muted: #6d7075;
  --mekrivo-line: #dedede;
  --mekrivo-soft: #f7f7f5;
  --mekrivo-orange: #f5660a;
  --mekrivo-sage: #5b7a63;
}

body.color-scheme-1.body0 {
  color: var(--mekrivo-ink);
  background: #fff;
  --button-border-radius: 4px;
  --button-shadow-offset-x: 0;
  --button-shadow-offset-y: 0;
  --button-shadow-blur: 0;
}

body :where(h1, h2, h3, h4, h5, h6) {
  color: var(--mekrivo-ink);
  font-weight: 700;
}

body :where(p, li, label, input, textarea, select) {
  color: inherit;
}

body :where(.button:not(.button--link, .button--text, .button--icon), .shopline-element-buy-now) {
  min-height: 44px;
  border-radius: 4px;
  font-weight: 700;
  letter-spacing: 0;
  box-shadow: none;
}

body :where(.button--secondary:not(.button--link, .button--text)) {
  color: var(--mekrivo-ink);
  background: #fff;
}

body :where(.field)::after {
  border-color: var(--mekrivo-line);
  border-radius: 4px;
  box-shadow: none;
}

body :where(.field:focus-within)::after {
  border-color: var(--mekrivo-ink);
}

body :where(.field__input, .field__textarea) {
  color: var(--mekrivo-ink);
}

body :where(.field__input)::placeholder {
  color: var(--mekrivo-muted);
  opacity: 1;
}

body :where(.main-page__title, .main-search__title, .main-order-tracking__title, .main-cart-header) {
  color: var(--mekrivo-ink);
  letter-spacing: -0.01em;
}

body :where(.main-page__content, .contact-form, .main-search, .main-order-tracking) {
  color: var(--mekrivo-ink);
}

body :where(.main-page__content, .contact-form__inner, .main-order-tracking__wrapper) :where(p, li, .body3, .body4, .body5, .body6) {
  color: var(--mekrivo-muted);
}

body :where(.main-collection-container, .main-collections-all, .main-search, .main-cart-items__container) {
  background: #fff;
}

body :where(.main-collection-cover, .facets-filtering, .facets-sorting-wrapper) {
  border-color: var(--mekrivo-line);
}

body :where(.block-product-card.product-card-style--card) {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--mekrivo-line);
  border-radius: 6px;
  box-shadow: none;
}

body :where(.block-product-card .block-product-title, .block-product-card .block-product-price) {
  color: var(--mekrivo-ink);
}

body :where(.block-product-card .block-product-title) {
  font-weight: 600;
}

body :where(.block-product-card .block-product-price) {
  font-weight: 700;
}

body :where(.main-cart-items__list .cart-item, .cart-coupon__dividing-line) {
  border-color: var(--mekrivo-line);
}

body :where(.cart-item__total-final, .cart-amount > li span) {
  color: var(--mekrivo-ink);
  font-weight: 700;
}

body :where(.cart-item__total-original, .cart-amount .cart-amount__discount-label) {
  color: var(--mekrivo-muted);
}

body :where(.main-order-tracking__tabs .active) {
  color: var(--mekrivo-orange);
}

body :where(a, button, input, textarea, select):focus-visible {
  outline: 2px solid var(--mekrivo-orange);
  outline-offset: 3px;
}

@media (max-width: 959px) {
  body :where(.button:not(.button--link, .button--text, .button--icon), .shopline-element-buy-now) {
    min-height: 42px;
  }

  body :where(.block-product-card.product-card-style--card) {
    border-radius: 4px;
  }
}

/* SHOPLINE Product Recommendations app: keep its compact mobile quick-add
   action inside each two-column card when the long label wraps. */
@media (max-width: 749px) {
  .recommend__app-block :where(.product-item, .block-product-card, .product-card-wrapper) {
    min-width: 0;
  }

  .recommend__app-block .plugin-recommend-product-item-quick-add-atc--button {
    box-sizing: border-box !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 48px !important;
    align-items: center;
    justify-content: center;
    padding: 8px 6px !important;
    overflow-wrap: anywhere !important;
    text-align: center;
    white-space: normal !important;
    word-break: normal !important;
    line-height: 1.25 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body :where(.button, .field, .field::after) {
    transition-duration: 0ms;
  }
}
