/**********************************************
 * Arquivo da Fé — Checkout (Fluid Checkout)
 * Look & feel: limpo, leve e premium
 **********************************************/

/* ===== Escopo e tokens ===== */
body.woocommerce-checkout {
  --ink: #2d221b;            /* texto principal */
  --ink-70: #2d221bb3;       /* texto secundário */
  --paper: #ffffff;          /* cartões */
  --bg: #faf7f1;             /* fundo */
  --line: #e9e2d6;           /* bordas suaves */
  --line-2: #efe7da;         /* bordas pontuais */
  --brand: #c7a24a;          /* dourado AF */
  --brand-600: #b18c3f;
  --success: #0ea37a;
  --danger: #d63b3b;
  --radius: 14px;            /* raio padrão */
  --shadow: 0 10px 24px rgba(0,0,0,.06); /* sombra sutil */
  --pad-card: 18px;          /* padding cartões */
  --pad-field: 12px;         /* padding campos */
  --fw-strong: 700;
  background: var(--bg);
  color: var(--ink);
  font-family: Poppins, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

/* Cursor dos inputs com a cor da marca (escopado) */
body.woocommerce-checkout * { caret-color: var(--brand); }

/* ===== Contêiner e grid ===== */
body.woocommerce-checkout .woocommerce .checkout,
body.woocommerce-checkout .wc-block-checkout__container {
  max-width: 1120px;
  margin: 40px auto;
  padding: 0 18px;
}

body.woocommerce-checkout form.checkout{
  display: grid;
  grid-template-columns: 1.35fr .9fr;
  gap: 28px;
}
@media (max-width: 980px){
  body.woocommerce-checkout form.checkout{ grid-template-columns: 1fr; }
}

/* ===== Cartões/base ===== */
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #payment,
body.woocommerce-checkout .wc-block-components-panel,
body.woocommerce-checkout .wc-block-components-totals-wrapper,
body.woocommerce-checkout .fc-card,
body.woocommerce-checkout .fc-order-summary {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

/* Espaçamentos internos coerentes */
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout #payment .payment_methods,
body.woocommerce-checkout .fc-card__section,
body.woocommerce-checkout .fc-order-review__section {
  padding: var(--pad-card);
}

/* Títulos/seções */
body.woocommerce-checkout .fc-section-title,
body.woocommerce-checkout .fc-order-review__section-title,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .fc-sidebar__title,
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
  font-weight: var(--fw-strong);
  letter-spacing: .2px;
  color: var(--ink);
}

/* ===== Campos ===== */
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .wc-block-components-text-input input {
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: var(--pad-field) calc(var(--pad-field) + 2px);
  font-size: 15px;
  background: #fff;
  transition: box-shadow .2s ease, border-color .2s ease, background .2s;
}

body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout .wc-block-components-text-input input:focus{
  border-color: var(--brand);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 20%, transparent);
  outline: none;
}

/* Rótulos */
body.woocommerce-checkout .woocommerce-billing-fields label,
body.woocommerce-checkout .woocommerce-shipping-fields label,
body.woocommerce-checkout .fc-label {
  color: #4a3a30;
  font-weight: 600;
}

/* E-mail travado: visual neutro */
body.woocommerce-checkout #billing_email[readonly]{
  background: #f6f3ec;
  color: #6b5a50;
  border-color: var(--line);
}
body.woocommerce-checkout #billing_email[readonly]:focus{ box-shadow:none; }

/* ===== Cupom ===== */
body.woocommerce-checkout .woocommerce-form-coupon,
body.woocommerce-checkout .wc-block-components-discount-code{
  background: #fffef9;
  border: 1px dashed var(--line-2);
  border-radius: 12px;
  padding: 12px 14px;
}

/* ===== Tabela de resumo ===== */
body.woocommerce-checkout #order_review .product-name{ font-weight: 600; color: var(--ink); }
body.woocommerce-checkout #order_review .product-total,
body.woocommerce-checkout #order_review tfoot th,
body.woocommerce-checkout #order_review tfoot td{ text-align: right; }

body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td{
  background: #f6f1e6;
  color: #3c2a22;
  font-size: 16px;
  font-weight: 800;
  text-transform: uppercase;
}

/* Totais recorrentes (Subscriptions) */
body.woocommerce-checkout #order_review .recurring-totals,
body.woocommerce-checkout #order_review .order-recurring-totals{
  background: #fffdf7;
}
body.woocommerce-checkout .wcs-first-renewal,
body.woocommerce-checkout .subscription-first-renewal,
body.woocommerce-checkout .first-payment-date{
  display:block;
  padding-top:6px;
  color: var(--ink-70);
  font-size: 13.5px;
  text-align:left;
}

/* Resumo fixo no desktop */
@media (min-width: 981px){
  body.woocommerce-checkout #order_review{ position: sticky; top: 20px; }
}

/* ===== Pagamento / Stripe ===== */
body.woocommerce-checkout #payment{ border-top: none; }
body.woocommerce-checkout #payment .payment_methods{
  background:#fff;
  border:1px solid var(--line);
  border-radius: 12px;
  padding: 16px;
}
body.woocommerce-checkout .wc-stripe-elements-field{
  border:1px dashed var(--line-2);
  border-radius:10px;
  padding:12px 14px;
}

/* ===== Botões ===== */
body.woocommerce-checkout button,
body.woocommerce-checkout .button,
body.woocommerce-checkout .woocommerce-button,
body.woocommerce-checkout .wc-block-components-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button{
  background: var(--brand);
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 14px 20px;
  font-weight: 700;
  letter-spacing: .2px;
  font-size: 16px;
  box-shadow: 0 8px 18px rgba(199,162,74,.18);
  transition: transform .15s ease, box-shadow .2s ease, filter .2s;
}

body.woocommerce-checkout button:hover,
body.woocommerce-checkout .woocommerce-button:hover,
body.woocommerce-checkout .wc-block-components-button:hover{
  background: var(--brand-600);
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(199,162,74,.25);
}

/* Botão principal de finalizar */
body.woocommerce-checkout #place_order,
body.woocommerce-checkout .fc-place-order-button .button,
body.woocommerce-checkout .fc-place-order-button button{
  background: var(--brand);
  font-weight: 800;
}
body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout .fc-place-order-button .button:hover{
  background: var(--brand-600);
}

/* Pagamentos rápidos */
body.woocommerce-checkout #wc-stripe-payment-request-wrapper{ margin: 16px 0; }
body.woocommerce-checkout #wc-stripe-payment-request-button-separator{ color: var(--ink-70); }

/* ===== Mensagens ===== */
body.woocommerce-checkout .woocommerce-error{ border-left: 4px solid var(--danger); }
body.woocommerce-checkout .woocommerce-message{ border-left: 4px solid var(--success); }

/* ===== Fluid Checkout — polimento ===== */

/* Oculta barra de progresso (limpa header) */
body.woocommerce-checkout .fc-progress-bar,
body.woocommerce-checkout .fc-progress-bar__container,
body.woocommerce-checkout .fc-checkout-header__progress{ display:none; }

/* Some com bloco de faturamento/resumos que você não usa */
body.woocommerce-checkout .fc-contact-step__billing-address,
body.woocommerce-checkout .fc-checkout-contact__billing-address,
body.woocommerce-checkout .fc-billing-address__summary,
body.woocommerce-checkout .fc-contact-summary--billing,
body.woocommerce-checkout .fc-billing-address-review,
body.woocommerce-checkout .fc-billing-address,
body.woocommerce-checkout .fc-order-summary__billing-address{ display:none; }

/* Oculta substeps iniciais (contact/billing) — você já pula direto ao pagamento */
body.woocommerce-checkout section[data-substep-id="contact_information"],
body.woocommerce-checkout section[data-substep-id="billing_address"]{ display:none; }

/* Títulos dos steps mais compactos */
body.woocommerce-checkout .fc-step__title{
  font-size: 16px;
  font-weight: 700;
  color: var(--ink);
}

/* Reduz margens verticais exageradas */
body.woocommerce-checkout .fc-step,
body.woocommerce-checkout .fc-card{ margin-bottom: 18px; }

/* Links discretos */
body.woocommerce-checkout a{
  color: #5a473a;
  text-underline-offset: 2px;
}
body.woocommerce-checkout a:hover{ color: #3f3127; }

/* ===== Fim ===== */


/* 1) Cards mais elegantes e coesos */
body.woocommerce-checkout .fc-card,
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #payment,
body.woocommerce-checkout .fc-order-summary {
  border-radius: 14px !important;
  border: 1px solid var(--line) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.06) !important;
  overflow: hidden; /* remove cantos "dentes" de elementos internos */
}

/* 2) Step header compacto (remove “peso” visual do “MEU CONTATO”) */
body.woocommerce-checkout .fc-step__header {
  padding: 14px 16px !important;
  background: #fff !important;
  border-bottom: 1px solid var(--line) !important;
}
body.woocommerce-checkout .fc-step__title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
}

/* 3) Pagamento – bloco do gateway com borda e respiro melhores */
body.woocommerce-checkout #payment .payment_methods {
  border-radius: 12px !important;
  border: 1px solid var(--line) !important;
  padding: 16px !important;
}
body.woocommerce-checkout .wc_payment_method .payment_box {
  background: #fffef9 !important;
  border: 1px dashed var(--line-2) !important;
  border-radius: 10px !important;
  padding: 14px !important;
}

/* 4) Coupon discreto e alinhado */
body.woocommerce-checkout .woocommerce-form-coupon {
  margin: 8px 0 14px !important;
  background: #fffef9 !important;
  border: 1px dashed var(--line-2) !important;
  border-radius: 10px !important;
}

/* 5) Tabela de resumo menos “gritada” */
body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td {
  background: #f7f2e8 !important;
  color: #3c2a22 !important;
  font-size: 15px !important;
  letter-spacing: .2px !important;
  text-transform: none !important; /* tira CAPS */
  font-weight: 800 !important;
}

/* 6) Inputs e radios “suaves” */
body.woocommerce-checkout input[type="text"],
body.woocommerce-checkout input[type="email"],
body.woocommerce-checkout input[type="tel"],
body.woocommerce-checkout select {
  border: 1px solid var(--line) !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
}
body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus {
  border-color: var(--brand) !important;
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 20%, transparent) !important;
}

/* 7) Botões com elevação sutil e consistência */
body.woocommerce-checkout button,
body.woocommerce-checkout .button {
  background: var(--brand) !important;
  border-radius: 12px !important;
  padding: 14px 20px !important;
  font-weight: 700 !important;
  box-shadow: 0 8px 18px rgba(199,162,74,.18) !important;
}
body.woocommerce-checkout button:hover,
body.woocommerce-checkout .button:hover {
  background: var(--brand-600) !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(199,162,74,.25) !important;
}
body.woocommerce-checkout #place_order { font-weight: 800 !important; }

/* 8) Esconder subpassos que você não usa (sem pular lógica) */
body.woocommerce-checkout section[data-substep-id="contact_information"],
body.woocommerce-checkout section[data-substep-id="billing_address"]{
  display: none !important;
}

/* 9) E-mail bloqueado com visual neutro */
body.woocommerce-checkout #billing_email[readonly]{
  background: #f6f3ec !important;
  color: #6b5a50 !important;
  border-color: var(--line) !important;
}

/* ====== Remover sombra interna do resumo do pedido ====== */

/* Elimina qualquer sombra inset aplicada pelo Fluid Checkout */
body.woocommerce-checkout .fc-order-summary,
body.woocommerce-checkout .fc-card--frame,
body.woocommerce-checkout .fc-panel--frame,
body.woocommerce-checkout #order_review {
  box-shadow: none !important;
  filter: none !important;
  background-clip: padding-box !important;
  border: 1px solid var(--line) !important;  /* mantém só o contorno externo */
  border-radius: 14px !important;
}

/* Remove pseudo-elementos ::before usados para criar bordas internas */
body.woocommerce-checkout .fc-order-summary::before,
body.woocommerce-checkout .fc-card--frame::before,
body.woocommerce-checkout .fc-panel--frame::before {
  content: none !important;
  display: none !important;
}

/* Garante que não haja sombreamento interno residual */
body.woocommerce-checkout .fc-order-summary *,
body.woocommerce-checkout #order_review * {
  box-shadow: none !important;
  background-image: none !important;
}

a.fc-checkout-order-review__header-link.fc-checkout-order-review__edit-cart {
  display: none !important;
}

.fc-step__substep-edit[aria-label^="Alterar"] {
  display: none !important;
}

:root{
  --bg:#faf8f4;
  --paper:#ffffff;
  --line:#ede6d8;
  --ink:#2d221b;
  --muted:#6e5b4a;
  --gold:#c7a24a;
  --gold-700:#b48c3d;
  --brown:#5a3a2f;
  --brown-700:#412a22;
  --shadow:0 8px 28px rgba(45,34,27,.08);
}
body.woocommerce-checkout{ background:var(--bg)!important; color:var(--ink); }


#customer_details, #order_review, .fc-order-summary{
  background:var(--paper)!important;
  border:1px solid var(--line)!important;
  border-radius:20px!important;
  box-shadow:var(--shadow)!important;
  padding:22px 26px!important;
}

/* separadores internos */
.woocommerce-checkout hr, .fc-section__divider{
  border:none!important;
  height:1px!important;
  background:var(--line)!important;
  margin:18px 0!important;
}

#payment, .wc_payment_methods{
  border:1px solid var(--line)!important;
  border-radius:16px!important;
  background:#fff!important;
  padding:20px 22px!important;
}
.wc_payment_methods label{
  font-weight:600!important;
  color:var(--brown)!important;
}

/* Stripe field */
.wc-stripe-elements-field{
  border:1px solid var(--line)!important;
  border-radius:12px!important;
  padding:12px 14px!important;
  background:#fff!important;
  transition:border-color .2s,box-shadow .2s;
}
.wc-stripe-elements-field:focus-within{
  border-color:var(--gold)!important;
  box-shadow:0 0 0 3px #c7a24a2a!important;
}

#place_order, .fc-place-order-button .button{
  background:var(--gold)!important;
  color:#fff!important;
  font-weight:800!important;
  font-size:16px!important;
  padding:18px 24px!important;
  border:none!important;
  border-radius:14px!important;
  width:100%!important;
  box-shadow:0 10px 22px rgba(199,162,74,.3)!important;
  transition:all .2s ease-in-out;
}
#place_order:hover{
  background:var(--gold-700)!important;
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(199,162,74,.35)!important;
}

input:focus, select:focus, textarea:focus{
  outline:none!important;
  border-color:var(--gold)!important;
  box-shadow:0 0 0 3px #c7a24a33!important;
}
a:hover{ color:var(--gold-700)!important; }

/* títulos de seções */
.woocommerce-checkout h3,
.fc-section__title, .fc-step__title, .wc-block-components-title{
  color:var(--brown) !important;
  font-weight:800 !important;
  letter-spacing:.2px;
}

/* labels mais discretos; foco no conteúdo */
.woocommerce form .form-row label,
.wc-block-components-text-input label{
  color:var(--brown-700); font-weight:600;
}

/* largura confortável */
.woocommerce .checkout, .wc-block-checkout__container{
  max-width: 1120px; margin: 32px auto; padding: 0 18px;
}

/* grid 2 colunas (checkout clássico) */
form.checkout{ display:grid; grid-template-columns: 1.35fr .95fr; gap: 28px; }
@media (max-width: 980px){ form.checkout{ grid-template-columns: 1fr; }}

/* cartões */
#customer_details, #order_review, #payment,
.fc-order-summary, .fc-order-review,
.wc-block-components-sidebar, .wc-block-checkout__container{
  background:var(--paper) !important;
  border:1px solid var(--line) !important;
  border-radius:18px !important;
  box-shadow:0 10px 30px rgba(0,0,0,.06) !important;
}



/* --- RESETA o empilhamento do bloco de pagamento --- */
#payment,
.woocommerce-checkout-payment,
.wc_payment_methods,
.payment_box {
  position: static !important;
  z-index: auto !important;
  overflow: visible !important; /* pode ser visible; não corta o dropdown */
}

/* Order summary e coluna da direita garantem prioridade sobre o fluxo normal */
#order_review,
.fc-order-summary {
  position: relative !important;
  z-index: 2 !important;
}

/* --- O dropdown (Select2/SelectWoo) fica alto SOMENTE quando aberto --- */
.select2-container { position: static !important; z-index: auto !important; }
.select2-container--open { position: relative !important; z-index: 9999 !important; }
.select2-container--open .select2-dropdown {
  top: 100% !important;
  bottom: auto !important;
  margin-top: 6px !important;
  z-index: 10000 !important;
}

/* Altura do painel de opções para caber na tela */
.select2-results > .select2-results__options { max-height: clamp(220px, 45vh, 340px) !important; }

/* --- Garante que os elementos do Stripe não criem novo "topo" de pilha --- */
#wc-stripe-payment-element,
#wc-stripe-credit-card-payment-element,
.wc-stripe-elements-field {
  position: static !important;
  z-index: auto !important;
}

/* Alinha o texto "Primeira renovação" sempre à direita */
.wcs-recurring-totals td,
.woocommerce-checkout-review-order-table td {
  position: relative;
}

.wcs-recurring-totals td small,
.woocommerce-checkout-review-order-table td small {
  display: block;
  text-align: right !important;
  font-size: 13px !important;
  color: #6b5a40 !important;
  margin-top: 4px !important;
}

/* ===== Botão "Finalizar pedido" ===== */

/* Estilo base (sem interferir no resto) */
#place_order {
  font-family: Poppins, system-ui, sans-serif;
  font-weight: 600;
  letter-spacing: .5px;
  border: none;
  border-radius: 12px;
  background-color: #c7a24a;
  color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
  transition: background .25s ease, transform .15s ease;
}
#place_order:hover {
  background-color: #b89240;
  transform: translateY(-1px);
}

/* Deixa em CAPS LOCK apenas para produtos comuns (sem assinatura) */
body:not(.has-subscription) #place_order {
  text-transform: uppercase !important;
}

/* Mantém normal (não caps) quando há assinatura */
body.has-subscription #place_order {
  text-transform: none !important;
}

/* ==========================================================
 * ADF – EXCEÇÃO VISUAL PARA CAMPOS DE BOLETO (STRIPE)
 * ========================================================== */

/* Garante que o container do boleto SEMPRE possa aparecer */
#adf-boleto-fields{
  display:none; /* JS controla */
}

/* Quando boleto estiver ativo, forçamos visibilidade */
body.woocommerce-checkout.adf-boleto-active 
#adf-boleto-fields{
  display:block !important;
}

/* Remove qualquer ocultação herdada do Fluid Checkout */
body.woocommerce-checkout.adf-boleto-active 
.fc-billing-address,
body.woocommerce-checkout.adf-boleto-active
section[data-substep-id="billing_address"],
body.woocommerce-checkout.adf-boleto-active
.fc-contact-step__billing-address{
  display:block !important;
}

/* Aproxima o botão do topo do checkout */
.adf-checkout-back{
  margin-top: -18px;   /* ajuste fino */
  margin-bottom: 12px;
}


.adf-hidden {
  display: none !important;
}
