/* ✅ Armenian font stack for ALL DMH UI */
:root {
  --dmh-font: "Noto Sans Armenian", "Noto Sans", system-ui, -apple-system,
    "Segoe UI", Roboto, Arial, "Helvetica Neue", "DejaVu Sans", sans-serif;

  --dmh-bg: #ffffff;
  --dmh-card: #ffffff;

  --dmh-border: rgba(0, 0, 0, 0.12);
  --dmh-txt: #111827;
  --dmh-muted: rgba(17, 24, 39, 0.62);

  --dmh-soft: #f2f3f5;
  --dmh-media: #f0f1f3;

  /* ✅ REQUIRED: your red */
  --dmh-accent: #fb1d08;

  --dmh-radius: 18px;
  --dmh-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);

  /* ✅ wishlist visibility */
  --dmh-wl-bg: rgba(0, 0, 0, 0.28); /* always dark glass */
  --dmh-wl-stroke: #ffffff; /* always visible */
}

/* Dark mode */
html[data-dmh-theme="dark"],
body.dmh-dark,
[data-theme="dark"] {
  --dmh-bg: #2c2d33;
  --dmh-card: #2f3036;
  --dmh-border: rgba(255, 255, 255, 0.12);

  /* ✅ REQUIRED by you */
  --dmh-txt: #e5e5e5;

  --dmh-muted: rgba(229, 229, 229, 0.7);
  --dmh-soft: #34353c;
  --dmh-media: #3b3c43;

  --dmh-shadow: none;

  --dmh-wl-bg: rgba(0, 0, 0, 0.45);
  --dmh-wl-stroke: #ffffff;
}

/* ✅ Force Armenian font inside DMH components */
.dmh-pblock,
.dmh-pblock *,
.dmh-single-wrap,
.dmh-single-wrap * {
  font-family: var(--dmh-font) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* ensure form controls inherit */
.dmh-pblock input,
.dmh-pblock button,
.dmh-single-wrap input,
.dmh-single-wrap button,
.dmh-single-wrap select,
.dmh-single-wrap textarea {
  font-family: var(--dmh-font) !important;
}

/* ---------- Products block ---------- */
.dmh-pblock {
  padding: 16px 0;
}
.dmh-pblock__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 12px;
}
.dmh-pblock__title {
  margin: 0;
  font-size: 26px; /* bigger */
  color: var(--dmh-txt);
  font-weight: 900;
  letter-spacing: 0.2px;
}

.dmh-pcat {
  margin: 0 0 18px;
}
.dmh-pcat__bar {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 10px;
}
.dmh-pcat__title {
  margin: 0;
  font-size: 20px; /* bigger */
  color: var(--dmh-txt);
  font-weight: 900;
}

.dmh-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 18px; /* bigger */
  border-radius: 999px;
  font-weight: 900;
  font-size: 14px;
  text-decoration: none;
}
.dmh-btn--ghost {
  border: 1px solid var(--dmh-border);
  color: var(--dmh-txt);
  background: transparent;
}
.dmh-btn--ghost:hover {
  background: var(--dmh-soft);
}

.dmh-grid {
  display: grid;
  gap: 16px;
}
.dmh-pblock[data-cols="2"] .dmh-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.dmh-pblock[data-cols="3"] .dmh-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.dmh-pblock[data-cols="4"] .dmh-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.dmh-pblock[data-cols="5"] .dmh-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.dmh-pblock[data-cols="6"] .dmh-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

@media (max-width: 1024px) {
  .dmh-pblock[data-cols="4"] .dmh-grid,
  .dmh-pblock[data-cols="5"] .dmh-grid,
  .dmh-pblock[data-cols="6"] .dmh-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 680px) {
  .dmh-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .dmh-pblock__title {
    font-size: 22px;
  }
}

/* ---------- Product card ---------- */
.dmh-card {
  position: relative;
  border: 1px solid var(--dmh-border);
  background: var(--dmh-card);
  border-radius: var(--dmh-radius);
  overflow: hidden;
  box-shadow: var(--dmh-shadow);
  transition: transform 0.15s ease, border-color 0.15s ease;
}
.dmh-card:hover {
  transform: translateY(-1px);
  border-color: rgba(251, 29, 8, 0.55);
}

.dmh-card__media {
  display: block;
  position: relative;
  padding: 14px 14px 0;
  text-decoration: none;
}

.dmh-card__img {
  border-radius: 16px;
  background: var(--dmh-media);
  overflow: hidden;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.dmh-card__imgtag {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.dmh-card__badge {
  position: absolute;
  left: 18px;
  top: 18px;
  background: var(--dmh-accent);
  color: #fff;
  padding: 7px 11px;
  border-radius: 12px;
  font-weight: 900;
  font-size: 13px;
  z-index: 2;
}

/* ✅ Wishlist always visible + bigger */
.dmh-card__wl {
  position: absolute;
  right: 18px;
  top: 18px;
  width: 42px; /* bigger */
  height: 42px; /* bigger */
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: var(--dmh-wl-bg);
  backdrop-filter: blur(10px);
  cursor: pointer;
  z-index: 2;
}
.dmh-card__wl svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: var(--dmh-wl-stroke);
  stroke-width: 2.2;
  filter: drop-shadow(0 1px 0 rgba(0, 0, 0, 0.35));
}
.dmh-card__wl.is-active {
  background: var(--dmh-accent);
  border-color: var(--dmh-accent);
}
.dmh-card__wl.is-active svg {
  stroke: #fff;
}

.dmh-card__body {
  position: relative;
  padding: 14px 14px 74px; /* more space for + */
}

.dmh-card__meta {
  font-size: 13px; /* bigger */
  color: var(--dmh-muted);
  margin: 0 0 8px;
}
.dmh-card__meta a {
  color: inherit;
  text-decoration: none;
}
.dmh-card__meta a:hover {
  text-decoration: underline;
}

/* ✅ bigger name */
.dmh-card__name {
  margin: 0 0 10px;
  font-size: 17px; /* bigger */
  line-height: 1.35;
  font-weight: 900;
  color: var(--dmh-txt);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  min-height: calc(17px * 1.35 * 2);
}
.dmh-card__name a {
  color: var(--dmh-txt);
  text-decoration: none;
}

/* ✅ bigger price */
.dmh-card__price {
  font-size: 18px; /* bigger */
  color: var(--dmh-txt);
  font-weight: 900;
}
.dmh-card__price,
.dmh-card__price * {
  color: var(--dmh-txt) !important;
}
.dmh-card__price del {
  opacity: 0.55;
  font-weight: 800;
  margin-right: 6px;
}
.dmh-card__price ins {
  text-decoration: none;
}

/* actions */
.dmh-card__actions {
  position: absolute;
  right: 14px;
  bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}

/* ✅ Plus like your 2nd screen */
.dmh-card__plus {
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 0;
  background: var(--dmh-accent);
  color: #fff;
  font-size: 30px;
  font-weight: 900;
  cursor: pointer;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 26px rgba(251, 29, 8, 0.35);
}
html[data-dmh-theme="dark"] .dmh-card__plus,
body.dmh-dark .dmh-card__plus,
[data-theme="dark"] .dmh-card__plus {
  box-shadow: none;
}
.dmh-card__plus:hover {
  filter: brightness(1.06);
}

/* view button bigger too */
.dmh-card__view {
  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid var(--dmh-border);
  background: transparent;
  color: var(--dmh-txt);
  text-decoration: none;
  font-weight: 900;
  font-size: 14px;
}
.dmh-card__view:hover {
  background: var(--dmh-soft);
}

/* note + toast */
.dmh-note {
  padding: 10px 12px;
  border: 1px dashed var(--dmh-border);
  border-radius: 12px;
  color: var(--dmh-muted);
}
.dmh-toast {
  position: fixed;
  left: 50%;
  bottom: 18px;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.82);
  color: #fff;
  padding: 10px 14px;
  border-radius: 999px;
  z-index: 999999;
  font-weight: 900;
  font-size: 14px;
}

/* ---------- Single product ---------- */
.dmh-single-wrap {
  padding: 18px 0;
}

.dmh-single {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 18px;
}
@media (max-width: 980px) {
  .dmh-single {
    grid-template-columns: 1fr;
  }
}

.dmh-single__gallery,
.dmh-single__summary {
  border: 1px solid var(--dmh-border);
  background: var(--dmh-card);
  border-radius: var(--dmh-radius);
  padding: 14px;
}

/* gallery */
.dmh-sg {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 12px;
}
@media (max-width: 680px) {
  .dmh-sg {
    grid-template-columns: 1fr;
  }
  .dmh-sg__thumbs {
    order: 2;
    display: flex;
    overflow: auto;
  }
}

.dmh-sg__thumbs {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.dmh-sg__th {
  border: 1px solid var(--dmh-border);
  background: var(--dmh-soft);
  border-radius: 14px;
  padding: 6px;
  cursor: pointer;
  min-width: 74px;
}
.dmh-sg__th.is-active {
  outline: 2px solid var(--dmh-accent);
}
.dmh-sg__th img {
  width: 100%;
  height: 72px;
  object-fit: contain;
  display: block;
}

.dmh-sg__main {
  border-radius: 16px;
  background: var(--dmh-media);
  overflow: hidden;
}
.dmh-sg__mainbtn {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: zoom-in;
}
.dmh-sg__mainimg {
  width: 100%;
  height: 520px;
  object-fit: contain;
  display: block;
  padding: 18px;
}
@media (max-width: 680px) {
  .dmh-sg__mainimg {
    height: 360px;
  }
}

.dmh-ps__top {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}
.dmh-ps__catsTop {
  font-size: 13px;
  color: var(--dmh-muted);
  margin-bottom: 6px;
}
.dmh-ps__catsTop a {
  color: inherit;
  text-decoration: none;
}
.dmh-ps__catsTop a:hover {
  text-decoration: underline;
}

.dmh-ps__title {
  margin: 0;
  font-size: 26px; /* bigger */
  color: var(--dmh-txt);
  font-weight: 900;
}

/* ✅ Single wishlist visible (same style) */
.dmh-ps__wl {
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: var(--dmh-wl-bg);
  cursor: pointer;
  flex: 0 0 auto;
}
.dmh-ps__wl svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: var(--dmh-wl-stroke);
  stroke-width: 2.2;
  filter: drop-shadow(0 1px 0 rgba(0, 0, 0, 0.35));
}
.dmh-ps__wl.is-active {
  background: var(--dmh-accent);
  border-color: var(--dmh-accent);
}
.dmh-ps__wl.is-active svg {
  stroke: #fff;
}

.dmh-ps__price {
  margin: 12px 0 8px;
  font-size: 24px; /* bigger */
  color: var(--dmh-txt);
  font-weight: 900;
}
.dmh-ps__price,
.dmh-ps__price * {
  color: var(--dmh-txt) !important;
}

.dmh-ps__stock {
  font-weight: 900;
  color: var(--dmh-muted);
  font-size: 14px;
}
.dmh-ps__stock.is-in {
  color: #22c55e;
}
.dmh-ps__stock.is-out {
  color: #ef4444;
}

/* cart buttons (Woo output) */
.dmh-ps__cart {
  margin-top: 14px;
}

.dmh-single-wrap form.cart {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: stretch;
}
.dmh-single-wrap .quantity {
  flex: 0 0 auto;
}
.dmh-single-wrap .quantity input.qty {
  width: 90px;
  height: 48px;
  border-radius: 12px;
  border: 1px solid var(--dmh-border);
  background: var(--dmh-soft);
  color: var(--dmh-txt);
  font-weight: 900;
  font-size: 16px;
}

.dmh-single-wrap .single_add_to_cart_button {
  height: 48px;
  border-radius: 12px;
  border: 0;
  background: var(--dmh-accent);
  color: #fff;
  font-weight: 900;
  font-size: 16px; /* bigger */
  padding: 0 22px;
}

.dmh-single-wrap .dmh-buy-now {
  height: 48px;
  border-radius: 12px;
  border: 1px solid var(--dmh-border);
  background: transparent;
  color: var(--dmh-txt);
  font-weight: 900;
  font-size: 16px; /* bigger */
  padding: 0 22px;
}
.dmh-single-wrap .dmh-buy-now:hover {
  background: var(--dmh-soft);
}

@media (max-width: 680px) {
  .dmh-single-wrap .quantity {
    width: 100%;
  }
  .dmh-single-wrap .quantity input.qty {
    width: 100%;
  }
  .dmh-single-wrap .single_add_to_cart_button,
  .dmh-single-wrap .dmh-buy-now {
    width: 100%;
  }
}

/* details bottom block */
.dmh-sd {
  margin-top: 18px;
  border: 1px solid var(--dmh-border);
  background: var(--dmh-card);
  border-radius: var(--dmh-radius);
  padding: 16px;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 16px;
}
@media (max-width: 980px) {
  .dmh-sd {
    grid-template-columns: 1fr;
  }
}

.dmh-sd__h {
  margin: 0 0 10px;
  color: var(--dmh-txt);
  font-weight: 900;
  font-size: 18px;
}

.dmh-sd__txt {
  color: var(--dmh-txt);
  font-size: 15px;
  line-height: 1.65;
}
.dmh-sd__txt p {
  color: var(--dmh-txt);
}

.dmh-sd__specs {
  border-radius: 14px;
  background: var(--dmh-soft);
  padding: 12px;
}
.dmh-sd__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 9px 0;
  border-bottom: 1px solid var(--dmh-border);
}
.dmh-sd__row:last-child {
  border-bottom: 0;
}

.dmh-sd__k {
  color: var(--dmh-muted);
  font-weight: 900;
  font-size: 14px;
}
.dmh-sd__v {
  color: var(--dmh-txt);
  font-weight: 900;
  font-size: 14px;
}
.dmh-sd__v a {
  color: inherit;
  text-decoration: none;
}
.dmh-sd__v a:hover {
  text-decoration: underline;
}

/* Modal */
.dmh-gm {
  position: fixed;
  inset: 0;
  z-index: 999999;
}
.dmh-gm__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.72);
}
.dmh-gm__box {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(980px, 92vw);
  height: min(80vh, 720px);
  background: var(--dmh-card);
  border: 1px solid var(--dmh-border);
  border-radius: 18px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dmh-gm__img {
  max-width: 92%;
  max-height: 92%;
  object-fit: contain;
}
.dmh-gm__close {
  position: absolute;
  right: 12px;
  top: 10px;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid var(--dmh-border);
  background: var(--dmh-soft);
  cursor: pointer;
  font-size: 26px;
  line-height: 1;
  color: var(--dmh-txt);
}
.dmh-gm__nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid var(--dmh-border);
  background: var(--dmh-soft);
  cursor: pointer;
  font-size: 28px;
  font-weight: 900;
  color: var(--dmh-txt);
}
.dmh-gm__nav.is-prev {
  left: 12px;
}
.dmh-gm__nav.is-next {
  right: 12px;
}

/* =========================================================
   ✅ FINAL FIX: Woodmart overrides (wishlist + plus ALWAYS visible)
   Add this at end (already included)
   ========================================================= */

.dmh-card__wl,
.dmh-ps__wl {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
  z-index: 999 !important;
}

.dmh-card__wl {
  right: 14px !important;
  top: 14px !important;
  width: 44px !important;
  height: 44px !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  background: var(--dmh-wl-bg) !important;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.12) !important;
}

.dmh-card__wl svg,
.dmh-ps__wl svg {
  fill: none !important;
  stroke: var(--dmh-wl-stroke) !important;
  stroke-width: 2.4 !important;
  opacity: 1 !important;
}

.dmh-card__wl.is-active,
.dmh-ps__wl.is-active {
  background: var(--dmh-accent) !important;
  border-color: var(--dmh-accent) !important;
}
.dmh-card__wl.is-active svg,
.dmh-ps__wl.is-active svg {
  stroke: #fff !important;
}

/* plus button final */
.dmh-card__actions {
  right: 14px !important;
  bottom: 14px !important;
  z-index: 998 !important;
}
.dmh-card__plus {
  width: 48px !important;
  height: 48px !important;
  background: var(--dmh-accent) !important;
  color: #fff !important;
  font-size: 30px !important;
  border: 0 !important;
  box-shadow: 0 14px 30px rgba(251, 29, 8, 0.3) !important;
}
.dmh-card__plus svg {
  fill: #fff !important;
  stroke: #fff !important;
}
/* =========================================================
   FIX: Wishlist icon not visible (force SVG/path styles)
   ========================================================= */

/* сама кнопка — круг + поверх картинки */
.dmh-card .dmh-card__wl {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 9999 !important;

  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  margin: 0 !important;

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

  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  background: rgba(0, 0, 0, 0.38) !important;

  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  cursor: pointer !important;
  line-height: 1 !important;
}

/* часто тема делает svg invisible/0 — фиксируем */
.dmh-card .dmh-card__wl > svg,
.dmh-ps__wl > svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
}

/* 🔥 главный фикс: path принудительно рисуем */
.dmh-card .dmh-card__wl > svg > path {
  fill: none !important;
  stroke: #fff !important; /* всегда видно на тёмном фоне кнопки */
  stroke-width: 2.1 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  opacity: 1 !important;
  visibility: visible !important;
  vector-effect: non-scaling-stroke;
}

/* active */
.dmh-card .dmh-card__wl.is-active {
  background: #fb1d08 !important;
  border-color: #fb1d08 !important;
}
.dmh-card .dmh-card__wl.is-active > svg > path {
  stroke: #fff !important;
}

/* на всякий: если тема красит через currentColor */
.dmh-card .dmh-card__wl {
  color: #fff !important;
}
/* ✅ Round red + button like reference */
.dmh-card__plus {
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important; /* круг */
  border: 0 !important;

  background: #fb1d08 !important; /* твой красный */
  color: #fff !important;

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

  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  box-shadow: 0 12px 26px rgba(251, 29, 8, 0.35) !important;
}

/* hover */
.dmh-card__plus:hover {
  filter: brightness(1.06);
}

/* если вдруг тема вставляет svg вместо текста */
.dmh-card__plus svg {
  width: 20px !important;
  height: 20px !important;
  fill: #fff !important;
  stroke: #fff !important;
}
/* ============================
   DMH Animations: wishlist + plus
   ============================ */

/* smooth rendering */
.dmh-card__wl,
.dmh-card__plus,
.dmh-ps__wl {
  transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease,
    background-color 0.18s ease, border-color 0.18s ease, opacity 0.18s ease;
  will-change: transform;
  transform: translateZ(0);
}

/* ---------- PLUS button animation ---------- */
.dmh-card__plus {
  position: relative;
  overflow: hidden;
}

/* hover "lift" */
.dmh-card__plus:hover {
  transform: translateY(-2px) scale(1.04);
  box-shadow: 0 16px 34px rgba(251, 29, 8, 0.42) !important;
}

/* press */
.dmh-card__plus:active {
  transform: translateY(0) scale(0.94);
  filter: brightness(0.98);
}

/* ripple effect */
.dmh-card__plus::after {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: 999px;
  background: radial-gradient(
    circle at center,
    rgba(255, 255, 255, 0.55) 0%,
    rgba(255, 255, 255, 0) 55%
  );
  opacity: 0;
  transform: scale(0.6);
  transition: opacity 0.25s ease, transform 0.25s ease;
  pointer-events: none;
}
.dmh-card__plus:hover::after {
  opacity: 0.55;
  transform: scale(1.15);
}

/* ---------- WISHLIST animation (card + single) ---------- */
.dmh-card__wl:hover,
.dmh-ps__wl:hover {
  transform: translateY(-2px) scale(1.06);
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.18);
}

/* press */
.dmh-card__wl:active,
.dmh-ps__wl:active {
  transform: translateY(0) scale(0.92);
}

/* heart "pop" when active */
.dmh-card__wl.is-active,
.dmh-ps__wl.is-active {
  animation: dmh-pop 0.35s ease;
}

/* subtle pulse glow for active state */
.dmh-card__wl.is-active {
  box-shadow: 0 16px 34px rgba(251, 29, 8, 0.35) !important;
}
.dmh-ps__wl.is-active {
  box-shadow: 0 16px 34px rgba(251, 29, 8, 0.28) !important;
}

/* small shine */
.dmh-card__wl::after,
.dmh-ps__wl::after {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: 999px;
  background: radial-gradient(
    circle at 30% 30%,
    rgba(255, 255, 255, 0.35),
    rgba(255, 255, 255, 0) 60%
  );
  opacity: 0;
  transform: scale(0.85);
  transition: opacity 0.22s ease, transform 0.22s ease;
  pointer-events: none;
}
.dmh-card__wl:hover::after,
.dmh-ps__wl:hover::after {
  opacity: 1;
  transform: scale(1.05);
}

/* heart draw effect on hover */
.dmh-card__wl > svg > path,
.dmh-ps__wl > svg > path {
  transition: stroke 0.18s ease, transform 0.18s ease, filter 0.18s ease;
}
.dmh-card__wl:hover > svg > path,
.dmh-ps__wl:hover > svg > path {
  filter: drop-shadow(0 2px 0 rgba(0, 0, 0, 0.25));
  transform: scale(1.02);
}

/* keyframes */
@keyframes dmh-pop {
  0% {
    transform: scale(0.85);
  }
  55% {
    transform: scale(1.12);
  }
  100% {
    transform: scale(1);
  }
}

/* respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .dmh-card__wl,
  .dmh-card__plus,
  .dmh-ps__wl {
    transition: none !important;
    animation: none !important;
  }
  .dmh-card__plus::after,
  .dmh-card__wl::after,
  .dmh-ps__wl::after {
    display: none !important;
  }
}
/* ✅ Dark: media bg like reference (#444448) */
html[data-dmh-theme="dark"] .dmh-card__img,
body.dmh-dark .dmh-card__img,
[data-theme="dark"] .dmh-card__img {
  background-color: #444448 !important;
}

/* ✅ IMPORTANT: do NOT darken images */
.dmh-card__imgtag,
.dmh-card__imgtag img {
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

/* ✅ Hover zoom like 3rd screen */
.dmh-card__imgtag {
  transform: scale(1);
  transition: transform 0.22s ease;
  will-change: transform;
}

/* hover on whole card OR on media */
.dmh-card:hover .dmh-card__imgtag,
.dmh-card__media:hover .dmh-card__imgtag {
  transform: scale(1.06);
}

/* optional: slightly smooth container */
.dmh-card__img {
  overflow: hidden;
}
/* ✅ Dark: image area background */
html[data-dmh-theme="dark"] .dmh-card__img,
body.dmh-dark .dmh-card__img,
[data-theme="dark"] .dmh-card__img {
  background-color: #444448 !important;
}

/* ✅ убрать белый квадрат: делаем картинку cover */
html[data-dmh-theme="dark"] .dmh-card__imgtag,
body.dmh-dark .dmh-card__imgtag,
[data-theme="dark"] .dmh-card__imgtag {
  object-fit: cover !important; /* ВАЖНО */
  width: 100% !important;
  height: 100% !important;
}

/* чуть меньше обрезки (делаем внутреннюю рамку) */
html[data-dmh-theme="dark"] .dmh-card__img,
body.dmh-dark .dmh-card__img,
[data-theme="dark"] .dmh-card__img {
  padding: 14px !important; /* регулируй 10–18 */
}
html[data-dmh-theme="dark"] .dmh-card__imgtag,
body.dmh-dark .dmh-card__imgtag,
[data-theme="dark"] .dmh-card__imgtag {
  border-radius: 14px !important;
}
/* ============================
   Qty stepper on cards (+/-)
   ============================ */

.dmh-card.is-loading {
  pointer-events: none;
  opacity: 0.92;
}

.dmh-qty {
  position: absolute;
  right: 14px;
  bottom: 14px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  z-index: 3;
}

/* qty number */
.dmh-qty__val {
  min-width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid var(--dmh-border);
  background: var(--dmh-soft);
  color: var(--dmh-txt);
  font-weight: 900;
  font-size: 16px;
}

/* buttons base */
.dmh-qty__btn {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid var(--dmh-border);
  background: var(--dmh-soft);
  color: var(--dmh-txt);
  font-weight: 900;
  font-size: 28px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;

  transition: transform 0.18s ease, filter 0.18s ease, box-shadow 0.18s ease,
    background-color 0.18s ease;
}

/* plus = red круг как ты хотел */
.dmh-qty__btn--plus {
  border: 0;
  background: #fb1d08;
  color: #fff;
  box-shadow: 0 12px 26px rgba(251, 29, 8, 0.35);
}

/* hover */
.dmh-qty__btn:hover {
  transform: translateY(-1px) scale(1.04);
}
.dmh-qty__btn:active {
  transform: scale(0.94);
}

/* disable minus when qty=0 */
.dmh-qty__btn[disabled] {
  opacity: 0.45;
  cursor: not-allowed;
  transform: none !important;
}

/* when qty=0 -> показываем только красный + (как на скрине) */
.dmh-qty.is-zero .dmh-qty__btn--minus,
.dmh-qty.is-zero .dmh-qty__val {
  display: none;
}
/* ===============================
   FORCE: plus always round + red
   =============================== */

/* старый вариант (если ещё есть .dmh-card__plus) */
.dmh-pblock .dmh-card .dmh-card__plus,
.dmh-pblock .dmh-card button.dmh-card__plus {
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: #fb1d08 !important;
  color: #fff !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 12px 26px rgba(251, 29, 8, 0.35) !important;
  padding: 0 !important;
  text-decoration: none !important;
}

/* новый qty PLUS */
.dmh-pblock .dmh-qty__btn--plus {
  width: 46px !important;
  height: 46px !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: #fb1d08 !important;
  color: #fff !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  box-shadow: 0 12px 26px rgba(251, 29, 8, 0.35) !important;
  padding: 0 !important;
}

/* hover animation */
.dmh-pblock .dmh-card .dmh-card__plus:hover,
.dmh-pblock .dmh-qty__btn--plus:hover {
  transform: translateY(-1px) scale(1.06) !important;
  filter: brightness(1.05) !important;
}
.dmh-pblock .dmh-card .dmh-card__plus:active,
.dmh-pblock .dmh-qty__btn--plus:active {
  transform: scale(0.94) !important;
}

/* на всякий: если тема делает кнопки квадратными */
.dmh-pblock .dmh-card button,
.dmh-pblock .dmh-card a {
  border-radius: inherit;
}

/* ===========================
   DMH QTY — FIX (LEFT BOTTOM)
   returns + / −, no disappear
=========================== */

.dmh-card__body {
  position: relative !important;
  padding-bottom: 86px !important; /* место под qty слева + твой красный плюс справа */
}

/* qty блок слева снизу */
.dmh-card .dmh-qty[data-dmh-qtywrap="1"] {
  position: absolute !important;
  left: 14px !important;
  bottom: 14px !important;
  z-index: 6 !important;

  width: auto !important;
  max-width: none !important;

  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;

  padding: 10px 12px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  backdrop-filter: blur(10px);
}

/* НИКОГДА не прячем при is-zero */
.dmh-card .dmh-qty.is-zero[data-dmh-qtywrap="1"] {
  display: inline-flex !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* КНОПКИ + и − (вернули!) */
.dmh-card .dmh-qty__btn {
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  background: rgba(255, 255, 255, 0.95) !important;
  color: #111827 !important;
  font-weight: 900 !important;
  font-size: 20px !important;
  line-height: 1 !important;
  cursor: pointer !important;

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

  transition: transform 0.16s ease, filter 0.16s ease, opacity 0.16s ease;
}

.dmh-card .dmh-qty__btn--plus {
  display: inline-flex !important; /* важно: вернуть плюс */
}

/* disabled для минуса */
.dmh-card .dmh-qty__btn--minus[disabled],
.dmh-card .dmh-qty__btn--minus[aria-disabled="true"] {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  transform: none !important;
}

/* значение */
.dmh-card .dmh-qty__val {
  min-width: 34px !important;
  height: 38px !important;
  border-radius: 999px !important;

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

  font-weight: 900 !important;
  font-size: 15px !important;
  background: rgba(0, 0, 0, 0.06) !important;
  color: #111827 !important;
}

/* dark */
html[data-dmh-theme="dark"] .dmh-card .dmh-qty[data-dmh-qtywrap="1"],
body.dmh-dark .dmh-card .dmh-qty[data-dmh-qtywrap="1"],
[data-theme="dark"] .dmh-card .dmh-qty[data-dmh-qtywrap="1"] {
  background: rgba(0, 0, 0, 0.35) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
}

html[data-dmh-theme="dark"] .dmh-card .dmh-qty__btn,
body.dmh-dark .dmh-card .dmh-qty__btn,
[data-theme="dark"] .dmh-card .dmh-qty__btn {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  color: #fff !important;
}

html[data-dmh-theme="dark"] .dmh-card .dmh-qty__val,
body.dmh-dark .dmh-card .dmh-qty__val,
[data-theme="dark"] .dmh-card .dmh-qty__val {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #fff !important;
}

@media (hover: hover) {
  .dmh-card .dmh-qty__btn:not([disabled]):hover {
    transform: translateY(-1px) scale(1.03);
    filter: brightness(1.06);
  }
}
/* ===========================
   FORCE CART PLUS BACK (RIGHT)
   keep your design, always visible
=========================== */

/* если у тебя есть .dmh-card__actions */
.dmh-card__actions {
  position: absolute !important;
  right: 14px !important;
  bottom: 14px !important;
  z-index: 12 !important; /* выше qty */
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

/* твой красный круглый плюс */
.dmh-card__plus {
  display: inline-flex !important; /* вернуть если скрыт */
  visibility: visible !important;
  opacity: 1 !important;

  width: 56px !important;
  height: 56px !important;
  border-radius: 999px !important;

  position: relative !important;
  z-index: 13 !important;

  background: var(--dmh-accent) !important; /* #FB1D08 */
  color: #fff !important;
  border: 0 !important;

  box-shadow: 0 14px 30px rgba(251, 29, 8, 0.35) !important;
}

/* если вдруг плюс не в .dmh-card__actions, а где-то глубже — всё равно поднять */
.dmh-card .dmh-card__plus {
  z-index: 13 !important;
}

/* qty слева — ниже по z-index, чтобы не перекрывал плюс */
.dmh-card .dmh-qty[data-dmh-qtywrap="1"] {
  z-index: 6 !important;
}

/* safety: если кто-то скрывает кнопки в карточке */
.dmh-card button.dmh-card__plus,
.dmh-card a.dmh-card__plus {
  pointer-events: auto !important;
}

/* hover animation (мягко) */
@media (hover: hover) {
  .dmh-card__plus:hover {
    transform: translateY(-1px) scale(1.04);
    filter: brightness(1.06);
  }
}

/* loading состояние (если есть) — не прячем плюс */
.dmh-card.is-loading .dmh-card__plus {
  opacity: 1 !important;
  visibility: visible !important;
}
/* ===============================
   ✅ KEEP RED ROUND PLUS AS IS
   =============================== */
.dmh-card__actions {
  position: absolute;
  right: 14px;
  bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  z-index: 3;
}

.dmh-card__plus {
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 0;
  background: var(--dmh-accent);
  color: #fff;
  font-size: 30px;
  font-weight: 900;
  cursor: pointer;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 26px rgba(251, 29, 8, 0.35);
  transition: transform 0.18s ease, filter 0.18s ease, box-shadow 0.18s ease;
}
.dmh-card__plus:hover {
  transform: translateY(-1px) scale(1.04);
  filter: brightness(1.06);
  box-shadow: 0 16px 34px rgba(251, 29, 8, 0.42);
}
.dmh-card__plus:active {
  transform: scale(0.96);
}

/* ===============================
   ✅ QTY MUST BE LEFT-BOTTOM (NOT TOUCHING RED PLUS)
   ✅ AND MUST NOT DISAPPEAR
   =============================== */
.dmh-card {
  position: relative;
}

/* место под контролы */
.dmh-card__body {
  position: relative;
  padding-bottom: 86px; /* чтобы и qty слева, и красный плюс справа не наезжали */
}

/* qty блок всегда видим */
.dmh-qty {
  position: absolute;
  left: 14px;
  bottom: 14px;
  display: flex !important;
  align-items: center;
  gap: 10px;
  z-index: 3;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid var(--dmh-border);
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.1);
  transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
  opacity: 1 !important;
  visibility: visible !important;
}

html[data-dmh-theme="dark"] .dmh-qty,
body.dmh-dark .dmh-qty,
[data-theme="dark"] .dmh-qty {
  background: rgba(28, 28, 32, 0.7);
  box-shadow: none;
}

.dmh-qty__btn {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  border: 1px solid var(--dmh-border);
  background: transparent;
  color: var(--dmh-txt);
  font-weight: 900;
  font-size: 18px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.15s ease, background 0.15s ease,
    border-color 0.15s ease;
}
.dmh-qty__btn:hover {
  transform: translateY(-1px);
  background: var(--dmh-soft);
}
.dmh-qty__btn:active {
  transform: scale(0.96);
}

.dmh-qty__btn[disabled] {
  opacity: 0.45;
  cursor: not-allowed;
  transform: none;
}

.dmh-qty__val {
  min-width: 34px;
  height: 34px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--dmh-soft);
  border: 1px solid var(--dmh-border);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: var(--dmh-txt);
}

/* когда qty=0 — просто чуть мягче, НО НЕ СКРЫВАТЬ */
.dmh-qty.is-zero {
  opacity: 1;
}

/* ===============================
   ✅ Wishlist visibility + animation
   =============================== */
.dmh-card__wl {
  transition: transform 0.18s ease, filter 0.18s ease, box-shadow 0.18s ease,
    background 0.18s ease;
}
.dmh-card__wl:hover {
  transform: translateY(-1px) scale(1.05);
  filter: brightness(1.05);
}
.dmh-card__wl:active {
  transform: scale(0.95);
}

@keyframes dmhPop {
  0% {
    transform: scale(0.92);
  }
  55% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.dmh-card__wl.is-active {
  animation: dmhPop 0.28s ease;
}

/* ===============================
   ✅ Red plus animation on add
   (JS добавит класс .is-bump)
   =============================== */
@keyframes dmhBump {
  0% {
    transform: scale(1);
  }
  45% {
    transform: scale(1.12);
  }
  100% {
    transform: scale(1);
  }
}
.dmh-card__plus.is-bump {
  animation: dmhBump 0.22s ease;
}

/* ===============================
   ✅ Image dark background + hover zoom (как твой 3-й скрин)
   =============================== */
.dmh-card__img {
  border-radius: 16px;
  overflow: hidden;
  background: var(--dmh-media);
}
html[data-dmh-theme="dark"] .dmh-card__img,
body.dmh-dark .dmh-card__img,
[data-theme="dark"] .dmh-card__img {
  background: #444448; /* как ты просил */
}

/* убрать “грязь” от blend-mode если где-то прилип */
.dmh-card__imgtag {
  mix-blend-mode: normal !important;
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transition: transform 0.22s ease, filter 0.22s ease;
}

@media (hover: hover) and (pointer: fine) {
  .dmh-card:hover .dmh-card__imgtag {
    transform: scale(1.04);
  }
}

/* ===============================
   ✅ Mobile: чтобы qty и + не вылезали
   =============================== */
@media (max-width: 680px) {
  .dmh-qty {
    left: 12px;
    bottom: 12px;
  }
  .dmh-card__actions {
    right: 12px;
    bottom: 12px;
  }
  .dmh-card__body {
    padding-bottom: 92px;
  }
}
/* =========================
   DMH FIX: qty left + red ATC plus right (do not lose the red circle)
   ========================= */

/* card must be relative */
.dmh-card {
  position: relative;
}

/* reserve space for bottom controls */
.dmh-card__body {
  position: relative;
  padding-bottom: 78px !important; /* enough for qty + red plus */
}

/* ✅ QTY: always bottom-left, AUTO width (no full bar!) */
.dmh-qty[data-dmh-qtywrap="1"] {
  position: absolute;
  left: 14px;
  bottom: 14px;
  z-index: 4;

  display: inline-flex;
  align-items: center;
  gap: 10px;

  width: auto !important;
  max-width: calc(100% - 86px); /* keep space for red + */
  padding: 10px 12px;

  border-radius: 999px;
  border: 1px solid var(--dmh-border);
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(10px);
}

/* dark bg for qty */
html[data-dmh-theme="dark"] .dmh-qty[data-dmh-qtywrap="1"],
body.dmh-dark .dmh-qty[data-dmh-qtywrap="1"],
[data-theme="dark"] .dmh-qty[data-dmh-qtywrap="1"] {
  background: rgba(47, 48, 54, 0.92);
}

/* qty buttons */
.dmh-qty__btn {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  background: rgba(255, 255, 255, 0.92);
  color: var(--dmh-txt);
  font-weight: 900;
  font-size: 20px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
html[data-dmh-theme="dark"] .dmh-qty__btn,
body.dmh-dark .dmh-qty__btn,
[data-theme="dark"] .dmh-qty__btn {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.06);
}

.dmh-qty__btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.dmh-qty__val {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  font-size: 16px;
  background: rgba(0, 0, 0, 0.06);
  color: var(--dmh-txt);
}
html[data-dmh-theme="dark"] .dmh-qty__val,
body.dmh-dark .dmh-qty__val,
[data-theme="dark"] .dmh-qty__val {
  background: rgba(255, 255, 255, 0.08);
}

/* ✅ YOUR RED ROUND ADD TO CART "+" ALWAYS bottom-right */
.dmh-card__plus[data-dmh-atc="1"] {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 6;

  width: 52px;
  height: 52px;
  border-radius: 999px;
  border: 0;
  background: var(--dmh-accent); /* #FB1D08 */
  color: #fff;

  font-size: 30px;
  font-weight: 900;
  line-height: 1;

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

  cursor: pointer;
  box-shadow: 0 14px 30px rgba(251, 29, 8, 0.38);
  transition: transform 0.16s ease, filter 0.16s ease, box-shadow 0.16s ease;
}
.dmh-card__plus[data-dmh-atc="1"]:hover {
  transform: translateY(-1px) scale(1.04);
  filter: brightness(1.05);
}
.dmh-card.is-loading .dmh-card__plus[data-dmh-atc="1"] {
  opacity: 0.75;
  pointer-events: none;
}

/* mobile tuning */
@media (max-width: 680px) {
  .dmh-qty[data-dmh-qtywrap="1"] {
    left: 12px;
    bottom: 12px;
    max-width: calc(100% - 78px);
  }
  .dmh-card__plus[data-dmh-atc="1"] {
    right: 12px;
    bottom: 12px;
    width: 50px;
    height: 50px;
  }
}
/* ✅ FORCE: red + ALWAYS bottom-right near qty (override любых глобальных стилей) */
.dmh-card {
  position: relative !important;
}
.dmh-card__body {
  position: relative !important;
}

/* qty слева снизу */
.dmh-qty[data-dmh-qtywrap="1"] {
  position: absolute !important;
  left: 14px !important;
  bottom: 14px !important;
  z-index: 6 !important;
  max-width: calc(100% - 86px) !important;
}

/* красный плюс справа снизу */
.dmh-card__plus[data-dmh-atc="1"] {
  position: absolute !important;
  right: 18px !important;
  bottom: 24px !important;
  left: auto !important;
  top: auto !important;
  margin: 0 !important;
  z-index: 9 !important;
}

/* если вдруг глобально двигают кнопки в карточке */
.dmh-card .dmh-card__plus[data-dmh-atc="1"] {
  transform: none !important; /* hover-анимация останется в другом правиле, если нужно */
}

/* mobile */
@media (max-width: 680px) {
  .dmh-qty[data-dmh-qtywrap="1"] {
    left: 12px !important;
    bottom: 12px !important;
    max-width: calc(100% - 78px) !important;
  }
  .dmh-card__plus[data-dmh-atc="1"] {
    right: 12px !important;
    bottom: 12px !important;
  }
}
/* ===========================
   DMH QTY polish (mobile)
   =========================== */

.dmh-card .dmh-card__body {
  position: relative;
}

/* фиксируем якорь, чтобы не "уезжало" при смене ширины */
.dmh-card .dmh-qty,
.dmh-card .dmh-card__plus {
  position: absolute !important;
  left: 50% !important;
  bottom: 12px !important;
  transform: translateX(-50%) !important;
  z-index: 5;
}

/* место снизу под контролы */
@media (max-width: 768px) {
  .dmh-card .dmh-card__body {
    padding-bottom: 66px !important;
  }
}

/* сам степпер — фикс ширина, идеальная геометрия */
.dmh-card .dmh-qty {
  width: 142px !important; /* фикс => НЕ дергается */
  height: 44px !important;
  padding: 0 8px !important;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px !important;
  box-sizing: border-box;
}

/* кнопки -/+ */
.dmh-card .dmh-qty__btn {
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;

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

  padding: 0 !important;
  line-height: 1 !important;
  font-size: 22px !important;
  font-weight: 800 !important;

  border-radius: 999px !important;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

/* значение по центру */
.dmh-card .dmh-qty__val {
  flex: 1 1 auto !important;
  min-width: 26px !important;
  text-align: center !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

/* визуально ровняем символы (минус обычно "ниже") */
.dmh-card .dmh-qty__btn--minus {
  transform: translateY(-1px) !important;
}
.dmh-card .dmh-qty__btn--plus {
  transform: translateY(-1px) !important;
}

/* если qty=0 — скрываем степпер, показываем плюс */
.dmh-card .dmh-qty.is-zero {
  display: none !important;
}
.dmh-card[data-dmh-qty]:not([data-dmh-qty="0"]) .dmh-card__plus {
  display: none !important;
}
/* ================================
   DMH Mobile: FIX overlap (+) & QTY
   ================================ */

/* 1) Базовое переключение: либо плюс, либо qty */
.dmh-grid--products .dmh-card .dmh-qty.is-zero {
  display: none !important; /* qty=0 -> скрываем степпер */
}
.dmh-grid--products .dmh-card .dmh-qty:not(.is-zero) + .dmh-card__plus {
  display: none !important; /* qty>0 -> скрываем красный плюс */
}

/* 2) Чтобы можно было позиционировать элементы */
.dmh-grid--products .dmh-card .dmh-card__body {
  position: relative;
}

/* 3) Мобайл/планшет: делаем низ карточки “зоной кнопок” */
@media (max-width: 768px) {
  /* Даем место снизу под контролы */
  .dmh-grid--products .dmh-card .dmh-card__body {
    padding-bottom: 64px !important;
  }

  /* Плюс: строго снизу по центру */
  .dmh-grid--products .dmh-card .dmh-card__plus {
    position: absolute !important;
    left: 50% !important;
    bottom: 12px !important;
    transform: translateX(-50%) !important;

    width: 48px !important;
    height: 48px !important;
    border-radius: 999px !important;

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

    line-height: 1 !important;
    font-size: 26px !important;
    touch-action: manipulation;
  }

  /* Qty: строго снизу по центру (и немного меньше, чтоб не вылезало) */
  .dmh-grid--products .dmh-card .dmh-qty {
    position: absolute !important;
    left: 50% !important;
    bottom: 12px !important;
    transform: translateX(-50%) !important;

    height: 40px !important;
    min-width: 112px !important;
    padding: 0 6px !important;

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

    border-radius: 999px !important;
    touch-action: manipulation;
  }

  .dmh-grid--products .dmh-card .dmh-qty__btn {
    width: 36px !important;
    height: 36px !important;
    border-radius: 999px !important;
    line-height: 1 !important;
    font-size: 20px !important;
    padding: 0 !important;
  }

  .dmh-grid--products .dmh-card .dmh-qty__val {
    min-width: 28px !important;
    text-align: center !important;
    font-size: 14px !important;
    line-height: 1 !important;
  }
}

/* 4) На всякий случай — запрет “налезания” */
.dmh-grid--products .dmh-card .dmh-card__plus,
.dmh-grid--products .dmh-card .dmh-qty {
  z-index: 5;
}
/* =========================
   DMH QTY — perfect circles
   ========================= */

.dmh-qty {
  --q-size: 42px; /* размер кружков */
  --q-gap: 8px; /* расстояние */
  --q-ring: 1px; /* толщина обводки */
  --q-bg: rgba(255, 255, 255, 0.06);
  --q-border: rgba(255, 255, 255, 0.14);

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--q-gap) !important;

  padding: 8px 10px !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, 0.18) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-sizing: border-box !important;
}

/* 3 круга */
.dmh-qty__btn,
.dmh-qty__val {
  width: var(--q-size) !important;
  height: var(--q-size) !important;
  border-radius: 999px !important;
  box-sizing: border-box !important;

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

  background: var(--q-bg) !important;
  border: var(--q-ring) solid var(--q-border) !important;
}

/* value (цифра) */
.dmh-qty__val {
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.2px !important;
  color: #fff !important;
}

/* кнопки: убираем кривые глифы и рисуем ровные +/- сами */
.dmh-qty__btn {
  position: relative !important;
  padding: 0 !important;
  margin: 0 !important;

  -webkit-appearance: none !important;
  appearance: none !important;

  font-size: 0 !important; /* скрываем символы "−" и "+" */
  line-height: 0 !important;
  color: #fff !important;

  cursor: pointer !important;
  user-select: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

.dmh-qty__btn::before,
.dmh-qty__btn::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  background: currentColor !important;
  border-radius: 999px !important;
}

/* горизонтальная палка */
.dmh-qty__btn::before {
  width: 16px !important;
  height: 2px !important;
}

/* вертикальная палка только для плюсика */
.dmh-qty__btn--plus::after {
  width: 2px !important;
  height: 16px !important;
}
.dmh-qty__btn--minus::after {
  display: none !important;
}

/* hover/active (аккуратно) */
.dmh-qty__btn:hover {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
}
.dmh-qty__btn:active {
  transform: scale(0.98) !important;
}

/* disabled минус */
.dmh-qty__btn[disabled],
.dmh-qty__btn[aria-disabled="true"] {
  opacity: 0.35 !important;
  cursor: not-allowed !important;
}

/* mobile чуть меньше */
@media (max-width: 480px) {
  .dmh-qty {
    --q-size: 38px;
    --q-gap: 7px;
  }
  .dmh-qty__val {
    font-size: 13px !important;
  }
}

/* =========================================================
   DMH CART CONTROLS — FINAL OVERRIDE (v1.0.3)
   ✅ Red "+" always bottom-right
   ✅ QTY stepper always bottom-left (no прыжков)
   ✅ Perfect circles (+/− drawn with CSS)
   Paste at the VERY END of front.css
   ========================================================= */

.dmh-grid--products .dmh-card .dmh-card__body {
  position: relative !important;
  padding-bottom: 92px !important; /* reserve space for controls */
}

/* one bottom row: qty left, plus right */
.dmh-grid--products .dmh-card .dmh-card__controls[data-dmh-controls="1"] {
  position: absolute !important;
  left: 14px !important;
  right: 14px !important;
  bottom: 14px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;

  z-index: 50 !important;
  pointer-events: none !important; /* children will be clickable */
}
.dmh-grid--products .dmh-card .dmh-card__controls[data-dmh-controls="1"] > * {
  pointer-events: auto !important;
}

/* visibility switch (CSS only) */
.dmh-grid--products .dmh-card[data-dmh-qty="0"] .dmh-card__controls .dmh-qty {
  display: none !important;
}
.dmh-grid--products
  .dmh-card[data-dmh-qty="0"]
  .dmh-card__controls
  .dmh-card__plus {
  display: inline-flex !important;
}

.dmh-grid--products
  .dmh-card:not([data-dmh-qty="0"])
  .dmh-card__controls
  .dmh-qty {
  display: flex !important;
}
.dmh-grid--products
  .dmh-card:not([data-dmh-qty="0"])
  .dmh-card__controls
  .dmh-card__plus {
  display: none !important;
}

/* -------------------------
   Red add-to-cart "+"
   ------------------------- */
.dmh-grid--products .dmh-card .dmh-card__plus[data-dmh-atc="1"] {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
  margin: 0 !important;

  width: 56px !important;
  height: 56px !important;
  border-radius: 999px !important;
  border: 0 !important;

  background: var(--dmh-accent) !important;
  color: #fff !important;

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

  font-size: 32px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  box-shadow: 0 14px 30px rgba(251, 29, 8, 0.35) !important;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}
@media (hover: hover) {
  .dmh-grid--products .dmh-card .dmh-card__plus[data-dmh-atc="1"]:hover {
    transform: translateY(-1px) scale(1.04) !important; /* no X shift */
    filter: brightness(1.06) !important;
  }
}
.dmh-grid--products .dmh-card .dmh-card__plus[data-dmh-atc="1"]:active {
  transform: scale(0.96) !important;
}
.dmh-grid--products .dmh-card.is-loading .dmh-card__plus[data-dmh-atc="1"] {
  opacity: 0.75 !important;
  pointer-events: none !important;
}

/* -------------------------
   QTY stepper (perfect circles)
   ------------------------- */
.dmh-grid--products .dmh-card .dmh-qty[data-dmh-qtywrap="1"] {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;

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

  padding: 8px 10px !important;
  border-radius: 999px !important;
  border: 1px solid var(--dmh-border) !important;
  background: rgba(255, 255, 255, 0.92) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.1) !important;

  box-sizing: border-box !important;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

html[data-dmh-theme="dark"]
  .dmh-grid--products
  .dmh-card
  .dmh-qty[data-dmh-qtywrap="1"],
body.dmh-dark .dmh-grid--products .dmh-card .dmh-qty[data-dmh-qtywrap="1"],
[data-theme="dark"]
  .dmh-grid--products
  .dmh-card
  .dmh-qty[data-dmh-qtywrap="1"] {
  background: rgba(28, 28, 32, 0.7) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  box-shadow: none !important;
}

/* 3 circles */
.dmh-grid--products .dmh-card .dmh-qty__btn,
.dmh-grid--products .dmh-card .dmh-qty__val {
  width: 42px !important;
  height: 42px !important;
  border-radius: 999px !important;
  box-sizing: border-box !important;

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

/* center value */
.dmh-grid--products .dmh-card .dmh-qty__val {
  border: 1px solid var(--dmh-border) !important;
  background: rgba(0, 0, 0, 0.04) !important;
  color: var(--dmh-txt) !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  line-height: 1 !important;
}
html[data-dmh-theme="dark"] .dmh-grid--products .dmh-card .dmh-qty__val,
body.dmh-dark .dmh-grid--products .dmh-card .dmh-qty__val,
[data-theme="dark"] .dmh-grid--products .dmh-card .dmh-qty__val {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  color: #fff !important;
}

/* buttons: draw +/− via pseudo elements */
.dmh-grid--products .dmh-card .dmh-qty__btn {
  border: 1px solid var(--dmh-border) !important;
  background: rgba(255, 255, 255, 0.7) !important;
  color: var(--dmh-txt) !important;

  cursor: pointer !important;
  padding: 0 !important;
  margin: 0 !important;

  font-size: 0 !important;
  line-height: 0 !important;

  position: relative !important;
}
html[data-dmh-theme="dark"] .dmh-grid--products .dmh-card .dmh-qty__btn,
body.dmh-dark .dmh-grid--products .dmh-card .dmh-qty__btn,
[data-theme="dark"] .dmh-grid--products .dmh-card .dmh-qty__btn {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  color: #fff !important;
}

.dmh-grid--products .dmh-card .dmh-qty__btn::before,
.dmh-grid--products .dmh-card .dmh-qty__btn::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  background: currentColor !important;
  border-radius: 999px !important;
}
.dmh-grid--products .dmh-card .dmh-qty__btn::before {
  width: 16px !important;
  height: 2px !important;
}
.dmh-grid--products .dmh-card .dmh-qty__btn--plus::after {
  width: 2px !important;
  height: 16px !important;
}
.dmh-grid--products .dmh-card .dmh-qty__btn--minus::after {
  display: none !important;
}

@media (hover: hover) {
  .dmh-grid--products .dmh-card .dmh-qty__btn:not([disabled]):hover {
    transform: translateY(-1px) !important;
    filter: brightness(1.04) !important;
  }
}
.dmh-grid--products .dmh-card .dmh-qty__btn:active {
  transform: scale(0.96) !important;
}
.dmh-grid--products .dmh-card .dmh-qty__btn[disabled],
.dmh-grid--products .dmh-card .dmh-qty__btn[aria-disabled="true"] {
  opacity: 0.4 !important;
  cursor: not-allowed !important;
  transform: none !important;
}

@media (max-width: 680px) {
  .dmh-grid--products .dmh-card .dmh-card__controls[data-dmh-controls="1"] {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
  }
  .dmh-grid--products .dmh-card .dmh-card__plus[data-dmh-atc="1"] {
    width: 52px !important;
    height: 52px !important;
    font-size: 30px !important;
  }
  .dmh-grid--products .dmh-card .dmh-qty__btn,
  .dmh-grid--products .dmh-card .dmh-qty__val {
    width: 40px !important;
    height: 40px !important;
  }
}
/* =========================================================
   DMH FINAL: plus RIGHT + qty LEFT + badges + centered view
   Paste at the VERY END of front.css (last lines)
   ========================================================= */

/* ---- 1) Controls positioning (kills old center/50% rules) ---- */
.dmh-grid--products .dmh-card .dmh-card__body {
  position: relative !important;
}
.dmh-grid--products .dmh-card .dmh-card__body {
  padding-bottom: 86px !important;
} /* space for controls */

.dmh-grid--products .dmh-card .dmh-card__controls {
  position: absolute !important;
  left: 14px !important;
  right: 14px !important;
  bottom: 14px !important;
  height: 52px !important;
  z-index: 10 !important;
}

/* qty = left-bottom */
.dmh-grid--products .dmh-card .dmh-card__controls .dmh-qty {
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  right: auto !important;
  top: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: 10 !important;
}

/* red plus = right-bottom */
.dmh-grid--products .dmh-card .dmh-card__controls .dmh-card__plus {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: 11 !important;
}

/* baseline switch without JS: qty=0 => show plus, qty>0 => show stepper */
.dmh-grid--products .dmh-card .dmh-card__controls .dmh-qty.is-zero {
  display: none !important;
}
.dmh-grid--products
  .dmh-card[data-dmh-qty]:not([data-dmh-qty="0"])
  .dmh-card__plus {
  display: none !important;
}

/* mobile spacing */
@media (max-width: 680px) {
  .dmh-grid--products .dmh-card .dmh-card__controls {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    height: 50px !important;
  }
  .dmh-grid--products .dmh-card .dmh-card__body {
    padding-bottom: 90px !important;
  }
}

/* ---- 2) Badges ---- */

/* OUT OF STOCK badge (top-left) */
.dmh-card__badge--out {
  position: absolute;
  left: 18px;
  top: 18px;
  z-index: 3;
  background: rgba(17, 24, 39, 0.82);
  color: #fff;
  padding: 7px 11px;
  border-radius: 12px;
  font-weight: 900;
  font-size: 13px;
}
.dmh-card__badge--out.is-below {
  top: 56px;
}

/* NEW badge (top-right, below wishlist) */
.dmh-card__flag {
  position: absolute;
  right: 14px;
  top: 62px;
  z-index: 3;
  padding: 6px 10px;
  border-radius: 999px;
  font-weight: 900;
  font-size: 12px;
  letter-spacing: 0.2px;
}
.dmh-card__flag--new {
  background: #22c55e;
  color: #fff;
  box-shadow: 0 10px 22px rgba(34, 197, 94, 0.22);
}
html[data-dmh-theme="dark"] .dmh-card__flag--new,
body.dmh-dark .dmh-card__flag--new,
[data-theme="dark"] .dmh-card__flag--new {
  box-shadow: none;
}

/* optional: чуть “глушим” карточку если нет наличия */
.dmh-card.is-out {
  opacity: 0.98;
}
.dmh-card.is-out .dmh-card__img {
  filter: saturate(0.9);
}

/* ---- 3) Centered VIEW button for non-quick / out of stock ---- */
.dmh-card.is-viewonly .dmh-card__body {
  padding-bottom: 82px !important;
}

.dmh-card.is-viewonly .dmh-card__actions--center {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 4;
}

.dmh-card.is-viewonly .dmh-card__view {
  min-width: 190px;
  max-width: 100%;
  height: 46px;
  padding: 0 18px;
  border-radius: 14px;
  border: 1px solid var(--dmh-border);
  background: var(--dmh-soft);
  color: var(--dmh-txt);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  font-size: 14px;
}
.dmh-card.is-viewonly .dmh-card__view:hover {
  filter: brightness(1.03);
}

@media (max-width: 680px) {
  .dmh-card.is-viewonly .dmh-card__view {
    min-width: 0;
    width: 100%;
  }
  .dmh-card__flag {
    right: 12px;
    top: 60px;
  }
  .dmh-card__badge--out {
    left: 14px;
    top: 14px;
  }
  .dmh-card__badge--out.is-below {
    top: 52px;
  }
}
/* =========================================================
   DMH FINAL v2: QTY CENTER + PLUS RIGHT + OUT-OF-STOCK NO PLUS + EVEN CARDS
   ========================================================= */

/* единый низ для всех карточек */
.dmh-grid--products .dmh-card .dmh-card__body {
  position: relative !important;
  padding-bottom: 86px !important; /* одинаково для всех */
}

/* зона контролов фиксированной высоты (не меняет высоту карточки) */
.dmh-grid--products .dmh-card .dmh-card__controls {
  position: absolute !important;
  left: 14px !important;
  right: 14px !important;
  bottom: 14px !important;
  height: 52px !important;
  z-index: 10 !important;
}

/* QTY по центру */
.dmh-grid--products .dmh-card .dmh-card__controls .dmh-qty {
  position: absolute !important;
  left: 50% !important;
  bottom: 0 !important;
  transform: translateX(-50%) !important;
  margin: 0 !important;
  top: auto !important;
  right: auto !important;
  z-index: 10 !important;

  max-width: calc(100% - 70px) !important; /* чтобы не налезло на плюс */
}

/* красный + всегда снизу справа */
.dmh-grid--products .dmh-card .dmh-card__controls .dmh-card__plus {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  margin: 0 !important;
  z-index: 11 !important;
}

/* логика показа: qty=0 => показываем плюс, qty>0 => показываем stepper */
.dmh-grid--products .dmh-card .dmh-qty.is-zero {
  display: none !important;
}
.dmh-grid--products
  .dmh-card[data-dmh-qty]:not([data-dmh-qty="0"])
  .dmh-card__plus {
  display: none !important;
}

/* ✅ если НЕ quick (нет наличия / не simple) — плюс никогда */
.dmh-grid--products .dmh-card[data-dmh-canquick="0"] .dmh-card__plus,
.dmh-grid--products .dmh-card.is-out .dmh-card__plus {
  display: none !important;
}

/* ---- “Դիտել” по центру, но не растягивает карточку ---- */
.dmh-card.is-viewonly .dmh-card__actions--center {
  position: absolute !important;
  left: 14px !important;
  right: 14px !important;
  bottom: 14px !important;
  height: 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
}

.dmh-card.is-viewonly .dmh-card__view {
  height: 46px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  width: clamp(160px, 70%, 240px) !important;
  white-space: nowrap !important;
}

/* бейдж “Առկա չէ” (если нет наличия) */
.dmh-card__badge--out {
  background: rgba(17, 24, 39, 0.82);
  color: #fff;
}

/* mobile */
@media (max-width: 680px) {
  .dmh-grid--products .dmh-card .dmh-card__controls {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    height: 50px !important;
  }
  .dmh-grid--products .dmh-card .dmh-card__body {
    padding-bottom: 92px !important;
  }
}
/* DMH — Dark mode hover text fix (Woodmart overrides)
   Paste at the VERY END of your DMH front.css (after all Woodmart CSS).
*/
html[data-dmh-theme="dark"] body .dmh-card:hover,
body.dmh-dark .dmh-card:hover,
html[data-theme="dark"] body .dmh-card:hover,
[data-theme="dark"] body .dmh-card:hover,
body.wd-dark .dmh-card:hover {
  --dmh-txt: #ffffff;
  --dmh-muted: rgba(255, 255, 255, 0.72);
}

/* Title + price must stay readable on hover (Woodmart often forces black links) */
html[data-dmh-theme="dark"] body .dmh-card:hover .dmh-card__name,
body.dmh-dark .dmh-card:hover .dmh-card__name,
html[data-theme="dark"] body .dmh-card:hover .dmh-card__name,
[data-theme="dark"] body .dmh-card:hover .dmh-card__name,
body.wd-dark .dmh-card:hover .dmh-card__name,
html[data-dmh-theme="dark"] body .dmh-card:hover .dmh-card__name a,
body.dmh-dark .dmh-card:hover .dmh-card__name a,
html[data-theme="dark"] body .dmh-card:hover .dmh-card__name a,
[data-theme="dark"] body .dmh-card:hover .dmh-card__name a,
body.wd-dark .dmh-card:hover .dmh-card__name a,
html[data-dmh-theme="dark"] body .dmh-card:hover .dmh-card__price,
body.dmh-dark .dmh-card:hover .dmh-card__price,
html[data-theme="dark"] body .dmh-card:hover .dmh-card__price,
[data-theme="dark"] body .dmh-card:hover .dmh-card__price,
body.wd-dark .dmh-card:hover .dmh-card__price,
html[data-dmh-theme="dark"] body .dmh-card:hover .dmh-card__price *,
body.dmh-dark .dmh-card:hover .dmh-card__price *,
html[data-theme="dark"] body .dmh-card:hover .dmh-card__price *,
[data-theme="dark"] body .dmh-card:hover .dmh-card__price *,
body.wd-dark .dmh-card:hover .dmh-card__price * {
  color: var(--dmh-txt) !important;
  -webkit-text-fill-color: var(--dmh-txt) !important;
}

/* Meta stays muted */
html[data-dmh-theme="dark"] body .dmh-card:hover .dmh-card__meta,
body.dmh-dark .dmh-card:hover .dmh-card__meta,
html[data-theme="dark"] body .dmh-card:hover .dmh-card__meta,
[data-theme="dark"] body .dmh-card:hover .dmh-card__meta,
body.wd-dark .dmh-card:hover .dmh-card__meta,
html[data-dmh-theme="dark"] body .dmh-card:hover .dmh-card__meta a,
body.dmh-dark .dmh-card:hover .dmh-card__meta a,
html[data-theme="dark"] body .dmh-card:hover .dmh-card__meta a,
[data-theme="dark"] body .dmh-card:hover .dmh-card__meta a,
body.wd-dark .dmh-card:hover .dmh-card__meta a {
  color: var(--dmh-muted) !important;
  -webkit-text-fill-color: var(--dmh-muted) !important;
}
/* =========================================================
   DMH SINGLE PATCH (wishlist visible + beautiful qty/buttons + modal UX)
   Paste at VERY END of front.css
   ========================================================= */

/* no scroll when modal open */
body.dmh-gm-open {
  overflow: hidden !important;
}

/* ---------- Single wishlist: red square + always visible ---------- */
.dmh-single-wrap .dmh-ps__wl {
  width: 44px !important;
  height: 44px !important;
  border-radius: 12px !important;
  border: 0 !important;
  background: var(--dmh-accent) !important; /* #fb1d08 */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  box-shadow: 0 14px 30px rgba(251, 29, 8, 0.28) !important;
}
.dmh-single-wrap .dmh-ps__wl svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
  overflow: visible !important;
}
.dmh-single-wrap .dmh-ps__wl svg path {
  fill: none !important;
  stroke: #fff !important;
  stroke-width: 2.1 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* active state: little pop */
.dmh-single-wrap .dmh-ps__wl.is-active {
  filter: brightness(1.02) !important;
}

/* ---------- Single cart layout: align qty + two buttons like reference ---------- */
.dmh-single-wrap .dmh-sform {
  display: grid !important;
  grid-template-columns: auto 1fr auto;
  gap: 12px !important;
  align-items: stretch !important;
}

.dmh-single-wrap .dmh-sqty {
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  border-radius: 12px !important;
  border: 1px solid var(--dmh-border) !important;
  background: var(--dmh-soft) !important;
  padding: 6px !important;
}

.dmh-single-wrap .dmh-sqty__btn {
  width: 44px !important;
  height: 44px !important;
  border-radius: 10px !important;
  border: 1px solid var(--dmh-border) !important;
  background: rgba(255, 255, 255, 0.65) !important;
  color: var(--dmh-txt) !important;
  font-weight: 900 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent;
}
html[data-dmh-theme="dark"] .dmh-single-wrap .dmh-sqty__btn,
body.dmh-dark .dmh-single-wrap .dmh-sqty__btn,
[data-theme="dark"] .dmh-single-wrap .dmh-sqty__btn {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  color: #fff !important;
}

.dmh-single-wrap .dmh-sqty__input.qty {
  width: 70px !important;
  height: 44px !important;
  border-radius: 10px !important;
  border: 1px solid var(--dmh-border) !important;
  background: rgba(255, 255, 255, 0.75) !important;
  color: var(--dmh-txt) !important;
  font-weight: 900 !important;
  font-size: 16px !important;
  text-align: center !important;
  outline: none !important;
}
html[data-dmh-theme="dark"] .dmh-single-wrap .dmh-sqty__input.qty,
body.dmh-dark .dmh-single-wrap .dmh-sqty__input.qty,
[data-theme="dark"] .dmh-single-wrap .dmh-sqty__input.qty {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  color: #fff !important;
}

/* Woo primary button (Add to cart) */
.dmh-single-wrap .dmh-sform .single_add_to_cart_button {
  height: 48px !important;
  border-radius: 12px !important;
  border: 0 !important;
  background: var(--dmh-accent) !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  padding: 0 18px !important;
}

/* =========================================================
   DMH FIX: Category page native wishlist button icon alignment
   ========================================================= */
.product-grid-item .wd-wishlist-btn,
.product-grid-item .wd-action-btn.wd-wishlist-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.product-grid-item .wd-wishlist-btn > a,
.product-grid-item .wd-action-btn.wd-wishlist-btn > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    position: relative !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.product-grid-item .wd-wishlist-btn > a::before,
.product-grid-item .wd-wishlist-btn > a::after,
.product-grid-item .wd-wishlist-btn > a svg {
    display: block !important;
    position: static !important;
    margin: 0 !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    line-height: 1 !important;
}

/* Buy now button (if needed to restore missing parts) */
.dmh-single-wrap .dmh-sform .single_add_to_cart_button {
  white-space: nowrap !important;
  box-shadow: 0 14px 30px rgba(251, 29, 8, 0.2) !important;
}

/* Buy now button */
.dmh-single-wrap .dmh-sform .dmh-buy-now {
  height: 48px !important;
  border-radius: 12px !important;
  border: 0 !important;
  background: #ff2a17 !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  padding: 0 18px !important;
  white-space: nowrap !important;
}

/* hover/active */
@media (hover: hover) {
  .dmh-single-wrap .dmh-sqty__btn:hover {
    filter: brightness(1.03);
    transform: translateY(-1px);
  }
  .dmh-single-wrap .single_add_to_cart_button:hover,
  .dmh-single-wrap .dmh-buy-now:hover {
    filter: brightness(1.04);
    transform: translateY(-1px);
  }
}
.dmh-single-wrap .dmh-sqty__btn:active,
.dmh-single-wrap .single_add_to_cart_button:active,
.dmh-single-wrap .dmh-buy-now:active {
  transform: scale(0.98);
}

/* ---------- Tablet/Mobile: perfect layout ---------- */
@media (max-width: 980px) {
  .dmh-single-wrap .dmh-sform {
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "qty qty"
      "atc buy";
  }
  .dmh-single-wrap .dmh-sqty {
    grid-area: qty;
    width: 100%;
    justify-content: space-between;
  }
  .dmh-single-wrap .single_add_to_cart_button {
    grid-area: atc;
    width: 100%;
  }
  .dmh-single-wrap .dmh-buy-now {
    grid-area: buy;
    width: 100%;
  }
}

@media (max-width: 520px) {
  .dmh-single-wrap .dmh-sform {
    grid-template-columns: 1fr;
    grid-template-areas:
      "qty"
      "atc"
      "buy";
  }
}

/* ---------- Modal polish (bigger touch targets on mobile) ---------- */
@media (max-width: 680px) {
  .dmh-gm__box {
    width: 94vw !important;
    height: 78vh !important;
  }
  .dmh-gm__nav {
    width: 52px !important;
    height: 52px !important;
    font-size: 30px !important;
  }
  .dmh-gm__close {
    width: 48px !important;
    height: 48px !important;
    font-size: 28px !important;
  }
}
.dmh-pvideo {
  margin: 18px 0 6px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 18px;
  padding: 14px;
}
.dmh-pvideo__title {
  margin: 0 0 10px;
  font-weight: 900;
  font-size: 18px;
}
.dmh-pvideo__box {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: #000;
}
.dmh-pvideo__box iframe {
  width: 100%;
  height: 520px;
  border: 0;
  display: block;
}
.dmh-pvideo__box--file {
  padding: 0;
}
.dmh-pvideo__box--file video {
  width: 100%;
  height: auto;
  display: block;
}
@media (max-width: 768px) {
  .dmh-pvideo__box iframe {
    height: 260px;
  }
}
