body.app-theme .products-grid .product-card.product-card--neo {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
}

body.app-theme .products-grid .product-card__body-grid {
  display: grid;
  gap: 0.34rem;
  align-content: start;
  min-height: 0;
}

body.app-theme .products-grid .product-card__meta-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.32rem;
}

body.app-theme .products-grid .product-card__brand,
body.app-theme .products-grid .product-card__pack,
body.app-theme .products-grid .product-card__store-link {
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body.app-theme .products-grid .product-card__title {
  margin: 0;
  color: #111827;
  font-weight: 700;
  line-height: 1.24;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: calc(1.24em * 2);
}

body.app-theme .products-grid .product-card__subline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.35rem;
}

body.app-theme .products-grid .product-card__rating {
  display: inline-flex;
  align-items: center;
  gap: 0.24rem;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 0.75rem;
  line-height: 1.1;
  color: #1e293b;
  background: #eef4ff;
  border: 1px solid #d9e4ff;
  border-radius: 999px;
  padding: 0.2rem 0.45rem;
}

body.app-theme .products-grid .product-card__stock {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  font-size: 0.72rem;
  line-height: 1;
  padding: 0.2rem 0.46rem;
  border-radius: 999px;
  border: 1px solid transparent;
}

body.app-theme .products-grid .product-card__stock.is-ok {
  color: #166534;
  background: #ecfdf3;
  border-color: #bdebcf;
}

body.app-theme .products-grid .product-card__stock.is-empty {
  color: #9f1239;
  background: #fff1f4;
  border-color: #ffc3d0;
}

body.app-theme .products-grid .product-card__footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 0.45rem;
  margin-top: auto;
}

body.app-theme .products-grid .product-card__price {
  min-width: 0;
  white-space: nowrap;
  font-size: clamp(1.18rem, 3.1vw, 1.42rem);
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #111827;
}

body.app-theme .products-grid .product-card__footer .cart-control {
  min-width: 2.45rem;
  justify-self: end;
}

body.app-theme .products-grid .product-card__footer .cart-control .stepper {
  gap: 0.24rem;
}

body.app-theme .products-grid .product-card__footer .cart-control .qty {
  min-width: 2.05rem;
  width: 2.05rem;
  height: 2.05rem;
  background: #eaf3ff;
  border-color: #cdd8ff;
  color: #15145d;
  font-size: 0.78rem;
}

body.app-theme .products-grid .product-card__footer .cart-control .cart-step-btn {
  min-width: 2.05rem;
  width: 2.05rem;
  height: 2.05rem;
  border-color: #cfd9ff;
  background: #ffffff;
}

body.app-theme .products-grid .product-card__footer .cart-control .cart-step-btn:hover {
  background: #eaf3ff;
  color: #1a5dcb;
}

@media (max-width: 430px) {
  body.app-theme .products-grid {
    gap: 0.55rem;
  }

body.app-theme .products-grid .product-card .card-body {
    padding: 0.62rem;
  }

  body.app-theme .products-grid .product-card .card-footer {
    padding-left: 0.62rem;
    padding-right: 0.62rem;
    padding-bottom: 0.62rem;
  }

  body.app-theme .products-grid .product-card__brand,
  body.app-theme .products-grid .product-card__pack,
  body.app-theme .products-grid .product-card__store-link {
    font-size: 0.72rem;
  }

  body.app-theme .products-grid .product-card__rating {
    font-size: 0.68rem;
    padding: 0.16rem 0.36rem;
  }

  body.app-theme .products-grid .product-card__stock {
    font-size: 0.68rem;
    padding: 0.18rem 0.36rem;
  }

  body.app-theme .products-grid .product-card__price {
    font-size: clamp(1.08rem, 4vw, 1.24rem);
  }

  body.app-theme .products-grid .product-card__footer .cart-control .qty,
  body.app-theme .products-grid .product-card__footer .cart-control .cart-step-btn {
    min-width: 1.95rem;
    width: 1.95rem;
    height: 1.95rem;
  }
}

/* Global anti-brown layer (kills warm borders/shadows from legacy theme.css) */
body.app-theme,
body.app-theme .site-header-v3,
body.app-theme .site-footer,
body.app-theme .mobile-nav-mint,
body.app-theme .home-minimal-footer {
  background-image: none;
}

body.app-theme .site-header-v2__search-wrap,
body.app-theme .site-header-v2__search,
body.app-theme .site-header-v2__search-btn,
body.app-theme .site-header-v3__mobile-search-wrap,
body.app-theme .site-header-v3__mobile-search-wrap .site-header-v2__search,
body.app-theme .site-header-v3__mobile-search-wrap .site-header-v2__search-btn {
  border-color: #d8e1ff;
  box-shadow: none;
  background-image: none;
}

body.app-theme .site-header-v3__nav-btn,
body.app-theme .site-header-v3__icon-btn,
body.app-theme .mobile-nav-mint-link,
body.app-theme .home-minimal-chip,
body.app-theme .catalog-sort-chip,
body.app-theme .site-catalog-menu__item,
body.app-theme .catalog-sort-pill,
body.app-theme .catalog-filter-dropdown__summary,
body.app-theme .tag-chip-2026 {
  border-color: #d8e1ff;
  color: #1f2937;
  background: #ffffff;
}

body.app-theme .site-header-v3__nav-btn:hover,
body.app-theme .site-header-v3__icon-btn:hover,
body.app-theme .mobile-nav-mint-link:hover,
body.app-theme .catalog-sort-pill:hover,
body.app-theme .catalog-filter-dropdown__summary:hover,
body.app-theme .tag-chip-2026:hover {
  background: #eaf3ff;
  border-color: #c8dcff;
  color: #1a5dcb;
}

/* Final neutralization of legacy warm palette */
body.app-theme {
  --pf-cream-50: #f8faff;
  --pf-cream-100: #f2f6ff;
  --pf-cream-200: #e9efff;
  --pf-card-border: #d6e1ff;
  --pf-text-main: #111827;
  --pf-text-muted: #475569;
  --pf-accent: #5f2fd6;
  --pf-accent-strong: #4f26bc;
  --u26-bg-top: #f7f9ff;
  --u26-bg-mid: #eef3ff;
  --u26-bg-bot: #e7efff;
  --u26-surface: #ffffff;
  --u26-surface-soft: #f6f9ff;
  --u26-border: #c8dcff;
  --u26-text: #111827;
  --u26-muted: #475569;
  --u262-bg-1: #f7f9ff;
  --u262-bg-2: #eef3ff;
  --u262-bg-3: #e8f0ff;
  --u262-surface: #ffffff;
  --u262-surface-2: #f6f9ff;
  --u262-border: #d7e1ff;
  --u262-text: #111827;
  --u262-muted: #475569;
}

/* Navbar search: always round button + no brown strip/shadow */
body.app-theme .site-header-v2__search-wrap,
body.app-theme .site-header-v3__mobile-search-wrap,
body.app-theme .site-header-v3__mobile-nav,
body.app-theme .mobile-nav-mint {
  box-shadow: none;
  border-color: #d8e1ff;
}

body.app-theme .site-header-v2__search-btn,
body.app-theme .site-header-v3__mobile-search-wrap .site-header-v2__search-btn {
  width: 2.6rem;
  min-width: 2.6rem;
  height: 2.6rem;
  border-radius: 999px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #cdd9ff;
  background: #eaf3ff;
  color: #1a5dcb;
}

/* Remove warm tones from mobile nav active/focus states */
body.app-theme .mobile-nav-mint-link,
body.app-theme .mobile-nav-mint-link.is-active,
body.app-theme .mobile-nav-mint-link:focus-visible {
  background: #ffffff;
  border-color: #d8e1ff;
  color: #1f2937;
  box-shadow: none;
}

/* Inputs/selects: remove warm tones, align with site palette */
body.app-theme .app-main .input,
body.app-theme .app-main .select,
body.app-theme .app-main .textarea,
body.app-theme .app-main .file-input,
body.app-theme .catalog-filters-form .input,
body.app-theme .catalog-filters-form .select {
  background: #ffffff;
  color: #111827;
  border: 1px solid #d8e1ff;
  box-shadow: none;
}

body.app-theme .app-main .input::placeholder,
body.app-theme .app-main .textarea::placeholder {
  color: #64748b;
}

body.app-theme .app-main .input:focus,
body.app-theme .app-main .select:focus,
body.app-theme .app-main .textarea:focus,
body.app-theme .app-main .file-input:focus,
body.app-theme .catalog-filters-form .input:focus,
body.app-theme .catalog-filters-form .select:focus {
  border-color: #1f6fe8;
  outline: none;
  box-shadow: 0 0 0 3px rgba(31, 111, 232, 0.18);
}
