.elementor-366 .elementor-element.elementor-element-facb0b2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for shortcode, class: .elementor-element-88bfd39 *//* EPOPEIA - Woo Cart Page (RUBY RED LUX)
   Para widget de Shortcode com [woocommerce_cart]
*/

/* ===== Área geral do carrinho ===== */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce{
  position: relative;
  padding: 26px !important;
  border-radius: 18px !important;
  overflow: hidden;

  background: linear-gradient(135deg,
    rgba(70, 0, 15, 0.98) 0%,
    rgba(10, 0, 8, 0.99) 45%,
    rgba(55, 0, 12, 0.98) 100%
  ) !important;

  border: 1px solid rgba(220, 0, 30, 1) !important;

  box-shadow:
    0 0 0 1px rgba(255, 0, 35, 0.45),
    0 0 28px rgba(255, 0, 30, 0.55),
    0 20px 65px rgba(0, 0, 0, 0.85) !important;

  color: rgba(255,255,255,0.92) !important;
}

/* Halo */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce::before{
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 22px;
  pointer-events: none;

  background: radial-gradient(circle at 20% 10%,
    rgba(255, 0, 30, 0.55),
    rgba(255, 0, 30, 0.18) 55%,
    rgba(200, 0, 20, 0.40)
  );

  filter: blur(16px);
  opacity: 1;
  z-index: 0;
}

.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce > *{
  position: relative;
  z-index: 1;
}

/* Tipografia */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce p,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce span,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce div,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce td,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce th,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce small,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce strong{
  color: rgba(255,255,255,0.92) !important;
}

.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce h1,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce h2,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce h3,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce h4{
  color: #ffffff !important;
  letter-spacing: .3px;
}

/* Links */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce a{
  color: rgba(255,160,170,0.95) !important;
  text-decoration: none !important;
}
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce a:hover{
  color: rgba(255,220,220,1) !important;
}

/* ===== Tabela do carrinho ===== */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table{
  border: 0 !important;
  background: transparent !important;
  border-collapse: separate !important;
  border-spacing: 0 12px !important;
  margin: 0 0 18px !important;
}

.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table thead th{
  border: 0 !important;
  color: rgba(255,255,255,0.90) !important;
  font-weight: 800 !important;
  letter-spacing: .4px;
  padding: 10px 10px !important;
}

/* Linhas em cards */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table tbody tr{
  background: linear-gradient(180deg,
    rgba(12, 0, 6, 0.96),
    rgba(25, 0, 8, 0.92)
  ) !important;

  border: 1px solid rgba(255, 0, 30, 0.30) !important;
  box-shadow: 0 14px 35px rgba(0,0,0,0.55) !important;
}

.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table tbody td{
  border: 0 !important;
  padding: 14px 12px !important;
  vertical-align: middle !important;
}

/* Bordas arredondadas na linha */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table tbody tr td:first-child{
  border-top-left-radius: 14px !important;
  border-bottom-left-radius: 14px !important;
}
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table tbody tr td:last-child{
  border-top-right-radius: 14px !important;
  border-bottom-right-radius: 14px !important;
}

/* Thumb do produto */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table .product-thumbnail img{
  border-radius: 12px !important;
  border: 1px solid rgba(255,0,30,.25) !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.55) !important;
}

/* Nome do produto */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table .product-name a{
  color: rgba(255,255,255,0.95) !important;
  font-weight: 800 !important;
}
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table .product-name a:hover{
  color: rgba(255,220,220,1) !important;
}

/* Remover item (x) */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce a.remove{
  color: rgba(255, 90, 110, 1) !important;
  opacity: 1 !important;
  transition: all .15s ease;
}
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce a.remove:hover{
  color: rgba(255, 0, 30, 1) !important;
  filter: brightness(1.08);
}

/* ===== Quantidade ===== */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .quantity .qty{
  width: 90px !important;
  border-radius: 14px !important;
  padding: 10px 12px !important;

  color: #fff !important;
  background: linear-gradient(180deg, rgba(12,0,6,.98), rgba(25,0,8,.95)) !important;
  border: 1px solid rgba(255,0,30,.55) !important;

  box-shadow: 0 10px 30px rgba(0,0,0,.55) !important;
}

/* ===== Cupom e ações ===== */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .coupon{
  display: flex !important;
  gap: 10px;
  flex-wrap: wrap;
}

.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .coupon input#coupon_code{
  min-width: 220px;
  border-radius: 14px !important;
  padding: 12px 14px !important;

  color: #fff !important;
  background: linear-gradient(180deg, rgba(12,0,6,.98), rgba(25,0,8,.95)) !important;
  border: 1px solid rgba(255,0,30,.55) !important;

  box-shadow: 0 10px 30px rgba(0,0,0,.55) !important;
}

/* ===== Totais do carrinho (card) ===== */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .cart-collaterals .cart_totals{
  background: rgba(12,0,6,.45) !important;
  border: 1px solid rgba(255,0,30,.25) !important;
  border-radius: 16px !important;
  padding: 18px !important;

  box-shadow: 0 14px 40px rgba(0,0,0,.60) !important;
}

.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .cart_totals h2{
  color: #fff !important;
  margin-top: 0 !important;
}

/* Totais - tabela interna */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .cart_totals table{
  border: 0 !important;
  background: transparent !important;
}
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .cart_totals th,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .cart_totals td{
  border: 0 !important;
  padding: 10px 0 !important;
}

/* ===== Botões (Update cart / Apply coupon / Checkout) ===== */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce a.button,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce button,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce input[type="submit"],
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce button.button,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .button{
  border: 0 !important;
  border-radius: 16px !important;
  padding: 12px 16px !important;

  color: #fff !important;
  font-weight: 800 !important;
  letter-spacing: 1.1px;
  text-transform: uppercase;

  background: linear-gradient(135deg, rgba(255,0,20,1), rgba(180,0,20,1)) !important;

  box-shadow:
    0 0 30px rgba(255,0,30,.75),
    0 20px 60px rgba(0,0,0,.90) !important;

  transition: all .15s ease;
}

/* Botões secundários mais discretos */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce button[name="update_cart"],
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce button[name="apply_coupon"],
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .coupon .button{
  background: linear-gradient(180deg, rgba(12,0,6,.98), rgba(25,0,8,.95)) !important;
  border: 1px solid rgba(255,0,30,.45) !important;
  box-shadow: 0 12px 35px rgba(0,0,0,.60) !important;
}

.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .button:hover,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce a.button:hover,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce button:hover,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce input[type="submit"]:hover{
  filter: brightness(1.12);
  transform: translateY(-2px);
  box-shadow:
    0 0 40px rgba(255,0,30,.95),
    0 24px 70px rgba(0,0,0,.95) !important;
}

.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .button:active{
  transform: translateY(0);
}

/* ===== Mensagens WooCommerce (avisos/erros) ===== */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce-info,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce-message,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce-error{
  position: relative !important;
  background: linear-gradient(180deg, rgba(12,0,6,0.98), rgba(25,0,8,0.95)) !important;
  border: 1px solid rgba(255,0,30,0.55) !important;
  border-radius: 14px !important;
  color: rgba(255,255,255,0.92) !important;

  padding: 32px 18px 16px 42px !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.02),
    0 12px 35px rgba(0,0,0,0.65) !important;
}

/* Ícone acima (top-left) */
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce-info::before,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce-message::before,
.elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce-error::before{
  position: absolute !important;
  top: 10px;
  left: 16px;
  font-size: 18px !important;
  color: rgba(255,0,30,1) !important;
}

/* ===== Responsivo ===== */
@media (max-width: 767px){
  .elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce{
    padding: 18px !important;
  }

  .elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table thead{
    display: none;
  }

  .elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table tbody tr{
    display: block;
    padding: 10px 10px !important;
  }

  .elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce table.shop_table tbody td{
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 10px !important;
  }

  .elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .coupon{
    flex-direction: column;
  }

  .elementor-366 .elementor-element.elementor-element-88bfd39 .woocommerce .quantity .qty{
    width: 110px !important;
  }
}/* End custom CSS */