/* ============================================================
   iResto — Default Placeholder Images for Products & Categories
   Beautifully styled illuminated placeholders
   ============================================================ */

/* ── Base No-Image Product Card ── */
.product-no-img .product-thumb,
img[src*="no_image.png"],
img[src*="image_thumb.png"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ── Product thumbnail without image ── */
.product-thumb img[src*="no_image"],
.product-thumb img[src*="image_thumb"] {
  object-fit: contain !important;
  padding: 30px !important;
  background: linear-gradient(
    135deg,
    #fff8f8 0%,
    #fff3e0 30%,
    #fce4ec 60%,
    #fff8f8 100%
  ) !important;
  border-radius: 18px !important;
  filter: drop-shadow(0 4px 15px rgba(234, 67, 53, 0.15)) brightness(1.02) saturate(0.8) !important;
  animation: noImgGlow 3s ease-in-out infinite !important;
}

@keyframes noImgGlow {
  0%, 100% {
    filter: drop-shadow(0 4px 15px rgba(234, 67, 53, 0.12)) brightness(1.02) saturate(0.8);
    background-position: 0% 50%;
  }
  50% {
    filter: drop-shadow(0 6px 25px rgba(234, 67, 53, 0.28)) brightness(1.06) saturate(1.0);
    background-position: 100% 50%;
  }
}

/* ── Category thumbnail without image (system_logo fallback) ── */
.menu-category-thumb img[src*="no_image"],
.menu-category-thumb img[src*="logo"],
.menu-category-thumb img[src*="system_logo"] {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 6px !important;
  border-radius: 50% !important;
  background: linear-gradient(
    135deg,
    #fff5f5 0%,
    #ffede0 50%,
    #fff5f5 100%
  ) !important;
  animation: catImgBreath 2.8s ease-in-out infinite !important;
}

@keyframes catImgBreath {
  0%, 100% {
    filter: drop-shadow(0 2px 8px rgba(234,67,53,0.1)) saturate(0.7);
    transform: scale(0.98);
  }
  50% {
    filter: drop-shadow(0 4px 18px rgba(234,67,53,0.3)) saturate(1.1);
    transform: scale(1.03);
  }
}

/* ── Food details page - main product image ── */
.product-single .product-thumb img[src*="no_image"],
.product-single .product-thumb img[src*="logo"] {
  object-fit: contain !important;
  padding: 40px !important;
  background: linear-gradient(
    135deg,
    #fff9f9 0%,
    #fff4e6 40%,
    #fef0f0 80%,
    #fff9f9 100%
  ) !important;
  border-radius: 20px !important;
  animation: singleImgGlow 3.5s ease-in-out infinite !important;
}

@keyframes singleImgGlow {
  0%, 100% {
    box-shadow: 0 8px 30px rgba(234, 67, 53, 0.08),
                0 0 0 1px rgba(234, 67, 53, 0.06);
    filter: brightness(1.0) saturate(0.8);
  }
  50% {
    box-shadow: 0 12px 40px rgba(234, 67, 53, 0.18),
                0 0 0 2px rgba(234, 67, 53, 0.12);
    filter: brightness(1.05) saturate(1.1);
  }
}

/* ── Related products no-image ── */
.related-products .product-thumb img[src*="no_image"],
.related-products .product-thumb img[src*="logo"] {
  object-fit: contain !important;
  padding: 25px !important;
  background: linear-gradient(135deg, #fff8f8, #fff0e0, #fff8f8) !important;
  animation: noImgGlow 3s ease-in-out infinite !important;
}

/* ── Default category image (default_cat.jpg) ── */
.menu-category-thumb img[src*="default_cat"] {
  object-fit: cover !important;
  filter: saturate(0.7) brightness(1.05) !important;
  transition: filter 0.3s ease !important;
}

.ct-menu-category-item:hover .menu-category-thumb img[src*="default_cat"],
.ct-menu-category-item.active .menu-category-thumb img[src*="default_cat"] {
  filter: saturate(1.2) brightness(1.1) !important;
}

/* ── "All" category icon ── */
.menu-category-thumb img[src*="all.png"] {
  object-fit: contain !important;
  padding: 8px !important;
  filter: hue-rotate(0deg) !important;
  transition: filter 0.3s ease, transform 0.3s ease !important;
}

.ct-menu-category-item:hover .menu-category-thumb img[src*="all.png"],
.ct-menu-category-item.active .menu-category-thumb img[src*="all.png"] {
  filter: hue-rotate(5deg) brightness(1.15) !important;
  transform: rotate(-8deg) scale(1.08);
}

/* ── Food No-Image: Illuminated Frame ── */
.product:has(.product-thumb img[src*="no_image"]),
.product:has(.product-thumb img[src*="image_thumb"]),
.product:has(.product-thumb img[src*="logo"]) {
  background: linear-gradient(
    160deg,
    #ffffff 0%,
    #fff8f5 50%,
    #fff5f0 100%
  ) !important;
}

/* ── Subtle text overlay hint on no-image ── */
.product-thumb {
  position: relative;
}
