.product-card{
  background-color:#fff;
  border-radius:15px;
  padding:.5rem;
  display:flex; flex-direction:column; height:100%;
  will-change:transform; cursor:pointer;
  transition:transform .15s, box-shadow .15s;
  border:1px solid var(--border);
}
.product-card:hover{transform:translateY(-2px); box-shadow:0 6px 18px rgba(0,0,0,.08);}
.product-card:active{transform:translateY(-1px) scale(.995);}
.product-card:focus-visible{outline:2px solid #0d6efd; outline-offset:2px;}

.product-card__inner{display:flex; flex-direction:column; height:100%;}

/* Обертка для изображения и бейджа */
.product-card__image-wrapper{position:relative; border-radius:8px; overflow:hidden; aspect-ratio:1/1; margin-bottom:5px;}
.product-card__thumbnail{display:block; width:100%; height:100%; object-fit:cover; aspect-ratio:1/1; clip-path: inset(0 1px 0 1px);}

/* Абсолютный бейдж */
.product-card__badges{position:absolute; top:.2rem; left:.2rem; display:flex; gap:.25rem; z-index:2;}
.product-badge{color:black; font-size:.7rem; font-weight:bold; padding:.1rem .4rem; border-radius:6px;}
.product-badge--sale{color:#fff; background:red;}
.product-badge--new{color:#fff; background:#28a745;}
.product-badge--preorder{color:#fff;background:#7c3aed;}

.product-card__content{display:flex; flex-direction:column; flex:1; margin-top:.5rem;}

/* Fallback statuses */
.product-card__availability{min-height:48px}
.status{display:flex;flex-direction:column;align-items:flex-start;gap:2px;font-size:13px;font-weight:500;color:var(--text);border-radius:8px;min-width:0}
.status--in{width:100%;padding:7px 9px;background:#f0fdf4;border:1px solid #bbf7d0;gap:1px}
.status__line{display:flex;align-items:center;gap:6px;min-width:0;color:#166534}
.status__text{font-size:12px;font-weight:700;white-space:nowrap}
.status__qty{margin-left:auto;font-weight:600;color:#64748b;font-size:12px;white-space:nowrap}
.status__pickup{padding-left:14px;color:#3f6f50;font-size:11px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.status__pickup-link{color:#166534;font-weight:700;text-decoration:underline;text-decoration-color:#86b996;text-underline-offset:2px}
.status__pickup-link:hover{color:#0f5132;text-decoration-color:currentColor}

/* сама точка */
.status__dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;display:inline-block;position:relative;}
.status--out .status__dot{background:#dc3545;}
.status--out .status__dot::after{background:#dc3545;}
.status--in .status__dot{background:#28a745;}
.status--in .status__dot::after{background:#28a745;}
.status--preorder{width:100%;padding:7px 9px;background:#f5f3ff;border:1px solid #ddd6fe;gap:1px;color:#6d28d9}
.status--preorder .status__line{color:#6d28d9}
.status--preorder .status__pickup{color:#7357a6}
.status--preorder .status__dot{background:#8b5cf6;}

/* Фиксированная высота названия для выравнивания карточек */
.product-card__title{
  color:rgba(0,0,0,1); font-size:16px; margin:.25rem 0; text-align:left; line-height:1.3;
  min-height:calc(1.3em * 2); overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
}

.product-card__price-row{
  margin-top:auto; display:flex; align-items:baseline; gap:5px; white-space:nowrap; font-variant-numeric:tabular-nums;
}
.product-card__price{margin:0; font-size:20px; font-weight:700; color:#393D46;}
.product-card__Old-price,.product-card__old-price{font-size:14px; color:#8a8f9a; text-decoration:line-through; transform:translateY(1px);}

/* контейнер слайдера в карточке */
.product-card__swiper{border-radius:8px; overflow:hidden;}

/* полоска-пагинация под фото */
.hover-strip{
  display:flex; align-items:stretch; gap:5px; height:2px; border-radius:999px; background:#eceff3; overflow:hidden; user-select:none; position:relative; z-index:1;
}
.hover-strip.is-empty{background:transparent; visibility:hidden;}
.hover-strip__seg{flex:1 1 0; border:0; padding:0; background:#d8dde6; cursor:pointer; transition:background .15s,opacity .15s;}
.hover-strip__seg.is-active{background:#99a2b3;}
.hover-strip__seg:hover{background:#b3bccd;}

/* слой с вертикальными зонами поверх фото */
.hover-zones{position:absolute; inset:0; display:flex; gap:0; z-index:5; pointer-events:none; border-radius:inherit;}
.hover-zone{flex:1 1 0; pointer-events:auto; background:transparent;}
