/**
 * ULTRA COMPACT FORM - MÁXIMA COMPACTAÇÃO POSSÍVEL
 * 
 * Este arquivo força a compactação máxima de todos os elementos
 * DEVE ser carregado por último com prioridade máxima
 */

/* ===== COMPACTAÇÃO EXTREMA - ZERO TOLERÂNCIA A ESPAÇOS ===== */

/* TODOS os elementos do formulário - margin zero */
.ec-form-group,
.ec-form-field,
.form-group,
.field-group,
.ec-document-field,
.ec-file-input-wrapper,
.ec-documents-container,
.document-upload,
.file-upload {
    margin-bottom: 2px !important;
    margin-top: 0px !important;
    padding-bottom: 0px !important;
    padding-top: 2px !important;
}

/* TODAS as dicas - praticamente invisíveis - APENAS NO FORMULÁRIO */
#ec-cadastro-form .ec-field-help,
#ec-cadastro-form .ec-field-tip,
#ec-cadastro-form .field-help,
#ec-cadastro-form .help-text,
#ec-cadastro-form .form-help,
#ec-cadastro-form .description,
#ec-cadastro-form small {
    font-size: 8px !important;
    margin: 0px !important;
    padding: 0px !important;
    line-height: 1.0 !important;
    opacity: 0.6 !important;
    display: block !important;
    height: auto !important;
    max-height: 12px !important;
}

/* Dicas de senha melhoradas */
.user-creation-help,
.password-help,
.login-help {
    font-size: 9px !important;
    margin: 1px 0 !important;
    padding: 2px 4px !important;
    line-height: 1.1 !important;
    opacity: 0.8 !important;
    background: #f0f9ff !important;
    border-left: 2px solid #3b82f6 !important;
    color: #1e40af !important;
    border-radius: 2px !important;
}

/* TODOS os labels - zero espaço - APENAS NO FORMULÁRIO */
#ec-cadastro-form .ec-form-label,
#ec-cadastro-form .form-label,
#ec-cadastro-form label {
    margin-bottom: 0px !important;
    margin-top: 0px !important;
    padding: 0px !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
}

/* UPLOAD de documentos - ultra compacto */
.ec-file-input-wrapper,
.ec-file-input-label,
.file-drop-zone,
.upload-area {
    min-height: 28px !important;
    padding: 3px 6px !important;
    margin: 1px 0 !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
}

/* Containers de documento - CORES FIXAS NEUTRAS */
.ec-documents-container {
    padding: 4px !important;
    margin: 2px 0 !important;
    gap: 2px !important;
    background: #ffffff !important;
    border: none !important; /* Remove borda dupla */
    border-radius: 4px !important;
}

.ec-document-field {
    margin-bottom: 2px !important;
    padding: 8px !important;
    border: 1px solid #e5e7eb !important; /* Borda única suave */
    background: #ffffff !important;
    border-radius: 6px !important;
}

.ec-file-input-wrapper {
    background: #ffffff !important; /* Fundo branco limpo */
    border: 2px dashed #d1d5db !important; /* Borda única tracejada */
    border-radius: 6px !important;
    padding: 12px !important;
    text-align: center !important;
    min-height: 60px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    transition: border-color 0.2s ease !important;
}

.ec-file-input-wrapper:hover {
    border-color: #9ca3af !important;
    background: #f9fafb !important;
}

.ec-file-input-label {
    background: transparent !important;
    color: #6b7280 !important; /* Cor neutra fixa */
    font-size: 12px !important;
    font-weight: 500 !important;
    pointer-events: none !important;
}

/* Seções específicas ultra compactas */
.ec-account-creation,
.ec-user-creation,
.login-section {
    padding: 4px !important;
    margin: 2px 0 !important;
}

/* Grids - gaps mínimos absolutos */
.ec-form-grid,
.ec-fields-grid,
.documents-grid {
    gap: 3px 6px !important;
    row-gap: 3px !important;
    column-gap: 6px !important;
}

/* Botões ultra compactos - APENAS NO FORMULÁRIO */
#ec-cadastro-form .ec-btn,
#ec-cadastro-form .ec-button,
#ec-cadastro-form button {
    padding: 4px 8px !important;
    margin: 2px 0 !important;
    font-size: 11px !important;
    min-height: 30px !important;
}

/* Progress bar compacto */
.ec-progress-container {
    padding: 6px 8px !important;
    margin-bottom: 4px !important;
}

.ec-progress-step {
    width: 24px !important;
    height: 24px !important;
    font-size: 10px !important;
}

/* Headers e seções principais */
.ec-form-header {
    padding: 6px 8px !important;
    margin-bottom: 4px !important;
}

.ec-step-content,
.ec-form-section {
    padding: 6px !important;
    margin-bottom: 4px !important;
}

/* Mobile - ainda mais compacto */
@media (max-width: 767.98px) {
    .ec-form-group,
    .ec-document-field,
    .ec-file-input-wrapper {
        margin-bottom: 1px !important;
        padding: 1px !important;
    }
    
    .ec-field-help,
    .ec-field-tip {
        font-size: 7px !important;
        margin: 0px !important;
        max-height: 10px !important;
        opacity: 0.5 !important;
    }
    
    .ec-form-label {
        font-size: 9px !important;
        margin: 0px !important;
    }
    
    .ec-file-input-wrapper {
        min-height: 24px !important;
        padding: 2px 4px !important;
    }
    
    .ec-documents-container {
        padding: 2px !important;
        gap: 1px !important;
    }
    
    .ec-form-grid {
        gap: 2px 4px !important;
        row-gap: 2px !important;
        column-gap: 4px !important;
    }
    
    /* Mobile - checkboxes ainda funcionais */
    .ec-checkbox-wrapper,
    .ec-checkbox-label {
        margin: 2px 0 !important;
        padding: 3px !important;
        min-height: 32px !important;
        gap: 6px !important;
    }
    
    .ec-checkbox-wrapper input[type="checkbox"],
    .ec-checkbox-label input[type="checkbox"] {
        width: 14px !important;
        height: 14px !important;
    }
    
    .ec-checkbox-wrapper label,
    .ec-checkbox-label .checkbox-text {
        font-size: 10px !important;
        line-height: 1.2 !important;
    }
}

/* Checkboxes e termos de aceite CORRIGIDOS */
.ec-checkbox-wrapper,
.ec-checkbox-label {
    margin: 4px 0 !important;
    padding: 4px !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 4px !important;
    min-height: 36px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    cursor: pointer !important;
}

.ec-checkbox-wrapper input[type="checkbox"],
.ec-checkbox-label input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    margin: 0px !important;
    flex-shrink: 0 !important;
    cursor: pointer !important;
    accent-color: #3b82f6 !important;
}

.ec-checkbox-wrapper label,
.ec-checkbox-label .checkbox-text {
    font-size: 11px !important;
    line-height: 1.3 !important;
    margin: 0px !important;
    flex: 1 !important;
    cursor: pointer !important;
}

/* Links de termos funcionais */
.ec-checkbox-wrapper a,
.ec-checkbox-label a,
.terms-link,
.privacy-link {
    color: #3b82f6 !important;
    text-decoration: underline !important;
    cursor: pointer !important;
    font-size: 11px !important;
    z-index: 999 !important;
    position: relative !important;
}

.ec-checkbox-wrapper a:hover,
.ec-checkbox-label a:hover {
    color: #1d4ed8 !important;
    text-decoration: underline !important;
}

/* Override absoluto - força zero espaço MAS preserva checkboxes */
* .ec-field-help {
    margin: 0px !important;
    padding: 0px !important;
    font-size: 8px !important;
}

* .ec-form-group:not(.ec-checkbox-wrapper) {
    margin-bottom: 2px !important;
}

/* Força compactação em qualquer contexto MAS preserva checkboxes */
[class*="ec-"]:not(.ec-checkbox-wrapper):not(.ec-checkbox-label) {
    margin-bottom: 2px !important;
    padding-bottom: 0px !important;
}

[class*="ec-"] .ec-field-help {
    margin: 0px !important;
    font-size: 7px !important;
    opacity: 0.5 !important;
}

/* Upload específico - zero desperdício - APENAS NO FORMULÁRIO */
#ec-cadastro-form input[type="file"] {
    padding: 2px 4px !important;
    margin: 1px 0 !important;
    font-size: 10px !important;
}

.file-feedback,
.upload-feedback {
    font-size: 8px !important;
    margin: 0px !important;
    padding: 1px !important;
}

/* MODAL FUNCIONAL - Regras específicas para funcionar corretamente */
.ec-modal {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.6) !important;
    z-index: 999999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    backdrop-filter: blur(2px) !important;
}

.ec-modal.show,
.ec-modal[style*="flex"] {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.ec-modal-content {
    background: #ffffff !important;
    padding: 24px !important;
    border-radius: 12px !important;
    max-width: 600px !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    position: relative !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3) !important;
    margin: 20px !important;
    width: 90% !important;
}

.ec-modal-header {
    border-bottom: 1px solid #e5e7eb !important;
    padding-bottom: 16px !important;
    margin-bottom: 20px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.ec-modal-header h3 {
    margin: 0 !important;
    font-size: 18px !important;
    color: #1f2937 !important;
}

.ec-modal-close {
    background: none !important;
    border: none !important;
    font-size: 24px !important;
    cursor: pointer !important;
    color: #6b7280 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 30px !important;
    height: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.ec-modal-close:hover {
    color: #374151 !important;
}

.ec-modal-body {
    padding: 0 !important;
    line-height: 1.6 !important;
    max-height: 400px !important;
    overflow-y: auto !important;
}

.ec-modal-footer {
    border-top: 1px solid #e5e7eb !important;
    padding-top: 16px !important;
    margin-top: 20px !important;
    display: flex !important;
    gap: 12px !important;
    justify-content: flex-end !important;
}

.ec-modal-footer .ec-btn {
    padding: 8px 16px !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    cursor: pointer !important;
    border: 1px solid #d1d5db !important;
}

.ec-modal-footer .ec-btn-primary {
    background: #3b82f6 !important;
    color: white !important;
    border-color: #3b82f6 !important;
}

.ec-modal-footer .ec-btn-secondary {
    background: white !important;
    color: #374151 !important;
}

/* FOCO ÚNICO ABSOLUTO - Remove TODA duplicação */

/* FORÇA remoção TOTAL de outline em TUDO - MAS mantém visibilidade */
*,
*:focus,
*:focus-visible,
*:focus-within,
*::before,
*::after {
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    outline-color: transparent !important;
    -webkit-focus-ring-color: transparent !important;
    box-shadow: none !important; /* Remove shadows conflitantes primeiro */
}

/* GARANTIA ABSOLUTA - Campos NUNCA ocultos */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
input[type="date"],
select,
textarea,
.ec-form-control,
.ec-password-container input {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* UNIQUE FOCUS STYLE - ESPECIFICIDADE MÁXIMA - BORDA ÚNICA */
body input[type="text"]:focus,
body input[type="email"]:focus,
body input[type="tel"]:focus,
body input[type="password"]:focus,
body input[type="number"]:focus,
body input[type="date"]:focus,
body input[type="file"]:focus,
body select:focus,
body textarea:focus,
body .ec-form-control:focus,
body .ec-enhanced-select:focus,
.ec-modern-form-container input[type="text"]:focus,
.ec-modern-form-container input[type="email"]:focus,
.ec-modern-form-container input[type="tel"]:focus,
.ec-modern-form-container input[type="password"]:focus,
.ec-modern-form-container input[type="number"]:focus,
.ec-modern-form-container input[type="date"]:focus,
.ec-modern-form-container input[type="file"]:focus,
.ec-modern-form-container select:focus,
.ec-modern-form-container textarea:focus,
.ec-modern-form-container .ec-form-control:focus,
.ec-modern-form-container .ec-enhanced-select:focus {
    /* REMOVE TUDO primeiro */
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    outline-color: transparent !important;
    -webkit-focus-ring-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    
    /* DEPOIS aplica ÚNICA indicação visual */
    border: 2px solid #3b82f6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15) !important;
    background-color: #eff6ff !important;
    transition: all 0.2s ease !important;
}

/* FORÇA override em elementos específicos do formulário */
.ec-modern-form-container input:focus,
.ec-modern-form-container select:focus,
.ec-modern-form-container textarea:focus,
body.ec-cadastro-page input:focus,
body.ec-cadastro-page select:focus,
body.ec-cadastro-page textarea:focus,
#confirmations-section input:focus,
#confirmations-section select:focus,
#confirmations-section textarea:focus {
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    outline-color: transparent !important;
    -webkit-focus-ring-color: transparent !important;
    border: 2px solid #3b82f6 !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15) !important;
    background-color: #eff6ff !important;
}

/* FORÇA remoção TOTAL de contorno em campos de confirmação */
#confirmations-section,
#confirmations-section *,
#confirmations-section *:focus,
#confirmations-section *:focus-visible,
.ec-confirmations-container,
.ec-confirmations-container *,
.ec-confirmations-container *:focus,
.ec-checkbox-wrapper,
.ec-checkbox-wrapper *,
.ec-checkbox-wrapper *:focus,
.ec-checkbox-label,
.ec-checkbox-label *,
.ec-checkbox-label *:focus,
.ec-field-description,
.ec-field-description *,
.ec-field-description *:focus {
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    outline-color: transparent !important;
    -webkit-focus-ring-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

/* Checkboxes - foco minimalista apenas - APENAS NO FORMULÁRIO */
#ec-cadastro-form input[type="checkbox"] {
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    outline-color: transparent !important;
    -webkit-focus-ring-color: transparent !important;
    border: 1px solid #d1d5db !important;
    box-shadow: none !important;
}

#ec-cadastro-form input[type="checkbox"]:focus {
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    outline-color: transparent !important;
    -webkit-focus-ring-color: transparent !important;
    border: 1px solid #3b82f6 !important;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15) !important;
}

/* Labels e links nos checkboxes - sem qualquer contorno */
.ec-checkbox-label,
.ec-checkbox-label a,
.ec-checkbox-label *,
label[for*="termos"],
label[for*="lgpd"],
label[for*="autorizo"] {
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    outline-color: transparent !important;
    -webkit-focus-ring-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    text-decoration: none !important;
}

/* Links específicos dos termos - apenas sublinhado na hover */
.ec-modal-link {
    outline: none !important;
    outline-width: 0 !important;
    outline-offset: 0 !important;
    outline-color: transparent !important;
    -webkit-focus-ring-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    color: #3b82f6 !important;
    text-decoration: underline !important;
    cursor: pointer !important;
}

.ec-modal-link:hover,
.ec-modal-link:focus {
    outline: none !important;
    color: #1d4ed8 !important;
    text-decoration: underline !important;
    box-shadow: none !important;
    border: none !important;
}

/* Estados específicos para diferentes tipos de campo */
input[type="file"]:focus {
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
    background-color: #f8fafc !important;
}

/* Estado de erro melhorado */
.ec-field-error input,
.ec-field-error select,
.ec-field-error textarea,
input.ec-error,
select.ec-error {
    border: 2px solid #ef4444 !important;
    background-color: #fef2f2 !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1) !important;
}

.ec-field-error input:focus,
.ec-field-error select:focus,
.ec-field-error textarea:focus,
input.ec-error:focus,
select.ec-error:focus {
    border: 2px solid #ef4444 !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.2) !important;
    background-color: #fef2f2 !important;
}

/* Mensagem de erro melhorada - APENAS NO FORMULÁRIO */
#ec-cadastro-form .ec-field-error-message,
#ec-cadastro-form .field-error-message,
#ec-cadastro-form .error-message {
    color: #ef4444 !important;
    font-size: 10px !important;
    margin: 2px 0 0 0 !important;
    padding: 2px 6px !important;
    background: #fef2f2 !important;
    border-left: 3px solid #ef4444 !important;
    border-radius: 3px !important;
    display: block !important;
    line-height: 1.2 !important;
    font-weight: 500 !important;
}

/* Estado de sucesso para validação */
.ec-field-success input,
.ec-field-success select,
input.ec-success,
select.ec-success {
    border: 2px solid #10b981 !important;
    background-color: #f0fdf4 !important;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.1) !important;
}

.ec-field-success input:focus,
.ec-field-success select:focus,
input.ec-success:focus,
select.ec-success:focus {
    border: 2px solid #10b981 !important;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15) !important;
    background-color: #f0fdf4 !important;
}

/* SISTEMA DE FEEDBACK DE SENHA COMPACTO - ECRealTimeValidator */

/* Container de senha com botão toggle */
.ec-password-container {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    margin-bottom: 2px !important;
}

.ec-password-container input {
    padding-right: 40px !important;
    flex: 1 !important;
}

.ec-password-toggle {
    position: absolute !important;
    right: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    padding: 4px !important;
    font-size: 16px !important;
    line-height: 1 !important;
    color: #6b7280 !important;
    z-index: 10 !important;
    outline: none !important;
}

.ec-password-toggle:hover {
    color: #374151 !important;
}

/* ECRealTimeValidator Feedback - Ultra Compacto ABAIXO dos campos */
.ec-field-feedback {
    display: block !important;
    width: 100% !important;
    margin: 3px 0 4px 0 !important;
    padding: 0 !important;
    font-size: 8px !important;
    line-height: 1.2 !important;
    position: static !important;
    clear: both !important;
    float: none !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Password Strength Meter do ECRealTimeValidator */
.ec-password-strength-meter {
    margin: 2px 0 !important;
    padding: 0 !important;
}

.ec-strength-bar {
    height: 4px !important;
    background: #e5e7eb !important;
    border-radius: 2px !important;
    overflow: hidden !important;
    margin-bottom: 2px !important;
}

.ec-strength-fill {
    height: 100% !important;
    width: 0% !important;
    transition: width 0.3s ease, background-color 0.3s ease !important;
    border-radius: 2px !important;
}

.ec-strength-text {
    font-size: 9px !important;
    font-weight: 500 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
    color: #6b7280 !important;
}

/* Feedback messages do ECRealTimeValidator */
.ec-feedback-message {
    font-size: 8px !important;
    line-height: 1.2 !important;
    margin: 1px 0 !important;
    padding: 2px 4px !important;
    border-radius: 3px !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.ec-feedback-message.success {
    background: #f0fdf4 !important;
    color: #16a34a !important;
    border: 1px solid #bbf7d0 !important;
}

.ec-feedback-message.error {
    background: #fef2f2 !important;
    color: #dc2626 !important;
    border: 1px solid #fca5a5 !important;
}

.ec-feedback-message.warning {
    background: #fefce8 !important;
    color: #ca8a04 !important;
    border: 1px solid #fde047 !important;
}

.ec-feedback-message.info {
    background: #eff6ff !important;
    color: #2563eb !important;
    border: 1px solid #bfdbfe !important;
}

/* Password requirements list */
.ec-password-requirements {
    margin: 2px 0 !important;
    padding: 4px 6px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 4px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 1px 6px !important;
    font-size: 7px !important;
}

.ec-password-requirements .ec-requirement {
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    font-size: 7px !important;
    line-height: 1.1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ec-password-requirements .ec-requirement-icon {
    font-size: 7px !important;
    line-height: 1 !important;
}

.ec-password-requirements .ec-requirement-text {
    font-size: 7px !important;
    line-height: 1.1 !important;
}

/* Username feedback */
.ec-feedback-username .ec-feedback-message {
    font-size: 8px !important;
}

/* Password confirmation feedback */
.ec-feedback-password-confirm .ec-feedback-message {
    font-size: 8px !important;
}

/* Mobile - ainda mais compacto */
@media (max-width: 767.98px) {
    .ec-password-requirements {
        grid-template-columns: 1fr !important;
        gap: 0px !important;
        padding: 2px 4px !important;
        font-size: 6px !important;
    }
    
    .ec-password-requirements .ec-requirement {
        font-size: 6px !important;
    }
    
    .ec-password-requirements .ec-requirement-icon {
        font-size: 6px !important;
    }
    
    .ec-password-requirements .ec-requirement-text {
        font-size: 6px !important;
    }
    
    .ec-strength-text {
        font-size: 8px !important;
    }
    
    .ec-feedback-message {
        font-size: 7px !important;
        padding: 1px 2px !important;
    }
}

/* Força override no campo de senha para ultra-compact */
.ec-account-creation .ec-password-container input,
.ec-account-creation .ec-form-control {
    min-height: 38px !important;
    height: 38px !important;
    padding: 8px 40px 8px 12px !important;
    font-size: 14px !important;
}

/* Estados de validação visual - SEMPRE VISÍVEIS */
.ec-form-control.ec-field-valid,
input.ec-field-valid,
select.ec-field-valid,
textarea.ec-field-valid {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    border-color: #10b981 !important;
    background-color: #f0fdf4 !important;
}

.ec-form-control.ec-field-error,
input.ec-field-error,
select.ec-field-error,
textarea.ec-field-error {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    border-color: #ef4444 !important;
    background-color: #fef2f2 !important;
}

.ec-form-control.ec-field-warning,
input.ec-field-warning,
select.ec-field-warning,
textarea.ec-field-warning {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    border-color: #f59e0b !important;
    background-color: #fefce8 !important;
}

/* ESPAÇAMENTO DO FORMULÁRIO - 20px interno + 60px externo */
.ec-modern-form-container {
    /* Mantém compactação mas garante espaçamento final via div separado */
    margin-bottom: 0px !important;
    padding-bottom: 0px !important;
}

/* GARANTIA FINAL - Remove todas as bordas múltiplas de documentos */
.ec-documents-container .ec-document-field,
.ec-documents-container .ec-file-input-wrapper,
.ec-document-upload-area,
.document-field {
    border: 1px solid #e5e7eb !important; /* Borda única suave */
    background: #ffffff !important;
    color: #374151 !important; /* Cor neutra fixa */
}

.ec-documents-container .ec-file-input-wrapper {
    border: 2px dashed #d1d5db !important; /* Mantém tracejado para upload */
}

/* Remove qualquer cor de sistema dos campos de documento */
.ec-document-field *,
.ec-file-input-wrapper *,
.ec-documents-container * {
    color: inherit !important;
    background: inherit !important;
}