/*
=================================================================
==   CSS COMPLETO (TEMA ESCURO) PARA O SITE ECOLIMP SOLUÇÕES   ==
=================================================================
Tema Base: GeneratePress
Versão: 1.3 - Correção Global de Fundos para Contêineres
Desenvolvido para uma identidade visual sofisticada, moderna e confortável.
-----------------------------------------------------------------
*/

/* 1. CONFIGURAÇÕES GLOBAIS E VARIÁVEIS (DARK MODE)
-------------------------------------------------------------- */
:root {
    /* Paleta de Cores */
    --cor-primaria: #2ECC71;      /* Verde se mantém vibrante como cor de destaque */
    --cor-primaria-escura: #27AE60; /* Verde escuro para hover effects */
    --cor-secundaria: #3498DB;   /* Azul para detalhes e destaques */
    --cor-texto: #B0B3B8;          /* Cinza claro para leitura confortável */
    --cor-titulos: #EAECEE;      /* Branco suave para títulos */
    --cor-fundo: #18191A;          /* Fundo principal, preto suave */
    --cor-fundo-secao: #242526;   /* Fundo de elementos como cards e widgets */
    --cor-borda: #3A3E41;         /* Cinza escuro para bordas sutis */

    /* Tipografia */
    --fonte-principal: 'Roboto', sans-serif;
    --fonte-titulos: 'Montserrat', sans-serif;

    /* Estilos Gerais */
    --border-radius: 8px;
    --transicao-padrao: all 0.3s ease-in-out;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--fonte-principal);
    font-size: 17px;
    color: var(--cor-texto);
    background-color: var(--cor-fundo);
    line-height: 1.8;
}


/* 2. TIPOGRAFIA DETALHADA (DARK MODE)
-------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--fonte-titulos);
    color: var(--cor-titulos);
    font-weight: 700;
    line-height: 1.3;
}

a {
    color: var(--cor-primaria);
    text-decoration: none;
    transition: var(--transicao-padrao);
}

a:hover {
    color: var(--cor-primaria-escura);
    text-decoration: underline;
}

blockquote {
    border-left: 4px solid var(--cor-primaria);
    padding-left: 20px;
    margin: 20px 0;
    font-style: italic;
    font-size: 1.1em;
    color: var(--cor-texto);
    background-color: var(--cor-fundo-secao);
    border-radius: 0 var(--border-radius) var(--border-radius) 0;
}


/* 3. CABEÇALHO E NAVEGAÇÃO (DARK MODE)
-------------------------------------------------------------- */
.site-header {
    background-color: var(--cor-fundo-secao);
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    border-bottom: 1px solid var(--cor-borda);
}
/* Todos os links no header ficam claros por padrão */
.site-header a { color: var(--cor-titulos) !important; }
.site-header a:hover { color: var(--cor-primaria) !important; }
/* Remove qualquer fundo branco indevido em links genéricos no header */
.site-header .inside-header a:not(.button):not(.wp-block-button__link){
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}
/* Garante que wrappers do header não tenham fundos brancos */
.site-header .inside-header,
.site-header .inside-header > *,
.site-header .header-widget,
.site-header .wp-block-buttons,
.site-header .wp-block-button{
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
}
/* Busca no header, sem fundo branco no wrapper */
.site-header .search-form,
.site-header .search-form *{
    background: transparent;
}

/* Branding (título e descrição do site) */
.site-branding .main-title a { color: var(--cor-titulos) !important; }
.site-branding .site-description { color: var(--cor-texto) !important; }

.main-navigation .main-nav ul li a {
    font-family: var(--fonte-titulos);
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--cor-titulos) !important;
    transition: var(--transicao-padrao);
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: var(--border-radius);
    padding: 10px 14px;
}
.main-navigation .main-nav ul li a:visited { color: var(--cor-titulos) !important; }

.main-navigation .main-nav ul li:hover > a {
    color: var(--cor-primaria);
    background-color: rgba(46, 204, 113, 0.1);
}

/* >>> CORREÇÃO DO BOTÃO ATIVO DO MENU <<< */
.main-navigation .main-nav ul li.current-menu-item > a {
    background-color: rgba(46, 204, 113, 0.1) !important; /* Força o fundo correto */
    color: var(--cor-primaria) !important; /* Força a cor do texto */
    border-radius: var(--border-radius);
}

.menu-toggle {
    color: var(--cor-primaria);
}
.main-navigation.toggled {
    background-color: var(--cor-fundo-secao);
    border: 1px solid var(--cor-borda);
}

/* Botão Gutenberg no header (ex.: Página de exemplo) */
.site-header .wp-block-button .wp-block-button__link {
    background-color: var(--cor-primaria) !important;
    color: #fff !important;
    border: 2px solid var(--cor-primaria) !important;
    border-radius: 50px !important;
    padding: 10px 16px !important;
}
.site-header .wp-block-button .wp-block-button__link:hover {
    background-color: var(--cor-primaria-escura) !important;
    border-color: var(--cor-primaria-escura) !important;
}
/* Caso o link de Página de exemplo não seja bloco, tratar como botão pela posição */
.site-header .inside-header a[href*="pagina-exemplo"],
.site-header .inside-header a[aria-current="page"]{
    background: var(--cor-primaria) !important;
    color: #fff !important;
    border: 2px solid var(--cor-primaria) !important;
    border-radius: 50px !important;
    padding: 10px 16px !important;
    display: inline-block;
}
.site-header .inside-header a[href*="pagina-exemplo"]:link,
.site-header .inside-header a[href*="pagina-exemplo"]:visited,
.site-header .inside-header a[href*="pagina-exemplo"]:focus,
.site-header .inside-header a[href*="pagina-exemplo"]:active{
    background: var(--cor-primaria) !important;
    color:#fff !important;
    border-color: var(--cor-primaria) !important;
}
.site-header .inside-header a[href*="pagina-exemplo"] *,
.site-header .inside-header a[aria-current="page"] *{
    background: transparent !important;
}
.site-header .inside-header a[href*="pagina-exemplo"]:hover,
.site-header .inside-header a[aria-current="page"]:hover{
    background-color: var(--cor-primaria-escura) !important;
    border-color: var(--cor-primaria-escura) !important;
}

/* Normalização agressiva do CTA no header (cobre variações) */
.site-header .inside-header a.button,
.site-header .inside-header .button a,
.site-header .inside-header .wp-block-buttons .wp-block-button__link,
.site-header .inside-header .wp-block-button__link,
.site-header .inside-header .menu-item a.button,
.site-header .inside-header .menu a.button,
.site-header .inside-header .menu .current-menu-item > a.button,
.site-header .inside-header .menu .current_page_item > a.button{
    background-color: var(--cor-primaria) !important;
    background-image: none !important;
    color: #fff !important;
    border: 2px solid var(--cor-primaria) !important;
    border-radius: 50px !important;
    box-shadow: none !important;
}
.site-header .inside-header a.button:hover,
.site-header .inside-header .wp-block-button__link:hover{
    background-color: var(--cor-primaria-escura) !important;
    border-color: var(--cor-primaria-escura) !important;
}
/* Itens especiais (botões no menu, se usarem classe .button) */
.main-navigation .main-nav a.button,
.main-navigation .menu-bar-items a.button,
.menu-bar-items .menu-bar-item a.button {
    background-color: var(--cor-primaria) !important;
    color: #fff !important;
    border: 2px solid var(--cor-primaria) !important;
    border-radius: 50px !important;
}
.main-navigation .main-nav a.button:hover,
.main-navigation .menu-bar-items a.button:hover,
.menu-bar-items .menu-bar-item a.button:hover {
    background-color: var(--cor-primaria-escura) !important;
    border-color: var(--cor-primaria-escura) !important;
}

/* Links da barra extra (menu-bar-items) e busca, sempre claros */
.menu-bar-items a { color: var(--cor-titulos) !important; }
.menu-bar-items a:hover { color: var(--cor-primaria) !important; }


/* 4. BOTÕES E FORMULÁRIOS (DARK MODE)
-------------------------------------------------------------- */
.button, 
input[type="submit"] {
    background-color: var(--cor-primaria);
    color: #fff !important;
    border: 2px solid var(--cor-primaria);
    border-radius: 50px;
    transition: var(--transicao-padrao);
}

.button:hover, 
input[type="submit"]:hover {
    background-color: var(--cor-primaria-escura);
    border-color: var(--cor-primaria-escura);
    transform: translateY(-2px);
}

input[type="text"],
input[type="email"],
input[type="search"],
textarea,
select {
    border: 1px solid var(--cor-borda);
    border-radius: var(--border-radius);
    background-color: var(--cor-fundo);
    color: var(--cor-texto);
    transition: var(--transicao-padrao);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    outline: none;
    border-color: var(--cor-primaria);
    box-shadow: 0 0 0 2px rgba(46, 204, 113, 0.2);
}


/* 5. CONTEÚDO E LAYOUT GLOBAL (DARK MODE)
-------------------------------------------------------------- */

/* >>> INÍCIO DA CORREÇÃO GLOBAL DE FUNDOS BRANCOS <<< */
/* Esta regra unificada corrige os "cartões" brancos no conteúdo, sidebar, comentários e cabeçalho da página */
.separate-containers .inside-article,
.widget,
#comments,
.separate-containers .page-header {
    background-color: var(--cor-fundo-secao) !important;
    border: 1px solid var(--cor-borda);
    border-radius: var(--border-radius);
    box-shadow: none;
    color: var(--cor-texto);
}
/* >>> FIM DA CORREÇÃO GLOBAL DE FUNDOS BRANCOS <<< */

.page-header {
    padding: 20px;
}

.entry-title a {
    color: var(--cor-titulos);
}

.widget-title {
    color: var(--cor-primaria);
    border-bottom: 2px solid var(--cor-borda);
    margin-bottom: 20px;
    padding-bottom: 10px;
}

/* Estilização interna dos comentários */
.comments-title {
    color: var(--cor-titulos);
}

/* Wrappers dos comentários (evita áreas brancas ao redor) */
.comments-area,
.separate-containers .inside-article .comments-area,
#comments {
    background-color: var(--cor-fundo-secao) !important;
    border: 1px solid var(--cor-borda) !important;
    border-radius: var(--border-radius) !important;
    box-shadow: none !important;
    background-clip: padding-box;
}
.comment-list { background: transparent !important; border: 0 !important; }
.comment-list .children { background: transparent !important; border-left: 1px dashed var(--cor-borda); }
hr, .wp-block-separator { background-color: var(--cor-borda) !important; color: var(--cor-borda) !important; border-color: var(--cor-borda) !important; opacity: .4; }


.comment-list li.comment {
    background-color: var(--cor-fundo);
    border: 1px solid var(--cor-borda);
    padding: 15px;
    border-radius: var(--border-radius);
    margin-top: 15px;
}

.comment-author .fn, .comment-author .says {
    color: var(--cor-titulos);
}

.comment-reply-link {
    background-color: var(--cor-primaria);
    color: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    text-decoration: none;
    font-size: 14px;
}
.comment-reply-link:hover{
    background-color: var(--cor-primaria-escura);
    color: #fff;
    text-decoration: none;
}

/* Formulário de comentários (remove áreas brancas) */
.comment-respond,
.comment-respond .comment-form{
    background-color: var(--cor-fundo-secao) !important;
    border: 1px solid var(--cor-borda) !important;
    border-radius: var(--border-radius) !important;
    box-shadow: none !important;
    padding: 16px;
}
.comment-form textarea,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form input[type="search"],
.comment-form select{
    background-color: var(--cor-fundo) !important;
    color: var(--cor-texto) !important;
    border: 1px solid var(--cor-borda) !important;
}
.comment-form .form-submit .submit{
    background-color: var(--cor-primaria) !important;
    color: #fff !important;
    border: 2px solid var(--cor-primaria) !important;
    border-radius: 50px !important;
    padding: 10px 16px !important;
}
.comment-form .form-submit .submit:hover{
    background-color: var(--cor-primaria-escura) !important;
    border-color: var(--cor-primaria-escura) !important;
}

/* Aviso "Conectado como..." sem fundo branco */
.comment-respond .logged-in-as {
    background: var(--cor-fundo) !important;
    border: 1px solid var(--cor-borda) !important;
    border-radius: var(--border-radius);
    padding: 10px 12px;
}


/* 6. RODAPÉ (DARK MODE)
-------------------------------------------------------------- */
.site-footer {
    background-color: #111;
    color: #888;
    border-top: 1px solid var(--cor-borda);
}

/* Remover fundos claros em contêineres internos do rodapé */
.site-footer .inside-site-info,
.site-footer .copyright-bar,
.footer-widgets,
.footer-widgets .inside-footer-widgets{
    background: transparent !important;
}

.site-info {
    background-color: transparent !important;
    font-size: 0 !important; /* Oculta créditos padrão */
    padding: 20px 0;
}

/* Oculta completamente os elementos padrão do crédito/tema */
.site-info > * { display: none !important; }

/* Ocultar especificamente o crédito do GeneratePress, se presente */
.site-info .copyright,
.site-info .powered-by,
.site-info a[href*="generatepress"],
.site-info span.generatepress,
.site-info span.theme-info {
    display: none !important;
    font-size: 0 !important;
}

.site-info::after {
    content: "© 2025 Ecolimp Soluções - Todos os direitos reservados.";
    font-size: 15px;
    display: block;
    text-align: center;
    color: #888;
}

/* 7. AJUSTES RESPONSIVOS
-------------------------------------------------------------- */
@media (max-width: 768px) {
    body { font-size: 16px; }
    .separate-containers .site-main { padding: 10px; }
    #comments { padding: 15px; }
}

/* =====================
     Correções de Cor (Texto Claro Forçado)
     ===================== */
/* Texto base claro nas principais áreas */
.inside-article,
.inside-article p,
.inside-article li,
.entry-content,
.entry-content p,
.entry-content li,
.entry-summary,
.site-main,
.site-main p,
.site-main li,
.widget,
.widget p,
.widget li,
.widget nav,
.widget span,
.widget div,
.comments-area,
.comment-content,
.comment-content p,
.comment-content li,
.comment-meta,
.comment-metadata,
.reply,
.page-header,
.page-header p,
.sidebar,
#right-sidebar,
#left-sidebar,
.site-footer,
.site-footer p,
.site-footer li,
.site-info {
    color: var(--cor-texto) !important;
}

/* Títulos e destaques sempre claros */
.entry-title,
.entry-title a,
.page-title,
.page-header .page-title,
.widget-title,
strong, b, dt { color: var(--cor-titulos) !important; }

/* Metadados (data/autor/categorias) */
.entry-meta, .entry-meta a, .cat-links, .tags-links { color: var(--cor-texto) !important; }
.entry-meta a:hover, .cat-links a:hover, .tags-links a:hover { color: var(--cor-primaria) !important; }

/* Placeholders e labels */
::placeholder { color: #9aa0a6 !important; }
::-webkit-input-placeholder { color: #9aa0a6 !important; }
:-ms-input-placeholder { color: #9aa0a6 !important; }
label, legend { color: var(--cor-titulos) !important; }

/* Tabelas e elementos Gutenberg comuns */
table, table th, table td { color: var(--cor-texto) !important; }
.wp-block-table td, .wp-block-table th { border-color: var(--cor-borda) !important; }
.wp-block-code, code, pre { background: #1f2021; color: #e8e8e8; border-color: var(--cor-borda); }

/* Widgets específicos */
.widget_recent_entries a, .widget_recent_comments a, .widget_archive a, .widget_categories a, .widget_meta a, .widget_pages a, .widget_nav_menu a {
    color: var(--cor-primaria) !important;
}
.widget_recent_entries a:hover, .widget_recent_comments a:hover, .widget_archive a:hover, .widget_categories a:hover, .widget_meta a:hover, .widget_pages a:hover, .widget_nav_menu a:hover {
    color: var(--cor-primaria-escura) !important;
}

/* Paginação/navegação */
.pagination a, .page-numbers a, .nav-links a { color: var(--cor-primaria) !important; }
.pagination .current, .page-numbers .current { color: var(--cor-titulos) !important; }

/* Breadcrumbs (se existir) */
.breadcrumbs, .breadcrumbs a { color: var(--cor-texto) !important; }
.breadcrumbs a:hover { color: var(--cor-primaria) !important; }
