/* Tags over the card ("Хит продаж" / "Новинка"), wishlist hearts, "bought together" */
.card {
  position: relative;
}

.card-tags {
  position: absolute;
  top: 24px;
  left: 24px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  pointer-events: none;
}

.card-tags:empty {
  display: none;
}

.tag {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 3px 8px;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.tag-hit {
  background: #e53935;
  color: #ffffff;
}

.tag-new {
  background: var(--md-success);
  color: #0d2b0d;
}

.tag-sale {
  background: var(--md-primary);
  color: var(--md-on-primary, #2b1700);
}

.tag-gem {
  background: #7c4dff;
  color: #ffffff;
}

.card-fav-btn,
.fav-btn {
  appearance: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: none;
  border-radius: 50%;
  color: var(--md-on-surface-variant);
  background: rgba(21, 19, 15, 0.65);
}

.card-fav-btn {
  position: absolute;
  top: 24px;
  right: 24px;
  z-index: 2;
  width: 28px;
  height: 28px;
}

.card-fav-btn .fav-icon {
  width: 16px;
  height: 16px;
}

.fav-icon {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linejoin: round;
}

.card-fav-btn[aria-pressed="true"],
.fav-btn[aria-pressed="true"] {
  color: #ff6b81;
}

.card-fav-btn[aria-pressed="true"] .fav-icon,
.fav-btn[aria-pressed="true"] .fav-icon {
  fill: currentColor;
}

.sheet-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.sheet-together {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 4px;
}

.sheet-together[hidden] {
  display: none;
}

.together-title {
  font-size: 13px;
  color: var(--md-on-surface-variant);
}

.together-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.together-item {
  appearance: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: inherit;
  font-size: 13px;
  color: var(--md-on-surface);
  background: var(--md-surface-container-highest);
  border: 1px solid var(--md-outline-variant);
  border-radius: 10px;
  padding: 8px 12px;
}

.together-price {
  color: var(--md-primary);
  font-weight: 700;
}
