/* --- MODAL DE PAGAMENTO: DESIGN MERCADO PAGO --- */
#m-modal-overlay { 
    position: fixed; top: 0; left: 0; width: 100%; height: 100%; 
    background: rgba(0,0,0,0.6); z-index: 999999; display: none; 
    align-items: center; justify-content: center; backdrop-filter: blur(4px); 
}

/* Container mais largo como na imagem */
.m-modal-content { 
    background: #ffffff; width: 95%; max-width: 1100px; 
    border-radius: 8px; position: relative; max-height: 95vh; 
    overflow-y: auto; text-align: left !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.2);
    display: flex; flex-direction: column;
}

/* Cabeçalho colorido com botão X vazado */
.m-modal-header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 15px 30px; border-radius: 8px 8px 0 0;
}
.m-modal-title { 
    font-family: 'Poppins', sans-serif; font-size: 1.1rem;
    font-weight: 500; margin: 0; color: #ffffff;
}
.m-modal-close { 
    font-size: 20px; cursor: pointer; transition: 0.3s;
    border: 1px solid #ffffff; border-radius: 50%; width: 30px; height: 30px;
    display: flex; align-items: center; justify-content: center; color: #ffffff;
}
.m-modal-close:hover { background: rgba(255,255,255,0.2); }

/* Corpo do Modal */
.m-modal-body { padding: 30px; }

/* Badges (Selos) */
.m-modal-badges {
    display: flex; gap: 10px; margin-bottom: 25px; align-items: center;
}
.badge-mp {
    border: 1px solid #cccccc; border-radius: 50px; padding: 4px 12px;
    font-size: 0.7rem; font-weight: 800; color: #666666; font-family: 'Poppins', sans-serif;
}
.badge-off {
    border-radius: 50px; padding: 4px 10px; font-size: 0.7rem; font-weight: 800; color: #ffffff; font-family: 'Poppins', sans-serif;
}

/* Títulos das Seções */
.m-section-title {
    font-size: 0.95rem; font-weight: 800; color: #000000; margin: 25px 0 10px 0;
    font-family: 'Poppins', sans-serif; text-transform: none;
}

/* Caixas dos Meios de Pagamento */
.m-payment-box {
    background: #ffffff; border: 1px solid #e6e6e6; border-radius: 8px;
    padding: 25px; margin-bottom: 10px; font-family: 'Poppins', sans-serif;
}

/* Textos da caixa de Cartão */
.m-total-1x { margin: 0 0 20px 0; font-size: 0.9rem; color: #333333; }
.m-ou-pague { font-size: 0.9rem; font-weight: 800; color: #000000; margin-bottom: 15px; }

/* Tabela de Parcelas com cores alternadas */
.m-installments-list { display: flex; flex-direction: column; }
.m-row-inst {
    display: flex; justify-content: space-between; padding: 12px 10px;
    font-size: 0.85rem; color: #000000;
}
.m-row-inst:nth-child(even) { background: #f9f9f9; }

/* Box do Pix */
.m-pix-totals { margin-top: 15px; font-size: 0.95rem; color: #000000; }
.m-pix-totals del { color: #999999; margin-right: 5px; }
.m-pix-totals strong { font-size: 1.1rem; font-weight: 800; }
.m-pix-disclaimer { font-size: 0.75rem; color: #888888; margin-top: 5px; }

/* Rodapé (Voltar ao Produto) */
.m-modal-footer {
    padding: 10px 30px 25px 30px; background: #ffffff;
    display: flex; justify-content: flex-end; border-radius: 0 0 8px 8px;
}
.m-modal-close-text {
    font-size: 0.9rem; color: #333333; cursor: pointer; font-family: 'Poppins', sans-serif;
}
.m-modal-close-text:hover { text-decoration: underline; }

/* --- PREÇOS NA VITRINE (PÁGINA DA LOJA/CATÁLOGO) --- */
.mercold-loop-pricing {
    text-align: center !important;
    margin-top: 10px !important;
    font-family: 'Poppins', 'Montserrat', sans-serif !important;
}

.m-loop-main-price {
    font-size: 1.4rem !important;
    font-weight: 800 !important;
    color: #1a2b3c !important; /* Será sobrescrito dinamicamente se necessário */
    margin-bottom: 5px !important;
    line-height: 1.1 !important;
}

.m-loop-pix-price {
    font-size: 1rem !important;
    font-weight: 800 !important;
    margin-bottom: 5px !important;
}

.m-loop-installments {
    font-size: 0.85rem !important;
    color: #333333 !important;
    font-weight: 500 !important;
    margin-bottom: 10px !important;
}

.m-loop-installments strong {
    font-weight: 800 !important;
    color: #000000 !important;
}