/* =====================================================================
   SISTEMA DE DESIGN OFICIAL - VARIÁVEIS, FONTES E PALETA CROMÁTICA
===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@500;700;800&family=Plus+Jakarta+Sans:wght@600;700;800;900&display=swap');

:root {
    /* Tipografia de Três Camadas */
    --font-main: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    --font-heading: 'Plus Jakarta Sans', var(--font-main);
    --font-mono: 'JetBrains Mono', "Courier New", monospace;

    /* Identidade Cromática - Safira Nobre & Ouro Metálico */
    --primary: #003594;
    --primary-hover: #00256B;
    --primary-light: #EBF2FF;
    --primary-gradient: linear-gradient(135deg, #061A40 0%, #003594 50%, #0267C1 100%);
    
    --secondary: #FFB800;
    --secondary-hover: #E5A600;
    --secondary-light: #FFF8E6;
    --secondary-dark: #C98800;
    --secondary-gradient: linear-gradient(135deg, #FFE066 0%, #FFB800 45%, #E07A00 100%);

    /* Painel Noturno Executivo */
    --sidebar-gradient: linear-gradient(180deg, #061539 0%, #0A2259 100%);
    --surface-dark: #0B132B;

    /* Cores Semânticas de Apoio */
    --success: #059669;
    --success-light: #ECFDF5;
    --success-gradient: linear-gradient(135deg, #10B981 0%, #059669 100%);
    
    --danger: #DC2626;
    --danger-light: #FEF2F2;
    --danger-gradient: linear-gradient(135deg, #EF4444 0%, #DC2626 100%);
    
    --warning: #D97706;
    --warning-light: #FFFBEB;

    --purple: #7E22CE;
    --purple-light: #FAF5FF;

    /* Neutros e Superfícies */
    --bg-main: #F4F7FB;
    --surface: #FFFFFF;
    --surface-muted: #F8FAFC;
    --border: #E2E8F0;
    --border-strong: #CBD5E1;
    --text-main: #0F172A;
    --text-muted: #64748B;
    --text-subtle: #94A3B8;

    /* Elevação e Efeitos */
    --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.06), 0 1px 2px rgba(15, 23, 42, 0.04);
    --shadow-md: 0 4px 6px -1px rgba(15, 23, 42, 0.08), 0 2px 4px -2px rgba(15, 23, 42, 0.04);
    --shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, 0.1), 0 4px 6px -4px rgba(15, 23, 42, 0.05);
    --shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, 0.12), 0 8px 10px -6px rgba(15, 23, 42, 0.04);
    --shadow-gold: 0 0 25px rgba(255, 184, 0, 0.45);
    --shadow-sapphire: 0 0 25px rgba(0, 53, 148, 0.35);

    /* Raios de Borda */
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 18px;
    --radius-xl: 26px;
    --radius-full: 9999px;

    /* Transição Padrão */
    --transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Reset Base e Tipografia */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: var(--font-main);
}

body {
    background-color: var(--bg-main);
    color: var(--text-main);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
    letter-spacing: -0.02em;
}

code, pre, .font-mono {
    font-family: var(--font-mono);
}

/* Malha de Fundo Suave para Telas Abertas */
body.ambient-glow {
    background-color: #F4F7FB;
    background-image: 
        radial-gradient(at 0% 0%, rgba(2, 103, 193, 0.08) 0px, transparent 50%),
        radial-gradient(at 100% 0%, rgba(255, 184, 0, 0.12) 0px, transparent 50%),
        radial-gradient(at 50% 100%, rgba(235, 242, 255, 0.8) 0px, transparent 60%);
    background-attachment: fixed;
}