/* WooCommerce adaptado a los tokens del sistema de diseño. */

/* Botones: mismos estilos que .btn--primary / .btn--secondary */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  padding: 1rem 2.4rem;
  border: 0.2rem solid var(--color-secondary);
  border-radius: var(--radius-button);
  background-color: var(--color-secondary);
  color: var(--color-text-on-secondary);
  font-size: 1.4rem;
  font-weight: var(--font-weight-semibold);
  transition: background-color var(--transition-base), border-color var(--transition-base);
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background-color: var(--color-secondary-hover);
  border-color: var(--color-secondary-hover);
  color: var(--color-text-on-secondary);
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce a.add_to_cart_button,
.woocommerce .single_add_to_cart_button {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-text-on-dark);
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce a.add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:hover {
  background-color: var(--color-primary-hover);
  border-color: var(--color-primary-hover);
  color: var(--color-text-on-dark);
}

/* Tarjetas de producto */
.woocommerce ul.products li.product {
  padding: 2rem;
  border: 0.1rem solid var(--color-border-soft);
  border-radius: var(--radius-lg);
  background-color: var(--color-bg-white);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: 2rem;
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
}

/* Precios y etiquetas */
.woocommerce .price,
.woocommerce ul.products li.product .price {
  color: var(--color-primary);
  font-weight: var(--font-weight-semibold);
}

.woocommerce span.onsale {
  min-width: auto;
  min-height: auto;
  padding: 0.4rem 1rem;
  border-radius: var(--radius-pill);
  background-color: var(--color-primary);
  color: var(--color-text-on-dark);
  font-size: 1.2rem;
  font-weight: var(--font-weight-semibold);
  line-height: 1.6;
  text-transform: uppercase;
}

/* Valoraciones */
.woocommerce .star-rating span::before {
  color: var(--color-accent);
}

/* Avisos */
.woocommerce-message,
.woocommerce-info {
  border-top-color: var(--color-secondary);
}

.woocommerce-error {
  border-top-color: var(--color-primary);
}

/* Formularios */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  padding: 1rem 1.4rem;
  border: 0.1rem solid var(--color-border);
  border-radius: var(--radius-md);
}
