/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ============================================================
   ANTYCA — Design System v2
   Solo modificar aquí, nunca en el tema padre.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800&display=swap');

/* ── TOKENS DE DISEÑO ── */
:root {
  --a-red:        #e53735;
  --a-red-dark:   #c62828;
  --a-red-soft:   rgba(229, 55, 53, 0.10);

  --a-text:       #1e293b;
  --a-text-2:     #475569;
  --a-text-3:     #94a3b8;

  --a-bg:         #f8fafc;
  --a-bg-card:    #ffffff;
  --a-border:     #e2e8f0;
  --a-border-2:   #cbd5e1;

  --a-radius-sm:  6px;
  --a-radius:     10px;
  --a-radius-lg:  16px;

  --a-shadow-sm:  0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);
  --a-shadow:     0 4px 16px rgba(0,0,0,.08), 0 1px 4px rgba(0,0,0,.04);
  --a-shadow-lg:  0 12px 32px rgba(0,0,0,.12), 0 4px 8px rgba(0,0,0,.06);
  --a-shadow-red: 0 4px 14px rgba(229,55,53,.30);

  --a-ease:       cubic-bezier(.4, 0, .2, 1);
  --a-dur:        0.22s;

  /* Sobreescribir tokens del tema */
  --wd-brd-radius: 10px;
}

/* ── BASE ── */
*, *::before, *::after { box-sizing: border-box; }

body,
button, input, select, textarea,
h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', sans-serif !important;
}

body {
  color: var(--a-text) !important;
  background-color: var(--a-bg) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a { transition: color var(--a-dur) var(--a-ease); }

/* Color de selección de texto */
::selection {
  background: var(--a-red-soft);
  color: var(--a-red-dark);
}

/* Header/Footer: ver assets/css/antyca-ui.css (Fase 1) */

/* ════════════════════════════════════════
   BÚSQUEDA (contenido tienda)
════════════════════════════════════════ */

.wd-search-form input[type="text"],
.wd-search-form input[type="search"],
.wd-search-form .wd-input-text {
  border-radius: var(--a-radius) !important;
  transition: box-shadow var(--a-dur) var(--a-ease) !important;
  font-size: 13px !important;
}

.wd-search-form input:focus {
  box-shadow: 0 0 0 3px var(--a-red-soft) !important;
  outline: none !important;
}

.wd-search-cats select {
  border-radius: var(--a-radius) 0 0 var(--a-radius) !important;
}

/* ════════════════════════════════════════
   BOTONES — sistema completo
════════════════════════════════════════ */

.button,
button.button,
a.button,
input[type="submit"],
input[type="button"],
.wc-block-components-button,
.add_to_cart_button,
.single_add_to_cart_button,
.wd-add-btn a,
.checkout-button,
.wc-proceed-to-checkout a {
  border-radius: var(--a-radius-sm) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: .03em !important;
  font-family: 'Inter', sans-serif !important;
  transition:
    background var(--a-dur) var(--a-ease),
    box-shadow var(--a-dur) var(--a-ease),
    transform var(--a-dur) var(--a-ease),
    border-color var(--a-dur) var(--a-ease) !important;
}

.button:hover,
a.button:hover,
.add_to_cart_button:hover,
.single_add_to_cart_button:hover,
.checkout-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--a-shadow-red) !important;
}

.button:active,
a.button:active,
.add_to_cart_button:active {
  transform: translateY(0) !important;
  box-shadow: var(--a-shadow-sm) !important;
}

/* ════════════════════════════════════════
   CARDS DE PRODUCTO
════════════════════════════════════════ */

.wd-product,
.products .product:not(.product-category),
.product-grid-item {
  background: var(--a-bg-card) !important;
  border-radius: var(--a-radius) !important;
  border: 1px solid var(--a-border) !important;
  box-shadow: var(--a-shadow-sm) !important;
  transition:
    box-shadow var(--a-dur) var(--a-ease),
    transform var(--a-dur) var(--a-ease),
    border-color var(--a-dur) var(--a-ease) !important;
  overflow: hidden;
}

.wd-product:hover,
.products .product:not(.product-category):hover,
.product-grid-item:hover {
  box-shadow: var(--a-shadow-lg) !important;
  transform: translateY(-4px) !important;
  border-color: var(--a-border-2) !important;
}

/* Zona de imagen */
.wd-product .product-image-wrap,
.wd-product .wd-product-grid-slider {
  overflow: hidden;
  background: #f8fafc;
}

.wd-product .attachment-woocommerce_thumbnail,
.wd-product .product-image-wrap img {
  transition: transform .4s var(--a-ease) !important;
}

.wd-product:hover .attachment-woocommerce_thumbnail,
.wd-product:hover .product-image-wrap img {
  transform: scale(1.06) !important;
}

/* Zona de info del producto */
.wd-product .product-info-wrap,
.wd-product .wd-product-sku,
.wd-product .wd-product-info {
  padding: 0 12px 12px !important;
}

/* Título del producto */
.wd-entities-title,
.product-title,
td.product-name a:not(:where(.button)) {
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  color: var(--a-text) !important;
  transition: color var(--a-dur) var(--a-ease) !important;
}

.wd-entities-title a:hover,
.product-title a:hover {
  color: var(--a-red) !important;
}

/* Precio */
.price {
  font-weight: 700 !important;
  font-size: 14px !important;
  color: var(--a-text) !important;
}

.price ins {
  font-weight: 800 !important;
  text-decoration: none !important;
  color: var(--a-red) !important;
}

.price del {
  opacity: .45 !important;
  font-size: .84em !important;
  font-weight: 400 !important;
}

/* Badge "En oferta" */
.onsale,
.wd-product-label,
.woodmart-label {
  border-radius: 4px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  padding: 3px 7px !important;
}

/* ════════════════════════════════════════
   GRID DE CATEGORÍAS (página Tienda)
════════════════════════════════════════ */

.wd-cat,
.category-grid-item {
  border-radius: var(--a-radius) !important;
  background: var(--a-bg-card) !important;
  border: 1px solid var(--a-border) !important;
  box-shadow: var(--a-shadow-sm) !important;
  transition:
    box-shadow var(--a-dur) var(--a-ease),
    transform var(--a-dur) var(--a-ease),
    border-color var(--a-dur) var(--a-ease) !important;
  overflow: hidden;
}

.wd-cat:hover,
.category-grid-item:hover {
  box-shadow: var(--a-shadow) !important;
  transform: translateY(-3px) !important;
  border-color: var(--a-border-2) !important;
}

/* Ícono de categoría */
.wd-cat-inner svg,
.wd-cat-inner img {
  transition: transform .3s var(--a-ease) !important;
}

.wd-cat:hover .wd-cat-inner svg,
.wd-cat:hover .wd-cat-inner img {
  transform: scale(1.15) !important;
}

/* Nombre de categoría */
.wd-cat .wd-entities-title,
.category-grid-item .wd-entities-title {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em !important;
  color: var(--a-text) !important;
}

.wd-cat .wd-entities-title a,
.category-grid-item .wd-entities-title a {
  color: var(--a-text) !important;
}

.wd-cat:hover .wd-entities-title a {
  color: var(--a-red) !important;
}

/* Contador de productos */
.wd-cat-count,
.wd-cat .count,
.category-grid-item .count {
  display: inline-block !important;
  background: var(--a-bg) !important;
  color: var(--a-text-3) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  border-radius: 20px !important;
  padding: 2px 8px !important;
  border: 1px solid var(--a-border) !important;
  transition: background var(--a-dur) var(--a-ease) !important;
}

.wd-cat:hover .wd-cat-count {
  background: var(--a-red-soft) !important;
  color: var(--a-red) !important;
  border-color: transparent !important;
}

/* ════════════════════════════════════════
   TÍTULO DE PÁGINA
════════════════════════════════════════ */

.wd-page-title {
  background: var(--a-bg) !important;
  border-bottom: 1px solid var(--a-border) !important;
  padding-block: 20px 16px !important;
}

.wd-page-title .title,
.wd-woo-page-title .title {
  font-size: 28px !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
  color: var(--a-text) !important;
}

/* ════════════════════════════════════════
   TABS (Lo más vendido / Destacados / Ventas)
════════════════════════════════════════ */

.wd-tabs-list,
.tabs-nav {
  border-bottom: 2px solid var(--a-border) !important;
  gap: 0 !important;
}

.wd-tabs-list li a,
.tabs-nav li a {
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: .03em !important;
  color: var(--a-text-2) !important;
  padding: 10px 18px !important;
  border-radius: var(--a-radius-sm) var(--a-radius-sm) 0 0 !important;
  border: 2px solid transparent !important;
  border-bottom: none !important;
  transition: color var(--a-dur) var(--a-ease), border-color var(--a-dur) var(--a-ease) !important;
  margin-bottom: -2px !important;
  display: block;
}

.wd-tabs-list li.wd-active a,
.wd-tabs-list li.active a,
.tabs-nav li.active a {
  color: var(--a-red) !important;
  border-color: var(--a-border) !important;
  border-bottom-color: #fff !important;
  background: #fff !important;
}

.wd-tabs-list li a:hover {
  color: var(--a-red) !important;
}

/* ════════════════════════════════════════
   SIDEBAR / FILTROS
════════════════════════════════════════ */

.widget {
  background: var(--a-bg-card) !important;
  border: 1px solid var(--a-border) !important;
  border-radius: var(--a-radius) !important;
  padding: 18px !important;
  margin-bottom: 16px !important;
  box-shadow: var(--a-shadow-sm) !important;
}

.widget-title,
.widgettitle {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  color: var(--a-text) !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid var(--a-border) !important;
  margin-bottom: 14px !important;
  margin-top: 0 !important;
}

/* Filtro de precio */
.widget_price_filter .price_label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--a-text-2) !important;
}

.widget_price_filter .button {
  font-size: 11px !important;
  padding: 6px 14px !important;
  border-radius: var(--a-radius-sm) !important;
}

/* Lista de categorías / filtros */
.wd-filter-list li,
.widget .product-categories li {
  padding: 4px 0 !important;
  font-size: 12px !important;
}

.wd-filter-list a,
.widget .product-categories li a {
  font-weight: 500 !important;
  color: var(--a-text-2) !important;
  transition: color var(--a-dur) var(--a-ease), padding-left var(--a-dur) var(--a-ease) !important;
}

.wd-filter-list a:hover,
.widget .product-categories li a:hover {
  color: var(--a-red) !important;
  padding-left: 4px !important;
}

/* ════════════════════════════════════════
   TOOLBAR (Orden / Resultados)
════════════════════════════════════════ */

.woocommerce-result-count {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: var(--a-text-3) !important;
}

.woocommerce-ordering select {
  border-radius: var(--a-radius-sm) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  border: 1px solid var(--a-border-2) !important;
  padding: 6px 32px 6px 12px !important;
  background-color: var(--a-bg-card) !important;
  color: var(--a-text-2) !important;
  transition: border-color var(--a-dur) var(--a-ease) !important;
}

.woocommerce-ordering select:focus {
  border-color: var(--a-red) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px var(--a-red-soft) !important;
}

/* Botones de vista grilla */
.wd-layout-btn,
.wd-per-page a {
  border-radius: var(--a-radius-sm) !important;
  transition: background var(--a-dur) var(--a-ease) !important;
}

/* ════════════════════════════════════════
   BREADCRUMB
════════════════════════════════════════ */

.woocommerce-breadcrumb,
.wd-breadcrumbs {
  font-size: 11px !important;
  font-weight: 500 !important;
  color: var(--a-text-3) !important;
  letter-spacing: .02em;
}

.woocommerce-breadcrumb a,
.wd-breadcrumbs a {
  color: var(--a-text-3) !important;
}

.woocommerce-breadcrumb a:hover,
.wd-breadcrumbs a:hover {
  color: var(--a-red) !important;
}

/* ════════════════════════════════════════
   PAGINACIÓN
════════════════════════════════════════ */

.wd-pagination a,
.wd-pagination span,
.woocommerce-pagination a,
.woocommerce-pagination span {
  border-radius: var(--a-radius-sm) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  min-width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid var(--a-border) !important;
  transition: all var(--a-dur) var(--a-ease) !important;
  background: var(--a-bg-card) !important;
  color: var(--a-text-2) !important;
}

.wd-pagination a:hover,
.woocommerce-pagination a:hover {
  border-color: var(--a-red) !important;
  color: var(--a-red) !important;
  transform: translateY(-1px) !important;
}

.wd-pagination .wd-active,
.woocommerce-pagination .current {
  background: var(--a-red) !important;
  color: #fff !important;
  border-color: var(--a-red) !important;
}

/* ════════════════════════════════════════
   FORMULARIOS
════════════════════════════════════════ */

input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
textarea,
select {
  border-radius: var(--a-radius-sm) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  transition:
    border-color var(--a-dur) var(--a-ease),
    box-shadow var(--a-dur) var(--a-ease) !important;
  border-color: var(--a-border-2) !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
textarea:focus {
  border-color: var(--a-red) !important;
  box-shadow: 0 0 0 3px var(--a-red-soft) !important;
  outline: none !important;
}

/* ════════════════════════════════════════
   ALERTAS / MENSAJES WOOCOMMERCE
════════════════════════════════════════ */

.woocommerce-message {
  border-radius: var(--a-radius) !important;
  border-left: 4px solid #10b981 !important;
  background: #f0fdf4 !important;
  color: #065f46 !important;
  font-weight: 500 !important;
  font-size: 13px !important;
}

.woocommerce-error {
  border-radius: var(--a-radius) !important;
  border-left: 4px solid var(--a-red) !important;
  background: #fef2f2 !important;
  color: #991b1b !important;
  font-weight: 500 !important;
  font-size: 13px !important;
}

.woocommerce-info {
  border-radius: var(--a-radius) !important;
  border-left: 4px solid #3b82f6 !important;
  background: #eff6ff !important;
  color: #1e40af !important;
  font-weight: 500 !important;
  font-size: 13px !important;
}

/* ════════════════════════════════════════
   PÁGINA PRODUCTO INDIVIDUAL
════════════════════════════════════════ */

.single-product .summary {
  padding: 4px 0 !important;
}

.single-product .product_title {
  font-size: 24px !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
  line-height: 1.25 !important;
  color: var(--a-text) !important;
}

.single-product .woocommerce-product-details__short-description {
  font-size: 14px !important;
  color: var(--a-text-2) !important;
  line-height: 1.7 !important;
}

.single-product .price {
  font-size: 22px !important;
}

/* Tabs de descripción / información */
.woocommerce-tabs .tabs li a {
  font-size: 13px !important;
  font-weight: 600 !important;
}

.woocommerce-tabs .woocommerce-Tabs-panel {
  border-radius: 0 0 var(--a-radius) var(--a-radius) !important;
  border: 1px solid var(--a-border) !important;
  padding: 24px !important;
}

/* ════════════════════════════════════════
   ANIMACIONES DE ENTRADA (fade-up)
   Las clases las añade assets/js/antyca-animations.js
════════════════════════════════════════ */

.a-fade-up {
  opacity: 0;
  transform: translateY(20px);
  transition:
    opacity .5s var(--a-ease),
    transform .5s var(--a-ease);
}

.a-fade-up.a-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Delay escalonado para grillas */
.a-fade-up:nth-child(2) { transition-delay: .07s; }
.a-fade-up:nth-child(3) { transition-delay: .14s; }
.a-fade-up:nth-child(4) { transition-delay: .21s; }
.a-fade-up:nth-child(5) { transition-delay: .28s; }
.a-fade-up:nth-child(6) { transition-delay: .35s; }

/* ════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════ */

@media (max-width: 1024px) {
  .widget {
    padding: 14px !important;
  }
}

@media (max-width: 768px) {
  .wd-product:hover,
  .products .product:not(.product-category):hover {
    transform: none !important;
    box-shadow: var(--a-shadow) !important;
  }

  .wd-cat:hover,
  .category-grid-item:hover {
    transform: none !important;
  }

  .button:hover,
  a.button:hover {
    transform: none !important;
  }

  .wd-page-title .title {
    font-size: 22px !important;
  }

  .single-product .product_title {
    font-size: 20px !important;
  }

  /* Cards sin bordes laterales en mobile */
  .widget {
    border-radius: var(--a-radius-sm) !important;
  }
}
