/* static/css/main.css */
:root {
    /* Paleta Corporativa / Minimalista */
    --bg-app: #f7f8fa;          /* Fundo geral um pouco mais frio */
    --bg-surface: #ffffff;      /* Fundo de painéis e tabelas */
    --bg-sidebar: #111827;      /* Sidebar escura para contraste elegante */
    
    --text-primary: #1f2937;    /* Texto principal (quase preto) */
    --text-secondary: #4b5563;  /* Texto secundário (cinza escuro) */
    --text-muted: #9ca3af;      /* Texto desabilitado/dicas */
    
    --border-color: #e5e7eb;    /* Bordas sutis, sem sombras pesadas */
    --accent-color: #bbbbbb;    /* Azul corporativo moderno */
    --accent-hover: #1d4ed8;
    
    /* Variáveis de Medida para Alta Densidade */
    --font-base: 13px;          /* Fonte menor para caber mais dados */
    --spacing-xs: 4px;
    --spacing-sm: 8px;
    --spacing-md: 16px;
    --spacing-lg: 24px;
    --sidebar-width: 220px;
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: var(--font-base);
    color: var(--text-primary);
    background-color: var(--bg-app);
    line-height: 1.4;
    overflow: hidden; /* Evita scroll duplo, o scroll será apenas na área de conteúdo */
}

/* Estrutura Principal da Tela */
#app-layout {
    display: flex;
    height: 100vh;
    width: 100vw;
}

#main-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

#module-container {
    flex: 1;
    padding: var(--spacing-lg);
    overflow-y: auto;
    background-color: var(--bg-app);
}

/* Tipografia Comum */
h1, h2, h3 { font-weight: 600; color: var(--text-primary); }
h1 { font-size: 18px; margin-bottom: var(--spacing-md); }
h2 { font-size: 15px; margin-bottom: var(--spacing-sm); }

/* Adicione no final do main.css */
#sidebar-container {
    width: var(--sidebar-width);
    flex-shrink: 0;
    display: flex;
}