/* =========================================================================
   PRISMA — Checkout dedicado (/finalizar-compra/)
   Funil de alta conversão: sem distrações, 2 colunas, resumo sticky,
   acordeão de resumo no mobile. Namespace .prc-*
   ========================================================================= */

body.prc{background:#fff;margin:0}
.prc-shell{min-height:100vh;display:flex;flex-direction:column}

/* ---------- Header do funil ---------- */
.prc-top{border-bottom:1px solid var(--pr-border);background:#fff}
.prc-top__in{max-width:1200px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.prc-logo{font-weight:900;font-size:1.3rem;color:var(--pr-ink);letter-spacing:-.02em;display:flex;align-items:center;min-width:0}
.prc-logo img{max-height:40px;width:auto}
.prc-steps{display:none;align-items:center;gap:10px;font-size:.86rem;color:var(--pr-muted)}
.prc-steps a{color:var(--pr-accent);font-weight:600}
.prc-steps b{color:var(--pr-ink);font-weight:700}
.prc-steps__sep{color:var(--pr-border-2)}
.prc-lock{display:inline-flex;align-items:center;gap:7px;color:var(--pr-accent);font-weight:700;font-size:.86rem;white-space:nowrap}
@media(min-width:800px){.prc-steps{display:flex}}
@media(max-width:480px){.prc-lock__txt{display:none}}

/* ---------- Wrapper ---------- */
.prc-wrap{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:22px 20px 64px}
.prc-h{font-size:1.2rem;font-weight:800;color:var(--pr-ink);margin:0 0 16px;letter-spacing:-.01em}

/* ---------- Grelha ---------- */
.prc-grid{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}
.prc-main{min-width:0;display:flex;flex-direction:column;gap:20px}
.prc-aside{min-width:0}
@media(min-width:1000px){
  .prc-grid{grid-template-columns:minmax(0,1fr) 430px;gap:44px}
  .prc-main{order:1}
  .prc-aside{order:2;position:sticky;top:24px}
}

/* ---------- Acordeão do resumo (mobile) ---------- */
.prc-sum-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--pr-soft-2);border:1px solid var(--pr-border);border-radius:12px;padding:15px 16px;font:inherit;font-weight:700;color:var(--pr-accent);cursor:pointer}
.prc-sum-toggle__lbl{display:inline-flex;align-items:center;gap:9px}
.prc-sum-toggle__total{color:var(--pr-ink);font-size:1.05rem;font-weight:800}
.prc-chev{transition:transform .2s ease}
.prc-aside.is-open .prc-chev{transform:rotate(180deg)}
.prc-summary{display:none;margin-top:10px;background:var(--pr-soft-2);border:1px solid var(--pr-border);border-radius:16px;padding:18px 20px}
.prc-aside.is-open .prc-summary{display:block}
@media(min-width:1000px){
  .prc-sum-toggle{display:none}
  .prc-summary{display:block!important;margin-top:0;padding:22px 24px}
}

/* ---------- Cartões (faturação / envio / notas / pagamento) ---------- */
.prc-card,
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-additional-fields{background:#fff;border:1px solid var(--pr-border);border-radius:16px;padding:22px;box-shadow:var(--pr-shadow)}
.woocommerce-checkout .woocommerce-shipping-fields{background:none;border:0;box-shadow:none;padding:0}
.woocommerce-checkout .woocommerce-shipping-fields .shipping_address{background:#fff;border:1px solid var(--pr-border);border-radius:16px;padding:4px 22px 22px;box-shadow:var(--pr-shadow);margin-top:14px}
.prc-cards{display:flex;flex-direction:column;gap:20px}
.woocommerce-checkout #customer_details h3,.prc-paycard .prc-h{font-size:1.2rem;font-weight:800;color:var(--pr-ink);margin:0 0 16px}
.woocommerce-checkout #ship-to-different-address{margin:0;font-size:1.05rem}
.woocommerce-checkout #ship-to-different-address label{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--pr-ink);cursor:pointer;margin:0}
.woocommerce-checkout #ship-to-different-address input{width:18px;height:18px;accent-color:var(--pr-accent);margin:0}

/* ---------- Campos ---------- */
.prc form .form-row{margin:0 0 14px;padding:0;float:none!important;width:auto!important}
.prc form .form-row label{display:block;font-weight:600;color:var(--pr-ink);margin:0 0 6px;font-size:.88rem}
.prc form .form-row label.checkbox{display:inline-flex;align-items:center;gap:8px;font-weight:500}
.prc form .form-row .required{color:var(--pr-accent);text-decoration:none;border:0}
.prc form .form-row .optional{color:var(--pr-muted);font-weight:400}
.prc .woocommerce-input-wrapper{display:block;width:100%}
.prc form .form-row input.input-text,
.prc form .form-row textarea,
.prc form .form-row select{width:100%;border:1.5px solid var(--pr-border-2);border-radius:10px;padding:13px 14px;min-height:50px;font:inherit;font-size:1rem;background:#fff;color:var(--pr-text);transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}
.prc form .form-row textarea{min-height:96px;resize:vertical}
.prc form .form-row input.input-text:focus,
.prc form .form-row textarea:focus,
.prc form .form-row select:focus{border-color:var(--pr-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--pr-accent) 20%,transparent);outline:0}
.prc form .form-row.woocommerce-invalid input.input-text,
.prc form .form-row.woocommerce-invalid select{border-color:#e5484d}
.prc .select2-container--default .select2-selection--single{border:1.5px solid var(--pr-border-2)!important;border-radius:10px!important;min-height:50px!important;display:flex!important;align-items:center;padding:0 14px!important}
.prc .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:normal;padding:0;color:var(--pr-text)}
.prc .select2-container--default .select2-selection--single .select2-selection__arrow{height:48px;right:8px}
.prc .select2-container--default.select2-container--open .select2-selection--single,
.prc .select2-container--default.select2-container--focus .select2-selection--single{border-color:var(--pr-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--pr-accent) 20%,transparent)!important}
.select2-dropdown{border:1.5px solid var(--pr-border-2);border-radius:10px;font-family:var(--pr-font)}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--pr-accent)}

/* Grelha 2 colunas dentro dos cartões */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.woocommerce-checkout .form-row-first{grid-column:1}
.woocommerce-checkout .form-row-last{grid-column:2}
.woocommerce-checkout .form-row-wide,
.woocommerce-checkout .form-row.notes,
.woocommerce-checkout .create-account,
.woocommerce-checkout .woocommerce-account-fields{grid-column:1/-1}
@media(max-width:560px){
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{grid-template-columns:1fr}
  .woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{grid-column:1}
}

/* ---------- Resumo: tabela achatada ---------- */
.prc .woocommerce-checkout-review-order-table{display:block;width:100%;border:0;margin:0;border-collapse:collapse}
.prc .woocommerce-checkout-review-order-table thead{display:none}
.prc .woocommerce-checkout-review-order-table tbody,
.prc .woocommerce-checkout-review-order-table tfoot,
.prc .woocommerce-checkout-review-order-table tr{display:block;width:100%}
.prc .woocommerce-checkout-review-order-table td,
.prc .woocommerce-checkout-review-order-table th{padding:0;border:0;background:none;text-align:left}
.prc .woocommerce-checkout-review-order-table tbody{max-height:320px;overflow-y:auto;padding-right:2px}
.prc .woocommerce-checkout-review-order-table tbody tr.cart_item{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--pr-border)}
.prc .woocommerce-checkout-review-order-table tbody tr.cart_item:last-child{border-bottom:0}
.prc-co-item-media{position:relative;flex:0 0 62px}
.prc-co-item-media img,.pr-co-item-media img{width:62px;height:62px;border-radius:12px;object-fit:cover;border:1px solid var(--pr-border);display:block;margin:0;background:#fff}
.pr-co-item-media{position:relative;flex:0 0 62px}
.pr-co-item-qty{position:absolute;top:-7px;right:-7px;min-width:21px;height:21px;padding:0 6px;background:var(--pr-ink);color:#fff;border-radius:999px;font-size:.7rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--pr-soft-2)}
.pr-co-item-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.pr-co-item-name{font-weight:600;color:var(--pr-ink);font-size:.9rem;line-height:1.35}
.prc .woocommerce-checkout-review-order-table td.product-name{flex:1;display:flex;align-items:center;gap:12px;font-size:.9rem;min-width:0}
.prc .woocommerce-checkout-review-order-table td.product-total{font-weight:700;color:var(--pr-ink);white-space:nowrap;font-size:.92rem}
.prc .variation{margin:0;font-size:.78rem;color:var(--pr-muted)}
.prc .variation dt,.prc .variation dd{display:inline;margin:0}

/* Totais */
.prc .woocommerce-checkout-review-order-table tfoot{margin-top:12px;padding-top:12px;border-top:1px solid var(--pr-border)}
.prc .woocommerce-checkout-review-order-table tfoot tr{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:5px 0;font-size:.94rem}
.prc .woocommerce-checkout-review-order-table tfoot th{font-weight:500;color:var(--pr-muted)}
.prc .woocommerce-checkout-review-order-table tfoot td{text-align:right;font-weight:600;color:var(--pr-ink)}
.prc .woocommerce-checkout-review-order-table tfoot tr.cart-discount td{color:var(--pr-accent)}
.prc .woocommerce-checkout-review-order-table tfoot tr.order-total{margin-top:6px;padding-top:12px;border-top:1px solid var(--pr-border)}
.prc .woocommerce-checkout-review-order-table tfoot tr.order-total th{font-size:1.05rem;font-weight:800;color:var(--pr-ink)}
.prc .woocommerce-checkout-review-order-table tfoot tr.order-total td{font-size:1.3rem;font-weight:800}
.prc .woocommerce-checkout-review-order-table small,.prc .includes_tax{font-size:.76rem;color:var(--pr-muted);font-weight:400;display:block}
.prc .woocommerce-shipping-totals td ul{list-style:none;margin:0;padding:0}
.prc .woocommerce-shipping-totals td li{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin:0}
.prc .woocommerce-shipping-totals td li label{margin:0;font-weight:600}

/* ---------- Cupão ---------- */
.prc-coupon{display:flex;gap:8px;margin-top:16px}
.prc-coupon__input{flex:1;border:1.5px solid var(--pr-border-2);border-radius:10px;padding:0 14px;min-height:46px;font:inherit;font-size:.95rem;background:#fff;min-width:0}
.prc-coupon__input:focus{border-color:var(--pr-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--pr-accent) 20%,transparent);outline:0}
.prc-coupon__btn{border:0;border-radius:10px;background:var(--pr-ink);color:#fff;font:inherit;font-weight:700;padding:0 18px;min-height:46px;cursor:pointer;transition:background .15s}
.prc-coupon__btn:hover{background:var(--pr-accent)}
.prc-coupon__btn:disabled{opacity:.6;cursor:wait}
.prc-coupon__msg .woocommerce-error,.prc-coupon__msg .woocommerce-message{margin:10px 0 0;padding:10px 12px;border-radius:8px;font-size:.85rem;list-style:none;background:var(--pr-soft);border-left:3px solid var(--pr-accent);color:var(--pr-text)}
.prc-coupon__msg .woocommerce-error{border-left-color:#e5484d}

/* ---------- Pagamento ---------- */
.prc-paynote{display:flex;align-items:center;gap:7px;color:var(--pr-muted);font-size:.86rem;margin:-8px 0 16px}
.prc-paynote .pr-i{color:var(--pr-accent)}
.prc #payment{background:transparent;border-radius:0}
.prc #payment ul.wc_payment_methods{list-style:none;margin:0 0 18px;padding:0;border:0;display:flex;flex-direction:column;gap:10px}
/* O input radio é IRMÃO do label no markup do WooCommerce — ancora-se em absoluto. */
.prc #payment ul.wc_payment_methods li{display:block;position:relative;background:#fff;border:1.5px solid var(--pr-border-2);border-radius:12px;margin:0;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}
.prc #payment ul.wc_payment_methods li:hover{border-color:var(--pr-accent)}
.prc #payment ul.wc_payment_methods li:has(input:checked){border-color:var(--pr-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--pr-accent) 16%,transparent)}
.prc #payment ul.wc_payment_methods li input[type=radio]{position:absolute;left:16px;top:18px;width:20px;height:20px;margin:0;accent-color:var(--pr-accent)}
.prc #payment ul.wc_payment_methods li>label{display:flex!important;align-items:center;gap:12px;padding:15px 16px 15px 48px;margin:0!important;font-weight:700;color:var(--pr-ink);cursor:pointer;font-size:.98rem;width:100%;min-width:0;float:none}
.prc #payment ul.wc_payment_methods li img{max-height:26px;width:auto;margin:0 0 0 auto;padding:0}
.prc #payment div.payment_box{position:relative;background:var(--pr-soft);margin:0;padding:14px 16px;font-size:.88rem;line-height:1.55;color:var(--pr-text);border-top:1px solid var(--pr-border);border-radius:0}
.prc #payment div.payment_box::before{display:none}
.prc #payment div.payment_box p{margin:0 0 .6em}
.prc #payment div.payment_box p:last-child{margin:0}
.prc #payment div.payment_box iframe{width:100%!important;max-width:100%;border:0;display:block}
.prc #payment .woocommerce-terms-and-conditions-wrapper{margin:0 0 14px;font-size:.84rem;color:var(--pr-muted)}
.prc #payment .woocommerce-privacy-policy-text p{font-size:.8rem;color:var(--pr-muted)}
.prc #payment .place-order{padding:0;margin:0;float:none!important;width:100%!important}

/* Botão principal */
.prc #payment #place_order{display:block;width:100%;float:none!important;background:var(--pr-accent);color:#fff;border:0;border-radius:12px;padding:17px 20px;font:inherit;font-size:1.1rem;font-weight:800;letter-spacing:.01em;cursor:pointer;transition:background .15s ease,transform .12s ease,box-shadow .15s ease;box-shadow:0 10px 24px color-mix(in srgb,var(--pr-accent) 30%,transparent)}
.prc #payment #place_order:hover{background:var(--pr-accent-dark);transform:translateY(-1px)}
.prc #payment #place_order:active{transform:translateY(0)}

/* Selos de confiança */
.pr-co-trust{margin:16px 0 0;display:flex;flex-direction:column;gap:12px;clear:both;width:100%}
.pr-co-trust__secure{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.84rem;color:var(--pr-muted);font-weight:600;text-align:center}
.pr-co-trust__secure .pr-i{color:var(--pr-accent);flex:0 0 auto}
.pr-co-trust__badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.pr-co-trust__badges b{font-size:.68rem;font-weight:800;letter-spacing:.02em;background:#fff;border:1px solid var(--pr-border);border-radius:6px;padding:5px 9px;color:var(--pr-muted)}

/* ---------- Banner de envio (kairos-shipping, vem com estilos inline escuros) ---------- */
.prc-wrap div[style*="background:#111"]{background:var(--pr-soft-2)!important;border:1px solid var(--pr-border)!important;border-left:3px solid var(--pr-accent)!important;border-radius:12px!important}
.prc-wrap div[style*="background:#111"] p{color:var(--pr-ink)!important}
.prc-wrap div[style*="background:#111"] p+p{color:var(--pr-muted)!important;font-size:.82rem!important}

/* ---------- Avisos / erros ---------- */
.prc .woocommerce-NoticeGroup{margin:0 0 18px}
.prc .woocommerce-error,.prc .woocommerce-info,.prc .woocommerce-message{list-style:none;margin:0 0 14px;padding:14px 16px;border-radius:12px;background:var(--pr-soft);border:1px solid var(--pr-border);border-left:3px solid var(--pr-accent);color:var(--pr-text);font-size:.92rem}
.prc .woocommerce-error{border-left-color:#e5484d;background:#fdf3f3;border-color:#f3d5d5}
.prc .woocommerce-error li{margin:0 0 6px}
.prc .woocommerce-error li:last-child{margin:0}
.prc .woocommerce-info a,.prc .woocommerce-message a{color:var(--pr-accent);font-weight:700}
.prc form.login,.prc form.register{border:1px solid var(--pr-border);border-radius:16px;background:#fff;padding:22px;margin:0 0 18px;box-shadow:var(--pr-shadow)}

/* ---------- Página de confirmação (order-received) ---------- */
.prc-wrap--received{max-width:760px}
.prc-wrap--received .woocommerce-thankyou-order-received{font-size:1.4rem;font-weight:800;color:var(--pr-ink);text-align:center;margin:8px 0 22px}
.prc-wrap--received ul.woocommerce-thankyou-order-details{list-style:none;margin:0 0 22px;padding:18px 20px;background:var(--pr-soft-2);border:1px solid var(--pr-border);border-radius:14px;display:flex;flex-wrap:wrap;gap:14px 28px}
.prc-wrap--received ul.woocommerce-thankyou-order-details li{border:0;padding:0;margin:0;font-size:.82rem;color:var(--pr-muted);text-transform:uppercase;letter-spacing:.03em}
.prc-wrap--received ul.woocommerce-thankyou-order-details li strong{display:block;font-size:1rem;color:var(--pr-ink);text-transform:none;letter-spacing:0;margin-top:3px}
.prc-wrap--received .woocommerce-order-details,.prc-wrap--received .woocommerce-customer-details{background:#fff;border:1px solid var(--pr-border);border-radius:14px;padding:20px;margin:0 0 18px;box-shadow:var(--pr-shadow)}
.prc-wrap--received table.shop_table{width:100%;border:0}

/* ---------- Rodapé do funil ---------- */
.prc-foot{border-top:1px solid var(--pr-border);padding:18px 20px 26px;text-align:center;color:var(--pr-muted);font-size:.8rem}
.prc-foot__links{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;margin:0 0 8px}
.prc-foot__links a{color:var(--pr-muted);text-decoration:underline;text-underline-offset:3px}
.prc-foot__links a:hover{color:var(--pr-accent)}
.prc-foot p{margin:0}

/* Kairós Pay / Stripe: caixa cola ao campo real (sem retângulo vazio gigante) */
#kairos-payment-element{min-height:0!important}
#kairos-pay-wrap{padding:0!important}
#kairos-pay-wrap>div[style*="min-height"]{min-height:0!important}
.woocommerce-checkout #payment div.payment_box{overflow:hidden}
.woocommerce-checkout #payment div.payment_box:empty{display:none}
