/*
Theme Name: Astra RedAmérica Child
Template: astra
Version: 1.0
*/
body{
  font-family: 'Montserrat', 'Inter', sans-serif;
  font-weight: 500;
  color: black;
}

body div .btn-primary-header {
  font-family: 'Montserrat', sans-serif;
  text-decoration: none;
  color: #fff;
  border-color: #FF4444;
  background-color: #FF4444;
  transition: background-color 0.2s ease;
}
body div .btn-primary-header a:focus {
  color: #fff;
  border-color: #FF4444;
  background-color: #FF4444;
}
body div .btn-primary-header:hover {
  color: #fff;
  border-color: #FF4444;
  background-color: #e63c35;
}

/* =========================
   BG PRIMARY
========================= */
body.modo-distrib .bg-primary {
  background-color: #FF6600 !important;
}
body.modo-mayor .bg-primary {
  background-color: #0B77FE !important;
}
body:not(.modo-distrib):not(.modo-mayor) .bg-primary {
  background-color: #F6A800 !important;
}

/* =========================
   BORDER PRIMARY
========================= */
body.modo-distrib .border-primary {
  border-color: #FF6600 !important;
}
body.modo-mayor .border-primary {
  border-color: #0B77FE !important;
}
body:not(.modo-distrib):not(.modo-mayor) .border-primary {
  border-color: #F6A800 !important;
}

/* =========================
   BTN PRIMARY (base + focus + hover)
========================= */
body.modo-distrib .btn-primary,
body.modo-distrib .btn-primary:focus,
body.modo-distrib .btn-primary:hover {
  color: #fff;
  background-color: #FF6600;
  border-color: #FF6600;
}

body.modo-mayor .btn-primary,
body.modo-mayor .btn-primary:focus,
body.modo-mayor .btn-primary:hover {
  color: #fff;
  background-color: #0B77FE;
  border-color: #0B77FE;
}

body:not(.modo-distrib):not(.modo-mayor) .btn-primary,
body:not(.modo-distrib):not(.modo-mayor) .btn-primary:focus,
body:not(.modo-distrib):not(.modo-mayor) .btn-primary:hover {
  color: #fff;
  background-color: #F6A800;
  border-color: #F6A800;
}

/* =========================
   BTN SECONDARY
   (tu regla original no depende del modo; la dejo igual)
========================= */
body .btn-secondary, 
body.modo-distrib .btn-secondary:focus, 
body.modo-distrib .btn-secondary:hover {
  color: black;
  background-color: white;
  border: 1px solid #CCC;
}

/* =========================
   SWIPER ACTIVE BULLET
========================= */
body.modo-distrib .swiper-pagination-bullet-active{
  background-color: #FF6600 !important;
}
body.modo-mayor .swiper-pagination-bullet-active{
  background-color: #0B77FE !important;
}
body:not(.modo-distrib):not(.modo-mayor) .swiper-pagination-bullet-active{
  background-color: #F6A800 !important;
}


.columns-4 {
  columns: 1 !important;
}
.ast-arrow-svg{
  display: inline;
}

/* ====== ESTILOS PERSONALIZADOS CARRITO ====== */
body.woocommerce-cart .ast-container,
body.woocommerce-cart .container,
body.woocommerce-cart .site-content > .ast-container {
    /* max-width: 1000px !important; */
    width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px;
    padding-right: 24px;
}
.woocommerce-ordering, .wp-block-woocommerce-product-filter-price{
  font-weight: 500;
}
.wc-block-product-filter-price-slider .text input[type="text"], 
.wc-block-product-filter-price-slider .text input[type="text"]::placeholder{
  font-weight: 500;
}

/* Opcional: haz que la tabla del carrito ocupe todo el ancho del contenedor */
.woocommerce-cart .cart,
.woocommerce-cart .shop_table {
    width: 100%;
    max-width: 100%;
}

.woocommerce-cart .shop_table thead th {
    border-radius: 0 !important;
}

/* Hacer la tabla del carrito más ancha y centrada */
.woocommerce-cart .cart {
  width: 100%;
  /* max-width: 1200px; */
  margin: 0 auto;
}

.woocommerce-cart .shop_table thead th {
    background: #fff !important; /* O el color que prefieras */
    color: #3e3e3d !important;   /* O el color de texto que prefieras */
}


.custom-cart-bg {
  /* max-width: 1200px; */
  margin: 10px auto 10px auto;
  background: #fff;
  border-radius: 26px;
  box-shadow: 0 10px 44px rgba(231,48,123,0.09);
  font-family: 'Montserrat', 'Inter', sans-serif;
}
.cart-title-wrapper {
  text-align: center;
  margin-bottom: 32px;
}
.cart-title {
  font-size: 2.4rem;
  font-weight: 800;
  color: #e7307b;
  letter-spacing: -1px;
  margin-bottom: 0;
}
.shop_table.cart {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 16px;
  margin-bottom: 2.2rem;
  background: transparent;
}
.shop_table th, .shop_table td {
  /* padding: 17px 12px;
  text-align: center;
  background: #f9f9fc;
  border-radius: 15px;
  font-size: 1.08rem; */
}
.shop_table th {
  /* color: #852c87;
  font-size: 1.18rem;
  font-weight: 800;
  background: #f3ecf9;
  letter-spacing: 0.2px;
  border-radius: 15px; */
}
.tiered-pricing--active{
  box-shadow: none !important;
}
.tiered-pricing--active td {
	color: unset !important;
	transition: all .3s ease-in-out;
}
.tiered-pricing--active td .amount {
	color: unset !important;
}
.woocommerce-cart-form__cart-item td {
  vertical-align: middle;
  background: #fff;
  box-shadow: 0 1px 8px #e7307b09;
  border-radius: 15px;
}
.product-thumbnail img {
  width: 72px;
  height: auto;
  border-radius: 11px;
  border: 2px solid #f1f1f1;
}
.product-name a, .product-sku {
  color: #3e3e3d;
  font-weight: 700;
  text-decoration: none;
  font-size: 1.03rem;
}
.product-sku {
  font-family: monospace;
  color: #b54f9e;
  font-size: 1.02rem;
}
.product-price, .product-subtotal {
  color: #e7307b;
  font-weight: 800;
  font-size: 1.18rem;
}
.product-quantity input {
  width: 68px;
  border-radius: 10px;
  border: 1.2px solid #e5e5ea;
  text-align: center;
  background: #faf8fc;
  font-size: 1.07rem;
  padding: 10px 0;
}
.product-remove a.remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fee;
  border-radius: 50%;
  width: 40px; height: 40px;
  transition: background 0.17s;
}
.product-remove a.remove:hover {
  background: #e7307b20;
}
.custom-trash svg, .custom-trash img {
  width: 26px; height: 26px; margin: 0 auto;
}
.cart-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin-top: 18px;
}
.coupon {
  display: flex;
  align-items: center;
  gap: 7px;
}
.coupon label {
  font-weight: 700;
  color: #852c87;
  margin-right: 5px;
}
.coupon input[type="text"] {
  padding: 9px 15px;
  border-radius: 10px;
  border: 1.2px solid #e5e5ea;
  background: #f9f9fc;
  font-size: 1.05rem;
}
.coupon .button {
  background: #852c87;
  color: #fff;
  font-weight: 700;
  border-radius: 13px;
  padding: 11px 28px;
  border: none;
  cursor: pointer;
  transition: background 0.15s;
}
.coupon .button:hover {
  background: #e7307b;
}
.update-cart.button {
  background: linear-gradient(92deg,#e7307b 40%,#852c87 100%);
  color: #fff;
  font-weight: 800;
  border-radius: 13px;
  padding: 12px 29px;
  border: none;
  cursor: pointer;
  margin-left: 14px;
  transition: background 0.18s;
}
.update-cart.button:hover {
  background: linear-gradient(92deg,#852c87 40%,#e7307b 100%);
}
.proceed-to-checkout {
  text-align: center !important;
}
.proceed-to-checkout .checkout-button {
  max-width: 270px;
  display: inline-block;
  margin: 27px auto 0 auto !important;
  font-size: 1.11rem !important;
  padding: 14px 0 !important;
  border-radius: 16px !important;
  font-weight: 800 !important;
  background: linear-gradient(92deg, #e7307b 40%, #852c87 100%) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px #e7307b16;
  transition: background 0.15s, transform 0.10s;
  letter-spacing: 0.2px;
  text-align: center;
}
.proceed-to-checkout .checkout-button:hover {
  background: linear-gradient(92deg,#852c87 40%,#e7307b 100%) !important;
  transform: scale(1.04);
}
.cart-collaterals {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin-top: 0 !important;
}
.cart-empty {
  color: #e7307b !important;
  font-weight: 700;
  background: #fff7fa !important;
  border-radius: 14px;
  border: 1.2px solid #fbe4ec;
  margin: 18px 0;
  padding: 1rem 0;
}
.return-to-shop a {
  background: #e7307b !important;
  color: #fff !important;
  border-radius: 14px;
  padding: 14px 35px;
  font-weight: 800;
  text-decoration: none !important;
  font-size: 1.13rem;
  transition: background 0.16s;
}
.return-to-shop a:hover {
  background: #852c87 !important;
}
@media (max-width: 1150px) {
  .custom-cart-bg { max-width: 98vw; }
}
@media (max-width: 700px) {
  .custom-cart-bg { max-width: 99vw; padding: 1rem 2px; }
  .shop_table th, .shop_table td { font-size: 15px; padding: 9px 2px;}
  .cart-title { font-size: 1.2rem;}
}


/* ====== FORMULARIOS USER ====== */
.container-login, .container-registro, .container-cuenta, .container-reset {
  max-width: 500px;
  margin: 0 auto;
  padding: 40px 20px;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0,0,0,0.05);
  font-family: 'Montserrat', 'Inter', sans-serif;
  color: #2C2E30;
}

.container-login h2,
.container-registro h2,
.container-cuenta h2,
.container-reset h2 {
  text-align: center;
  color: #2C2E30;
}


.tiered-pricing-block {
  cursor: pointer;
}

/* Forzar Woo Product Filters block a "inline" también en móvil */
@media (max-width: 600px) {
  /* mata el botón "Filtrar productos" del bloque */
  .wp-block-woocommerce-product-filters .wc-block-product-filters__open-overlay {
    display: none !important;
  }

  /* convierte el overlay en contenido normal */
  .wp-block-woocommerce-product-filters .wc-block-product-filters__overlay,
  .wp-block-woocommerce-product-filters .wc-block-product-filters__overlay-wrapper,
  .wp-block-woocommerce-product-filters .wc-block-product-filters__overlay-dialog {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  /* saca header/footer del “modal” */
  .wp-block-woocommerce-product-filters .wc-block-product-filters__overlay-header,
  .wp-block-woocommerce-product-filters .wc-block-product-filters__overlay-footer {
    display: none !important;
  }

  /* que el contenido no quede “scrolleable” como modal */
  .wp-block-woocommerce-product-filters .wc-block-product-filters__overlay-content {
    overflow: visible !important;
    max-height: none !important;
    padding: 0 !important;
  }
}

@media (max-width: 925px) {
  .wp-block-woocommerce-checkout.wc-block-checkout{
    padding-left: 4%;
    padding-right: 3%;
  }
}
.ra-card > a.added_to_cart.wc-forward{
 display: none!important;
}
@media (max-width: 639px) {
  .cart-count{
    top: 21px !important;
    right: 20px !important;
    display: none !important;
  }
}

/**
* fix overlay borrar filtros
*/
/* Cuando Woo marca el estado abierto, recién ahí habilitamos interacción */
.wc-block-product-filters__overlay{
  pointer-events: auto !important;
}
