@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');

/* ── CARD WRAPPER ── */
.products .product .p {
  font-family: 'DM Sans', sans-serif !important;
  background: #fff !important;
  border-radius: 20px !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 0 16px 0 !important;
  overflow: visible !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform 0.2s ease !important;
}

.products .product:hover .p {
  transform: translateY(-3px) !important;
}

/* ── IMAGE AREA ── */
.products .product .p > a.image {
  display: block !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  position: relative !important;
  padding: 0 !important;
  margin: 0 0 14px 0 !important;
  aspect-ratio: 4/3 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

.products .product .p > a.image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  box-sizing: border-box !important;
  display: block !important;
  transition: transform 0.3s ease !important;
  border-radius: 0 !important;
}

.products .product .p > a.image:hover img {
  transform: scale(1.04) !important;
}

/* ── CATEGORY/FLAG BADGE ── */
.products .product .p .flags {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  left: auto !important;
  bottom: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 4px !important;
  z-index: 2 !important;
}

.products .product .p .flag,
.products .product .p .flag-new,
.products .product .p .flag-action,
.products .product .p .flag-tip,
.products .product .p .flag-sale,
.products .product .p .flag-custom1,
.products .product .p .flag-custom2,
.products .product .p .flag-custom3,
 .products .product .p .flag-nejprodavanejsi,
.products .product .p .flag-doporucujeme {
  background: #fff !important;
  color: #111 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  padding: 4px 10px !important;
  border-radius: 20px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.10) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* ── PRODUCT INFO ── */
.products .product .p .p-in {
  padding: 0 4px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

/* ── PRODUCT NAME ── */
.products .product .p .p-in-in a.name {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #111 !important;
  text-decoration: none !important;
  display: block !important;
  margin-bottom: 8px !important;
  line-height: 1.3 !important;
}

.products .product .p .p-in-in a.name:hover {
  color: #444 !important;
}

/* ── OFFER GRID: rating left, price right ── */
.products .product .p [data-micro="offer"] {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: center !important;
  row-gap: 10px !important;
}

.products .product .p .ratings-wrapper {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

.products .product .p .prices {
  grid-column: 2 !important;
  grid-row: 1 !important;
  text-align: right !important;
}

.products .product .p .availability {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  display: none !important;
}

.products .product .p .p-tools {
  grid-column: 1 / -1 !important;
  grid-row: 3 !important;
}

/* ── PRICE ── */
.products .product .p .price-final strong {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #111 !important;
}

/* ── STAR RATING: Shoptet native stars, just style the font ── */
.products .product .p .ratings-wrapper {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  color: #888 !important;
}

/* ── HIDE quantity stepper & description ── */
.products .product .p .quantity {
  display: none !important;
}

.products .product .p .p-desc {
  display: none !important;
}

/* ── ADD TO CART BUTTON – black with white text ── */
.products .product .p .p-tools .pr-action {
  display: flex !important;
  gap: 0 !important;
}

.products .product .p .btn-cart {
  width: 100% !important;
  height: 44px !important;
  border-radius: 40px !important;
  border: none !important;
  background: #111 !important;
  color: #fff !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: background 0.15s !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 0 20px !important;
  white-space: nowrap !important;
}

.products .product .p .btn-cart:hover {
  background: #333 !important;
}

.products .product .p .btn-cart .icon-cart {
  display: none !important;
}

/* ── FLAG OVERRIDE: nuclear specificity to beat Shoptet defaults ── */
span.flag.flag-new,
span.flag.flag-action,
span.flag.flag-tip,
span.flag.flag-sale,
span.flag.flag-custom1,
span.flag.flag-custom2,
span.flag.flag-custom3,
span.flag.flag-nejprodavanejsi,
span.flag.flag.flag-doporucujeme {
  background: #ffffff !important;
  background-color: #ffffff !important;
  color: #111111 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  padding: 4px 10px !important;
  border-radius: 20px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.12) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  border: none !important;
  outline: 2px solid #c0c0c0;
}

/* ── RATING: left-align stars ── */
.products .product .p .ratings-wrapper,
.products .product .p .stars-wrapper,
.products .product .p .star-list {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  text-align: left !important;
}

/* ── PRODUCT DETAIL PAGE: Add to Cart button (btn-conversion) ── */
.btn-conversion.add-to-cart-button {
  height: 44px !important;
  border-radius: 40px !important;
  border: none !important;
  background: #111 !important;
  color: #fff !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: background 0.15s !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 0 28px !important;
  white-space: nowrap !important;
  letter-spacing: 0.1px !important;
}

.btn-conversion.add-to-cart-button:hover {
  background: #333 !important;
}

.btn-conversion.add-to-cart-button .icon-cart {
  display: none !important;
}
/* ── ORDER BUTTON: pill shape ── */
a.btn-conversion.next-step-forward,
button.btn-conversion.next-step-forward,
button.btn-conversion.next-step-finish {
  border-radius: 999px !important;
}
.prices {
    text-align: right !important;
    display: block !important;
}

.price-standard {
    display: inline !important;
}

.price-save {
    display: inline !important;
    margin-left: 4px !important;
}
.price-save {
    font-family: 'DM Sans', sans-serif !important;;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
}
