/*
 * Arquivo: public_html/wp-content/plugins/vcv-melhorias/checkout-vcv.css
 * Versão: 2.8.0
 * 2.8.0 — tela pós-pagamento (voucher) do mockup aprovado; o miolo
 * padrão do obrigado some quando o pedido está pago.
 * 2.7.1 — molde do SÓ NO SITE invisível no rodapé.
 * 2.7.0 — item do pedido compacto ("Quem vai" numa linha), totais
 * rebaixados com a mesma cara, aviso de cartão criptografado.
 * 2.6.0 — carimbo "Só no site", método escolhido em destaque e o logo
 * do Pix em tamanho de gente.
 * 2.5.0 — uma-tela compacto: pagamento sem cartão próprio, fundido no
 * Seu Pedido; caixa do Pix do MP domada; textos de apoio miúdos.
 * 2.4.1 — no uma-tela o #payment (e o Reservar agora dentro dele)
 * ignora o esconderijo do modo 2 etapas.
 * 2.4.0 — modo uma-tela: pagamento como cartão branco na coluna do
 * pedido, botão Reservar agora em laranja de ponta a ponta.
 * 2.3.0 — extrato na faixa do total (etapa 2) e modal de login.
 * 2.2.0 — modal da política de cancelamento no checkout.
 * 2.1.0 — checkout sem rotas de fuga pro WhatsApp: some o botão do
 * header e a bolha flutuante do Joinchat (só aqui; no resto do site
 * ficam). O selo mantém o WhatsApp como texto, sem link.
 * 2.0.0 — padrão Decolar: enclausurado, badges, política, embarcados,
 * dica Pix e relógio do pedido pendente.
 * Checkout com a cara da casa: cartões brancos sobre o creme, campos
 * arredondados, azul-marinho nos títulos e o botão laranja da marca.
 * Carregado pelo vcv-melhorias.php apenas na página de finalização.
 */

body.woocommerce-checkout{background:#faf7f2}
body.woocommerce-checkout .woocommerce{
    max-width:1200px; margin:0 auto; padding:26px 20px 60px;
    font-family:'Roboto',sans-serif; color:#2b3a4d}

/* Aviso "adicionado ao carrinho" discreto e na paleta */
body.woocommerce-checkout .woocommerce-message{
    border-top-color:#0f2f5b; background:#fff; border-radius:12px;
    box-shadow:0 4px 14px rgba(15,47,91,.06)}

/* ---------- Os dois cartões: dados + pedido ---------- */
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2,
body.woocommerce-checkout #order_review{
    background:#fff; border:1px solid #e8e3da; border-radius:18px;
    padding:24px 26px; margin-bottom:22px}
body.woocommerce-checkout #order_review{padding-top:18px}

body.woocommerce-checkout h3,
body.woocommerce-checkout #order_review_heading{
    font-family:'Poppins',sans-serif; color:#0f2f5b; font-size:19px;
    font-weight:700; margin:0 0 16px}
body.woocommerce-checkout #order_review_heading{
    background:#fff; border:1px solid #e8e3da; border-bottom:0;
    border-radius:18px 18px 0 0; padding:20px 26px 0; margin:0}
body.woocommerce-checkout #order_review{border-radius:0 0 18px 18px; border-top:0}

/* ---------- Campos ---------- */
body.woocommerce-checkout .form-row label{
    font-size:12.5px; color:#67788e; font-weight:600; margin-bottom:4px}
body.woocommerce-checkout .form-row label .required{color:#ff9400; text-decoration:none}
body.woocommerce-checkout .input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea{
    border:1.5px solid #e8e3da !important; border-radius:10px !important;
    padding:11px 14px !important; font-size:14.5px !important;
    background:#fff !important; color:#2b3a4d !important;
    transition:border-color .15s, box-shadow .15s}
body.woocommerce-checkout .input-text:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus{
    border-color:#0f2f5b !important; outline:none !important;
    box-shadow:0 0 0 3px rgba(15,47,91,.1) !important}

/* ---------- Tabela do pedido ---------- */
body.woocommerce-checkout .shop_table{border:0; margin-bottom:6px}
body.woocommerce-checkout .shop_table th,
body.woocommerce-checkout .shop_table td{
    border:0; border-bottom:1px solid #f0ebe2; padding:12px 4px; font-size:14px}
body.woocommerce-checkout .shop_table thead th{
    font-family:'Poppins',sans-serif; font-size:12px; letter-spacing:.06em;
    text-transform:uppercase; color:#67788e}
body.woocommerce-checkout .shop_table .product-name{color:#0f2f5b; font-weight:600}
body.woocommerce-checkout .shop_table .product-name dl.variation,
body.woocommerce-checkout .shop_table .product-name .wc-item-meta{
    font-size:12.5px; color:#67788e; font-weight:400; margin:4px 0 0}
/* Cada informação da reserva em sua linha: "Adultos: 2" e afins */
body.woocommerce-checkout .shop_table dl.variation{margin:5px 0 0}
body.woocommerce-checkout .shop_table dl.variation dt{display:inline; font-weight:600; margin:0}
body.woocommerce-checkout .shop_table dl.variation dd{display:inline; margin:0 0 0 4px}
body.woocommerce-checkout .shop_table dl.variation dd::after{content:"\A"; white-space:pre}
body.woocommerce-checkout .shop_table tfoot th{color:#67788e; font-weight:600}
body.woocommerce-checkout .shop_table .order-total th,
body.woocommerce-checkout .shop_table .order-total td{
    border-bottom:0; padding-top:16px; font-family:'Poppins',sans-serif; font-size:17px}
body.woocommerce-checkout .shop_table .order-total .woocommerce-Price-amount{
    color:#ff9400; font-weight:800; font-size:22px}

/* Cupom em linha discreta */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
    background:#fff; border:1px dashed #e8e3da; border-radius:12px; color:#67788e}

/* ---------- Pagamento ---------- */
body.woocommerce-checkout #payment{background:transparent; border-radius:0}
body.woocommerce-checkout #payment ul.payment_methods{
    border:0; padding:4px 0 0}
body.woocommerce-checkout #payment ul.payment_methods li{
    background:#faf7f2; border:1.5px solid #eee9e0; border-radius:12px;
    padding:12px 14px; margin-bottom:10px; list-style:none}
body.woocommerce-checkout #payment ul.payment_methods li label{
    font-family:'Poppins',sans-serif; font-weight:600; color:#0f2f5b; font-size:14.5px}
body.woocommerce-checkout #payment input[type=radio]{accent-color:#ff9400}
body.woocommerce-checkout #payment div.payment_box{
    background:#fff; border-radius:10px; color:#3d4f66}
body.woocommerce-checkout #payment div.payment_box::before{display:none}

/* O botão da casa (vence o verde padrão do Mercado Pago) */
body.woocommerce-checkout #place_order{
    width:100%; background:#ff9400 !important; color:#fff !important;
    border:0 !important; border-radius:14px !important; cursor:pointer;
    font-family:'Poppins',sans-serif !important; font-weight:700 !important;
    font-size:15.5px !important; letter-spacing:.04em; text-transform:uppercase;
    padding:16px !important; box-shadow:0 8px 22px rgba(255,148,0,.35) !important;
    transition:background .15s, transform .15s}
body.woocommerce-checkout #place_order:hover{
    background:#e07f00 !important; transform:translateY(-1px)}

/* Selo de confiança sob o botão (impresso pelo plugin) */
.vcv-checkout-selo{
    display:flex; justify-content:center; gap:16px; flex-wrap:wrap;
    margin-top:14px; font-size:12px; color:#67788e; text-align:center}

/* ---------- Celular ---------- */
/* ---------- Minha Conta: mesma cara da casa ---------- */
body.woocommerce-account{background:#faf7f2}
body.woocommerce-account .woocommerce{
    max-width:1100px; margin:0 auto; padding:26px 20px 60px;
    font-family:'Roboto',sans-serif; color:#2b3a4d;
    display:flex; gap:22px; align-items:flex-start; flex-wrap:wrap}
body.woocommerce-account h1,
body.woocommerce-account .entry-title{
    font-family:'Poppins',sans-serif; color:#0f2f5b; font-weight:700}
body.woocommerce-account .woocommerce a{color:#0f2f5b}
body.woocommerce-account .woocommerce a:hover{color:#ff9400}

/* Aviso (ex.: senha temporária) */
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message{
    width:100%; background:#fff; border:1px solid #e8e3da;
    border-top:3px solid #0f2f5b; border-radius:12px; color:#2b3a4d;
    box-shadow:0 4px 14px rgba(15,47,91,.06)}
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-message::before{color:#0f2f5b}

/* Menu lateral */
body.woocommerce-account .woocommerce-MyAccount-navigation{
    float:none; width:250px; flex:0 0 250px}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    list-style:none; margin:0; padding:10px; background:#fff;
    border:1px solid #e8e3da; border-radius:18px}
body.woocommerce-account .woocommerce-MyAccount-navigation li{margin:2px 0}
body.woocommerce-account .woocommerce-MyAccount-navigation li a{
    display:block; padding:11px 14px; border-radius:10px; font-size:14px;
    font-weight:600; color:#2b3a4d; text-decoration:none}
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{
    background:#fff4e3; color:#a85f00}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
    background:#0f2f5b; color:#fff}
body.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads{display:none}
body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a{color:#b03a2e}

/* Conteúdo */
body.woocommerce-account .woocommerce-MyAccount-content{
    float:none; flex:1; min-width:280px; width:auto;
    background:#fff; border:1px solid #e8e3da; border-radius:18px;
    padding:24px 26px; font-size:14.5px}
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3{
    font-family:'Poppins',sans-serif; color:#0f2f5b}
body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-form-login .button,
body.woocommerce-account .woocommerce-form-register .button,
body.woocommerce-account .woocommerce-ResetPassword .button{
    background:#ff9400 !important; color:#fff !important; border:0 !important;
    border-radius:10px !important; padding:11px 20px !important;
    font-family:'Poppins',sans-serif !important; font-weight:700 !important}
body.woocommerce-account .woocommerce-MyAccount-content .button:hover{background:#e07f00 !important}

/* Tabelas (pedidos e reservas) */
body.woocommerce-account .woocommerce-MyAccount-content table{border:0}
body.woocommerce-account .woocommerce-MyAccount-content th{
    font-family:'Poppins',sans-serif; font-size:12px; letter-spacing:.06em;
    text-transform:uppercase; color:#67788e; border:0;
    border-bottom:1px solid #f0ebe2; padding:12px 8px}
body.woocommerce-account .woocommerce-MyAccount-content td{
    border:0; border-bottom:1px solid #f0ebe2; padding:13px 8px; font-size:14px}
body.woocommerce-account .woocommerce-MyAccount-content td .button{
    padding:7px 14px !important; font-size:12.5px !important; margin:2px 4px 2px 0}

/* Formulários (entrar, senha, endereço, detalhes) */
body.woocommerce-account .form-row label{
    font-size:12.5px; color:#67788e; font-weight:600; margin-bottom:4px}
body.woocommerce-account .input-text,
body.woocommerce-account select{
    border:1.5px solid #e8e3da !important; border-radius:10px !important;
    padding:11px 14px !important; font-size:14.5px !important;
    background:#fff !important; color:#2b3a4d !important}
body.woocommerce-account .input-text:focus{
    border-color:#0f2f5b !important; outline:none !important;
    box-shadow:0 0 0 3px rgba(15,47,91,.1) !important}
body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register,
body.woocommerce-account .woocommerce-ResetPassword{
    background:#fff; border:1px solid #e8e3da !important; border-radius:18px;
    padding:26px !important; max-width:560px; margin:0 auto}

@media (max-width:820px){
    body.woocommerce-account .woocommerce{padding:14px 12px 44px; gap:14px}
    body.woocommerce-account .woocommerce-MyAccount-navigation{flex:1 1 100%; width:100%}
    body.woocommerce-account .woocommerce-MyAccount-navigation ul{
        display:flex; flex-wrap:wrap; gap:4px}
    body.woocommerce-account .woocommerce-MyAccount-navigation li{flex:1 1 auto}
    body.woocommerce-account .woocommerce-MyAccount-navigation li a{
        padding:9px 12px; text-align:center; font-size:13px}
    body.woocommerce-account .woocommerce-MyAccount-content{padding:18px 16px; border-radius:14px}
}

/* ---------- Página do carrinho: mesma cara da casa ---------- */
body.woocommerce-cart{background:#faf7f2}

/* As "sections" do widget de carrinho do Elementor vêm com moldura
   laranja do kit — a casca some e ficam só os nossos cartões */
body.woocommerce-cart .e-cart-section,
body.woocommerce-cart [class*="e-cart"] > .e-cart-section{
    border:0 !important; background:transparent !important;
    padding:0 !important; box-shadow:none !important; border-radius:0 !important}
body.woocommerce-cart .woocommerce{
    max-width:1100px; margin:0 auto; padding:26px 20px 60px;
    font-family:'Roboto',sans-serif; color:#2b3a4d}

body.woocommerce-cart table.shop_table.cart{
    background:#fff; border:1px solid #e8e3da !important; border-radius:18px;
    border-collapse:separate; padding:8px 14px 14px}
body.woocommerce-cart table.cart th{
    font-family:'Poppins',sans-serif; font-size:12px; letter-spacing:.06em;
    text-transform:uppercase; color:#67788e !important;
    border:0 !important; border-bottom:1px solid #f0ebe2 !important; padding:14px 8px}
body.woocommerce-cart table.cart td{
    border:0 !important; border-bottom:1px solid #f0ebe2 !important;
    padding:14px 8px; font-size:14px; background:transparent !important}
body.woocommerce-cart table.cart td.actions{border-bottom:0 !important; padding-top:18px}
body.woocommerce-cart table.cart .product-name a{
    color:#0f2f5b !important; font-weight:700; text-decoration:none}
body.woocommerce-cart table.cart .variation,
body.woocommerce-cart table.cart dl.variation dt,
body.woocommerce-cart table.cart dl.variation dd{
    font-size:12px !important; color:#67788e !important}
body.woocommerce-cart table.cart img{border-radius:12px; width:64px}
body.woocommerce-cart table.cart a.remove{
    color:#b03a2e !important; border:1.5px solid #f2c9c5; background:#fff;
    border-radius:50%; width:26px; height:26px; line-height:23px; font-size:16px}
body.woocommerce-cart table.cart a.remove:hover{background:#b03a2e; color:#fff !important}
body.woocommerce-cart .woocommerce-cart-form .amount{color:#2b3a4d}

/* Botões do carrinho */
body.woocommerce-cart .button[name="update_cart"]{
    background:#fff !important; border:1.5px solid #0f2f5b !important;
    color:#0f2f5b !important; border-radius:10px !important; font-weight:600}
body.woocommerce-cart .button[name="update_cart"]:disabled{
    opacity:.4; border-color:#c8ccd4 !important; color:#67788e !important}
body.woocommerce-cart .coupon,
body.woocommerce-cart .e-cart-section--coupon{
    background:#fff; border:1px solid #e8e3da; border-radius:14px; padding:14px 16px}
body.woocommerce-cart td.actions .coupon{border:0; padding:0}
body.woocommerce-cart .coupon .input-text{
    border:1.5px solid #e8e3da !important; border-radius:10px !important;
    padding:10px 14px !important; background:#fff !important}
body.woocommerce-cart .coupon .button{
    background:#0f2f5b !important; color:#fff !important;
    border-radius:10px !important; border:0 !important; font-weight:600}
body.woocommerce-cart .coupon .button:hover{background:#0a2140 !important}

/* Totais */
body.woocommerce-cart .cart_totals{
    background:#fff; border:1px solid #e8e3da; border-radius:18px; padding:22px 24px}
body.woocommerce-cart .cart_totals h2{
    font-family:'Poppins',sans-serif; color:#0f2f5b; font-size:19px;
    font-weight:700; margin:0 0 12px}
body.woocommerce-cart .cart_totals table{border:0}
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td{
    border:0 !important; border-bottom:1px solid #f0ebe2 !important;
    padding:12px 4px; font-size:14px; background:transparent !important}
body.woocommerce-cart .cart_totals .order-total .amount{
    color:#ff9400; font-size:20px; font-family:'Poppins',sans-serif; font-weight:700}
body.woocommerce-cart .checkout-button{
    background:#ff9400 !important; color:#fff !important; border:0 !important;
    border-radius:12px !important; padding:15px !important; width:100%;
    font-family:'Poppins',sans-serif !important; font-weight:700 !important;
    font-size:15px !important; text-transform:uppercase; letter-spacing:.03em}
body.woocommerce-cart .checkout-button:hover{background:#e07f00 !important}

@media (max-width:768px){
    body.woocommerce-cart .woocommerce{padding:14px 12px 44px}
    body.woocommerce-cart table.shop_table.cart{padding:6px 10px 10px; border-radius:14px}
    body.woocommerce-cart table.cart td::before{color:#67788e; font-weight:600; font-size:12px}
    body.woocommerce-cart .cart_totals{padding:18px 16px; border-radius:14px}
}

/* Etapa 2 (Pagamento): a coluna de dados some, então o resumo do pedido
   e o pagamento deixam o float do Woo e viram coluna única centrada */
body.vcv-etapa-2.woocommerce-checkout #order_review,
body.vcv-etapa-2.woocommerce-checkout #order_review_heading{
    float:none !important;
    width:100% !important;
    max-width:620px;
    margin-left:auto;
    margin-right:auto;
}
body.vcv-etapa-2.woocommerce-checkout form.checkout::after{
    content:'';
    display:block;
    clear:both;
}

@media (max-width:768px){
    body.woocommerce-checkout .woocommerce{padding:14px 12px 44px}
    body.woocommerce-checkout #customer_details .col-1,
    body.woocommerce-checkout #customer_details .col-2,
    body.woocommerce-checkout #order_review{padding:18px 16px; border-radius:14px}
    body.woocommerce-checkout #order_review_heading{padding:16px 16px 0; border-radius:14px 14px 0 0}
    body.woocommerce-checkout h3,
    body.woocommerce-checkout #order_review_heading{font-size:17px}
}

/* ---------- Checkout em 2 etapas ---------- */
.vcv-etapas{display:flex; align-items:center; justify-content:center; gap:12px;
    margin:4px auto 24px; font-family:'Poppins',sans-serif}
.vcv-etapa{display:inline-flex; align-items:center; gap:8px; font-size:13.5px;
    font-weight:600; color:#9aa7b8}
.vcv-etapa i{font-style:normal; width:26px; height:26px; border-radius:50%;
    display:inline-flex; align-items:center; justify-content:center;
    background:#e8e3da; color:#67788e; font-size:13px}
.vcv-etapa.ativa{color:#0f2f5b}
.vcv-etapa.ativa i{background:#ff9400; color:#fff}
.vcv-sep{width:42px; height:2px; background:#e8e3da; border-radius:2px}

#customer_details.vcv-oculto{display:none}
/* O WooCommerce recria o #payment via AJAX — o esconderijo precisa
   ser inegociável até a etapa 2 marcar presença */
body.woocommerce-checkout #payment{display:none !important}
body.woocommerce-checkout #payment.vcv-visivel{display:block !important}
#vcv-continuar.vcv-oculto{display:none}

#vcv-continuar{width:100%; background:#0f2f5b; color:#fff; border:0; cursor:pointer;
    border-radius:14px; padding:15px; margin-top:14px;
    font-family:'Poppins',sans-serif; font-weight:700; font-size:15px;
    letter-spacing:.04em; text-transform:uppercase;
    box-shadow:0 8px 22px rgba(15,47,91,.28); transition:background .15s}
#vcv-continuar:hover{background:#123a6e}

#vcv-voltar{background:none; border:0; cursor:pointer; color:#67788e;
    font-size:13px; padding:0 0 12px; font-family:'Poppins',sans-serif; font-weight:600}
#vcv-voltar:hover{color:#0f2f5b}

/* Botão × de remover item do pedido */
.vcv-remover{display:inline-flex; align-items:center; justify-content:center;
    width:22px; height:22px; margin-right:8px; border-radius:50%;
    background:#fdeeee; color:#b03a2e !important; font-weight:700; font-size:13px;
    text-decoration:none !important; vertical-align:-2px; transition:background .15s}
.vcv-remover:hover{background:#b03a2e; color:#fff !important}

/* Cinto de segurança: a seção de observações nunca aparece */
body.woocommerce-checkout .woocommerce-additional-fields{display:none !important}

/* ---------- Etapa 2: palco próprio, coluna única centralizada ---------- */
body.vcv-etapa-2 #order_review_heading,
body.vcv-etapa-2 #order_review{
    float:none !important; width:100% !important;
    max-width:620px; margin-left:auto !important; margin-right:auto !important}
body.vcv-etapa-2 .woocommerce-form-coupon-toggle,
body.vcv-etapa-2 form.checkout_coupon{
    max-width:620px; margin-left:auto; margin-right:auto}
body.vcv-etapa-2 form.checkout::after{content:''; display:table; clear:both}

/* ---------- Página de obrigado: um QR Code só ---------- */
/* O Mercado Pago imprime o bloco Pix duas vezes (gancho do topo +
   gancho pós-tabela, que também abastece os e-mails). Na página,
   fica só o grande do topo; no e-mail, o QR segue intacto. */
body.woocommerce-order-received .mp-pix-image-container{display:none !important}

/* ================= v2.0.0 — checkout padrão Decolar ================= */

/* --- Enclausurado: some busca, carrinho e categorias; ficam logo,
       Cadastur e WhatsApp (confiança não é distração) --- */
body.vcv-enclausurado .hvcv-busca,
body.vcv-enclausurado .hvcv-cart,
body.vcv-enclausurado .hvcv-dest,
body.vcv-enclausurado .hvcv-cats,
body.vcv-enclausurado .hvcv-wa,
body.vcv-enclausurado .joinchat{display:none !important}

/* --- Badges nos métodos de pagamento --- */
.vcv-badge{font-size:11px;font-weight:700;border-radius:6px;padding:2px 7px;margin-left:6px;vertical-align:middle;white-space:nowrap}
.vcv-badge-pix{background:#e0f7f4;color:#0b7d72}
.vcv-badge-card{background:#fff3e0;color:#a35b00}

/* --- Linha "no Pix sai por" e a taxa de desconto no resumo --- */
.vcv-pix-dica td{background:#eafaf8;color:#0b7d72;font-size:13px;border-radius:8px;padding:8px 10px !important}
#order_review .fee th, #order_review .fee td{color:#0f9d58;font-weight:600}

/* --- Política com data cravada --- */
.vcv-politica{background:#e7f6ec;border:1px solid #bfe5cc;border-radius:12px;
  padding:10px 14px;font-size:13.5px;margin:0 0 14px;color:#22303f}
.vcv-politica b{color:#0f9d58}
.vcv-politica .dt{font-weight:700}
.vcv-politica a{color:#0f2f5b}
.vcv-politica-perto{background:#fff8e6;border-color:#ffe2a8}

/* --- Embarcados --- */
.vcv-embarcados{margin-top:18px}
.vcv-emb-grupo h4{color:#0f2f5b;font-size:15px;margin:14px 0 2px}
.vcv-emb-grupo h4 small{color:#6b7a89;font-weight:500}
.vcv-emb-mi{font-size:12.5px;color:#6b7a89;margin:0 0 8px}
.vcv-emb{border:1px solid #e3e7ec;background:#fbfcfe;border-radius:12px;
  padding:10px 14px 12px;margin-bottom:10px}
.vcv-emb-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.vcv-emb-top .t{font-size:13.5px;font-weight:600;color:#0f2f5b}
.vcv-emb-top .faixa{font-size:11.5px;color:#6b7a89}
.vcv-soueu{border:1px solid #32bcad;color:#0b7d72;background:#eafaf8;border-radius:999px;
  font-size:12px;padding:3px 11px;cursor:pointer;font-weight:600;line-height:1.6}
.vcv-soueu:hover{background:#d9f4f0}
.vcv-emb-campos{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
@media(max-width:560px){.vcv-emb-campos{grid-template-columns:1fr}}
.vcv-emb-campos p{margin:6px 0 0}
.vcv-emb-hint{display:block;font-size:12px;margin-top:3px;min-height:15px}
.vcv-emb-hint.ok{color:#0f9d58}
.vcv-emb-hint.err{color:#d23f31}

/* --- Pedido pendente Pix (obrigado) --- */
.vcv-relogio{background:#fff8e6;border:1px solid #ffe2a8;color:#8a5b00;border-radius:12px;
  padding:12px 16px;font-size:14.5px;margin:14px auto;max-width:620px;text-align:center}
.vcv-relogio b{font-variant-numeric:tabular-nums}
.vcv-relogio-mi{text-align:center;font-size:13.5px;color:#0f2f5b;margin:0 0 10px}

/* --- Modal da política (2.2.0) --- */
body.vcv-modal-aberto{overflow:hidden}
.vcv-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px}
.vcv-modal-fundo{position:absolute;inset:0;background:rgba(14,42,71,.55)}
.vcv-modal-caixa{position:relative;background:#fff;border-radius:16px;max-width:520px;width:100%;
  max-height:86vh;overflow:auto;padding:22px 24px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.vcv-modal-caixa h3{color:#0f2f5b;font-size:17px;margin:0 0 12px}
.vcv-modal-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:26px;
  line-height:1;color:#6b7a89;cursor:pointer;padding:4px 8px}
.vcv-pol-item{border:1px solid #e3e7ec;border-radius:10px;padding:9px 12px;margin-bottom:8px;font-size:13.5px}
.vcv-pol-item .p{font-weight:600;color:#0f2f5b}
.vcv-pol-item .p small{color:#6b7a89;font-weight:500}
.vcv-pol-item .ok{color:#0f9d58}
.vcv-pol-item .perto{color:#8a5b00}
.vcv-pol-regras{margin:14px 0 10px;padding-left:18px;font-size:13px;color:#22303f}
.vcv-pol-regras li{margin-bottom:8px}
.vcv-pol-completa{font-size:12.5px;color:#0f2f5b}

/* --- Extrato da faixa Total a pagar (2.3.0) --- */
#vcv-faixa-detalhe{background:#0a2140;border-radius:0 0 12px 12px;margin:-10px 0 14px;
  padding:10px 16px 12px;display:flex;flex-direction:column;gap:4px}
#vcv-faixa-detalhe .li{display:flex;justify-content:space-between;font-size:13px;color:#c9d6e4}
#vcv-faixa-detalhe .li i{font-style:normal}
#vcv-faixa-detalhe .li b{font-weight:600;color:#fff}
#vcv-faixa-detalhe .li.desc i,#vcv-faixa-detalhe .li.desc b{color:#7fe0c3}

/* --- Modal de login (2.3.0) --- */
.vcv-login-caixa{max-width:400px;text-align:left}
.vcv-login-mi{font-size:13.5px;color:#22303f;margin:0 0 10px}
.vcv-login-caixa label{font-size:12px;font-weight:600;color:#0f2f5b;text-transform:uppercase}
.vcv-login-caixa input[type=password]{width:100%;padding:10px 12px;border:1px solid #c9d3dd;border-radius:10px;font-size:15px}
.vcv-login-msg{color:#d23f31;font-size:13px;min-height:16px;margin:6px 0}
#vcv-login-entrar{width:100%;background:#f7941d;border:0;border-radius:10px;color:#1a1200;
  font-weight:700;padding:12px;cursor:pointer;font-size:14.5px}
#vcv-login-entrar:disabled{opacity:.6;cursor:wait}
.vcv-login-links{text-align:center;font-size:12.5px;margin-top:10px}
.vcv-login-links a{color:#0f2f5b}

/* --- Modo uma-tela (2.4.0) --- */
body.vcv-uma-tela #payment{background:#fff;border:1px solid #e8e3da;border-radius:18px;
  padding:20px 22px;margin-top:16px}
body.vcv-uma-tela #payment ul.payment_methods{border:0;padding:0;margin:0 0 8px}
body.vcv-uma-tela #payment li{list-style:none}
body.vcv-uma-tela #payment div.payment_box{background:#fbfcfe;border:1px dashed #e3e7ec;border-radius:10px}
body.vcv-uma-tela #place_order{width:100%;background:#f7941d;border:0;border-radius:12px;
  color:#1a1200;font-weight:700;font-size:15.5px;padding:15px;letter-spacing:.3px;cursor:pointer}
body.vcv-uma-tela #place_order:hover{background:#e07f00}

/* --- 2.4.1: no uma-tela, o pagamento nunca se esconde --- */
body.vcv-uma-tela.woocommerce-checkout #payment{display:block !important}

/* --- 2.5.0: pagamento fundido no Seu Pedido --- */
body.vcv-uma-tela #order_review #payment{background:transparent;border:0;border-radius:0;
  padding:14px 0 0;margin-top:12px;border-top:1px dashed #e3e7ec}
body.vcv-uma-tela #payment ul.payment_methods li{margin:0 0 8px;border:1.5px solid #e3e7ec;
  border-radius:10px;padding:9px 12px;background:#fff}
body.vcv-uma-tela #payment ul.payment_methods li label{font-size:14px;font-weight:600;color:#0f2f5b}
body.vcv-uma-tela #payment div.payment_box{padding:10px 12px;margin:8px 0 2px;font-size:12.5px}
body.vcv-uma-tela #payment div.payment_box img{max-height:30px;width:auto}
body.vcv-uma-tela #payment .woocommerce-privacy-policy-text p{font-size:11.5px;color:#6b7a89;margin:10px 0 8px}
body.vcv-uma-tela #payment .vcv-politica{margin:0 0 12px;font-size:12.5px}
body.vcv-uma-tela #payment .vcv-checkout-selo{font-size:11px}

/* --- 2.6.0: oferta exclusiva do site --- */
.vcv-oferta-site{position:relative;border:1.5px solid #f7941d;background:linear-gradient(135deg,#fff8ef,#fff);
  border-radius:12px;padding:12px 14px 10px;margin:0 0 12px}
.vcv-oferta-site .tag{position:absolute;top:-9px;left:12px;background:#f7941d;color:#1a1200;
  font-size:10px;font-weight:800;letter-spacing:.8px;border-radius:6px;padding:2px 8px}
.vcv-oferta-site b{display:block;color:#0f2f5b;font-size:13.5px;margin-top:2px}
.vcv-oferta-site small{display:block;color:#6b7a89;font-size:11.5px;line-height:1.45;margin-top:2px}

/* --- método escolhido salta aos olhos; logo do Pix comportado --- */
body.vcv-uma-tela #payment ul.payment_methods li:has(input:checked){border-color:#f7941d;background:#fff8ef}
body.vcv-uma-tela #payment div.payment_box img{max-height:22px}
body.vcv-uma-tela #payment div.payment_box{font-size:12px;padding:8px 10px}

/* --- 2.7.0: item do pedido sem espaço morto --- */
body.vcv-uma-tela #order_review .cart_item td{padding-top:8px;padding-bottom:8px;line-height:1.4}
body.vcv-uma-tela #order_review .cart_item dl.variation{margin:3px 0 0}
body.vcv-uma-tela #order_review .cart_item dl.variation dt,
body.vcv-uma-tela #order_review .cart_item dl.variation dd{display:inline;margin:0;font-size:12px;color:#6b7a89}
body.vcv-uma-tela #order_review .cart_item dl.variation dd{margin-right:8px}
body.vcv-uma-tela #order_review .cart_item dl.variation dd p{display:inline;margin:0}

/* --- totais rebaixados: mesma tipografia do resumo --- */
#vcv-totais{margin:12px 0 4px;border-top:1px dashed #e3e7ec;padding-top:8px}
.vcv-totais-tabela{width:100%;border-collapse:collapse}
.vcv-totais-tabela th{text-align:left;font-weight:500;color:#2b3a4d;font-size:13.5px;padding:4px 0}
.vcv-totais-tabela td{text-align:right;font-size:13.5px;padding:4px 0}
.vcv-totais-tabela tr.fee th,.vcv-totais-tabela tr.fee td{color:#0f9d58;font-weight:600}
.vcv-totais-tabela tr.order-total th,.vcv-totais-tabela tr.order-total td{
  font-size:16.5px;font-weight:700;color:#0f2f5b;border-top:1px dashed #e3e7ec;padding-top:8px}
.vcv-totais-tabela tr.order-total td .woocommerce-Price-amount{color:#f7941d}

/* a tabela de cima fica só com os itens — some o pé fantasma */
body.vcv-uma-tela table.woocommerce-checkout-review-order-table tfoot{display:none}

/* --- aviso do cartão criptografado --- */
.vcv-cartao-seguro{background:#eef6f0;border:1px solid #cfe7d6;color:#1d6b3a;border-radius:8px;
  padding:7px 10px;font-size:11.5px;line-height:1.45;margin-top:8px}

/* oferta no topo do bloco: respiro certo */
body.vcv-uma-tela #payment .vcv-oferta-site{margin:2px 0 12px}

/* --- 2.7.1 --- */
#vcv-oferta-master{display:none !important}

/* ================= 2.8.0 — pós-pagamento (voucher) ================= */
body.vcv-pos-pago .woocommerce-thankyou-order-received,
body.vcv-pos-pago .woocommerce-order-overview,
body.vcv-pos-pago .woocommerce-order-details,
body.vcv-pos-pago .woocommerce-customer-details{display:none !important}

.vcv-pos{max-width:720px;margin:0 auto}
.vcv-pos-festa{text-align:center;padding:20px 0 16px}
.vcv-pos-check{width:74px;height:74px;border-radius:50%;background:#0f9d58;margin:0 auto 12px;
  display:grid;place-items:center;box-shadow:0 8px 30px rgba(15,157,88,.35);animation:vcvpop .5s ease}
.vcv-pos-check svg{width:38px;height:38px;stroke:#fff;stroke-width:3.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
@keyframes vcvpop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.12)}100%{transform:scale(1)}}
.vcv-pos-festa h1{font-size:22px;color:#0f2f5b;margin:0}
.vcv-pos-festa p{color:#6b7a89;font-size:14px;margin:4px 0 0}
.vcv-pos-pedido{display:inline-block;margin-top:10px;background:#fff;border:1px solid #e3e7ec;
  border-radius:999px;padding:5px 14px;font-size:12.5px;color:#6b7a89}
.vcv-pos-pedido b{color:#0f2f5b}

.vcv-pos-voucher{background:#fff;border:1px solid #e3e7ec;border-radius:16px;overflow:hidden;
  position:relative;margin-bottom:14px;box-shadow:0 6px 24px rgba(14,42,71,.08)}
.vcv-pos-voucher::before,.vcv-pos-voucher::after{content:'';position:absolute;width:22px;height:22px;
  border-radius:50%;background:#faf7f2;border:1px solid #e3e7ec;top:104px}
.vcv-pos-voucher::before{left:-12px}.vcv-pos-voucher::after{right:-12px}
.vcv-pos-voucher .vt{background:linear-gradient(135deg,#0e2a47,#17466f);color:#fff;padding:16px 20px}
.vcv-pos-voucher .rot{font-size:11px;letter-spacing:1.2px;color:#9fb8d2;text-transform:uppercase}
.vcv-pos-voucher h2{font-size:18px;margin:3px 0 3px;color:#fff}
.vcv-pos-voucher .dt{color:#ffd166;font-weight:600;font-size:14px}
.vcv-pos-voucher .vc{padding:18px 20px 14px;border-top:2px dashed #e3e7ec}
.vcv-pos-voucher .vl{display:flex;justify-content:space-between;gap:16px;font-size:14px;padding:5px 0}
.vcv-pos-voucher .vl .k{color:#6b7a89}
.vcv-pos-voucher .vl .v{font-weight:600;color:#0f2f5b;text-align:right}
.vcv-pos-voucher .vemb{background:#fbfcfe;border:1px solid #e3e7ec;border-radius:12px;padding:10px 14px;margin:8px 0}
.vcv-pos-voucher .vemb .t{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#6b7a89;margin-bottom:4px}
.vcv-pos-voucher .vemb .p{font-size:14px;font-weight:600;color:#0f2f5b}
.vcv-pos-voucher .vemb .p small{color:#6b7a89;font-weight:500}

.vcv-pos-total{display:flex;justify-content:space-between;align-items:center;background:#fff;
  border:1px solid #e3e7ec;border-radius:12px;padding:12px 18px;margin-bottom:14px;font-size:15px;font-weight:700;color:#0f2f5b}
.vcv-pos-total b{color:#f7941d;font-size:17px}
.vcv-pos-total .metodo{font-style:normal;font-size:11.5px;color:#0b7d72;font-weight:700;
  background:#e0f7f4;border-radius:6px;padding:2px 8px;margin-left:8px;vertical-align:middle}
.vcv-pos-total .metodo.card{color:#a35b00;background:#fff3e0}

.vcv-pos-agora{background:#fff;border:1px solid #e3e7ec;border-radius:16px;box-shadow:0 6px 24px rgba(14,42,71,.08);
  padding:16px 20px;margin-bottom:14px}
.vcv-pos-agora h3{font-size:16px;color:#0f2f5b;margin:0 0 8px}
.vcv-pos-agora .pp{display:flex;gap:12px;padding:7px 0;align-items:flex-start}
.vcv-pos-agora .n{flex:0 0 30px;height:30px;border-radius:50%;background:#e7f6ec;display:grid;place-items:center;font-size:15px}
.vcv-pos-agora .tx{font-size:14px}
.vcv-pos-agora .tx b{color:#0f2f5b}
.vcv-pos-agora .tx small{display:block;color:#6b7a89;font-size:12.5px}

.vcv-pos-acoes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
@media(max-width:520px){.vcv-pos-acoes{grid-template-columns:1fr}}
.vcv-pos-acoes .b{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;
  padding:13px;font-weight:700;font-size:14px;text-decoration:none}
.vcv-pos-acoes .cal{background:#0e2a47;color:#fff}
.vcv-pos-acoes .minhas{background:#fff;color:#0e2a47;border:1.5px solid #0e2a47}
.vcv-pos-acoes .zap{background:#25d366;color:#06341c;grid-column:1/-1}
.vcv-pos .vcv-politica{margin-bottom:24px}