/*
 * RF Boneyard Metallic Teal Product Catalog
 * Visual-only styling. Does not resize product photos beyond safe bounds.
 */

:root{
  --rfb-teal:#34f5e5;
  --rfb-teal-soft:rgba(52,245,229,.26);
  --rfb-teal-faint:rgba(52,245,229,.10);
  --rfb-pink:rgba(255,74,165,.20);
  --rfb-orange:#ff8a22;
  --rfb-glass:rgba(8,13,21,.72);
  --rfb-glass-2:rgba(12,18,30,.84);
}

/* Product and catalog cards */
.product-card,
.catalog-card,
.part-card,
.rfb-product-card,
.grid .product,
.products .card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(52,245,229,.24) !important;
  border-radius:18px !important;
  background:
    linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
    linear-gradient(180deg, var(--rfb-glass-2), rgba(5,8,14,.86)) !important;
  box-shadow:
    0 16px 42px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,255,255,.035) inset,
    0 0 28px rgba(52,245,229,.08) !important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  isolation:isolate;
}

/* Metallic rim glow */
.product-card::before,
.catalog-card::before,
.part-card::before,
.rfb-product-card::before,
.grid .product::before,
.products .card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(115deg,
      transparent 0%,
      rgba(52,245,229,.11) 18%,
      transparent 33%,
      rgba(255,138,34,.08) 56%,
      transparent 72%,
      rgba(255,74,165,.09) 100%);
  opacity:.72;
  mix-blend-mode:screen;
}

/* Underground teal glow beneath each product */
.product-card::after,
.catalog-card::after,
.part-card::after,
.rfb-product-card::after,
.grid .product::after,
.products .card::after{
  content:"";
  position:absolute;
  left:12%;
  right:12%;
  bottom:-34px;
  height:70px;
  pointer-events:none;
  z-index:0;
  background:radial-gradient(ellipse at center, rgba(52,245,229,.24), transparent 70%);
  filter:blur(10px);
  opacity:.76;
}

.product-card:hover,
.catalog-card:hover,
.part-card:hover,
.rfb-product-card:hover,
.grid .product:hover,
.products .card:hover{
  transform:translateY(-3px);
  border-color:rgba(52,245,229,.48) !important;
  box-shadow:
    0 22px 54px rgba(0,0,0,.42),
    0 0 0 1px rgba(52,245,229,.12) inset,
    0 0 34px rgba(52,245,229,.17),
    0 0 28px rgba(255,74,165,.07) !important;
}

/* Keep text/content above glow layers */
.product-card > *,
.catalog-card > *,
.part-card > *,
.rfb-product-card > *,
.grid .product > *,
.products .card > *{
  position:relative;
  z-index:1;
}

/* Product image presentation - safe, no forced enlargement */
.product-card img,
.catalog-card img,
.part-card img,
.rfb-product-card img,
.grid .product img,
.products .card img{
  max-width:100% !important;
  height:auto;
  object-fit:contain;
  border-radius:14px;
  background:
    radial-gradient(circle at center, rgba(52,245,229,.12), rgba(2,4,9,.18) 58%, rgba(2,4,9,.38));
  box-shadow:
    0 10px 28px rgba(0,0,0,.26),
    0 0 0 1px rgba(52,245,229,.12);
}

/* If product image wrappers exist, make them feel like display cases */
.product-card .image,
.product-card .thumb,
.product-card .product-image,
.catalog-card .image,
.catalog-card .thumb,
.catalog-card .product-image,
.part-card .image,
.part-card .thumb,
.part-card .product-image{
  border-radius:16px;
  padding:8px;
  background:
    linear-gradient(180deg, rgba(52,245,229,.08), rgba(255,255,255,.025)),
    radial-gradient(circle at 50% 100%, rgba(52,245,229,.18), transparent 62%);
  border:1px solid rgba(52,245,229,.14);
}

/* Product titles */
.product-card h2,
.product-card h3,
.product-card h4,
.catalog-card h2,
.catalog-card h3,
.catalog-card h4,
.part-card h2,
.part-card h3,
.part-card h4,
.products .card h2,
.products .card h3,
.products .card h4{
  text-shadow:0 0 12px rgba(52,245,229,.10);
}

/* Badges / chips if present */
.badge,
.tag,
.chip,
.condition,
.status-badge,
.product-card small.badge,
.catalog-card small.badge{
  display:inline-flex;
  align-items:center;
  gap:4px;
  border-radius:999px;
  padding:.28rem .58rem;
  border:1px solid rgba(52,245,229,.30);
  background:rgba(52,245,229,.09);
  color:rgba(236,255,253,.94);
  box-shadow:0 0 16px rgba(52,245,229,.08);
}

/* Buttons inside product cards */
.product-card .btn,
.catalog-card .btn,
.part-card .btn,
.rfb-product-card .btn{
  box-shadow:0 8px 22px rgba(0,0,0,.28);
}

/* Small premium caption hook if existing */
.product-card .price,
.catalog-card .price,
.part-card .price{
  color:#fff;
  text-shadow:0 0 12px rgba(255,138,34,.12);
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .product-card,
  .catalog-card,
  .part-card,
  .rfb-product-card,
  .grid .product,
  .products .card{
    transition:none;
  }
  .product-card:hover,
  .catalog-card:hover,
  .part-card:hover,
  .rfb-product-card:hover,
  .grid .product:hover,
  .products .card:hover{
    transform:none;
  }
}