.extenso-pagamentos{
    width:100%;
    max-width:none;
    margin:4px 0 0;
    font:inherit;
    color:inherit;
}
.extenso-pagamentos--product,
.extenso-pagamentos--product .extenso-pagamentos__panel{
    width:100%;
    box-sizing:border-box;
    position:relative;
    background:#fff !important;
    border:0 !important;
    border-radius:0;
    overflow:visible;
    box-shadow:none !important;
    padding:7px 0 4px;
}
.extenso-pagamentos--product .extenso-pagamentos__panel{
    background:#fff !important;
    border:0;
    border-radius:0;
    overflow:visible;
    box-shadow:none;
}
.extenso-pagamentos__top{
    width:100%;
    box-sizing:border-box;
    min-height:46px;
    padding:5px 8px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    position:relative;
    background:#fff !important;
    border-top:0;
    border-bottom:0;
}
.extenso-pagamentos__top::before,
.extenso-pagamentos__top::after{
    content:"";
    position:absolute;
    left:23px;
    right:23px;
    height:1px;
    background:#E9E9E9;
    pointer-events:none;
}
.extenso-pagamentos__top::before{top:0}
.extenso-pagamentos__top::after{bottom:0}
.extenso-payment-closed-copy{
    min-width:0;
    display:flex;
    align-items:center;
    gap:7px;
    color:#252b35;
    white-space:nowrap;
}
.extenso-payment-card-icon{
    width:22px;
    height:22px;
    flex:0 0 22px;
    border-radius:4px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#F2F0ED;
    color:#6E7681;
    font-size:8px;
}
.extenso-payment-method{
    font-size:13px;
    line-height:1.1;
    font-weight:700;
}
.extenso-payment-condition{
    font-size:11px;
    line-height:1.1;
    color:#59606a;
}
".extenso-pagamentos__toggle{
    appearance:none !important;
    -webkit-appearance:none !important;
    flex:0 0 auto !important;
    min-width:132px !important;
    height:40px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    padding:8px 4px !important;
    transform:translateX(-20px) !important;
    border:0 !important;
    outline:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-color:transparent !important;
    color:#182B49 !important;
    box-shadow:none !important;
    font:inherit !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1 !important;
    cursor:pointer !important;
    text-align:center !important;
    text-decoration:none !important;
    transition:color .16s ease,opacity .16s ease,transform .12s ease !important;
}
.extenso-pagamentos__toggle:hover{
    background:transparent !important;
    background-color:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    color:#182B49 !important;
    opacity:.72;
}
.extenso-pagamentos__toggle:active{transform:translateY(1px)}
.extenso-pagamentos__toggle:focus-visible{
    outline:2px solid rgba(24,43,73,.16) !important;
    outline-offset:3px;
    border:0 !important;
    border-radius:3px;
    background:transparent !important;
}.extenso-pagamentos__toggle b{
    font-size:17px;
    line-height:10px;
    color:#182B49;
    transition:transform .16s ease;
}
.extenso-pagamentos__toggle[aria-expanded="true"] b{
    transform:rotate(180deg) translateY(-1px);
}
.extenso-pagamentos__body{
    padding:0 11px 10px;
    background:#fff;
}
.extenso-pagamentos__details-label{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:9px 0 7px;
    border-top:1px solid #eeeeee;
}
.extenso-pagamentos__details-label span{
    font-size:11px;
    font-weight:600;
}
.extenso-pagamentos__details-label small{
    font-size:10px;
    color:#6f7480;
}
.extenso-pagamentos__brands{
    display:flex;
    align-items:center;
    gap:7px;
    padding:0 0 9px;
    border-bottom:1px solid #eeeeee;
}
.extenso-pay-brand{
    display:flex;
    align-items:center;
    justify-content:center;
    height:22px;
    min-width:33px;
    padding:2px 4px;
    border:1px solid #ededed;
    border-radius:3px;
    background:#fff;
}
.extenso-pay-brand img{
    display:block;
    width:auto;
    max-width:52px;
    max-height:19px;
    object-fit:contain;
}
.extenso-pagamentos__installments{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5px 16px;
    padding:9px 0 10px;
}
.extenso-parcela{
    display:grid;
    grid-template-columns:27px 1fr;
    column-gap:5px;
    align-items:center;
    min-height:24px;
    padding:3px 5px;
    border-radius:5px;
    color:inherit;
    font-size:12px;
    line-height:1.15;
}
.extenso-parcela strong{font-weight:700}
.extenso-parcela span{white-space:nowrap}
.extenso-parcela small{
    grid-column:2;
    margin-top:-1px;
    font-size:9px;
    color:#6f7480;
}
.extenso-parcela.is-highlighted{
    background:#fff5ee;
}
.extenso-parcela.is-highlighted strong{
    color:#f05a00;
}
.extenso-pagamentos__boleto{
    display:grid;
    grid-template-columns:30px 1fr auto;
    align-items:center;
    gap:8px;
    padding:10px 0;
    border-top:1px solid #eeeeee;
}
.extenso-boleto-icon{
    display:flex;
    align-items:center;
    justify-content:center;
}
.extenso-boleto-icon img{
    display:block;
    max-width:27px;
    max-height:27px;
    object-fit:contain;
}
.extenso-pagamentos__boleto strong{
    display:block;
    font-size:12px;
    line-height:1.15;
}
.extenso-pagamentos__boleto small{
    display:block;
    margin-top:2px;
    font-size:10px;
    line-height:1.1;
    color:#6f7480;
}
.extenso-pagamentos__boleto>b{
    font-size:12px;
    white-space:nowrap;
}
.extenso-pagamentos__banner{
    margin-top:7px;
    min-height:30px;
    border-radius:5px;
    background:#f5f8fc;
    display:flex;
    align-items:center;
    gap:7px;
    padding:3px 7px;
    border:1px solid #edf1f6;
}
.extenso-pagamentos__banner img{
    max-width:72px;
    max-height:21px;
    width:auto;
    height:auto;
    object-fit:contain;
}
.extenso-pagamentos__banner strong{
    display:block;
    font-size:8px;
    line-height:1.15;
    color:#315b8f;
    font-weight:600;
}
.extenso-pagamentos__banner small{
    display:block;
    margin-top:1px;
    font-size:7px;
    color:#718096;
}

/* The Child owns the price + card summary above this component. */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-card-row,
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-installments{
    display:flex !important;
}

@media(max-width:767px){
    .extenso-pagamentos{
        margin-top:4px;
    }
    .extenso-pagamentos__top{
        min-height:50px;
        padding:6px 8px 6px 9px;
        gap:7px;
    }
    .extenso-payment-closed-copy{
        gap:5px;
    }
    .extenso-payment-card-icon{
        width:21px;
        height:21px;
        flex-basis:21px;
    }
    .extenso-payment-method{
        font-size:12px;
    }
    .extenso-payment-condition{
        font-size:9px;
    }
    .extenso-pagamentos__toggle{
        min-width:120px;
        height:38px;
        padding:7px 10px;
        font-size:13px;
    }
    .extenso-pagamentos__body{
        padding:0 9px 8px;
    }
    .extenso-pagamentos__installments{
        grid-template-columns:1fr;
        gap:4px;
    }
}

/* v1.2.4 — Parcelas is a quiet navigation action, not a competing CTA. */
.extenso-pagamentos--product .extenso-pagamentos__top{
    background:#fff !important;
    border:0 !important;
    box-shadow:none !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle{
    margin-left:auto;
}

/* v1.2.5 — Parcelas is a text action only: no border, no background, theme dark. */
.extenso-pagamentos--product .extenso-pagamentos__toggle,
.extenso-pagamentos--product .extenso-pagamentos__toggle:hover,
.extenso-pagamentos--product .extenso-pagamentos__toggle:active,
.extenso-pagamentos--product .extenso-pagamentos__toggle:focus,
.extenso-pagamentos--product .extenso-pagamentos__toggle:focus-visible {
    border: 0 !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #182B49 !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle b {
    color: #182B49 !important;
}

/* v1.2.7 — delicate payment separator lines */
.extenso-pagamentos--product .extenso-pagamentos__top{
    border-top:0 !important;
    border-bottom:0 !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle{
    transform:translateX(-20px) !important;
    align-items:center !important;
    justify-content:center !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#182B49 !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle b{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:1;
    transform:none !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle[aria-expanded="true"] b{
    transform:rotate(180deg) !important;
}
@media (max-width:767px){
    .extenso-pagamentos--product .extenso-pagamentos__toggle{
        transform:translateX(-12px) !important;
    }
}

/* v1.2.8 — expanded payment details float over the purchase controls; layer remains below site navigation */
.extenso-pagamentos--product{
    position:relative !important;
    z-index:20;
}
.extenso-pagamentos--product .extenso-pagamentos__panel{
    position:relative !important;
}
.extenso-pagamentos--product .extenso-pagamentos__body{
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:100% !important;
    z-index:50 !important;
    box-sizing:border-box !important;
    margin:0 !important;
    background:#fff !important;
    border:1px solid #E7E7E7 !important;
    border-top:0 !important;
    box-shadow:0 8px 18px rgba(22,34,52,.10) !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle{
    transform:translateX(-35px) !important;
    font-size:12px !important;
    font-weight:800 !important;
    align-items:center !important;
    line-height:1 !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle span{
    line-height:1 !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle b{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:center !important;
    height:10px !important;
    line-height:10px !important;
    margin:0 !important;
    transform:translateY(0) !important;
}
.extenso-pagamentos--product .extenso-pagamentos__toggle[aria-expanded="true"] b{
    transform:rotate(180deg) !important;
}
@media(max-width:767px){
    .extenso-pagamentos--product .extenso-pagamentos__toggle{
        transform:translateX(-27px) !important;
        font-size:12px !important;
        font-weight:800 !important;
    }
}

@media(max-width:767px){
    .extenso-pagamentos--product .extenso-pagamentos__details-label{
        min-height:28px;
        padding:8px 0 6px;
    }
    .extenso-pagamentos--product .extenso-pagamentos__details-label small{
        visibility:hidden !important;
    }
    .extenso-pagamentos--product .extenso-pagamentos__installments{
        grid-template-columns:1fr 1fr !important;
        gap:4px 10px !important;
        padding:7px 0 9px !important;
    }
    .extenso-pagamentos--product .extenso-parcela{
        min-height:22px !important;
        padding:2px 4px !important;
        grid-template-columns:25px 1fr !important;
        column-gap:4px !important;
        font-size:10px !important;
        line-height:1.1 !important;
    }
    .extenso-pagamentos--product .extenso-parcela small{
        font-size:8px !important;
        line-height:1 !important;
        margin-top:0 !important;
    }
    .extenso-pagamentos--product .extenso-parcela span{
        white-space:nowrap !important;
    }
    .extenso-pagamentos--product .extenso-pagamentos__boleto--open,
    .extenso-pagamentos--product .extenso-pagamentos__boleto{
        padding:8px 0 !important;
    }
}

/* v1.3.3 — Mobile: left/right endpoints, empty middle preserved */
@media(max-width:767px){
    .extenso-pagamentos--product .extenso-pagamentos__top{
        width:100% !important;
        box-sizing:border-box !important;
        justify-content:space-between !important;
        padding-left:8px !important;
        padding-right:8px !important;
        gap:0 !important;
    }
    .extenso-pagamentos--product .extenso-payment-closed-copy{
        flex:1 1 auto !important;
        min-width:0 !important;
        width:auto !important;
        justify-content:flex-start !important;
        gap:5px !important;
    }
    .extenso-pagamentos--product .extenso-payment-condition{
        visibility:hidden !important;
        flex:1 1 auto !important;
        min-width:0 !important;
        white-space:nowrap !important;
    }
    .extenso-pagamentos--product .extenso-pagamentos__toggle{
        flex:0 0 auto !important;
        margin-left:auto !important;
        margin-right:0 !important;
        transform:none !important;
        min-width:120px !important;
        padding-left:0 !important;
        padding-right:0 !important;
        justify-content:flex-end !important;
        text-align:right !important;
    }
}

/* v1.3.4 — separators follow the actual content span */
.extenso-pagamentos--product .extenso-pagamentos__top::before,
.extenso-pagamentos--product .extenso-pagamentos__top::after{
    left:-11px !important;
    right:-11px !important;
}
@media(max-width:767px){
    .extenso-pagamentos--product .extenso-pagamentos__top::before,
    .extenso-pagamentos--product .extenso-pagamentos__top::after{
        left:-11px !important;
        right:-11px !important;
    }
}

/* v1.3.5 — separators must not extend beyond the payment block */
.extenso-pagamentos--product .extenso-pagamentos__top::before,
.extenso-pagamentos--product .extenso-pagamentos__top::after{
    left:0 !important;
    right:0 !important;
}
@media(max-width:767px){
    .extenso-pagamentos--product .extenso-pagamentos__top::before,
    .extenso-pagamentos--product .extenso-pagamentos__top::after{
        left:0 !important;
        right:0 !important;
    }
}


/* v1.3.6 — bordas superiores/inferiores alinhadas ao conteúdo e ao bloco de WhatsApp */
.extenso-pagamentos--product .extenso-pagamentos__top::before,
.extenso-pagamentos--product .extenso-pagamentos__top::after{
    left:0 !important;
    right:54px !important;
}
@media(max-width:767px){
    .extenso-pagamentos--product .extenso-pagamentos__top::before,
    .extenso-pagamentos--product .extenso-pagamentos__top::after{
        left:0 !important;
        right:0 !important;
    }
}


/* v1.3.7 — reduzir 3px no espaço superior e inferior do bloco de pagamento, preservando o restante */


/* v1.3.9 — Card image configurable from the backend.
   The old decorative square/icon is removed. When an image is selected
   in Extenso Pagamentos > Imagem dos cartões, only the uploaded image is shown. */
.extenso-pagamentos--product .extenso-payment-card-image{
    width:auto !important;
    height:24px !important;
    min-width:0 !important;
    flex:0 0 auto !important;
    border-radius:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    background:transparent !important;
    color:inherit !important;
    font-size:0 !important;
}
.extenso-pagamentos--product .extenso-payment-card-image img{
    display:block !important;
    width:auto !important;
    max-width:52px !important;
    height:auto !important;
    max-height:24px !important;
    object-fit:contain !important;
    margin:0 !important;
}
@media(max-width:767px){
    .extenso-pagamentos--product .extenso-payment-card-image{
        height:21px !important;
    }
    .extenso-pagamentos--product .extenso-payment-card-image img{
        max-width:48px !important;
        max-height:21px !important;
    }
}


/* V1.3.10 — HIERARQUIA MOBILE: parcelas abertas ficam acima do frete.
 * O frete continua no fluxo normal e volta imediatamente ao fechar o painel.
 * Enquanto o overlay de parcelas está aberto, o conteúdo de frete subjacente
 * fica invisível/não interativo para impedir vazamento visual sobre o painel.
 */
.extenso-pagamentos--product{
    position:relative !important;
    z-index:10 !important;
}
.extenso-pagamentos--product .extenso-pagamentos__body{
    z-index:11 !important;
}
body.extenso-pagamentos-open .extenso-frete,
body.extenso-pagamentos-open .extenso-frete-block,
body.extenso-pagamentos-open .extenso-frete-container,
body.extenso-pagamentos-open .woocommerce-shipping-calculator{
    visibility:hidden !important;
    pointer-events:none !important;
}
