body {
  background: #f6f8fb;
}
.hero {
  background: linear-gradient(135deg, #111827, #1d4ed8);
}
.hero-search-card {
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(4px);
}
.stat-card-dark {
  background: rgba(255,255,255,.08);
  color: white;
}
.product-thumb {
  aspect-ratio: 4/3;
  object-fit: cover;
}
.card {
  border-radius: 1rem;
}
.product-card {
  transition: transform .15s ease, box-shadow .15s ease;
}
.product-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 .75rem 1.5rem rgba(15, 23, 42, .08) !important;
}
.market-chart-card {
  background: linear-gradient(180deg, #ffffff 0%, #eff6ff 100%);
}
.page-link {
  border-radius: .75rem !important;
}
.form-card {
  border: 1px solid rgba(15, 23, 42, .04);
}
.sell-form-note {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: .9rem;
  padding: .75rem 1rem;
}
.seller-summary-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}
.rating-stars {
  display: inline-flex;
  gap: .15rem;
}
.rating-star {
  color: #d1d5db;
  font-size: 1.05rem;
  line-height: 1;
}
.rating-star.active {
  color: #facc15;
  text-shadow: 0 0 1px rgba(146, 64, 14, .25);
}
.review-card {
  background: #fffdfa;
}
.product-gallery-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}
.product-gallery-stage {
  background: radial-gradient(circle at top, rgba(59,130,246,.08), transparent 35%);
}
.product-detail-image-wrap {
  width: 100%;
  min-height: 340px;
  max-height: 560px;
  border-radius: 1.25rem;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8fafc;
}
.product-detail-image {
  width: 100%;
  height: clamp(340px, 52vw, 560px);
  object-fit: contain;
  display: block;
}
.product-media-carousel .carousel-inner {
  border-radius: 1.25rem;
}
.product-carousel-control {
  width: 11%;
}
.product-carousel-control .carousel-control-prev-icon,
.product-carousel-control .carousel-control-next-icon {
  background-color: rgba(15, 23, 42, .65);
  border-radius: 999px;
  background-size: 55% 55%;
  width: 2.6rem;
  height: 2.6rem;
}
.product-gallery-thumbs {
  background: transparent;
}
.product-thumb-btn {
  width: 74px;
  height: 74px;
  padding: 0;
  border: 2px solid transparent;
  border-radius: .9rem;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 .25rem .8rem rgba(15,23,42,.08);
}
.product-thumb-btn.active {
  border-color: #2563eb;
}
.product-thumb-btn img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cursor-zoom {
  cursor: zoom-in;
}
.listing-chip {
  display: inline-flex;
  align-items: center;
  gap: .25rem;
  padding: .35rem .75rem;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  font-size: .875rem;
  font-weight: 500;
}
.lightbox-modal-content {
  background: rgba(2, 6, 23, .96);
}
.lightbox-toolbar {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 1080;
  display: flex;
  gap: .5rem;
}
.lightbox-stage {
  width: 100%;
  height: calc(100vh - 2rem);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: auto;
}
.lightbox-stage img {
  max-width: 95vw;
  max-height: 92vh;
  object-fit: contain;
  transition: transform .15s ease;
}
.lightbox-nav {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1081;
  width: 48px;
  height: 48px;
  border-radius: 999px;
}
.lightbox-prev { left: 1rem; }
.lightbox-next { right: 1rem; }
@media (max-width: 991.98px) {
  .product-detail-image {
    height: min(68vw, 460px);
  }
}
