/* =========================================
   ESTILO GERAL COMPLETO (V3.0 - FINAL)
   ========================================= */

/* 1. CONTAINER PRINCIPAL (A Caixinha Branca) */
.mm-auth-wrapper {
    max_width: 500px;
    margin: 40px auto;
    background: #ffffff !important;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    border: 1px solid #ddd;
    overflow: hidden;
    font-family: sans-serif;
    color: #333 !important;
    
    /* CORREÇÃO DO TREMOR: Altura mínima fixa */
    min-height: 600px; 
    
    display: flex;
    flex-direction: column;
    position: relative;
}

/* 2. ABAS (Login / Cadastro) */
.mm-tab-controls {
    display: flex;
    background: #f4f4f4 !important;
    border-bottom: 1px solid #ddd;
    flex-shrink: 0; /* Garante que as abas não encolham */
}

.mm-tab-btn {
    flex: 1;
    padding: 18px;
    border: none;
    background: transparent;
    cursor: pointer;
    font-size: 15px;
    font-weight: bold;
    color: #777 !important;
    transition: all 0.2s;
}

.mm-tab-btn.active {
    background: #ffffff !important;
    color: #0073aa !important;
    border-bottom: 3px solid #0073aa;
    margin-bottom: -1px;
}

/* 3. CONTEÚDO INTERNO (Formulários e Painel) */
.mm-tab-content, .mm-painel-clean {
    padding: 30px;
    background: #ffffff !important;
    flex: 1; /* Ocupa todo o espaço restante */
    animation: fadeEffect 0.4s ease-in-out;
}

@keyframes fadeEffect {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* 4. CORREÇÃO DE TÍTULOS (Branco no Branco) */
.mm-painel-clean h3, 
.mm-registro-container h3,
.mm-login-container h3,
.mm-auth-wrapper h3 {
    color: #333333 !important;
    font-weight: bold;
    margin-top: 0;
}

/* 5. CORREÇÃO DE INPUTS E LABELS (Contra Tema Escuro) */
.mm-login-container label, 
.mm-campo label {
    color: #333333 !important; 
    font-weight: bold;
    font-size: 14px;
    display: block;
    margin-bottom: 6px;
}

.mm-login-container input[type="text"],
.mm-login-container input[type="password"],
.mm-campo input,
.mm-input-clean {
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #ccc !important;
    border-radius: 5px;
    padding: 12px;
    width: 100%;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.05) !important;
    font-size: 16px;
    box-sizing: border-box; /* Garante que o padding não estoure a largura */
}

.mm-campo { margin-bottom: 20px; }

/* 6. BOTÕES PADRONIZADOS */
.mm-btn-assinar, 
input[type="submit"], 
.mm-btn-preco {
    background: #0073aa !important; /* Azul Sólido */
    color: #fff !important;
    border: none !important;
    padding: 14px;
    border-radius: 6px;
    font-weight: bold;
    font-size: 16px;
    cursor: pointer;
    width: 100%;
    text-align: center;
    text-decoration: none;
    display: block;
    margin-top: 15px;
    transition: background 0.3s;
}

.mm-btn-assinar:hover, 
input[type="submit"]:hover, 
.mm-btn-preco:hover { 
    background: #005a87 !important; 
}

/* Botões Secundários (Painel) */
.mm-acoes-painel {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 30px;
}

.mm-btn-login { /* Voltar ao Site */
    background: #e0e0e0 !important;
    color: #333 !important;
    padding: 12px;
    border-radius: 6px;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    display: block;
}

.mm-btn-sair { /* Sair */
    background: #ffebeb !important;
    color: #d63638 !important;
    padding: 12px;
    border-radius: 6px;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    display: block;
    border: 1px solid #ffcccc;
}

/* 7. DETALHES DO PAINEL (Status e Senha) */
.mm-info-row {
    display: flex;
    justify-content: space-between;
    padding: 15px 0;
    border-bottom: 1px solid #f0f0f0;
    color: #333 !important;
    font-size: 1.1em;
}

.mm-info-row span { font-weight: normal; color: #666; }
.mm-info-row strong { font-weight: bold; color: #333; }

.mm-detalhes-senha {
    margin: 20px 0;
    text-align: left;
    background: #f9f9f9 !important;
    padding: 15px;
    border-radius: 6px;
    border: 1px solid #eee;
    color: #333 !important;
}

.mm-detalhes-senha summary {
    color: #0073aa;
    font-weight: bold;
    cursor: pointer;
    outline: none;
}

/* 8. ALERTA DE ERRO/SUCESSO */
.mm-alerta {
    padding: 12px;
    margin-bottom: 20px;
    border-radius: 5px;
    font-weight: bold;
    text-align: center;
    font-size: 0.95em;
}
.mm-alerta.erro { background: #f8d7da !important; color: #721c24 !important; border: 1px solid #f5c6cb; }
.mm-alerta.sucesso { background: #d4edda !important; color: #155724 !important; border: 1px solid #c3e6cb; }


/* 9. TABELA DE PREÇOS (Cards) */
.mm-precos-container {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 40px;
}

.mm-card-preco {
    background: #fff !important;
    border: 1px solid #ddd;
    border-radius: 8px;
    width: 280px;
    padding: 25px;
    text-align: center;
    color: #333 !important;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.mm-card-preco.destaque {
    border: 2px solid #0073aa;
    transform: scale(1.05);
    z-index: 10;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

/* Valor R$ Corrigido (Não quebra linha) */
.mm-valor {
    color: #222 !important;
    font-weight: 800;
    font-size: 2.5em;
    margin: 15px 0;
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 4px;
    line-height: 1;
}

.mm-valor small {
    font-size: 0.4em;
    font-weight: normal;
    color: #555;
    transform: translateY(-5px);
}

.mm-valor .periodo {
    font-size: 0.35em;
    color: #888;
    font-weight: normal;
}

.mm-card-body ul {
    text-align: left;
    padding: 0;
    list-style: none;
    margin-bottom: 20px;
}

.mm-card-body li {
    padding: 8px 0;
    border-bottom: 1px solid #eee;
    font-size: 14px;
    color: #555 !important;
}

.mm-tag-destaque {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: #0073aa;
    color: white;
    padding: 5px 12px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: bold;
    text-transform: uppercase;
}

/* 10. BLOQUEIO DE CONTEÚDO */
.mm-bloqueio-box {
    background: #f9f9f9;
    border: 1px solid #e1e1e1;
    padding: 40px;
    text-align: center;
    border-radius: 8px;
    margin: 30px 0;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
}

.mm-bloqueio-box h3 { color: #333; margin-top: 0; }
.mm-bloqueio-box p { color: #555; }

.mm-botoes {
    margin-top: 25px;
    display: flex;
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
}

.mm-botoes .mm-btn-assinar, 
.mm-botoes .mm-btn-login {
    width: auto; /* Nos botões de bloqueio, largura automática */
    padding: 12px 25px;
    margin-top: 0;
}

/* Responsivo para Celular */
@media (max-width: 600px) {
    .mm-auth-wrapper {
        min-height: auto; /* Libera altura no celular */
        margin: 20px 10px;
    }
    
    .mm-card-preco.destaque {
        transform: scale(1);
        margin-top: 20px;
    }
}

/* =========================================
   CORREÇÃO DO CHECKBOX (Lembrar-me)
   ========================================= */

/* 1. Tira a largura de 100% que aplicamos nos outros campos */
.mm-login-container input[type="checkbox"] {
    width: auto !important; /* Volta ao tamanho natural */
    margin-right: 10px;      /* Espacinho entre a caixa e o texto */
    box-shadow: none !important;
    transform: translateY(1px); /* Pequeno ajuste vertical */
}

/* 2. Alinha o texto e a caixa na mesma linha */
.mm-login-container .login-remember label {
    display: flex !important;
    align-items: center;
    justify-content: flex-start; /* Alinha à esquerda */
    font-weight: normal !important; /* Tira o negrito para ficar mais leve */
    color: #555 !important;
    cursor: pointer;
}

/* 3. Garante que o container não tenha margem exagerada */
.mm-login-container .login-remember {
    margin-top: -10px; /* Puxa um pouco pra cima, perto da senha */
    margin-bottom: 20px;
}


/* FORÇA COR DO TEXTO DIGITADO */
input[type="text"], 
input[type="email"], 
input[type="password"],
textarea {
    color: #000000 !important;
    background-color: #ffffff !important;
    -webkit-text-fill-color: #000000 !important; /* Para Safari/Chrome */
}


/* =========================================
   LISTA DE BENEFÍCIOS (COM ÍCONES AUTOMÁTICOS)
   ========================================= */

/* Remove as bolinhas padrão e ajusta espaçamento */
.mm-card-body ul {
    list-style: none !important; 
    padding: 0;
    margin: 20px 0;
    text-align: left;
}

.mm-card-body li {
    position: relative; 
    padding-left: 25px; /* Espaço para o check caber */
    margin-bottom: 8px; 
    font-size: 15px;
    color: #555 !important;
    line-height: 1.4;
    border-bottom: 1px solid #f5f5f5;
    padding-bottom: 8px;
}

/* O Ícone do Check */
.mm-card-body li::before {
    content: '✔' !important; /* Força o ícone */
    position: absolute;
    left: 0;
    top: 0;
    color: #28a745;     /* Verde Sucesso */
    font-weight: bold;
    font-size: 16px;
    opacity: 1 !important; /* Garante visibilidade */
}

/* Remove a borda do último item */
.mm-card-body li:last-child {
    border-bottom: none;
}

/* =========================================
   CORREÇÃO DOS CAMPOS DE DIGITAÇÃO
   ========================================= */

.mm-campo input[type="text"], 
.mm-campo input[type="email"], 
.mm-campo input[type="password"] {
    color: #000000 !important;       /* Texto Preto */
    caret-color: #000000 !important; /* O "Risco" que pisca fica Preto */
    background-color: #ffffff !important; /* Fundo Branco */
    border: 1px solid #cccccc !important; /* Borda Cinza */
}

/* Quando clica no campo (Foco) */
.mm-campo input:focus {
    border-color: #0073aa !important; /* Borda Azul ao digitar */
    color: #000000 !important;
    caret-color: #000000 !important;
}
