@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap');

/* Configurações Globais de Tema - Paleta Oficial FSADU (Sousândrade) */
:root {
    /* Cores Institucionais Principais */
    --fsadu-navy: #0A192F;         /* Azul Escuro / Marinho Predominante */
    --fsadu-navy-light: #172A45;   /* Azul Marinho Suave para Cards */
    --fsadu-gold: #D4AF37;         /* Dourado / Amarelo Institucional */
    --fsadu-gold-hover: #B59226;   /* Dourado Hover */
    --fsadu-royal: #1E40AF;        /* Azul Royal Secundário */
    --fsadu-light-bg: #F3F4F6;     /* Cinza Claro / Branco Apoio */
    --fsadu-card-light: #FFFFFF;   /* Fundo dos Cards Modo Claro */
    
    /* Mapeamento de Variaveis do SaaS */
    --bg-main: var(--fsadu-light-bg);
    --bg-card: var(--fsadu-card-light);
    --text-main: #0F172A;
    --text-muted: #64748B;
    --border-color: #E2E8F0;
    --brand-primary: var(--fsadu-navy);
    --brand-hover: #172A45;
    --brand-accent: var(--fsadu-gold);
    --brand-royal: var(--fsadu-royal);
}

.dark {
    --bg-main: #0B132B;
    --bg-card: #1C2541;
    --text-main: #F8FAFC;
    --text-muted: #94A3B8;
    --border-color: #334155;
    --brand-primary: var(--fsadu-gold);
    --brand-hover: var(--fsadu-gold-hover);
    --brand-accent: var(--fsadu-gold);
    --brand-royal: #3B82F6;
}

body {
    font-family: 'Outfit', sans-serif;
    background-color: var(--bg-main);
    color: var(--text-main);
    transition: background-color 0.3s ease, color 0.3s ease;
    overflow-x: hidden;
}

/* Utilitários Customizados para Componentes Legados */
.card-theme {
    background-color: var(--bg-card);
    border: 1px solid var(--border-color);
}

/* Animações de Transição Suave e Esmaecimento (Fade In / Fade Out) */
.animate-fade-in {
    animation: fadeIn 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.animate-fade-in-down {
    animation: fadeInDown 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Classes Customizadas para Elementos FSADU */
.bg-fsadu-navy {
    background-color: #0A192F !important;
}

.text-fsadu-gold {
    color: #D4AF37 !important;
}

.bg-fsadu-gold {
    background-color: #D4AF37 !important;
}

.border-fsadu-gold {
    border-color: #D4AF37 !important;
}

.hover\:bg-fsadu-gold-hover:hover {
    background-color: #B59226 !important;
}

/* Transições suaves globais */
* {
    transition-property: color, background-color, border-color, box-shadow, transform;
    transition-duration: 150ms;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}