/* ========================
   Style Général
======================== */
body {
    font-family: 'Arial', sans-serif;
    line-height: 1.6;
    margin: 0;
    padding: 0;
    background-color: #f7f9fb; /* Fond légèrement grisé */
    color: #333; /* Texte général */
    transition: background-color 0.3s, color 0.3s; /* Transition pour le mode sombre */
}

/* ========================
   En-tête
======================== */
header {
    text-align: center;
    background-color: #DFD7D3; /* Couleur principale du header */
    color: #000;
    padding: 20px 0;
    transition: background-color 0.3s, color 0.3s; /* Transition pour le mode sombre */
}

header h1 {
    margin: 0;
    font-size: 2.5em;
    font-weight: bold;
}

header p {
    margin: 5px 0 0;
    font-size: 1.2em;
}

/* ========================
   Bouton Toggle (Mode Sombre)
======================== */
.dark-mode-toggle {
    width: 60px;
    height: 30px;
    background-color: #ccc;
    border-radius: 30px;
    position: relative;
    cursor: pointer;
    transition: background-color 0.3s; /* Transition douce */
}

.dark-mode-toggle .toggle-circle {
    width: 26px;
    height: 26px;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    top: 2px;
    left: 2px;
    transition: left 0.3s, background-color 0.3s, box-shadow 0.3s; /* Fluidité */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

body.dark-mode .dark-mode-toggle {
    background-color: #333;
}

body.dark-mode .dark-mode-toggle .toggle-circle {
    left: 32px; /* Position déplacée pour le mode sombre */
    background-color: #f0e68c; /* Couleur associée à la nuit */
    box-shadow: 0 2px 5px rgba(255, 255, 255, 0.3); /* Ombre plus claire */
}

/* ========================
   Section Principale
======================== */
main {
    max-width: 900px;
    margin: 30px auto;
    background: #fff;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    transition: background-color 0.3s, color 0.3s; /* Transition douce pour le mode sombre */
}

/* ========================
   Titres des Sections
======================== */
h2 {
    color: #2e3b4e;
    border-bottom: 2px solid #2e3b4e;
    padding-bottom: 5px;
    margin-bottom: 15px;
    font-size: 1.5em;
    transition: color 0.3s, border-color 0.3s; /* Transition pour le mode sombre */
}

h3 {
    color: #2e3b4e;
    font-size: 1.3em;
    margin-top: 20px;
    margin-bottom: 5px;
    transition: color 0.3s; /* Transition pour le mode sombre */
}

/* ========================
   Listes
======================== */
ul {
    list-style-type: square;
    padding-left: 20px;
    margin-bottom: 20px;
}

ul li {
    margin-bottom: 8px;
    transition: color 0.3s; /* Transition pour le mode sombre */
}

/* ========================
   Footer
======================== */
footer {
    text-align: center;
    margin: 20px 0;
    font-size: 0.9em;
    transition: color 0.3s; /* Transition pour le mode sombre */
}

footer p {
    color: #000000; /* Couleur pour "Contact :" */
    margin: 0;
    font-weight: bold;
    transition: color 0.3s; /* Transition douce */
}

footer a {
    color: #003399; /* Couleur des liens */
    text-decoration: none;
    font-weight: bold;
    transition: color 0.3s; /* Transition douce */
}

footer a:hover {
    text-decoration: underline; /* Soulignement au survol */
}

/* ========================
   Mode Sombre
======================== */
body.dark-mode {
    background-color: #1e1e1e;
    color: #e0e0e0;
}

main.dark-mode {
    background-color: #333; /* Fond sombre */
    color: #e0e0e0; /* Texte clair */
    box-shadow: 0 2px 8px rgba(255, 255, 255, 0.1); /* Ombre claire */
}

header.dark-mode {
    background-color: #333;
    color: #e0e0e0;
}

h2.dark-mode {
    color: #ffffff; /* Blanc pour les titres <h2> */
    border-color: #666666; /* Bordure claire */
}

h3.dark-mode {
    color: #ffffff; /* Blanc pour les titres <h3> */
}

ul.dark-mode li {
    color: #e0e0e0;
}

footer.dark-mode p {
    color: #ffffff; /* Texte du footer en blanc */
}

footer.dark-mode a {
    color: #61f7f6; /* Liens du footer en mode sombre */
}
