/*
Theme Name: Hello Biz Child
Template: hello-biz
Version: 1.2.0
*/

/* =========================
   PURCHASE CARD
   ========================= */

.purchase-card{
  background:#f8fafc;
  border-radius:20px;
  padding:28px;
  box-shadow:0 10px 34px rgba(0,0,0,0.08);
  max-width:520px;
  width:100%;
  box-sizing:border-box;
}

/* =========================
   PRICE (HIDDEN BY DEFAULT)
   ========================= */

.purchase-card .elementor-widget-woocommerce-product-price{
  background:none !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 0 14px 0 !important;
  display:none; /* começa escondido */
}

/* Preço */
.purchase-card .price{
  font-size:clamp(28px, 4vw, 38px);
  font-weight:700;
  color:#0a2540;
  line-height:1.1;
}

/* Remove qualquer lixo do Woo */
.purchase-card .price::before,
.purchase-card .price .from,
.purchase-card .price small,
.purchase-card .subscription-details{
  display:none !important;
}

/* Mata preço duplicado */
.purchase-card .woocommerce-variation-price,
.purchase-card .woocommerce-variation-availability{
  display:none !important;
}

/* =========================
   VARIATIONS WHITE BOX
   ========================= */

.purchase-card form.variations_form{
  background:transparent;
  padding:0;
  box-shadow:none;
}

/* A box branca correta */
.purchase-card .variations{
  background:#ffffff;
  border-radius:16px;
  padding:18px;
  box-shadow:0 6px 22px rgba(0,0,0,0.06);
  margin-bottom:14px;
  display:block;
}

/* Neutraliza table layout */
.purchase-card .variations tbody,
.purchase-card .variations tr,
.purchase-card .variations td{
  display:block;
  border:0;
  padding:0;
}

/* Remove labels tipo "One Time Buyer" */
.purchase-card .variations label{
  display:none !important;
}

/* Dropdown elegante */
.purchase-card .variations select{
  width:100%;
  height:56px;
  border-radius:12px;
  border:1px solid #cbd5e1;
  padding:0 18px;
  font-size:18px;
  font-weight:600;
  background:#ffffff;
  color:#0a2540;
}

/* Remove clear */
.purchase-card .reset_variations{
  display:none !important;
}

/* =========================
   QUANTITY
   ========================= */

.purchase-card .e-atc-qty-button-holder{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:12px;
  flex-wrap:wrap;
}

.purchase-card .quantity{
  display:flex;
  align-items:center;
  background:#f1f5f9;
  border-radius:999px;
  padding:6px 8px;
  gap:8px;
}

.purchase-card .quantity input.qty{
  width:44px;
  height:36px;
  border:0;
  background:transparent;
  font-size:16px;
  font-weight:700;
  color:#0a2540;
  text-align:center;
}

.purchase-card .quantity button{
  width:36px !important;
  height:36px !important;
  border-radius:50% !important;
  border:2px solid #1b7f8a !important;
  background:#ffffff !important;
  color:#1b7f8a !important;
  font-size:18px !important;
  font-weight:800;
  cursor:pointer;
}

/* =========================
   ADD TO CART
   ========================= */

.purchase-card .single_add_to_cart_button{
  width:100%;
  height:56px;
  border-radius:999px;
  background:#1b7f8a;
  font-size:17px;
  font-weight:700;
  border:0;
  color:#ffffff;
  cursor:pointer;
}

/* =========================
   MOBILE
   ========================= */

@media (max-width:600px){
  .purchase-card{
    padding:20px;
  }
  .purchase-card .price{
    font-size:30px;
  }
}
/* REMOVE FUNDO CINZA DO DROPDOWN */

/* Wrapper da variação */
.purchase-card .variations,
.purchase-card .variations tr,
.purchase-card .variations td,
.purchase-card .variations .value,
.purchase-card .elementor-field-group{
  background:transparent !important;
}

/* Garante que só o select tenha fundo branco */
.purchase-card .variations select{
  background:#ffffff !important;
}

/* Remove qualquer sombra/borda extra do wrapper */
.purchase-card .variations td,
.purchase-card .variations tr{
  box-shadow:none !important;
  border:0 !important;
}

/* =====================================================
   ELEMENTOR SIDE CART – FIX DEFINITIVO (NO GLITCH)
   ===================================================== */

/* BASE – garante mesmo visual sempre */
.elementor-menu-cart__container,
.elementor-menu-cart__main,
.elementor-menu-cart__footer,
.elementor-menu-cart__header,
.elementor-menu-cart__products,
.elementor-menu-cart__subtotal {
  background: #f3f2ef !important;
}

/* CONTAINER */
.elementor-menu-cart__container {
  width: 360px !important;
  max-width: 360px !important;

  left: auto !important;
  right: 0 !important;

  padding: 0 !important;
  box-shadow: -8px 0 24px rgba(0,0,0,0.12) !important;

  overflow-x: hidden !important;
  overflow-y: auto !important;

  /* remove glitch visual */
  transition: none !important;
}

/* REMOVE ANIMAÇÃO VISUAL DO JS (mas mantém funcional) */
.elementor-menu-cart--shown .elementor-menu-cart__container {
  transition: none !important;
}

/* HEADER */
.elementor-menu-cart__header {
  color: #2A2A2A !important;
  font-size: 16px;
  font-weight: 600;
  padding: 18px 20px;
  border-bottom: 1px solid #d9d9d9;
}

/* BOTÃO FECHAR (X) – cor das linhas */
.elementor-menu-cart__close-button,
.elementor-menu-cart__close-button svg {
  color: #156771 !important;
  fill: #156771 !important;
  opacity: 1 !important;
}

/* PRODUTOS */
.elementor-menu-cart__products {
  padding: 10px 20px;
}

/* ITEM */
.elementor-menu-cart__product {
  display: grid;
  grid-template-columns: 48px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid #d9d9d9;
}

/* IMAGEM */
.elementor-menu-cart__product-image img {
  width: 48px;
  height: 48px;
  border-radius: 6px;
}

/* TEXTO */
.elementor-menu-cart__product-name,
.elementor-menu-cart__product-name a,
.elementor-menu-cart__product-quantity,
.elementor-menu-cart__product-price,
.elementor-menu-cart__subtotal {
  color: #2A2A2A !important;
}

/* DELETE (X DO ITEM) */
.elementor-menu-cart__product-remove,
.elementor-menu-cart__product-remove svg {
  color: #156771 !important;
  fill: #156771 !important;
}

/* SUBTOTAL */
.elementor-menu-cart__subtotal {
  padding: 16px 20px;
  border-top: 1px solid #d9d9d9;
  font-weight: 600;
}

/* FOOTER */
.elementor-menu-cart__footer {
  padding: 0 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* BOTÕES – BASE */
.elementor-menu-cart__footer a {
  font-size: 14px;
  font-weight: 600;
  padding: 12px 0;
  border-radius: 4px;
  text-align: center;
  text-decoration: none !important;
}

/* VIEW CART */
.elementor-menu-cart__footer a:first-child {
  background: #f3f2ef !important;
  color: #2A2A2A !important;
  border: 1px solid #2A2A2A;
}

/* CHECKOUT – TEXTO BRANCO (FIX FINAL) */
.elementor-menu-cart__footer a:last-child,
.elementor-menu-cart__footer a:last-child span,
.elementor-menu-cart__footer a:last-child * {
  background: #156771 !important;
  color: #ffffff !important;
}

/* HOVER */
.elementor-menu-cart__footer a:last-child:hover {
  background: #0f4f4a !important;
}

/* REMOVE SCROLL / BOX FANTASMA */
.elementor-menu-cart__container::-webkit-scrollbar {
  width: 0 !important;
}

.elementor-menu-cart__container {
  scrollbar-width: none;
}

/* MOBILE */
@media (max-width: 480px) {
  .elementor-menu-cart__container {
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* =========================================
   REMOVE WOOCOMMERCE "ADDED TO CART" NOTICE
   ========================================= */

/* Remove banner padrão */
.woocommerce-notices-wrapper,
.woocommerce-message,
.woocommerce-message--success,
body .wc-block-components-notice-banner {
  display: none !important;
}

/* Garante que não fique espaço vazio */
.woocommerce-notices-wrapper:empty {
  display: none !important;
}

/* Segurança extra para temas/Elementor */
body .woocommerce .woocommerce-message {
  display: none !important;
}
//////////////////////////
/* =====================================================
   CART – CLEAN GRID (FINAL)
   ===================================================== */

.woocommerce-cart-form tr.cart_item {
  display: grid !important;
  grid-template-columns:
    32px        /* remove */
    96px        /* thumbnail */
    1.6fr       /* product name */
    140px       /* price + qty */
    140px;      /* subtotal */
  align-items: center;
  column-gap: 24px;
  padding: 24px 0;
  border-bottom: 1px solid #e6eef0;
}

/* REMOVE */
td.product-remove {
  justify-self: center;
}

/* THUMB */
td.product-thumbnail img {
  width: 72px;
  height: 72px;
  object-fit: contain;
}

/* PRODUCT NAME */
td.product-name a {
  color: #2a2a2a;
  font-weight: 600;
  text-decoration: none;
}

/* PRICE + QTY STACK */
td.product-price {
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: #1c7f88;
  font-size: 14px;
}

/* QUANTITY */
td.product-quantity {
  display: flex;
  justify-content: flex-start;
}

/* INPUT */
.quantity input.qty {
  width: 56px;
  height: 36px;
  border-radius: 18px;
  border: 1px solid #1c7f88;
  text-align: center;
  font-weight: 600;
}

/* SUBTOTAL */
td.product-subtotal {
  font-weight: 600;
  color: #0a2540;
  text-align: right;
}
