/**
 * Snippet 07 — Carrito WooCommerce y Plugins de Carrito

 *
 * PROPÓSITO:
 * Sobreescrituras de estilos para el carrito de WooCommerce,
 * incluyendo integraciones con plugins activos:
 *   - FGW (Free Gift for WooCommerce) — clases: .fgw_gift_*
 *   - XOO Side Cart — clases: .xoo-wsc-*
 *   - Elementor Cart Widget — clases: .e-cart__*
 *   - Premium Addons — clases: .pa-woo-mc__*
 *
 * DEPENDENCIAS: 00-variables.css
 *
 * ⚠️ ADVERTENCIA DE ESPECIFICIDAD:
 * Los selectores largos (6+ niveles) son necesarios para
 * sobreescribir estilos inyectados por los plugins.
 * NO reducir sin verificar que el plugin no los restaura.
 *
 * ⚠️ RESTRICCIÓN FUNCIONAL CRÍTICA:
 * Estos estilos afectan directamente el flujo de compra.
 * Cualquier cambio debe probarse en:
 *   1. Carrito con producto regalo (FGW)
 *   2. Side cart (XOO)
 *   3. Widget de carrito de Elementor
 *   4. Mensajes de WooCommerce (error, info, success)
 */

/* -------------------------------------------------------
 * FGW — Free Gift for WooCommerce
 * Plugin que muestra productos regalo en el carrito
 * ------------------------------------------------------- */

/* Grid de regalos — una columna, con fondo oscuro */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  .fgw_gift_slider {
  grid-template-columns: repeat(1, 1fr);
  margin: var(--spacing-md);
  padding: 0 var(--spacing-xl);
  background-color: var(--color-bg-dark-card);
  border-radius: 15px;
}

/* Item de regalo — layout horizontal */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  .fgw_gift_slider
  .item.fgw_gift_product {
  width: 100%;
  max-width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 0;
  margin-block: var(--spacing-md);
}

/* Botón de agregar regalo — sin margen */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  .fgw_gift_atc_btn {
  margin: 0;
}

/* Link del producto regalo — flex con imagen */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  .fgw_gift_slider
  .item.fgw_gift_product
  a {
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
}

/* Imagen del producto regalo — 20% del ancho */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  .fgw_gift_slider
  .item.fgw_gift_product
  a
  div {
  width: 20%;
}

/* Ocultar texto de FGW (solo mostrar imagen + botón) */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  .fgw_gift
  p {
  display: none;
}

/* -------------------------------------------------------
 * Botones FGW — en carrito y en mensajes WooCommerce
 * Se consolidan aquí los 3 contextos en un solo bloque
 * ------------------------------------------------------- */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  a.wp-block-button__link,
body .woocommerce-error a.fgw_gift_btn,
body .woocommerce-info a.fgw_gift_btn,
body .woocommerce-message a.fgw_gift_btn {
  font-family: var(--font-secondary);
  font-weight: 400;
  border-style: solid;
  border-width: 1px;
  border-color: var(--color-gift-cta);
  background-color: var(--color-gift-cta);
}

/* Hover — fondo transparente */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  a.wp-block-button__link:hover,
body .woocommerce-error a.fgw_gift_btn:hover,
body .woocommerce-info a.fgw_gift_btn:hover,
body .woocommerce-message a.fgw_gift_btn:hover {
  background-color: transparent;
}

/* Tipografía FGW en carrito */
.product-cart
  .e-cart__container
  .e-cart__column
  form.woocommerce-cart-form
  .fgw_gift.fgw_gift_div {
  font-family: var(--font-secondary);
}

/* -------------------------------------------------------
 * Mensajes de WooCommerce (error / info / success)
 * ------------------------------------------------------- */
body .woocommerce-error,
body .woocommerce-info,
body .woocommerce-message {
  font-family: var(--font-secondary);
  background-color: transparent;
  border-left: 1px solid var(--color-white);
  border-bottom: 1px solid var(--color-white);
  border-right: 1px solid var(--color-white);
  color: var(--color-white);
}

/* Mensaje de regalo en carrito — fondo negro, texto verde */
.product-cart .e-cart__column .woocommerce-message.fgw_mwssagw_main {
  background-color: var(--color-black);
  color: #1de360;
}

/* -------------------------------------------------------
 * XOO Side Cart
 * Plugin de carrito lateral
 * ------------------------------------------------------- */

/* Forzar ancho mínimo del input de cantidad */
body input[type='number'].xoo-wsc-qty {
  min-width: fit-content;
}

/* Remover borde del contenedor de cantidad */
body .xoo-wsc-qty-box.xoo-wsc-qtb-square {
  border: 0;
}

/* -------------------------------------------------------
 * Premium Addons — Mini cart widget en header
 * Ocultar panel expandible del mini-cart en cabecera
 * ⚠️ Validar si este comportamiento es intencional
 *    o si es un parche temporal. Requiere validación funcional.
 * ------------------------------------------------------- */
.header-cart .pa-woo-mc__content-wrapper {
  display: none;
}
