/* Définition des variables de couleur à la racine pour un accès facile */
:root {
    --color-primary: #003366;
    --color-secondary: #FFD700;
    --color-accent-green: #228B22;
    --color-accent-red: #AA0000;
    --color-neutral-light: #F5F5DC;
    --color-neutral-dark: #36454F;
}

body {
    font-family: 'Poppins', sans-serif;
    background-color: var(--color-neutral-light);
    color: var(--color-neutral-dark);
}

.text-primary { color: var(--color-primary); }
.text-secondary { color: var(--color-secondary); }
.text-accent-green { color: var(--color-accent-green); }
.text-accent-red { color: var(--color-accent-red); }
.text-neutral-dark { color: var(--color-neutral-dark); }
.bg-primary { background-color: var(--color-primary); }
.bg-secondary { background-color: var(--color-secondary); }
.bg-neutral-light { background-color: var(--color-neutral-light); }
.bg-yellow-50 { background-color: #fffbeb; }
.bg-green-50 { background-color: #f0fdf4; }
.border-secondary { border-color: var(--color-secondary); }
.border-accent-green { border-color: var(--color-accent-green); }


.sidebar-link {
    transition: all 0.2s ease-in-out;
    color: var(--color-neutral-dark);
}
.sidebar-link:hover {
    background-color: #e6f7ff; /* Un bleu très clair pour le survol */
    color: var(--color-primary);
}
.sidebar-link.active {
    background-color: var(--color-primary);
    color: white;
}
html[dir="ltr"] .sidebar-link.active { transform: translateX(5px); }
html[dir="rtl"] .sidebar-link.active { transform: translateX(-5px); }

.kpi-card {
    border-left: 4px solid var(--color-secondary);
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}
.kpi-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
html[dir="rtl"] .kpi-card {
    border-right: 4px solid var(--color-secondary);
    border-left: none;
}
.nav-button {
    transition: all 0.3s ease;
}
.nav-button.active {
    background-color: var(--color-primary);
    color: #FFFFFF;
}

.future-card {
    background-color: white;
    border-radius: 0.5rem;
    padding: 1.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    border-left: 4px solid var(--color-accent-green);
    display: flex;
    flex-direction: column;
}
.future-card.border-dashed {
    border: 2px dashed var(--color-accent-green);
    background-color: #f0fdf4; /* Vert très clair */
}

#african-currency-submenu {
    right: 100%;
    top: -1px;
}

/* Styles pour l'export */
.export-title {
    color: var(--color-primary);
    font-size: 1.5rem; /* 24px */
    font-weight: bold;
    border-bottom: 2px solid var(--color-secondary);
    padding-bottom: 0.5rem; /* 8px */
    margin-bottom: 1.5rem; /* 24px */
}

/* Classe appliquée pendant l'export pour cacher les éléments non désirés */
body.is-exporting header {
    display: none !important;
}

body.is-exporting section {
    margin-bottom: 0 !important;
    padding: 2rem;
    box-shadow: none;
}

body.is-exporting .bg-white {
    box-shadow: none;
}