/* ============================================================
   MIVRA · PÁGINAS DO WOOCOMMERCE
   Finalizar compra, pedido recebido, minha conta e páginas de texto,
   no mesmo desenho da vitrine (usa as variáveis do style.css).
   ============================================================ */

.wc-main{min-height:60vh}
.wc-main .wrap{min-width:0}
.page-wrap{padding-block:32px 96px;display:grid;gap:20px;max-width:860px}
.page-wrap .entry{display:grid;gap:14px;font-size:15.5px;line-height:1.65;color:var(--ink-2)}
.page-wrap .entry h2,.page-wrap .entry h3{color:var(--ink);font-size:21px;margin:14px 0 0}
.page-wrap .entry a{text-decoration:underline;text-underline-offset:3px}
.page-wrap .entry ul,.page-wrap .entry ol{padding-left:20px;margin:0;display:grid;gap:6px}

/* ---------- checkout: estrutura ---------- */
.wc-checkout .wa-float{display:none}
form.checkout{margin:0}
form.checkout .co{padding-top:18px}
.co-main{display:grid;gap:16px;min-width:0}
.co-sum .box{gap:14px}
.sum-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.co-steps a{color:inherit}
.co-steps a:hover{color:var(--ink)}
.co-submit{display:grid;gap:12px;margin:0}
.co-submit .inst{font-size:12.5px;flex-wrap:nowrap;align-items:flex-start}
.co-submit .inst .ic{flex:none}
#place_order{font-size:16px;height:56px}
#place_order:not(.pix){background:var(--ink);border-color:var(--ink)}
form.checkout.processing #place_order{opacity:.6;pointer-events:none}
.mivra-sum{display:grid;gap:14px}
.sum-it.with-x{grid-template-columns:52px minmax(0,1fr) auto 32px}
.mivra-sum .sum-it strong,.mivra-sum .sum-it strong *{white-space:nowrap}
.mivra-sum .sum-it strong span,.mivra-sum .tot span span{display:inline;color:inherit;font-size:inherit}
.sum-x{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--mut);background:transparent;border:0;cursor:pointer}
.sum-x:hover,.sum-x:focus-visible{background:var(--bg);color:var(--alert)}
.sum-x .ic{width:16px;height:16px}
.mivra-sum .tot{border-top:1px solid var(--line);padding-top:12px}
.mivra-sum .tot .woocommerce-Price-amount{font-variant-numeric:tabular-nums}
.mivra-sum .order-total .pixr{color:var(--pix)}
.mivra-sum .warn .link{background:none;border:0;padding:0;font:inherit;cursor:pointer;text-decoration:underline}
.bar{height:8px;border-radius:999px;background:var(--soft);overflow:hidden}
.bar i{display:block;height:100%;background:var(--ink);border-radius:inherit}
.bar.ok i{background:var(--pix)}

/* ---------- campos ---------- */
.woocommerce-billing-fields h3{display:none}
.woocommerce-billing-fields__field-wrapper,.mivra-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;border:0;padding:0;margin:0;min-width:0}
.mivra-pix{border:0;padding:0;margin:0}
form.checkout .form-row{display:grid;gap:6px;margin:0;padding:0;min-width:0;grid-column:1/-1}
form.checkout .form-row-first,form.checkout .form-row-last{grid-column:auto}
form.checkout .form-row label{font-size:13px;font-weight:600;line-height:1.3}
form.checkout .form-row label .optional{font-weight:500;color:var(--mut)}
form.checkout abbr.required{color:var(--alert);text-decoration:none;border:0;cursor:default}
.woocommerce-input-wrapper{display:block;min-width:0}
form.checkout .input-text,form.checkout select,form.checkout textarea,.wc-main .woocommerce-Input,.wc-main .input-text{
  height:48px;border-radius:var(--r-s);border:1.5px solid var(--line);background:var(--bg);padding:0 14px;font:inherit;font-size:16px;color:var(--ink);width:100%;min-width:0;-webkit-appearance:none;appearance:none}
form.checkout select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23141414' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:38px}
form.checkout textarea{height:84px;padding:12px 14px;resize:vertical}
form.checkout .input-text:focus,form.checkout select:focus,form.checkout textarea:focus{outline:0;border-color:var(--ink);background:var(--surface)}
form.checkout .woocommerce-invalid .input-text,form.checkout .woocommerce-invalid select{border-color:var(--alert);background:var(--alert-bg)}
form.checkout .woocommerce-validated .input-text{border-color:var(--line)}
.mivra-hidden,#billing_country_field{display:none!important}
.co-main .field textarea{font-size:16px}
/* estado (select com busca do WooCommerce) */
.select2-container{width:100%!important}
.select2-container .select2-selection--single{height:48px;border-radius:var(--r-s);border:1.5px solid var(--line);background:var(--bg)}
.select2-container .select2-selection--single .select2-selection__rendered{line-height:45px;padding-left:14px;color:var(--ink)}
.select2-container .select2-selection--single .select2-selection__arrow{height:46px;right:8px}
.select2-container--open .select2-selection--single{border-color:var(--ink);background:var(--surface)}
.select2-dropdown{border:1.5px solid var(--ink);border-radius:var(--r-s);overflow:hidden}
.select2-results__option--highlighted[aria-selected],.select2-results__option--highlighted[data-selected]{background:var(--ink)!important}

/* ---------- formas de pagamento ---------- */
.wc_payment_methods{list-style:none;margin:0;padding:0}
.wc_payment_method.radio{grid-template-columns:22px minmax(0,1fr) auto;row-gap:0}
.wc_payment_method.radio>label{display:grid;gap:2px;cursor:pointer;margin:0;min-width:0}
.wc_payment_method.radio>label b{font-size:15px}
.wc_payment_method.radio>label span{font-size:13px;color:var(--mut)}
.wc_payment_method.radio>strong:empty{display:none}
.wc_payment_method .payment_box{grid-column:1/-1;padding-top:14px;min-width:0}
.wc_payment_method .payment_box>p{margin:0 0 8px;font-size:13.5px;color:var(--mut)}
.wc_payment_method .payment_box .mivra-card .form-row{grid-column:1/-1}
.wc_payment_method .payment_box .mivra-card .form-row-first,.wc_payment_method .payment_box .mivra-card .form-row-last{grid-column:auto}
.wc_payment_method .payment_box .clear{display:none}
.mivra-nopay{list-style:none}
.wc_payment_method.radio:has(>input:checked){box-shadow:inset 0 0 0 2px var(--ink)}
.wc_payment_method.pixr:has(>input:checked){box-shadow:inset 0 0 0 2px var(--pix)}

/* ---------- termo e política ---------- */
#f-aceite.shake{animation:mv-shake .45s}
@keyframes mv-shake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.err-termo{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:600;color:var(--alert);margin-top:-6px}
.err-termo .ic{width:16px;height:16px}

/* ---------- avisos do WooCommerce ---------- */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-NoticeGroup,.woocommerce-notices-wrapper{display:grid;gap:10px;margin-block:14px 0}
.woocommerce-error,.woocommerce-message,.woocommerce-info,.wc-block-components-notice-banner{list-style:none;margin:0;padding:14px 16px;border-radius:var(--r-s);font-size:14.5px;display:grid;gap:6px;line-height:1.45}
.woocommerce-error,.wc-block-components-notice-banner.is-error{background:var(--alert-bg);color:var(--alert);box-shadow:inset 0 0 0 1.5px var(--alert)}
.woocommerce-message,.wc-block-components-notice-banner.is-success{background:var(--pix-bg);color:var(--pix)}
.woocommerce-info,.wc-block-components-notice-banner.is-info{background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line)}
.woocommerce-error li,.woocommerce-message li{margin:0}
.wc-block-components-notice-banner{grid-template-columns:20px 1fr;align-items:start}
.wc-block-components-notice-banner>svg{width:20px;height:20px;fill:currentColor}
.woocommerce-error a,.woocommerce-info a,.woocommerce-message a{text-decoration:underline}
.woocommerce-message .button,.woocommerce-info .button{display:none}

/* ---------- pedido recebido ---------- */
.woocommerce-order .done{padding-top:32px}
/* Pix da Appmax: título e prazo em cima (à esquerda), QR Code e "Copiar código" no meio, passos embaixo */
.mivra-paybox{text-align:left}
.mivra-paybox #wrapper{display:grid;gap:18px}
.mivra-paybox #wrapper>.text-header{order:1}
.mivra-paybox #wrapper>div:not(.text-header):not(.col-md-6){order:2;display:grid!important;justify-items:center;gap:6px;padding:16px;border-radius:var(--r-s);background:var(--bg)}
.mivra-paybox #wrapper>.col-md-6{order:3}
.mivra-paybox .text-header h2{font-size:20px;line-height:1.3;margin:0}
.mivra-paybox .text-header h2+h2{font-size:15px;font-weight:400;color:var(--ink-2);margin-top:4px}
.mivra-paybox .text-header #countdown{font-weight:700}
.mivra-paybox .col-md-6{font-size:14px;color:var(--ink-2);display:grid;gap:6px;padding-top:14px;border-top:1px solid var(--line,rgba(0,0,0,.08))}
.mivra-paybox .col-md-6 p{margin:0}
.mivra-paybox #demo:empty{display:none}
.mivra-paybox .text-center{text-align:center}
.mivra-paybox img{display:block;margin-inline:auto;width:min(220px,100%);height:auto;border-radius:var(--r-s);background:#fff;padding:8px}
.mivra-paybox #get-qrcode{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 24px;border-radius:999px;background:var(--pix);color:#fff;border:0;font:inherit;font-weight:600;cursor:pointer;margin-top:8px}
.mivra-paybox #get-qrcode.disabled{background:var(--ink)}
.mivra-paybox .button-view-boleto{display:inline-flex;height:48px;align-items:center;padding:0 24px;border-radius:999px;background:var(--ink);color:#fff}
.done .btn .ic{width:20px;height:20px}

/* ---------- minha conta / login ---------- */
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.woocommerce-MyAccount-navigation a{display:inline-flex;height:38px;align-items:center;padding:0 14px;border-radius:999px;box-shadow:inset 0 0 0 1.3px var(--line);font-size:14px;font-weight:600}
.woocommerce-MyAccount-navigation .is-active a{background:var(--ink);color:var(--on-ink);box-shadow:none}
.woocommerce-MyAccount-content{margin-top:20px;display:grid;gap:14px}
.wc-main .woocommerce-form-row{display:grid;gap:6px;margin:0 0 12px}
.wc-main .woocommerce-form-row label{font-size:13px;font-weight:600}
.wc-main .woocommerce-button,.wc-main button.button,.wc-main a.button{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 24px;border-radius:999px;background:var(--ink);color:var(--on-ink);border:0;font:inherit;font-weight:600;cursor:pointer}
.wc-main table.shop_table{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface);border-radius:var(--r-s);overflow:hidden}
.wc-main table.shop_table th,.wc-main table.shop_table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line)}

@media (max-width:640px){
  .woocommerce-billing-fields__field-wrapper,.mivra-card{grid-template-columns:minmax(0,1fr)}
  form.checkout .form-row-first,form.checkout .form-row-last{grid-column:1/-1}
  .wc_payment_method .payment_box .mivra-card .form-row-first,.wc_payment_method .payment_box .mivra-card .form-row-last{grid-column:auto}
  .wc_payment_method .payment_box .mivra-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .wc_payment_method .payment_box .mivra-card .form-row-wide{grid-column:1/-1}
  form.checkout .co{padding-top:12px}
}
.mivra-paybox fieldset{border:0;padding:0;margin:0;min-width:0}
.mivra-paybox #countdown{color:var(--pix);font-variant-numeric:tabular-nums}

/* erro embaixo da caixa (uma frase curta, só em português) */
form.checkout .checkout-inline-error-message{margin:2px 0 0;font-size:12.5px;font-weight:600;color:var(--alert);line-height:1.3}
form.checkout .woocommerce-invalid .checkout-inline-error-message::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--alert);margin:0 6px 1px 0;vertical-align:middle}
.woocommerce-NoticeGroup-checkout li[data-id]{display:none}
