/* ===== Skeleton Loading ===== */

.skeleton-wrapper{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:20px;
}

.skeleton-card{
  height:320px;
  border-radius:12px;
  background:linear-gradient(
    90deg,
    #f0f0f0 25%,
    #e0e0e0 50%,
    #f0f0f0 75%
  );
  background-size:200% 100%;
  animation:skeleton-loading 1.2s infinite linear;
}

@keyframes skeleton-loading{
  0%{background-position:200% 0}
  100%{background-position:-200% 0}
}

/* ===== Card Animation ===== */

.product-card{
  opacity:0;
  transform:translateY(20px);
  transition:all .4s ease;
}

.product-card.show{
  opacity:1;
  transform:translateY(0);
}

/* ===== Premium Hover ===== */

.product-card{
  border-radius:12px;
  transition:all .3s ease;
}

.product-card:hover{
  transform:translateY(-6px);
  box-shadow:0 15px 35px rgba(0,0,0,.08);
}

/* ===== Badge Blink Premium ===== */

.promo-blink{
  animation:blinkPremium 1s infinite;
}

@keyframes blinkPremium{
  0%{opacity:1}
  50%{opacity:.4}
  100%{opacity:1}
}

/* ===== Price Stack ===== */

.price-stack{
  display:flex;
  flex-direction:column;
  align-items:center;
}

.old-price{
  text-decoration:line-through;
  color:#888;
  font-size:14px;
}

.promo-price{
  color:#e63946;
  font-weight:600;
  font-size:16px;
}

.flash-countdown{
  background:#000;
  color:#fff;
  padding:4px 8px;
  font-size:12px;
  border-radius:20px;
  margin-bottom:6px;
  text-align:center;
}

.flash-countdown.expired{
  background:#999;
}

.low-stock{
  font-size:12px;
  color:#e60023;
  font-weight:600;
  margin-top:5px;
  text-align:center;
  animation:pulseStock 1.2s infinite;
}

@keyframes pulseStock{
  0%{opacity:1;}
  50%{opacity:.4;}
  100%{opacity:1;}
}

@media(max-width:768px){

  .product-card{
    border-radius:16px;
  }

  .product-info h4{
    font-size:14px;
  }

  .promo-price{
    font-size:15px;
    font-weight:700;
  }

  .old-price{
    font-size:12px;
  }

  .add-to-cart-btn{
    font-size:13px;
    padding:7px 12px;
  }

}
