/* ============================================================
   product-overrides.css · Ficha de producto — tema CLARO de marca
   Óptica Vas Viendo al Sur. Reemplaza el tema oscuro de ShopSale.
   Variables --vas-* vienen del header (todas las páginas).
   ============================================================ */

/* Matar el fondo oscuro/degradé de la ficha */
.product-details-page .main::before { display: none !important; }
.product-details-page .main { background: #fff; }

/* Título / breadcrumb */
.product-details-page .page-title {
  background: #f6f9fc !important;
  border-top: 1px solid #eef2f6;
  border-bottom: 1px solid #eef2f6;
}
.product-details-page .page-title .breadcrumbs a { color: var(--vas-blue, #015591); }
.product-details-page .page-title .breadcrumbs .current { color: #6b7a8d; }
.product-details-page .page-title h1 {
  color: var(--vas-blue, #015591);
  font-family: 'Poppins', sans-serif; font-weight: 700;
}

.product-details-page .product-details.section { background: #fff; padding: 2.4rem 0 3rem; }

/* ---------- Galería: imagen MÁS GRANDE ---------- */
.product-details-page .product-gallery .main-image-wrapper .image-zoom-container {
  border: 1px solid #eef2f6;
  background: #f7f9fc;
  border-radius: 16px;
  box-shadow: 0 14px 30px rgba(20, 50, 90, .08);
  min-height: 460px;
  display: flex; align-items: center; justify-content: center;
}
.product-details-page .product-gallery .main-image-wrapper .image-zoom-container .main-image {
  max-height: 520px; width: auto; max-width: 100%; object-fit: contain; padding: 18px;
}
@media (max-width: 991px){
  .product-details-page .product-gallery .main-image-wrapper .image-zoom-container { min-height: 360px; }
  .product-details-page .product-gallery .main-image-wrapper .image-zoom-container .main-image { max-height: 360px; }
}
.product-details-page .product-gallery .thumbnails-vertical .thumbnail-item {
  border: 1px solid #e6ecf3; background: #f7f9fc; border-radius: 10px;
}
.product-details-page .product-gallery .thumbnails-vertical .thumbnail-item.active { border-color: var(--vas-blue, #015591); }

/* Ampliación por click (lightbox); lupa drift desactivada */
.product-details-page .drift-zoom-pane,
.product-details-page .drift-bounding-box { display: none !important; }
.product-details-page .product-gallery .image-zoom-container a { cursor: zoom-in; }

/* Flechas de la galería: discretas, azul de marca, aparecen al hover (no invasivas) */
.product-details-page .product-gallery .main-image-wrapper .image-nav { opacity: 0; transition: opacity .2s; }
.product-details-page .product-gallery .main-image-wrapper:hover .image-nav { opacity: 1; }
.product-details-page .product-gallery .main-image-wrapper .image-nav .image-nav-btn {
  width: 34px; height: 34px;
  background: rgba(255,255,255,.92) !important;
  border: 1px solid #e6ecf3 !important;
  box-shadow: 0 2px 8px rgba(20,50,90,.12) !important;
}
.product-details-page .product-gallery .main-image-wrapper .image-nav .image-nav-btn i { color: var(--vas-blue, #015591) !important; font-size: 1rem !important; }
.product-details-page .product-gallery .main-image-wrapper .image-nav .image-nav-btn:hover { background: var(--vas-blue, #015591) !important; }
.product-details-page .product-gallery .main-image-wrapper .image-nav .image-nav-btn:hover i { color: #fff !important; }
@media (max-width: 991px){ .product-details-page .product-gallery .main-image-wrapper .image-nav { opacity: 1; } }
.product-details-page .product-gallery .zoom-overlay { opacity: 1; }

/* ---------- Lightbox estilo masvision: fondo blanco, imagen grande ---------- */
.glightbox-container .goverlay { background: #ffffff !important; opacity: 1 !important; }
.glightbox-clean .gslide-description { display: none !important; }
.glightbox-container .gslide-image img {
  /* width/height auto => nunca upscalea más allá del tamaño nativo (evita borroso) */
  width: auto !important; height: auto !important;
  max-width: 94vw !important; max-height: 90vh !important;
  background: transparent !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important;
}
/* quitar el recuadro/sombra que GLightbox pone en los contenedores de la imagen */
.glightbox-container .gslide-media,
.glightbox-container .gslide-image,
.glightbox-container .gslide-inner-content,
.glightbox-container .ginner-container {
  box-shadow: none !important; border: 0 !important; border-radius: 0 !important; background: transparent !important;
}
.glightbox-clean .gclose, .glightbox-clean .gnext, .glightbox-clean .gprev {
  background: #eef3f9 !important; border-radius: 50% !important; opacity: 1 !important;
}
.glightbox-clean .gclose svg, .glightbox-clean .gnext svg, .glightbox-clean .gprev svg,
.glightbox-clean .gclose path, .glightbox-clean .gnext path, .glightbox-clean .gprev path {
  fill: #015591 !important; color: #015591 !important;
}

/* ---------- Columna info: tarjeta blanca ---------- */
.product-details-page .product-info-wrapper {
  padding: 1.4rem 1.4rem; background: #fff;
  border: 1px solid #eef2f6; border-radius: 16px;
  box-shadow: 0 10px 26px rgba(20, 50, 90, .06);
}
.product-details-page .product-info-wrapper .product-meta .product-category {
  color: #9aa6b4; text-transform: uppercase; letter-spacing: .5px; font-size: 12px; font-weight: 600;
}
.product-details-page .product-info-wrapper .product-meta .product-title {
  color: #1c2a3a; font-family: 'Poppins', sans-serif; font-weight: 700;
}

/* Precio */
.product-details-page .product-info-wrapper .product-price-container {
  background: #f6f9fc; border: 1px solid #eef2f6; border-radius: 12px;
}
.product-details-page .product-info-wrapper .product-price-container .current-price,
.product-details-page .product-info-wrapper .product-price-container .price-wrapper .current-price {
  color: var(--vas-blue, #015591) !important;
}
.product-details-page .product-info-wrapper .product-price-container .original-price,
.product-details-page .product-info-wrapper .product-price-container .price-wrapper .original-price {
  color: #9aa6b4 !important;
}
.product-details-page .product-info-wrapper .product-price-container .stock-info span { color: #3a4a5e; }
.product-details-page .product-info-wrapper .product-short-description p { color: #4a5a6e; }

/* Etiquetas de opciones */
.product-details-page .product-info-wrapper .product-options .option-title,
.product-details-page .product-info-wrapper .product-options .selected-option { color: #2b3a4d; }

/* ---------- SWATCHES de color = foto de la variante ---------- */
.product-details-page .product-info-wrapper .product-options .color-options {
  flex-wrap: wrap; gap: 10px !important;
}
.product-details-page .product-info-wrapper .product-options .color-option {
  width: 62px; height: 62px; padding: 0 !important; margin: 0;
  border: 2px solid #e6ecf3 !important; border-radius: 12px; overflow: hidden;
  background: #f7f9fc !important; cursor: pointer; position: relative;
  display: inline-flex; align-items: center; justify-content: center;
  transition: border-color .15s, box-shadow .15s;
}
.product-details-page .product-info-wrapper .product-options .color-option img {
  width: 100%; height: 100%; object-fit: contain; padding: 4px;
}
.product-details-page .product-info-wrapper .product-options .color-option:hover {
  border-color: var(--vas-celeste, #5b9bd5) !important;
}
.product-details-page .product-info-wrapper .product-options .color-option.selected {
  border-color: var(--vas-blue, #015591) !important;
  box-shadow: 0 6px 16px rgba(1, 85, 145, .22);
}
.product-details-page .product-info-wrapper .product-options .color-option i.bi-check-lg {
  position: absolute; top: 3px; right: 3px; width: 18px; height: 18px;
  background: var(--vas-blue, #015591); color: #fff; border-radius: 50%;
  font-size: 11px; display: none; align-items: center; justify-content: center;
}
.product-details-page .product-info-wrapper .product-options .color-option.selected i.bi-check-lg { display: flex !important; }

/* Cantidad */
.product-details-page .product-info-wrapper .product-options .quantity-selector .quantity-btn,
.product-details-page .product-info-wrapper .product-options .quantity-selector .quantity-input {
  background: #fff; border-color: #dbe3ec; color: #2b3a4d;
}

/* Botón principal en azul de marca */
.product-details-page .product-info-wrapper .product-actions .add-to-cart-btn {
  background: var(--vas-blue, #015591) !important; border: none !important; color: #fff;
}
.product-details-page .product-info-wrapper .product-actions .add-to-cart-btn:hover {
  background: var(--vas-blue-dark, #013f6c) !important;
  box-shadow: 0 10px 22px rgba(1, 85, 145, .3);
}

/* Botón compartir: azul de marca (chau magenta ShopSale) */
.product-details-page .product-info-wrapper .product-meta .product-share .share-btn,
.product-details-page .product-info-wrapper .product-meta .product-share .share-btn i { color: var(--vas-blue, #015591) !important; }
.product-details-page .product-info-wrapper .product-meta .product-share .share-btn { border-color: #e6ecf3 !important; }
.product-details-page .product-info-wrapper .product-meta .product-share .share-btn:hover,
.product-details-page .product-info-wrapper .product-meta .product-share.is-open .share-btn { background: var(--vas-blue, #015591) !important; border-color: var(--vas-blue, #015591) !important; }
.product-details-page .product-info-wrapper .product-meta .product-share .share-btn:hover i,
.product-details-page .product-info-wrapper .product-meta .product-share.is-open .share-btn i { color: #fff !important; }
.product-details-page .product-info-wrapper .product-meta .product-share .share-dropdown .share-whatsapp,
.product-details-page .product-info-wrapper .product-meta .product-share .share-dropdown .share-whatsapp i { color: #25d366 !important; }

/* Beneficios de envío: ocultos por ahora */
.product-details-page .product-info-wrapper .delivery-options { display: none !important; }

@media (max-width: 767px){
  .product-details-page .page-title h1 { font-size: 2rem; line-height: 1.1; }
  .product-details-page .product-info-wrapper .product-meta .product-title { font-size: 1.7rem; }
}

.product-details-page .product-info-wrapper .product-short-description p a,
.product-details-page .product-description a { color: var(--vas-blue, #015591); font-weight: 700; text-decoration: none; }
