/* ===========================
   BOTÓN CATÁLOGO 2025 (MAX MEGA MENU)
   =========================== */

#mega-menu-primary > li.catalogo-btn > a.mega-menu-link {
  background: #16a9d6;     /* celeste destacado */
  color: #fff;
  font-weight: 700;
  padding: 0 18px;
  border-radius: 4px;
  line-height: 48px;        /* ajustá según la altura de tu header */
}

/* Hover y estado activo */
#mega-menu-primary > li.catalogo-btn > a.mega-menu-link:hover,
#mega-menu-primary > li.catalogo-btn.mega-current-menu-item > a.mega-menu-link {
  background: #0f97bf;
  color: #fff;
}

/* Separación a la izquierda (opcional) */
#mega-menu-primary > li.catalogo-btn {
  margin-left: 8px;
}

/* En móvil (menú desplegado) mantenemos el destacado */
@media (max-width: 980px){
  #mega-menu-primary li.catalogo-btn > a.mega-menu-link{
    border-radius: 4px;
  }
}

/* Oculta Nombre y Apellido (formulario Edit account) */
body.woocommerce-account .woocommerce-EditAccountForm p.form-row-first,
body.woocommerce-account .woocommerce-EditAccountForm p.form-row-last {
  display: none !important;
}

/* ===========================
   GALERÍA DE PRODUCTO
   =========================== */

.woocommerce div.product div.images {
  margin-bottom: 10px !important;
}

.woocommerce div.product div.images .flex-control-thumbs {
  margin-top: 10px !important;
  gap: 10px !important; /* espacio entre miniaturas */
}

.woocommerce div.product div.images .flex-control-thumbs li {
  margin-right: 10px !important;
}

.woocommerce div.product div.images .flex-control-thumbs li:last-child {
  margin-right: 0 !important;
}

/* ===========================
   SIDEBAR LISTADO PRODUCTOS (CONTENEDORES)
   =========================== */

.widget, 
.et_pb_widget, 
.et_pb_sidebar .et_pb_module, 
.widget_block {
  margin-bottom: 30px !important;
  padding: 0 !important;
}

.widgettitle, 
.widget-title, 
h4.widgettitle, 
.sidebar h4 {
  margin-bottom: 0 !important;
}

/* Shortcodes dentro de widgets */
.et_pb_sidebar .accordion-shortcode,
.et_pb_sidebar .select-accordion-shortcode {
  margin-top: 5px !important;
  margin-bottom: 10px !important;
}

/* Espaciado general del contenedor lateral */
.et_pb_sidebar {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Peso de <strong> global */
strong {
  font-weight: 500;
}

/* ===========================
   ESTILOS SIDEBAR CATEGORÍAS (ACORDEÓN)
   =========================== */

/* Enlace de categoría (todos los niveles) */
.wpb_wmca_accordion_wrapper_theme_transparent > ul > li li > a {
  display: block;
  padding: 8px 12px;
  font-size: 14px;
  color: #444;
  border-left: 4px solid transparent;   /* base sin color */
  background-color: transparent;
  transition: all 0.2s ease;
}

/* Hover y categoría activa / enfocada */
.wpb_wmca_accordion_wrapper_theme_transparent > ul > li li:hover > a,
.wpb_wmca_accordion_wrapper_theme_transparent > ul > li li.wpb-wmca-focus > a,
.wpb_wmca_accordion_wrapper_theme_transparent > ul > li li.current-cat > a,
.wpb_wmca_accordion_wrapper_theme_transparent > ul > li li.current-cat-parent > a {
  background-color: #dfebee !important;  /* sombreado */
  border-left: 4px solid #18c1d4 !important; /* línea celeste */
  color: #000 !important;
}

/* Subniveles un poco más adentro */
.wpb_wmca_accordion_wrapper_theme_transparent > ul > li li li > a {
  padding-left: 20px;
}

/* ===========================
   LAYOUT LISTADO PRODUCTOS
   =========================== */

/* SOLO en archivo de productos y categorías usamos flex en la fila */
.post-type-archive-product .et_pb_row,
.tax-product_cat .et_pb_row,
.tax-product_tag .et_pb_row {
  display: flex;
}

/* Sidebar */
.post-type-archive-product .et_pb_sidebar,
.tax-product_cat .et_pb_sidebar,
.tax-product_tag .et_pb_sidebar {
  flex: 0 0 25%; /* ancho fijo de la sidebar */
  max-width: 25%;
}

/* Contenido principal (listado de productos o "no se encontraron") */
.post-type-archive-product .et_pb_module.et_pb_wc_archive_products,
.tax-product_cat .et_pb_module.et_pb_wc_archive_products,
.tax-product_tag .et_pb_module.et_pb_wc_archive_products {
  flex: 1;
  max-width: 75%;
}

/* Texto cuando no hay productos */
.post-type-archive-product .et_pb_module.et_pb_wc_archive_products:empty::before,
.tax-product_cat .et_pb_module.et_pb_wc_archive_products:empty::before,
.tax-product_tag .et_pb_module.et_pb_wc_archive_products:empty::before {
  content: "No se encontraron productos en esta categoría.";
  display: block;
  padding: 60px 20px;
  text-align: center;
  color: #666;
  font-size: 16px;
}

/* Evitar que el contenido se estire o colapse */
.et_pb_wc_archive_products,
.woocommerce .products {
  min-height: 300px;
}

/* ===========================
   MINI CARRITO DESESSPLAST
   =========================== */

.desesplast-mini-cart {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  font-family: "Roboto", sans-serif;
}

/* Caja del ícono */
.desesplast-mini-cart-icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
}

/* Ocultamos el SVG anterior, si quedó */
.desesplast-mini-cart-svg {
  display: none !important;
}

/* Ícono de carrito (Divi ETmodules) */
.desesplast-mini-cart-icon::before {
  font-family: "ETmodules";
  content: "\e07a";           /* icono carrito Divi */
  font-size: 20px;
  line-height: 1;
  color: #19c0dc;             /* celeste marca */
}

/* Burbujita blanca con la cantidad */
.desesplast-mini-cart-count {
  position: absolute;
  top: -4px;
  right: -6px;
  min-width: 16px;
  height: 16px;
  padding: 0 3px;
  border-radius: 999px;
  background-color: #ffffff;  /* fondo blanco */
  color: #19c0dc;             /* número celeste */
  border: 1px solid #19c0dc;
  font-size: 11px;
  font-weight: 700;
  line-height: 16px;
  text-align: center;
}

/* Monto del mini-carrito ($ X) */
.desesplast-mini-cart .desesplast-mini-cart-total {
  font-weight: 500;
  font-size: 14px;
  color: #ffffff !important;  /* blanco en todas las páginas */
}

/* Hover: solo cambia el monto */
.desesplast-mini-cart:hover .desesplast-mini-cart-total {
  color: #16c1d8 !important;  /* celeste al hover */
}

/* HOME: fallback por si el monto no tiene la clase .desesplast-mini-cart-total */
.home .desesplast-mini-cart span:not(.desesplast-mini-cart-icon):not(.desesplast-mini-cart-count) {
  font-weight: 500;
  font-size: 14px;
  color: #ffffff !important;   /* blanco en el home */
}

.home .desesplast-mini-cart:hover span:not(.desesplast-mini-cart-icon):not(.desesplast-mini-cart-count) {
  color: #16c1d8 !important;   /* celeste al hover */
}

/* ===========================
   LOGIN (PÁGINA ID 11)
   =========================== */

/* Ocultar REGISTRO en esa página */
.page-id-11 .u-columns.col2-set .u-column2.col-2,
.page-id-11 .woocommerce-form-register,
.page-id-11 form.register {
  display: none !important;
}

/* Centrar contenedor */
.page-id-11 .u-columns.col2-set {
  display: flex;
  justify-content: center;
}

/* Columna del LOGIN más ancha */
.page-id-11 .u-columns.col2-set .u-column1.col-1 {
  width: 100% !important;
  max-width: 600px;
  margin: 0 auto;
}

/* Form al 100% */
.page-id-11 .woocommerce-form-login,
.page-id-11 form.login {
  width: 100%;
}

/* Centrar título "Acceder" */
.page-id-11 .woocommerce .u-column1 h2,
.page-id-11 .woocommerce-form-login h2,
.page-id-11 .entry-content h2 {
  text-align: center !important;
}

/* ===========================
   REGISTRO (PÁGINA ID 15768495)
   =========================== */

/* Ocultar LOGIN en esa página */
.page-id-15768495 .u-columns.col2-set .u-column1.col-1,
.page-id-15768495 .woocommerce-form-login,
.page-id-15768495 form.login {
  display: none !important;
}

/* Centrar contenedor */
.page-id-15768495 .u-columns.col2-set {
  display: flex;
  justify-content: center;
}

/* Columna de REGISTRO más ancha */
.page-id-15768495 .u-columns.col2-set .u-column2.col-2 {
  width: 100% !important;
  max-width: 700px;
  margin: 0 auto 40px;
}

/* Form de registro al 100% */
.page-id-15768495 .woocommerce-form-register,
.page-id-15768495 form.register {
  width: 100%;
}

/* Título "Registrarse" centrado */
body.page-id-15768495 .woocommerce-form-register h2,
body.page-id-15768495 form.register h2,
body.page-id-15768495 .woocommerce .u-column2 h2 {
  display: block !important;
  text-align: center !important;
  margin-bottom: 20px;
}

/* Botón REGISTRARSE */
.page-id-15768495 .woocommerce-form-register .woocommerce-Button.button {
  background-color: #17aad0 !important;  /* celeste */
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 10px 26px !important;
  font-weight: 600;
  text-transform: none;
}

/* Hover botón REGISTRARSE */
.page-id-15768495 .woocommerce-form-register .woocommerce-Button.button:hover {
  background-color: #1291b2 !important;
  color: #ffffff !important;
}

/* Sacar la flechita ">" si el theme la agrega */
.page-id-15768495 .woocommerce-form-register .woocommerce-Button.button::after {
  display: none !important;
}

/* ===========================
   CAMPO CANTIDAD EN PRODUCTO
   =========================== */

.et_pb_wc_add_to_cart .quantity input.qty {
  border: 0 solid #333 !important;
  width: auto;
  max-width: 5.3em;
}

.woocommerce .quantity input.qty {
  width: 5.3em;
}

/* ===========================
   BOTONES EN GRILLA DE PRODUCTOS
   =========================== */

/* Ocultar botones por defecto */
body.woocommerce ul.products li.product .dp-login-see-prices,
body.woocommerce ul.products li.product .dp-more-info-btn {
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  pointer-events: none;
  transition: all 0.2s ease;
}

/* Mostrar al hover */
body.woocommerce ul.products li.product:hover .dp-login-see-prices,
body.woocommerce ul.products li.product:hover .dp-more-info-btn {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

/* Ficha de producto: botón ver precios */
.dp-login-see-prices {
  display: inline-block;
  padding: 1px 13px;
  border-radius: 999px;
  border: 2px solid #c2c2c2;
  color: #888;
  font-size: 11px;
  font-weight: 500;
  text-transform: uppercase;
  text-decoration: none;
  margin-top: 9px;
}

.dp-login-see-prices:hover {
  background-color: #ffffff;
  color: #fff;
  border-color: #c2c2c2;
}

/* En single product: siempre visible */
.single-product .dp-login-see-prices {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
  margin-top: 8px;
}

/* Botón MÁS INFO */
.dp-more-info-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  color: #16c1d8;
  text-decoration: none;
  margin-top: 6px;
  float: right;
  transition: 0.2s ease;
}

/* Flechita Divi (ETmodules) */
.dp-more-info-btn::after {
  font-family: "ETmodules";
  content: "\35";                /* mismo icono que usabas antes */
  font-size: 14px;
  color: #16c1d8;
  transition: 0.2s ease;
}

.dp-more-info-btn:hover {
  color: #0fa7c0;
}

.dp-more-info-btn:hover::after {
  color: #0fa7c0;
  transform: translateX(2px);
}

/* ===========================
   PÁGINA "GRACIAS / PEDIDO RECIBIDO"
   =========================== */

body.woocommerce-order-received .entry-content .woocommerce {
  max-width: 1180px;
  margin: 40px auto 80px;
  padding: 0 20px;
}

/* Bloque gris del pedido */
body.woocommerce-order-received .woocommerce-order {
  background: #f4f6f7;
  border-radius: 6px;
  padding: 28px 32px;
  max-width: 1180px;
  margin: 0 auto 40px;
  box-sizing: border-box;
}

/* Mensaje gracias */
body.woocommerce-order-received .woocommerce-order > p.woocommerce-notice {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 18px;
  color: #333;
}

/* Cuadro de resumen */
body.woocommerce-order-received .woocommerce-order-overview {
  background: #fff;
  border-radius: 4px;
  padding: 18px 20px;
  list-style: none;
  margin: 0 0 20px;
  border: 1px solid #e1e5e8;
}

body.woocommerce-order-received .woocommerce-order-overview li {
  margin-bottom: 6px;
  font-size: 13px;
  color: #666;
}

body.woocommerce-order-received .woocommerce-order-overview li strong {
  display: block;
  font-weight: 600;
  color: #222;
}

/* Títulos secundarios */
body.woocommerce-order-received h2,
body.woocommerce-order-received h3 {
  font-size: 18px;
  font-weight: 600;
  margin: 32px 0 12px;
  color: #2b2b2b;
  border-top: 2px solid #16c1d8;
  padding-top: 10px;
}

/* Tabla pedido */
body.woocommerce-order-received table.shop_table {
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid #e1e5e8;
}

body.woocommerce-order-received table.shop_table th {
  background: #f4f6f7;
  font-weight: 600;
  color: #444;
}

body.woocommerce-order-received table.shop_table td,
body.woocommerce-order-received table.shop_table th {
  padding: 10px 14px;
  font-size: 13px;
}

/* Totales marcados */
body.woocommerce-order-received tfoot th,
body.woocommerce-order-received tfoot td {
  font-weight: 600;
}

/* Datos facturación/envío */
body.woocommerce-order-received address {
  background: #f9fafb;
  border: 1px solid #e1e5e8;
  border-radius: 4px;
  padding: 14px 16px;
  font-style: normal;
  font-size: 13px;
  color: #555;
}

/* Responsive order received */
@media (max-width: 980px) {
  body.woocommerce-order-received .woocommerce-order {
    padding: 20px 18px;
    margin: 20px auto 40px;
  }
}

/* Cols al 100% en order received */
body.woocommerce-order-received .et_pb_gutters2 .et_pb_column_1_2,
body.woocommerce-order-received .et_pb_gutters2.et_pb_row .et_pb_column_1_2 {
  width: 100% !important;
  margin-right: 0 !important;
}

body.woocommerce-order-received .et_pb_row {
  display: block !important;
}

/* ===========================
   TIMELINE ESTADO DE PEDIDO
   =========================== */

.luci-timeline-wrapper {
  margin: 20px auto 30px;
  padding: 20px 24px;
  border-radius: 16px;
  background: #f8f9fb;
  border: 1px solid #e1e4ef;
  box-sizing: border-box;
}

.luci-timeline-title {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 15px;
  color: #333;
}

/* Timeline horizontal */
.luci-timeline {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  gap: 10px;
}

.luci-timeline::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  right: 0;
  height: 3px;
  background: #e0e4ec;
  z-index: 1;
}

/* Cada paso */
.luci-timeline-step {
  text-align: center;
  flex: 1;
  position: relative;
  z-index: 2;
}

/* Bolita */
.luci-timeline-bullet {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  margin: 0 auto 8px;
  border: 3px solid #e0e4ec;
  background: #fff;
  box-sizing: content-box;
}

/* Label */
.luci-timeline-label {
  font-size: 0.8rem;
  line-height: 1.2;
  color: #6f7688;
}

/* Pasado */
.luci-timeline-step.is-done .luci-timeline-bullet {
  border-color: #686868;
  background: #686868;
}

.luci-timeline-step.is-done .luci-timeline-label {
  color: #686868;
  font-weight: 600;
}

/* Actual */
.luci-timeline-step.is-current .luci-timeline-bullet {
  border-color: #17aad0;
  background: #17aad0;
}

.luci-timeline-step.is-current .luci-timeline-label {
  color: #17aad0;
  font-weight: 700;
}

/* Futuro */
.luci-timeline-step.is-next .luci-timeline-bullet {
  border-color: #cfd5e2;
  background: #fff;
}

.luci-timeline-step.is-next .luci-timeline-label {
  color: #a0a6b8;
}

/* Cancelado */
.luci-timeline-wrapper.luci-timeline-cancelled {
  background: #fff5f5;
  border: 1px solid #f1c4c4;
}

.luci-cancelled-box {
  padding: 14px 18px;
  border-radius: 12px;
  background: #ffeaea;
  border: 1px solid #f1c4c4;
}

.luci-cancelled-label {
  display: inline-block;
  background: #e74c3c;
  color: #fff;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 600;
  margin-bottom: 6px;
}

.luci-cancelled-text {
  color: #7b1e1e;
  font-size: 0.85rem;
  margin: 0;
}

/* Timeline responsive */
@media (max-width: 768px) {
  .luci-timeline {
    flex-direction: column;
    align-items: flex-start;
  }

  .luci-timeline::before {
    top: 0;
    bottom: 0;
    left: 12px;
    width: 3px;
    height: auto;
  }

  .luci-timeline-step {
    display: flex;
    align-items: flex-start;
    text-align: left;
    margin-bottom: 18px;
  }

  .luci-timeline-bullet {
    margin: 2px 10px 0 4px;
  }

  .luci-timeline-label {
    text-align: left;
  }
}