/* =========================================================
   RR - Product Card (Tailwind mock -> WordPress/Woo)
   - Inspired by ProductCard.jsx Tailwind classes
   - No favorites
   - Free shipping label
   - Hover button without reserving blank space
   - Everything uses !important (as requested)
   ========================================================= */

:root{
  --rr-ra-primary:#E63946 !important;
  --rr-ra-secondary:#10B981 !important;
  --rr-ra-border:#F3F4F6 !important;
  --rr-ra-border2:#F9FAFB !important;
  --rr-ra-text:#111827 !important;
  --rr-ra-muted:#6B7280 !important;
  --rr-ra-muted2:#9CA3AF !important;
}

/* Wrapper (li) */
.rr-ra-card{
  list-style:none !important;
  margin:0 !important;
}

/* Card shell */
.rr-ra-card__inner{
  position:relative !important;
  background:#fff !important;
  border:1px solid var(--rr-ra-border) !important;
  border-radius:12px !important;
  overflow:hidden !important;
  box-shadow:0 1px 2px rgba(0,0,0,.05) !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  transition:transform .25s ease, box-shadow .25s ease !important;
}

.rr-ra-card__inner:hover{
  transform:translateY(-6px) !important;
  box-shadow:0 10px 30px -10px rgba(0,0,0,.15) !important;
}

/* Clickable area */
.rr-ra-card__link{
  display:flex !important;
  flex-direction:column !important;
  text-decoration:none !important;
  color:inherit !important;
  height:100% !important;
}

/* Image container */
.rr-ra-card__media{
  position:relative !important;
  aspect-ratio: 1.1 / 1 !important;
  padding:24px !important;
  background:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  border-bottom:1px solid var(--rr-ra-border2) !important;
}

.rr-ra-card__media img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  transition:transform .5s ease !important;
}

.rr-ra-card__inner:hover .rr-ra-card__media img{
  transform:scale(1.05) !important;
}

/* Discount badge */
.rr-ra-card__badge{
  position:absolute !important;
  top:12px !important;
  right:12px !important;
  background:var(--rr-ra-primary) !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:700 !important;
  padding:4px 8px !important;
  border-radius:8px !important;
  line-height:1 !important;
  box-shadow:0 1px 2px rgba(0,0,0,.08) !important;
  z-index:2 !important;
}

/* Body */
.rr-ra-card__body{
  padding:16px !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
}

/* Rating row */
.rr-ra-card__rating{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  margin:0 0 8px !important;
}

.rr-ra-card__star{
  width:14px !important;
  height:14px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.rr-ra-card__rating .rr-ra-card__rating-num{
  font-size:12px !important;
  color:var(--rr-ra-muted) !important;
  font-weight:600 !important;
}

.rr-ra-card__rating .rr-ra-card__dot{
  color:#D1D5DB !important;
  font-size:12px !important;
  line-height:1 !important;
}

.rr-ra-card__rating .rr-ra-card__sold{
  font-size:12px !important;
  color:var(--rr-ra-muted2) !important;
}

/* Title */
.rr-ra-card__title{
  font-size:14px !important;
  font-weight:600 !important;
  color:var(--rr-ra-text) !important;
  line-height:1.25 !important;
  margin:0 0 12px !important;
  min-height:2.5rem !important; /* like Tailwind min-h */
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}

.rr-ra-card__inner:hover .rr-ra-card__title{
  color:var(--rr-ra-primary) !important;
}

/* Price section */
.rr-ra-card__pricewrap{
  margin-top:auto !important;
}

.rr-ra-card__old{
  color:#9AA0A6 !important;
  font-size:7px !important;
  font-weight:400 !important;
  line-height:1 !important;
  text-decoration:line-through !important;
  text-decoration-thickness:1px !important;
  text-decoration-color:#9AA0A6 !important;
  text-decoration-skip-ink:none !important;
  opacity:.75 !important;
  margin:0 0 2px !important;
}

.rr-ra-card__price{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 0 8px !important;
}

.rr-ra-card__price .amount,
.rr-ra-card__price,
.rr-ra-card__price span{
  font-size:20px !important;
  font-weight:700 !important;
  color:var(--rr-ra-primary) !important;
}

/* Shipping */
.rr-ra-card__ship{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  margin:0 0 12px !important;
}

.rr-ra-card__ship-ico{
  width:14px !important;
  height:14px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.rr-ra-card__ship-text{
  font-size:12px !important;
  font-weight:700 !important;
  color:var(--rr-ra-secondary) !important;
}

/* Actions (no blank space when hidden) */
.rr-ra-card__actions{
  padding:0 16px 0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  transition:max-height .3s ease, padding .3s ease !important;
}

.rr-ra-card__inner:hover .rr-ra-card__actions{
  max-height:70px !important;
  padding:0 16px 16px !important;
}

/* Button */
.rr-ra-card__btn{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  background:var(--rr-ra-primary) !important;
  color:#fff !important;
  font-weight:600 !important;
  border-radius:10px !important;
  height:40px !important;
  border:none !important;
  text-decoration:none !important;
  box-shadow:0 1px 2px rgba(0,0,0,.08) !important;
  opacity:0 !important;
  transform:translateY(8px) !important;
  transition:opacity .3s ease, transform .3s ease, background .2s ease !important;
  cursor:pointer !important;
}

.rr-ra-card__inner:hover .rr-ra-card__btn{
  opacity:1 !important;
  transform:translateY(0) !important;
}

.rr-ra-card__btn:hover{
  background:rgba(230,57,70,.92) !important;
}

.rr-ra-card__btn-ico{
  width:16px !important;
  height:16px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Mobile: button always visible, no hover reliance */
@media (max-width: 768px){
  .rr-ra-card__actions{
    max-height:90px !important;
    padding:0 16px 16px !important;
  }
  .rr-ra-card__btn{
    opacity:1 !important;
    transform:none !important;
    height:36px !important;
  }
}

/* Avoid theme overlays that block clicks */
.rr-ra-card__btn,
.rr-ra-card__inner,
.rr-ra-card__media,
.rr-ra-card__link{
  pointer-events:auto !important;
}
