/* =========================================================
   CART — Magnaverso (WooCommerce cart.php)
   Arquivo: assets/css/cart.css
   Carregado somente no carrinho via inc/codes/cart-enqueue.php (is_cart()).
========================================================= */




@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300;400;500;600;700&display=swap');
/* =========================================================
   UI TUNING (2026-02)
   - Compact spacing
   - Softer, consistent shadow: -4px -4px 4px rgba(0,0,0,.20)
   - Subtle gradients on boxes
   - Modern inputs/buttons (no layout changes)
========================================================= */

:root{
  --mgv-radius-lg: 4px;
  --mgv-radius-md: 4px;
  --mgv-radius-sm: 2px;

  --mgv-shadow-soft: -3px 3px 3px rgba(0,0,0,.10);

  /* caixas claras com leve gradiente (mantém contraste) */
  --mgv-card-bg: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.92) 100%);
  --mgv-card-border: rgba(0,0,0,.10);

  /* botões escuros com contorno claro */
  --mgv-btn-bg: linear-gradient(180deg, rgba(35,35,35,1) 0%, rgba(15,15,15,1) 100%);
  --mgv-btn-border: rgba(255,255,255,.35);
  --mgv-btn-shadow: var(--mgv-shadow-soft);

  --mgv-input-bg: rgba(255,255,255,1);
  --mgv-input-border: rgba(0,0,0,.18);
}

.mgv-card,
.mgv-cart-table,
.woocommerce-cart .cart_totals,
.woocommerce-checkout .mgv-card,
.mgv-ma__nav,
.mgv-ma__content{
  background: var(--mgv-card-bg);
  border: 1px solid var(--mgv-card-border);
  border-radius: var(--mgv-radius-lg);
  box-shadow: var(--mgv-shadow-soft);
}

/* Inputs */
.mgv-input,
.woocommerce form .input-text,
.woocommerce-page form .input-text,
select,
textarea{
  border-radius: var(--mgv-radius-md);
  border: 1px solid var(--mgv-input-border);
  background: var(--mgv-input-bg);
  font-size: 14px;
  line-height: 1.2;
}

.mgv-input:focus,
.woocommerce form .input-text:focus,
select:focus,
textarea:focus{
  outline: none;
  box-shadow: var(--mgv-shadow-soft);
}

/* Botões — compactos, largura "auto" (≈10% a mais que o texto pelo padding) */
.mgv-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
  font-family: "Oswald", sans-serif !important;
  text-transform: uppercase;
  opacity: 1 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  padding: 10px 14px; /* ~10%+ que o texto */
  border-radius: 3px;
  border: 1px solid #54BF74;
  background: #2d7b46;
  color: #fff !important;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: .02em;
  text-decoration: none;
  cursor: pointer;
  box-shadow: var(--mgv-shadow-soft);
 /* transition: filter .15s ease, box-shadow .15s ease, transform .15s ease, border-color .15s ease; */
}

.mgv-btn--ghost{
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(245,245,245,1) 100%);
  border-color: rgba(0,0,0,.18);
  color: rgba(0,0,0,.85);
}

.mgv-btn:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover{
  background: #055D6B;
  color: #99EDFF;
  border-color: rgba(255,255,255,.55);
  box-shadow: var(--mgv-shadow-soft);
}

.mgv-btn:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active{
  transform: translateY(1px);
}


/* Tipografia de títulos (mais “e-commerce”, sem alterar layout) */
.mgv-cart__title,
.woocommerce-products-header__title.page-title,
.mgv-co__section-title,
.mgv-ma-nav__title,
.woocommerce-MyAccount-navigation-link a{
  font-family: 'Oswald', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  letter-spacing: .02em;
}


/* =========================================================
   FIX: menu “baixo demais” SOMENTE no carrinho
   (não mexe nas páginas internas em geral)
========================================================= */
body.woocommerce-cart #sec-header .mgv-header-top{
  height: 142px; /* ajuste fino se necessário */
}

/* =========================================================
   WRAPPER / LARGURA
========================================================= */
.mgv-cart{
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 16px 14px 40px;
}

.mgv-cart__header{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin: 6px 0 12px;
  color:#ffffff;
}

.mgv-cart__title{
  margin: 0;
  font-size: 38px;
  line-height: 1.05;
  font-weight: 800;
}

.mgv-cart__count{
  font-size: 14px;
  opacity: .8;
}

/* =========================================================
   LAYOUT 2 COLUNAS
========================================================= */
.mgv-cart__layout{
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 18px;
  align-items: start;
}

.mgv-cart__items{
  min-width: 0;
}

.mgv-cart__summary{
  position: sticky;
  top: 18px;
  align-self: start;
}

/* Card “genérico” para o resumo (collaterals + totals) */
.mgv-cart__summary .cart_totals,
.mgv-cart__summary .woocommerce-cart-collaterals,
.mgv-cart__summary > .mgv-cart__summary{
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: var(--mgv-radius-lg);
  padding: 22px;
  box-shadow: var(--mgv-shadow-soft);
}

/* evita dupla borda caso existam 2 blocos colaterais */
.mgv-cart__summary .woocommerce-cart-collaterals{
  margin-bottom: 14px;
}

/* =========================================================
   TABELA (DESKTOP)
========================================================= */
.mgv-cart-table{
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: var(--mgv-radius-lg);
  overflow: hidden;
  box-shadow: var(--mgv-shadow-soft);
}

.mgv-cart-table thead th{
  text-align: left;
  font-weight: 800;
  font-size: 13px;
  letter-spacing: .02em;
  padding: 14px 14px;
  border-bottom: 1px solid rgba(0,0,0,.08);
  background: rgba(0,0,0,.02);
}

.mgv-cart-table tbody td{
  padding: 14px;
  border-bottom: 1px solid rgba(0,0,0,.08);
  vertical-align: middle;
}

.mgv-cart-table tbody tr:last-child td{
  border-bottom: none;
}

.mgv-cart-table .product-thumbnail a,
.mgv-cart-table .product-name a{
  text-decoration: none;
}

.mgv-cart-table .product-thumbnail img{
  width: 92px;
  height: 92px;
  object-fit: cover;
  border-radius: 14px;
  display: block;
}

/* remove */
.mgv-remove{
  display: inline-flex;
  width: 34px;
  height: 34px;
  border-radius: var(--mgv-radius-sm);
  align-items: center;
  justify-content: center;
  text-decoration: none;
  line-height: 1;
  font-size: 20px;
  border: 1px solid rgba(0,0,0,.14);
  background: #fff;
}

/* nome + meta */
.mgv-cart-item__name{
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 6px;
}

.mgv-price{
  font-weight: 800;
}

.mgv-subtotal{
  font-weight: 900;
}

/* =========================================================
   QUANTIDADE (wrapper + botões +/-)
========================================================= */
.mgv-qty{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 14px;
  padding: 6px 8px;
  background: #fff;
}

.mgv-qty__btn{
  width: 34px;
  height: 34px;
  border-radius: var(--mgv-radius-md);
  border: 1px solid rgba(0,0,0,.14);
  background: #fff;
  font-weight: 900;
  cursor: pointer;
  line-height: 1;
}

.mgv-qty__field .qty{
  width: 64px !important;
  min-width: 64px;
  text-align: center;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  height: 34px;
  outline: none;
  font-weight: 800;
}

/* remove setinhas do number */
.mgv-qty__field input[type="number"]::-webkit-outer-spin-button,
.mgv-qty__field input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance: none;
  margin: 0;
}
.mgv-qty__field input[type="number"]{
  -moz-appearance: textfield;
}

/* =========================================================
   AÇÕES (cupom + atualizar)
========================================================= */
.mgv-cart-actions{
  padding: 16px 14px !important;
  background: rgba(0,0,0,.02);
}

.mgv-cart-actions .mgv-coupon{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 12px;
}

.mgv-input{
  height: 44px;
  border-radius: var(--mgv-radius-md);
  border: 1px solid rgba(0,0,0,.18);
  padding: 10px 12px;
  background: #fff;
  outline: none;
  min-width: 220px;
}

.mgv-btn{
  height: 44px;
  border-radius: var(--mgv-radius-md);
  padding: 0 14px;
  font-weight: 800;
  cursor: pointer;
}

.mgv-btn--ghost{
  background: #fff;
  border: 1px solid rgba(0,0,0,.18);
}

.mgv-cart-actions > .mgv-btn--ghost{
  margin-top: 6px;
}

/* =========================================================
   CART TOTALS (Woo)
========================================================= */
.woocommerce-cart .cart_totals h2{
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 900;
}

.woocommerce-cart .cart_totals table{
  width: 100%;
  border-collapse: collapse;
}

.woocommerce-cart .cart_totals th,
.woocommerce-cart .cart_totals td{
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,.08);
}

.woocommerce-cart .cart_totals tr:last-child th,
.woocommerce-cart .cart_totals tr:last-child td{
  border-bottom: none;
}

.woocommerce-cart .wc-proceed-to-checkout{
  margin-top: 14px;
      display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: center;
	font-size: 15px !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  width: 400px;
  border-radius: var(--mgv-radius-md);
  padding: 14px 16px;
  font-weight: 900;
  font-family: 'Oswald', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background-image:  linear-gradient(to bottom, #22C71C, #066602);
}

/* =========================================================
   RESPONSIVO
========================================================= */
@media (max-width: 980px){
  .mgv-cart__layout{
    grid-template-columns: 1fr;
  }
  .mgv-cart__summary{
    position: static;
    top: auto;
  }
}

@media (max-width: 640px){
  .mgv-cart{
    padding: 18px 12px 40px;
  }

  .mgv-cart__header{
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .mgv-cart__title{
    font-size: 28px;
  }

  /* tabela vira “cards” no mobile */
  .mgv-cart-table thead{
    display: none;
  }
  .mgv-cart-table,
  .mgv-cart-table tbody,
  .mgv-cart-table tr,
  .mgv-cart-table td{
    display: block;
    width: 100%;
  }

  .mgv-cart-table tbody tr{
    padding: 14px;
    border-bottom: 1px solid rgba(0,0,0,.08);
  }

  .mgv-cart-table tbody td{
    padding: 8px 0;
    border: none;
  }

  .mgv-cart-table .product-thumbnail img{
    width: 96px;
    height: 96px;
  }

  .mgv-cart-actions{
    padding: 14px !important;
  }

  .mgv-input{
    min-width: 0;
    width: 100%;
  }

  .mgv-cart-actions .mgv-coupon{
    width: 100%;
  }

  .mgv-cart-actions .mgv-coupon .mgv-btn{
    width: 100%;
  }
}

/* =========================================================
   FIX LAYOUT: empilhar caixas (produtos em cima, totais embaixo)
   ========================================================= */

/* container do carrinho ocupa toda largura disponível */
.mgv-cart{
  max-width: 100%;
  width: 100%;
}

/* força layout em coluna (sobrescreve qualquer grid anterior) */
.mgv-cart__layout{
  display: flex !important;
  flex-direction: column !important;
  gap: 16px;
  align-items: stretch;
}

/* garante que os blocos ocupem 100% */
.mgv-cart__items,
.mgv-cart__summary{
  width: 100% !important;
  max-width: 100% !important;
}

/* desliga sticky do resumo (pra ele ir pra baixo) */
.mgv-cart__summary{
  position: static !important;
  top: auto !important;
}

/* cards/boxes com a NOVA sombra (seu padrão correto) */
.mgv-cart-table,
.mgv-cart__summary .cart_totals,
.mgv-cart__summary .woocommerce-cart-collaterals{
    box-shadow: var(--mgv-shadow-soft) !important;
}

/* =========================================================
   PATCH (2026-02-28)
   - Remove padding inline do wrapper Nicepage no carrinho
   - Força empilhamento (produtos em cima, totais embaixo) 100% largura
   - Override WooCommerce table.shop_table no carrinho
   - Normaliza desconto Pix/Bolepix injetado com inline style
========================================================= */

/* 1) Nicepage wrapper (div.u-sheet) tem padding inline: style="padding:10px 20px" */
body.woocommerce-cart .u-sheet.u-sheet-1{
  padding: 0 12px !important; /* compacto sem colar no canto */
}

/* 2) Empilhar caixas (se alguma regra antiga ainda tentar grid) */
body.woocommerce-cart .mgv-cart{
  max-width: 90%;
  width: 90%;
}
body.woocommerce-cart .mgv-cart__layout{
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 16px;
}
body.woocommerce-cart .mgv-cart__items,
body.woocommerce-cart .mgv-cart__summary{
  width: 100% !important;
  max-width: 100% !important;
}
body.woocommerce-cart .mgv-cart__summary{
  position: static !important;
  top: auto !important;
}

/* 3) Override do WooCommerce padrão para tabelas (.shop_table) — carrinho */
body.woocommerce-cart .woocommerce table.shop_table{
  width: 100%;
  margin: 0 !important;               /* remove "0 -1px 24px 0" */
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: var(--mgv-radius-lg);
  overflow: hidden;
  background: var(--mgv-card-bg);
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table.shop_table_responsive{
  box-shadow: var(--mgv-shadow-soft) !important;
}

body.woocommerce-cart .woocommerce table.shop_table thead th{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(0,0,0,.08);
}
body.woocommerce-cart .woocommerce table.shop_table td{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(0,0,0,.08);
}
body.woocommerce-cart .woocommerce table.shop_table tr:last-child td{
  border-bottom: 0;
}

/* 4) Desconto Pix/Bolepix no TOTAL às vezes vem com inline style */
body.woocommerce-cart .cart_totals .order-total span[style*="color:#16ed9b"]{
  color: #179662 !important;
  font-weight: 800 !important;
}
body.woocommerce-cart .cart_totals .order-total small[style*="color:#16ed9b"]{
  font-size:17px !important;
  color: #179662 !important;
}


/* =========================================================
   TYPO: Roboto Condensed nos boxes do carrinho (itens + totais)
   - Não altera layout/cores; apenas tipografia
========================================================= */
body.woocommerce-cart .mgv-cart__items,
body.woocommerce-cart .mgv-cart__items *:not(svg):not(path):not(img),
body.woocommerce-cart .mgv-cart__summary,
body.woocommerce-cart .mgv-cart__summary *:not(svg):not(path):not(img){
  font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
  letter-spacing: .01em;
  font-size:19px;
}

/* mantém títulos um pouco mais fortes, com aspecto de e-commerce */
body.woocommerce-cart .mgv-cart__items th,
body.woocommerce-cart .mgv-cart__summary h2,
body.woocommerce-cart .mgv-cart__summary th{
  font-weight: 700 !important;
}
/* =========================================================
   CART EMPTY - OVERRIDE
   ========================================================= */

.woocommerce .wc-empty-cart-message{
  margin: 40px auto 20px;
  text-align: center;
}

.woocommerce .cart-empty.woocommerce-info{
  max-width: 720px;
  margin: 0 auto;
  padding: 20px 30px 20px 30px;
  border: 3px solid #7DFFC5;
  border-radius: 12px;
  background: linear-gradient(to bottom, #19b38d 0%, #085c47 100%);
  color: #ffffff;
  font-family: "Oswald", Arial, sans-serif;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
  box-shadow: -4px 4px 8px rgba(0, 0, 0, 0.28);
}

.woocommerce .cart-empty.woocommerce-info::before{
  display: none !important;
}

.woocommerce .return-to-shop{
  margin: 22px 0 50px;
  text-align: center;
}

.woocommerce .return-to-shop .button.wc-backward {
    display: inline-flex;
	font-family: "Story Script", sans-serif !important;
    align-items: center;
    justify-content: center;
    min-width: 180px;
    min-height: 40px;
    padding: 14px 26px;
    border: 0 !important;
    border-radius: 14px;
    background: #C5E846 !important;
    color: #111111 !important;
    font-size: 1.2rem;
    font-weight: 800;
    line-height: 1;
	letter-spacing:2px;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: -3px 3px 6px rgba(0, 0, 0, 0.18);
    transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.woocommerce .return-to-shop .button.wc-backward:hover,
.woocommerce .return-to-shop .button.wc-backward:focus{
  background: #ffdf1f !important;
  color: #111111 !important;
  transform: translateY(-2px);
  filter: brightness(1.02);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.22);
}

.woocommerce .return-to-shop .button.wc-backward::before {
    /* 1. Essencial: sem content, o pseudo-elemento não existe para o navegador */
    content: ""; 
    
    /* 2. Caminho e comportamento da imagem */
    background-image: url("../imgs/seta_a.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain; /* Faz o SVG caber dentro da área definida */

    /* 3. Tamanho do ícone (ajustável conforme sua necessidade) */
    width: 35px; 
    height: 35px;
    
    /* 4. Alinhamento e Espaçamento */
    display: inline-block;
    vertical-align: middle; /* Alinha o ícone ao centro do texto do botão */
    margin-right: 10px;
    
    /* 5. Reset de ícones antigos (caso o WooCommerce tente colocar a seta padrão) */
    font-family: none !important; 
}

/* Mobile */
@media (max-width: 574px){
  .woocommerce .wc-empty-cart-message{
    margin: 24px auto 16px;
    padding: 0 14px;
  }

  .woocommerce .cart-empty.woocommerce-info{
    padding: 20px 18px;
    border-radius: 14px;
	font-family: "Oswald", Roboto, sans-serif;
    font-size: 1.5rem;
  }

  .woocommerce .return-to-shop{
    margin: 18px 0 36px;
    padding: 0 14px;
  }

  .woocommerce .return-to-shop .button.wc-backward{
    width: 100%;
    max-width: 320px;
    min-height: 48px;
    padding: 12px 18px;
    font-size: 0.95rem;
  }
}

.mgv-paydiscount-price, .mgv-paydiscount-note {
	color:#179662;
}

.mgv-paydiscount-note{
	font-size:15px !important;
}

.woocommerce-cart table.cart img{
	width:45px;
	height:45px;
	border-radius:4px;
}

.woocommerce-error, .woocommerce-info, .woocommerce-message {
    font-family: "Roboto Condensed", "Roboto", Arial, sans-serif !important;
}

.woocommerce .cart .button, .woocommerce .cart input.button {
    font-size:16px !important;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
	width:200px !important;
	font-size: 16px !important;
	margin: 0;
}