/*
Theme Name: GeneratePress Child - RALC
Theme URI: https://www.rpgalacarte.com.br
Description: Tema Filho GeneratePress com Dark Mode e Design System RALC de alto contraste e legibilidade.
Author: RPG à la Carte
Author URI: https://www.rpgalacarte.com.br
Template: generatepress
Version: 1.1.0
*/

/* 1. Importação Google Fonts (Nunito e Fredoka One) */
@import url('https://fonts.googleapis.com/css2?family=Fredoka+One&family=Nunito:ital,wght@0,300;0,400;0,600;0,700;0,800;1,400&display=swap');

/* 2. Variáveis de Cor do Design System RALC (Ajustadas para Acessibilidade WCAG AA/AAA em Dark Mode) */
:root {
    --ralc-primary: #8d14f7;        /* Roxo de Destaque / Botões / Bordas */
    --ralc-link-light: #c084fc;     /* Roxo Violeta Claro de Alto Contraste (6.2:1 sobre fundo escuro) */
    --ralc-secondary: #ff0647;      /* Rosa Destaque / Hover */
    --ralc-dark: #1e1e1e;           /* Fundo Escuro Estrutural Base */
    --ralc-card: #262626;           /* Superfície de Artigos e Widgets (Elevação) */
    --ralc-border: rgba(255, 255, 255, 0.1); /* Divisórias sutis */
    --ralc-text: #f3f4f6;           /* Texto de Leitura (Cinza Claro Quente) */
    --ralc-heading: #ffffff;        /* Títulos em Branco Puro */
    --ralc-muted: #9ca3af;          /* Metadados, datas e legendas */
}

/* 3. Base do Documento e Tipografia */
html, body {
    background-color: var(--ralc-dark) !important;
    color: var(--ralc-text) !important;
    font-family: 'Nunito', sans-serif !important;
    font-size: 17px;
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
}

/* 4. Títulos e Cabeçalhos (Fredoka One) */
h1, h2, h3, h4, h5, h6,
.site-title,
.site-title a,
.entry-title,
.entry-title a,
.widget-title {
    font-family: 'Fredoka One', cursive, sans-serif !important;
    color: var(--ralc-heading) !important;
    letter-spacing: 0.5px;
    font-weight: 400;
}

h1, .entry-title { font-size: 2.1rem; }
h2 { font-size: 1.7rem; }
h3 { font-size: 1.35rem; }

/* 5. Eliminação do Bloco Branco: Superfícies e Contêineres de Conteúdo */
#page,
.site,
.site-content,
.site-main,
.content-area,
.inside-article,
.separate-containers .inside-article,
.separate-containers .sidebar .widget,
.sidebar .widget,
.site-header,
.site-footer,
.inside-site-info {
    background-color: var(--ralc-dark) !important;
    color: var(--ralc-text) !important;
}

/* Estilo de Cartão Elegante para Artigos e Widgets */
.separate-containers .inside-article,
.separate-containers .sidebar .widget {
    background-color: var(--ralc-card) !important;
    border: 1px solid var(--ralc-border) !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3) !important;
}

/* 6. Links e Navegação (Correção de Contraste e Legibilidade) */
a, 
a:visited {
    color: var(--ralc-link-light) !important;
    text-decoration: none;
    transition: color 0.15s ease-in-out;
}

a:hover, 
a:focus, 
a:active {
    color: var(--ralc-secondary) !important;
    text-decoration: underline;
}

/* Menu de Navegação Superior */
.main-navigation,
.main-navigation ul,
.main-navigation ul li {
    background-color: var(--ralc-dark) !important;
}

.main-navigation .main-nav ul li a {
    color: var(--ralc-heading) !important;
    font-family: 'Nunito', sans-serif !important;
    font-weight: 700;
    font-size: 15px;
    padding: 10px 14px;
    transition: color 0.2s ease;
}

.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li[class*="current-menu-"] > a {
    color: var(--ralc-secondary) !important;
    background-color: transparent !important;
}

/* 7. Barra Lateral (Sidebar) e Listas de Posts Recentes */
.sidebar .widget ul {
    list-style: none;
    padding-left: 0;
}

.sidebar .widget ul li {
    padding: 8px 0;
    border-bottom: 1px solid var(--ralc-border);
}

.sidebar .widget ul li:last-child {
    border-bottom: none;
}

.sidebar .widget ul li a {
    color: var(--ralc-link-light) !important;
    font-weight: 600;
    font-size: 15px;
}

.sidebar .widget ul li a:hover {
    color: var(--ralc-secondary) !important;
}

.widget-title {
    border-bottom: 2px solid var(--ralc-primary);
    padding-bottom: 6px;
    margin-bottom: 15px;
    font-size: 1.25rem !important;
}

/* 8. Formulários e Campo de Busca (Dark Theme) */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
    background-color: #2a2a2a !important;
    color: var(--ralc-heading) !important;
    border: 1px solid #444444 !important;
    border-radius: 6px !important;
    padding: 10px 14px !important;
}

input[type="search"]:focus,
textarea:focus {
    border-color: var(--ralc-primary) !important;
    outline: none;
    box-shadow: 0 0 0 2px rgba(141, 20, 247, 0.3) !important;
}

/* 9. Botões da Marca */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.button:visited,
.wp-block-button__link {
    background-color: var(--ralc-primary) !important;
    color: #ffffff !important;
    font-family: 'Fredoka One', cursive, sans-serif !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 10px 22px !important;
    font-size: 15px !important;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(141, 20, 247, 0.35) !important;
    transition: all 0.2s ease-in-out !important;
}

button:hover,
input[type="submit"]:hover,
.button:hover,
.wp-block-button__link:hover {
    background-color: var(--ralc-secondary) !important;
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(255, 6, 71, 0.4) !important;
}

/* 10. Metadados do Post (Autor, Data, Categoria) */
.entry-meta,
.entry-meta a,
.cat-links,
.comments-link {
    color: var(--ralc-muted) !important;
    font-size: 14px;
}
