/* product.css - styles specific to product.php */

/* gallery */
.product-category-badge .badge {
    background: rgba(0,0,0,0.65);
    color: #fff;
    font-weight:600;
    font-size: 0.95rem;
    backdrop-filter: blur(4px);
}
.product-category-badge .badge-link:hover .badge {
    background: linear-gradient(90deg,#ff8c00 0%, #ff3c00 100%);
    color:#fff;
    transform: translateY(-2px);
}
.product-gallery .main-image {
    width: 100%;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  }
  .product-gallery .main-image img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
  }
  .description{
    padding-right: 20%;
  }
  /* thumbs */
  .thumbs { gap: 8px; }
  .thumb-btn {
    border: 0;
    padding: 0;
    background: transparent;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0,0,0,0.06);
    cursor: pointer;
  }
  .thumb-btn img {
    width: 64px;
    height: 64px;
    object-fit: cover;
    display: block;
  }
  .thumb-btn.active { box-shadow: 0 10px 28px rgba(0,0,0,0.12); transform: translateY(-4px); }
  
  /* product title / desc */
  .product-title { font-size: 1.6rem; margin-bottom: .25rem; }
  .product-desc { font-size: 0.98rem; line-height: 1.5; }
  
  /* price */
  .product-price .h4 { font-size: 1.5rem; }
  
  /* Specs table */
  .spec-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    box-shadow: 0 8px 26px rgba(0,0,0,0.06);
    border-radius: 8px;
    overflow: hidden;
  }
  .spec-table tbody tr:nth-child(odd){ background: #fbfbfb; }
  .spec-table th {
    width: 28%;
    text-align: left;
    padding: 12px 16px;
    background: #f6f6f6;
    color: #333;
    font-weight: 600;
    vertical-align: top;
  }
  .spec-table td {
    padding: 12px 16px;
    color: #444;
    vertical-align: top;
    border-bottom: 1px solid rgba(0,0,0,0.04);
  }
  
  /* nested inner table */
  .inner-spec { width:100%; border-collapse:collapse; }
  .inner-spec th{ font-weight:500; padding:6px 8px; background:transparent; color:#333; width:40%; }
  .inner-spec td{ padding:6px 8px; color:#555; }
  
  /* fallback box */
  .spec-fallback { background:#fff; box-shadow: 0 6px 18px rgba(0,0,0,0.04); }
  
  /* responsive */
  @media (max-width: 767.98px){
    .thumbs img { width:56px; height:56px; }
    .product-title{ font-size:1.25rem; }
    .spec-table th, .spec-table td { padding:10px; font-size:0.95rem; }
    .product-gallery .main-image img { height: auto; }
  }
  
  /* small polish */
  .muted { color: #888; font-style: italic; }
  