/* Checkout do CartFlows com o visual da página de vendas (class-ga-checkout.php): carregado só na etapa de checkout.
   Tudo dentro de #wcf-embed-checkout-form — o ID garante prioridade sobre o estilo do widget no Elementor (que usa
   no máximo dois IDs), por isso as regras de #payment levam três. O fundo da página e o cartão em volta do formulário
   continuam no Elementor. Os campos do cartão são janelas do Mercado Pago e ficam claros: a caixa de pagamento é um
   cartão branco. Os poucos !important vencem regras com !important do CSS adicional do site e do CSS personalizado
   da página no Elementor (cor dos preços e dos links). */
#wcf-embed-checkout-form{
  --ga-ink:#F1F8F9;--ga-text:#C9DEE2;--ga-muted:#97B4BA;
  --ga-field:rgba(0,0,0,.22);--ga-field-line:rgba(255,255,255,.24);--ga-line:rgba(255,255,255,.12);
  --ga-card:rgba(255,255,255,.045);--ga-accent:#5FE3DC;--ga-accent-bg:rgba(95,227,220,.12);
  --ga-cta:#F5B731;--ga-cta-hover:#F8C65A;--ga-cta-ink:#1D1500;--ga-danger:#FF8A80;
  --ga-font:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-family:var(--ga-font);
  color:var(--ga-text);font-size:16px;line-height:1.55;
}
#wcf-embed-checkout-form :where(h3,label,p,span,td,th,a,button,input,textarea,select,strong,li){font-family:var(--ga-font)}

/* Títulos e rótulos */
#wcf-embed-checkout-form .woocommerce h3,#wcf-embed-checkout-form #billing_fields_heading,#wcf-embed-checkout-form #order_review_heading{margin:0 0 16px;padding:0;color:var(--ga-ink);font-family:var(--ga-font);font-size:20px;font-weight:800;line-height:1.3;letter-spacing:-.01em;text-transform:none}
#wcf-embed-checkout-form #order_review_heading{margin-top:30px}
#wcf-embed-checkout-form .woocommerce form .form-row label,#wcf-embed-checkout-form .woocommerce form .form-row label.required_field{color:var(--ga-ink);font-size:14.5px;font-weight:700;line-height:1.4;margin-bottom:6px}
#wcf-embed-checkout-form .woocommerce form .form-row .required{color:var(--ga-accent);text-decoration:none}

/* Campos */
#wcf-embed-checkout-form .woocommerce form .form-row input.input-text,
#wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field input.input-text{
  min-height:52px;padding:12px 16px;border:1px solid var(--ga-field-line);border-radius:14px;background:var(--ga-field);
  color:#fff;font-size:16px;font-weight:500;line-height:1.4;box-shadow:none;outline:none;transition:border-color .15s,box-shadow .15s
}
#wcf-embed-checkout-form .woocommerce form .form-row input.input-text::placeholder,
#wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field input.input-text::placeholder{color:#8FB3B9;opacity:1}
#wcf-embed-checkout-form .woocommerce form .form-row input.input-text:focus,
#wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field input.input-text:focus{border-color:var(--ga-accent);box-shadow:0 0 0 3px rgba(95,227,220,.25)}
#wcf-embed-checkout-form .woocommerce form .form-row input.input-text:-webkit-autofill{-webkit-text-fill-color:#fff;-webkit-box-shadow:0 0 0 1000px #0B3D45 inset;caret-color:#fff}
#wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:var(--ga-danger)}
#wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid label{color:var(--ga-danger)}

/* Lembrete do e-mail do app, sempre visível */
#wcf-embed-checkout-form .ga-email-hint{display:flex;gap:8px;align-items:flex-start;margin-top:10px;padding:10px 12px;border-radius:12px;background:var(--ga-accent-bg);color:#BFF3EF;font-size:13.5px;font-weight:600;line-height:1.45}
#wcf-embed-checkout-form .ga-email-hint::before{content:"i";flex:none;display:grid;place-items:center;width:18px;height:18px;margin-top:1px;border-radius:50%;background:var(--ga-accent);color:#04232A;font-size:12px;font-weight:800;font-style:normal;line-height:1}

/* Resumo do pedido */
#wcf-embed-checkout-form .woocommerce table.shop_table{margin:0;border:0;border-radius:0;background:transparent;border-collapse:separate;border-spacing:0}
#wcf-embed-checkout-form .woocommerce table.shop_table :is(thead,tbody,tfoot,tr){border:0;background:transparent}
#wcf-embed-checkout-form .woocommerce table.shop_table th,#wcf-embed-checkout-form .woocommerce table.shop_table td{padding:14px 0;border:0;border-top:1px solid var(--ga-line);background:transparent;color:var(--ga-text);font-size:15px;font-weight:600;vertical-align:middle}
#wcf-embed-checkout-form .woocommerce table.shop_table thead th{border-top:0;padding-top:0;color:var(--ga-muted);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
#wcf-embed-checkout-form .woocommerce table.shop_table .product-total,#wcf-embed-checkout-form .woocommerce table.shop_table tfoot td{text-align:right}
#wcf-embed-checkout-form .woocommerce table.shop_table td.product-name{color:var(--ga-ink);font-weight:700}
#wcf-embed-checkout-form .woocommerce table.shop_table .product-quantity{color:var(--ga-muted);font-weight:600}
#wcf-embed-checkout-form .woocommerce table.shop_table .woocommerce-Price-amount{color:var(--ga-ink)!important;font-weight:700;white-space:nowrap}
#wcf-embed-checkout-form .woocommerce table.shop_table tr.order-total th,#wcf-embed-checkout-form .woocommerce table.shop_table tr.order-total td{color:var(--ga-ink);font-size:18px;font-weight:800}
#wcf-embed-checkout-form .woocommerce table.shop_table tr.order-total .woocommerce-Price-amount{color:var(--ga-ink);font-size:22px;font-weight:800}
#wcf-embed-checkout-form .wcf-product-image{display:flex;align-items:center;gap:14px}
#wcf-embed-checkout-form .wcf-product-thumbnail{flex:none;width:auto;margin:0}
#wcf-embed-checkout-form .wcf-product-thumbnail img{display:block;width:56px;height:56px;border-radius:14px;object-fit:cover}

/* Cupom: link "Tem um cupom?" e o campo aberto */
#wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field{margin:6px 0 0;padding:14px 0;border:0;border-top:1px solid var(--ga-line);border-bottom:1px solid var(--ga-line)}
#wcf-embed-checkout-form #wcf_optimized_wcf_custom_coupon_field{display:inline-flex;align-items:center;gap:4px;color:var(--ga-accent)!important;font-size:15px;font-weight:700!important;text-decoration:none;box-shadow:none}
#wcf-embed-checkout-form #wcf_optimized_wcf_custom_coupon_field:hover{color:#8FEDE7!important}
#wcf-embed-checkout-form #wcf_optimized_wcf_custom_coupon_field .dashicons{width:18px;height:18px;font-size:18px;color:inherit}
#wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field button.wcf-submit-coupon{min-height:52px;padding:10px 20px;border:1px solid var(--ga-field-line);border-radius:14px;background:rgba(255,255,255,.08);color:var(--ga-ink);font-size:15px;font-weight:700;box-shadow:none}
#wcf-embed-checkout-form .woocommerce #order_review .wcf-custom-coupon-field button.wcf-submit-coupon:hover{border-color:var(--ga-accent);color:var(--ga-accent)}

/* Formas de pagamento: cada uma num cartão; a selecionada ganha a borda de destaque */
#wcf-embed-checkout-form #payment{margin-top:22px;padding:0;border:0;border-radius:0;background:transparent}
#wcf-embed-checkout-form #payment ul.payment_methods{display:grid;gap:10px;margin:0;padding:0;border:0;background:transparent}
#wcf-embed-checkout-form #payment ul.payment_methods li.wc_payment_method{margin:0;padding:14px 16px;border:1px solid var(--ga-line);border-radius:16px;background:var(--ga-card);list-style:none;display:flex;flex-wrap:wrap;align-items:center;transition:border-color .15s}
#wcf-embed-checkout-form #payment ul.payment_methods li.wc_payment_method:has(> input:checked){border-color:var(--ga-accent);background:rgba(95,227,220,.06)}
/* Rádio próprio: o do CartFlows desenha o ponto com float e margem para 16 px e fica fora do centro em outros tamanhos */
#wcf-embed-checkout-form #payment ul.payment_methods li > input.input-radio{-webkit-appearance:none;appearance:none;display:inline-grid;place-content:center;flex:none;box-sizing:border-box;width:20px;height:20px;min-width:20px;margin:0 10px 0 0;padding:0!important;border:2px solid rgba(255,255,255,.5);border-radius:50%;background:transparent;box-shadow:none;vertical-align:middle;cursor:pointer;transition:border-color .15s}
#wcf-embed-checkout-form #payment ul.payment_methods li > input.input-radio::before{content:"";display:block;float:none;width:10px;height:10px;margin:0;border-radius:50%;background:var(--ga-accent);font-size:0;line-height:0;text-indent:0;transform:scale(0);transition:transform .15s}
#wcf-embed-checkout-form #payment ul.payment_methods li > input.input-radio:checked{border-color:var(--ga-accent);background:transparent}
#wcf-embed-checkout-form #payment ul.payment_methods li > input.input-radio:checked::before{transform:scale(1)}
#wcf-embed-checkout-form #payment ul.payment_methods li > input.input-radio:focus-visible{outline:3px solid rgba(95,227,220,.45);outline-offset:2px}
#wcf-embed-checkout-form #payment ul.payment_methods li > label,
#wcf-embed-checkout-form #payment [type="radio"]:checked + label,
#wcf-embed-checkout-form #payment [type="radio"]:not(:checked) + label{display:inline-flex;align-items:center;gap:10px;margin:0;color:var(--ga-ink);font-size:16px;font-weight:700;cursor:pointer;vertical-align:middle}
#wcf-embed-checkout-form #payment ul.payment_methods li > label img{width:30px;height:30px;max-height:none;margin:0;padding:5px;border-radius:50%;background:#fff;float:none}
#wcf-embed-checkout-form #payment div.payment_box{flex:0 0 100%;box-sizing:border-box;margin:14px 0 2px;padding:18px;border-radius:12px;background:#fff;color:#1D2327;font-size:15px}
#wcf-embed-checkout-form #payment div.payment_box::before{display:none}

/* Termos e botão de compra */
#wcf-embed-checkout-form #payment div.form-row.place-order{margin:18px 0 0;padding:0;background:transparent;border:0}
#wcf-embed-checkout-form .woocommerce-terms-and-conditions-wrapper{margin-bottom:16px}
#wcf-embed-checkout-form .woocommerce-terms-and-conditions-wrapper .form-row{margin:0;padding:0}
#wcf-embed-checkout-form .woocommerce-terms-and-conditions-wrapper label.checkbox{display:flex;gap:10px;align-items:flex-start;margin:0;color:var(--ga-text);font-size:14.5px;font-weight:500;line-height:1.5;cursor:pointer}
#wcf-embed-checkout-form .woocommerce-terms-and-conditions-wrapper input.input-checkbox{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--ga-accent)}
#wcf-embed-checkout-form .woocommerce-terms-and-conditions-wrapper a,#wcf-embed-checkout-form .woocommerce-privacy-policy-text a{color:var(--ga-accent)!important;font-weight:700!important;text-decoration:underline;text-underline-offset:2px;box-shadow:none}
#wcf-embed-checkout-form .woocommerce-terms-and-conditions-wrapper abbr.required{color:var(--ga-accent);text-decoration:none;border:0}
#wcf-embed-checkout-form .woocommerce-privacy-policy-text p{margin:0 0 12px;color:var(--ga-muted);font-size:13.5px}
#wcf-embed-checkout-form #payment #place_order{
  display:flex;align-items:center;justify-content:center;width:100%;min-height:58px;margin:0;padding:12px 24px;
  border:0;border-radius:14px;background:var(--ga-cta);color:var(--ga-cta-ink);font-family:var(--ga-font);font-size:18px;font-weight:800;line-height:1.25;
  letter-spacing:0;text-transform:none;box-shadow:0 12px 28px -12px rgba(245,183,49,.6);cursor:pointer;transition:background-color .15s,transform .15s
}
#wcf-embed-checkout-form #payment #place_order:hover{background:var(--ga-cta-hover);color:var(--ga-cta-ink);transform:translateY(-1px)}
#wcf-embed-checkout-form #payment #place_order:focus-visible{outline:3px solid var(--ga-accent);outline-offset:3px}
#wcf-embed-checkout-form #payment #place_order:before{display:none}

/* Avisos (erros de validação, cupom aplicado) */
#wcf-embed-checkout-form .woocommerce-error,#wcf-embed-checkout-form .woocommerce-message,#wcf-embed-checkout-form .woocommerce-info{margin:0 0 18px;padding:14px 16px;border:1px solid var(--ga-line);border-radius:14px;background:var(--ga-card);color:var(--ga-ink);font-size:15px;list-style:none}
#wcf-embed-checkout-form .woocommerce-error{border-color:rgba(255,138,128,.55)}
#wcf-embed-checkout-form .woocommerce-error::before,#wcf-embed-checkout-form .woocommerce-message::before,#wcf-embed-checkout-form .woocommerce-info::before{display:none}

@media(max-width:600px){
  #wcf-embed-checkout-form h3,#wcf-embed-checkout-form #order_review_heading{font-size:18px}
  #wcf-embed-checkout-form #payment div.payment_box{padding:14px}
  #wcf-embed-checkout-form #payment #place_order{font-size:17px}
}

/* Acordeon dos termos (GA_Legal::checkout_terms_box): termos e privacidade oficiais, em abas, dentro do checkout */
#wcf-embed-checkout-form .woocommerce-terms-and-conditions.ga-terms-box{margin:0 0 14px;padding:0 18px 16px;border:1px solid var(--ga-line);border-radius:14px;background:#06262D;color:var(--ga-text);font-size:14px;line-height:1.6;scrollbar-color:rgba(255,255,255,.25) transparent}
#wcf-embed-checkout-form .ga-terms-box .ga-terms-box__date{margin:0 0 4px;color:var(--ga-muted);font-size:13px;font-weight:600}
#wcf-embed-checkout-form .ga-terms-box h4{margin:14px 0 4px;padding:0;color:var(--ga-ink);font-family:var(--ga-font);font-size:15px;font-weight:800;line-height:1.35}
#wcf-embed-checkout-form .ga-terms-box p{margin:6px 0 0;color:var(--ga-text);font-size:14px}
#wcf-embed-checkout-form .ga-terms-box ul{margin:6px 0 0;padding-left:20px}
#wcf-embed-checkout-form .ga-terms-box li{margin:4px 0 0;color:var(--ga-text);font-size:14px}
#wcf-embed-checkout-form .ga-terms-box__tabs{position:sticky;top:0;z-index:1;display:flex;gap:6px;margin:0 -18px 6px;padding:10px 18px;background:#06262D;border-bottom:1px solid var(--ga-line)}
#wcf-embed-checkout-form #payment .ga-terms-box__tabs button{min-height:0;margin:0;padding:7px 12px;border:0;border-radius:10px;background:transparent;color:var(--ga-text);font-family:var(--ga-font);font-size:13.5px;font-weight:700;line-height:1.3;box-shadow:none;cursor:pointer}
#wcf-embed-checkout-form #payment .ga-terms-box__tabs button:hover{color:var(--ga-ink);background:transparent}
#wcf-embed-checkout-form #payment .ga-terms-box__tabs button[aria-selected="true"]{background:var(--ga-accent-bg);color:var(--ga-accent)}
#wcf-embed-checkout-form .ga-terms-box[data-ga-doc="terms"] .ga-terms-box__doc--privacy,
#wcf-embed-checkout-form .ga-terms-box[data-ga-doc="privacy"] .ga-terms-box__doc--terms{display:none}
