/**
 * Caixa "Falar agora" — site PÚBLICO.
 *
 * Escopado em `.smcp-wah`: nada aqui pode vazar para o tema Houzez. Cores fixas de propósito —
 * o site público não carrega os tokens do CRM, e o tema escuro do CRM inverteria estas cores
 * para quase-branco sobre branco.
 */

.smcp-wah {
    position: fixed; inset: 0; z-index: 99999;
    display: flex; align-items: center; justify-content: center;
    padding: 16px;
}
.smcp-wah[hidden] { display: none !important; }

.smcp-wah-fundo {
    position: absolute; inset: 0;
    background: rgba(9, 16, 20, .55);
    -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px);
}

.smcp-wah-caixa {
    position: relative;
    width: 100%; max-width: 380px;
    background: #fff; border-radius: 16px;
    padding: 26px 24px 20px;
    box-shadow: 0 24px 60px -12px rgba(9, 16, 20, .45);
    animation: smcp-wah-sobe .18s ease-out;
}
@keyframes smcp-wah-sobe { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

.smcp-wah-x {
    position: absolute; top: 10px; right: 12px;
    width: 34px; height: 34px; padding: 0;
    border: 0; background: none; border-radius: 50%;
    font-size: 26px; line-height: 1; color: #8a9499; cursor: pointer;
}
.smcp-wah-x:hover { background: #f1f4f5; color: #384247; }

.smcp-wah-t {
    margin: 0 0 4px; font-size: 20px; font-weight: 700; color: #10171a; line-height: 1.25;
}
.smcp-wah-s { margin: 0 0 18px; font-size: 14px; color: #5c686d; line-height: 1.45; }

/* Especificidade de 2 classes: o kit do Elementor pinta todo `label` de branco (0,1,1) e uma
   classe sozinha perderia — o rótulo sumiria no fundo branco desta caixa. */
.smcp-wah .smcp-wah-lbl {
    display: block; margin: 0 0 5px;
    font-size: 12px; font-weight: 700; color: #48545a;
    letter-spacing: .02em;
}
.smcp-wah-opc { font-weight: 500; color: #8a9499; }

.smcp-wah .smcp-wah-in {
    display: block; width: 100%; margin: 0 0 14px;
    padding: 12px 14px;
    border: 1px solid #d5dcdf; border-radius: 10px;
    background: #fff; color: #10171a;
    font-size: 16px;  /* 16px evita o zoom automático do iOS ao focar o campo */
    font-family: inherit; line-height: 1.3;
    box-sizing: border-box;
}
.smcp-wah .smcp-wah-in:focus {
    outline: 2px solid #25d366; outline-offset: -1px; border-color: #25d366;
}
.smcp-wah .smcp-wah-in::placeholder { color: #9aa4a8; }

/* Isca anti-robô: fora da tela, fora do fluxo e fora do foco. */
.smcp-wah-hp {
    position: absolute !important; left: -9999px !important;
    width: 1px; height: 1px; opacity: 0; pointer-events: none;
}

.smcp-wah-erro { margin: -6px 0 10px; min-height: 1em; font-size: 13px; color: #c0392b; font-weight: 600; }

.smcp-wah-btn {
    display: block; width: 100%;
    padding: 14px 16px; margin: 4px 0 0;
    border: 0; border-radius: 10px;
    background: #25d366; color: #06301a;
    font-size: 16px; font-weight: 700; font-family: inherit;
    cursor: pointer;
}
.smcp-wah-btn:hover:not(:disabled) { background: #1fbc5a; }
.smcp-wah-btn:disabled { opacity: .65; cursor: default; }
.smcp-wah-btn:focus-visible { outline: 3px solid #0b7a3e; outline-offset: 2px; }

.smcp-wah-pular {
    display: block; width: 100%; margin: 10px 0 0; padding: 8px;
    border: 0; background: none;
    font-size: 13px; font-family: inherit; color: #78848a;
    text-decoration: underline; cursor: pointer;
}
.smcp-wah-pular:hover { color: #48545a; }

.smcp-wah-lgpd { margin: 14px 0 0; font-size: 11px; color: #9aa4a8; text-align: center; line-height: 1.4; }

@media (max-width: 480px) {
    /* No celular a caixa vira folha inferior: é onde o polegar alcança. */
    .smcp-wah { align-items: flex-end; padding: 0; }
    .smcp-wah-caixa {
        max-width: none; border-radius: 18px 18px 0 0;
        padding: 24px 20px calc(20px + env(safe-area-inset-bottom, 0px));
    }
    @keyframes smcp-wah-sobe { from { transform: translateY(100%); } to { transform: none; } }
}

@media (prefers-reduced-motion: reduce) {
    .smcp-wah-caixa { animation: none; }
}
