/* ==================== FOOTER SIMPLES ==================== */

.simple-footer {
    background-color: #ffffff;
    border-top: 1px solid #e5e7eb;
    padding: 40px 0;
    margin-top: 60px;
}

.simple-footer .footer-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

/* Ícones de redes sociais */
.social-icons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.social-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background-color: #f8f9fa;
    border-radius: 50%;
    color: #374151;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 1.2rem;
}

/* Hover removido conforme solicitação */

/* Informações do footer */
.footer-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

/* Seção de links principais */
.footer-main-links {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
}

/* Seção de links legais */
.footer-legal-links {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
}

.footer-link {
    color: #6b7280;
    text-decoration: none;
    font-size: 0.9rem;
    /* Hover removido conforme solicitação */
}

/* Remover todos os efeitos de hover dos links do footer */
.simple-footer .footer-link:hover,
.simple-footer .footer-link:focus,
.simple-footer .footer-link:active {
    color: #6b7280 !important;
    text-decoration: none !important;
    transform: none !important;
    background: none !important;
    box-shadow: none !important;
    border: none !important;
}

/* Remover hover dos ícones sociais */
.simple-footer .social-icon:hover,
.simple-footer .social-icon:focus,
.simple-footer .social-icon:active {
    background-color: #f8f9fa !important;
    color: #374151 !important;
    transform: none !important;
    box-shadow: none !important;
}

/* Responsividade */
@media (max-width: 768px) {
    body {
        padding-bottom: 80px; /* Espaço para o menu inferior fixo */
    }
    
    .simple-footer {
        position: relative;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        box-sizing: border-box;
        background-color: #ffffff !important;
        border-top: 1px solid #e5e7eb !important;
        z-index: 99; /* Abaixo do menu inferior mas visível */
        margin-bottom: 0; /* Garantir que fique grudado no menu inferior */
    }
    
    .main-layout {
        margin-bottom: 0;
        padding-bottom: 0;
    }
    
    .content-area {
        margin-bottom: 0;
        padding-bottom: 15px;
    }
    
    .simple-footer {
        padding: 25px 0;
        margin-top: 20px;
        position: relative;
        z-index: 10;
    }
    
    .simple-footer .footer-content {
        padding: 0 16px;
        gap: 16px;
    }
    
    .social-icons {
        gap: 16px;
    }
    
    .social-icon {
        width: 40px;
        height: 40px;
        font-size: 1.1rem;
    }
    
    .footer-info {
        gap: 16px;
        text-align: center;
        /* Força layout vertical no mobile */
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: center;
    }
    
    .footer-main-links,
    .footer-legal-links {
        gap: 20px;
        /* Força layout horizontal */
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .footer-link {
        font-size: 0.85rem;
        /* Ajustes para garantir visibilidade lado a lado */
        display: inline-block;
        white-space: nowrap;
        min-width: auto;
        flex-shrink: 0;
    }
    
    .groups-section {
        margin-bottom: 20px !important; /* Reduzir espaço que empurra footer para baixo */
    }
    
    .content-area {
        padding-bottom: 10px !important;
    }
}

/* Garantir que o footer nunca seja cortado no mobile */
@media (max-width: 768px) {
    html {
        height: 100%;
        overflow-x: hidden;
    }
    
    body {
        min-height: 100vh;
        overflow-x: hidden;
        position: relative;
    }
    
    #app {
        min-height: calc(100vh - 80px); /* Altura total menos menu inferior */
        position: relative;
        display: flex;
        flex-direction: column;
    }
    
    .main-layout {
        flex: 1;
        display: flex;
        flex-direction: column;
    }
    
    .simple-footer {
        flex-shrink: 0; /* Não permitir que o footer seja comprimido */
        margin-top: auto; /* Empurrar para o final do container */
    }
}

@media (max-width: 480px) {
    body {
        padding-bottom: 80px; /* Manter espaço para menu inferior */
    }
    
    .simple-footer {
        padding: 20px 0;
        margin-top: 15px;
        position: relative;
        z-index: 10;
        min-height: auto;
    }
    
    .simple-footer .footer-content {
        padding: 0 10px;
        max-width: 100%;
        box-sizing: border-box;
    }
    
    .footer-info {
        width: 100%;
        justify-content: center;
        align-items: center;
        text-align: center;
        flex-direction: column;
        gap: 12px;
    }
    
    .footer-main-links,
    .footer-legal-links {
        width: 100%;
        justify-content: center;
        gap: 15px;
    }
    
    .footer-link {
        display: inline-block !important;
        margin: 0 5px;
        padding: 8px 10px;
        font-size: 14px !important;
        line-height: 1.2;
        white-space: nowrap;
    }
    
    /* Garantir que ícones FontAwesome funcionem no mobile */
    .social-icon i {
        font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands", "Font Awesome 6 Pro", FontAwesome !important;
        font-style: normal !important;
    }
    
    .social-icon .fab {
        font-weight: 400 !important; /* Brands usam peso 400 */
    }
    
    .social-icon .fas {
        font-weight: 900 !important; /* Sólidos usam peso 900 */
    }
    
    /* Regras específicas para garantir visibilidade dos links no mobile */
    .footer-info .footer-link {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
        max-width: none !important;
        overflow: visible !important;
        text-overflow: initial !important;
    }
    
    /* Garantir que os links não quebrem linha individualmente */
    .footer-info .footer-link {
        white-space: nowrap;
        flex-shrink: 0;
    }
    
    .groups-section {
        margin-bottom: 15px !important;
    }
    
    .content-area {
        padding-bottom: 5px !important;
    }
    
    /* Garantir que o footer não seja cortado por elementos fixos */
    .simple-footer {
        clear: both;
        margin-top: 10px !important;
    }
}

/* Regras globais para garantir que nada esconda os links */
.simple-footer .footer-info .footer-link {
    display: inline-block !important;
    visibility: visible !important;
}

/* Extra especificidade para mobile muito pequeno */
@media (max-width: 320px) {
    .simple-footer {
        padding: 15px 0;
        margin-top: 10px;
    }
    
    .footer-info {
        gap: 12px !important;
    }
    
    .footer-main-links,
    .footer-legal-links {
        gap: 12px !important;
    }
    
    .footer-link {
        font-size: 0.8rem !important;
        padding: 6px 8px !important;
    }
}

/* ==================== GARANTIA DE FUNCIONAMENTO FOOTER EM TODAS AS PÁGINAS ==================== */

/* Garantir que todas as páginas tenham o footer consistente no mobile */
@media (max-width: 768px) {
    /* Fallback para garantir que qualquer página tenha o footer visível */
    body {
        padding-bottom: 80px !important;
        margin-bottom: 0 !important;
    }
    
    /* Garantir que todas as páginas tenham o layout correto */
    .grupos-page,
    .buscar-page,
    .categoria-page {
        display: flex !important;
        flex-direction: column !important;
        min-height: auto !important;
    }
    
    /* Garantir espaçamento adequado em todas as content-areas */
    .content-area,
    .grupos-page .content-area,
    .buscar-page .content-area,
    .categoria-page .content-area {
        flex: 1 !important;
        margin-bottom: 0 !important;
        padding-bottom: 20px !important;
    }
    
    /* Garantir que o footer apareça sempre */
    .simple-footer {
        position: relative !important;
        z-index: 99 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        display: block !important;
        width: 100% !important;
    }
}
