/* ==========================================================================
   NovaShop — Puente con el header y el footer de Blocksy

   El header y el footer los monta Blocksy desde el Customizer. Aquí solo se
   afinan los detalles que el Customizer no cubre: el subrayado animado del
   menú, el blur al hacer scroll y el punto verde del logo.
   Ver README.md → "Configuración de Blocksy".
   ========================================================================== */

/* Header sticky: fondo blanco translúcido + blur (el diseño original usaba
   bg-white/90 con backdrop-blur al pasar de 20px de scroll). */
.ns-theme [data-sticky] .ct-header [data-row="middle"],
.ns-theme [data-sticky*="yes"] .ct-header [data-id] {
  background-color: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--ns-border);
  box-shadow: var(--ns-shadow-sm);
}

/* Menú principal: subrayado verde que crece al hover y queda fijo en el activo */
.ns-theme .ct-header .menu > li > a {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--ns-stone-700);
  position: relative;
}

.ns-theme .ct-header .menu > li > a:hover { color: var(--ns-stone-900); }

.ns-theme .ct-header .menu > li.current-menu-item > a,
.ns-theme .ct-header .menu > li.current-menu-ancestor > a {
  color: var(--ns-emerald-600);
}

.ns-theme .ct-header .menu > li > a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -4px;
  height: 2px;
  width: 0;
  background: var(--ns-emerald-600);
  transition: width var(--ns-t-base);
}

.ns-theme .ct-header .menu > li > a:hover::after,
.ns-theme .ct-header .menu > li.current-menu-item > a::after,
.ns-theme .ct-header .menu > li.current-menu-ancestor > a::after {
  width: 100%;
}

/* Logo: el punto verde antes del nombre. Si subes un logo en imagen,
   elimina este bloque. */
.ns-theme .site-title,
.ns-theme .ct-logo-container .site-title {
  font-weight: 700;
  letter-spacing: -0.02em;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.ns-theme .site-title a::before {
  content: '●';
  color: var(--ns-emerald-600);
  font-size: 1.5rem;
  line-height: 1;
  margin-right: 0.5rem;
}

/* Icono del carrito del header */
.ns-theme .ct-cart-item { cursor: pointer; }
.ns-theme .ct-cart-item:hover { color: var(--ns-stone-900); }

/* Footer oscuro (stone-900) con acentos verdes */
.ns-theme footer.ct-footer [data-row*="middle"] {
  background-color: var(--ns-stone-900);
  color: var(--ns-stone-300);
}

.ns-theme footer.ct-footer a { color: var(--ns-stone-300); transition: color var(--ns-t-fast); }
.ns-theme footer.ct-footer a:hover { color: var(--ns-emerald-500); }
.ns-theme footer.ct-footer .widget-title,
.ns-theme footer.ct-footer h3 {
  color: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.ns-theme footer.ct-footer [data-row*="bottom"] {
  background-color: var(--ns-stone-900);
  color: var(--ns-stone-500);
  font-size: 0.75rem;
  border-top: 1px solid #292524;
}

/* Los iconos sociales de Blocksy en verde al hover */
.ns-theme footer.ct-footer .ct-social-box a:hover { color: var(--ns-emerald-500); }

/* Avisos de WooCommerce con el lenguaje visual del tema */
.ns-theme .woocommerce-message,
.ns-theme .woocommerce-info,
.ns-theme .woocommerce-error {
  border-radius: var(--ns-radius-lg);
  border: 1px solid var(--ns-border);
  font-size: 0.875rem;
}
.ns-theme .woocommerce-message { border-left: 3px solid var(--ns-emerald-600); }
