/* public/css/layout.css - O nosso layout padrão e consistente */

:root {
    --cor-primaria: #0d6efd;
    --cor-fundo-sidebar: #ffffff;
    --cor-fundo-main: #f4f7fc; /* Fundo principal mais suave */
    --cor-borda: #e9ecef;
    --cor-texto-sidebar: #34495e;
    --cor-texto-sidebar-hover: #0d6efd;
    --cor-badge: #e74c3c;
    --cor-sombra: rgba(0,0,0,0.05);
}

/* Reset básico e configuração do corpo */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Poppins', sans-serif;
    display: flex; /* Estrutura principal com sidebar e conteúdo */
    background-color: var(--cor-fundo-main);
    color: var(--cor-texto-sidebar);
}

/* --- Estilo da Sidebar (Barra Lateral) --- */
.sidebar {
    width: 260px;
    flex-shrink: 0; /* Impede que a sidebar encolha */
    background-color: var(--cor-fundo-sidebar);
    height: 100vh;
    position: sticky;
    top: 0;
    padding: 20px;
    border-right: 1px solid var(--cor-borda);
    display: flex;
    flex-direction: column;
}

.sidebar-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--cor-borda);
}

.sidebar-header i { font-size: 24px; color: var(--cor-primaria); }
.sidebar-header h1 { font-size: 18px; font-weight: 600; }
.sidebar-nav { flex-grow: 1; }
.sidebar-nav ul { list-style: none; }

.sidebar-nav a {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 12px 10px;
    margin-bottom: 5px;
    border-radius: 8px;
    text-decoration: none;
    color: var(--cor-texto-sidebar);
    font-weight: 500;
    transition: background-color 0.2s, color 0.2s;
}

.sidebar-nav a:hover {
    background-color: #ecf0f1;
    color: var(--cor-texto-sidebar-hover);
}

.sidebar-nav a.active {
    background-color: var(--cor-primaria);
    color: white;
    box-shadow: 0 4px 10px rgba(13, 110, 253, 0.3);
}

.sidebar-nav a .nav-icon { font-size: 16px; width: 20px; text-align: center; }

.sidebar-nav .notification-badge {
    margin-left: auto;
    background-color: var(--cor-badge);
    color: white;
    font-size: 11px;
    font-weight: 600;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Botão extra na sidebar */
.sidebar-view-public-btn {
    display: block;
    text-align: center;
    margin-top: 20px;
    padding: 10px;
    border-radius: 6px;
    background-color: #ecf0f1;
    color: var(--cor-texto-sidebar);
    font-weight: 500;
    text-decoration: none;
    transition: background-color 0.2s;
}
.sidebar-view-public-btn:hover {
    background-color: #e0e6e9;
}

/* --- Wrapper do Conteúdo Principal (Área à Direita) --- */
.main-content-wrapper {
    flex-grow: 1; /* Ocupa todo o espaço restante */
    height: 100vh;
    overflow-y: auto; /* Adiciona scroll apenas nesta área */
    padding: 30px; /* <<<---- CORREÇÃO ADICIONADA AQUI */
}