/* base.css */

/* Styles pour le titre */
h2 {
    position: absolute;
    top: 20px;
    right: 20px;
    font-size: 1.5rem;
    margin: 0;
}

/* Styles pour le logo */
.logo img {
    display: block;
    max-width: 100%;
    min-width: 20%;
    height: auto;
    margin: auto;
	margin-top: 20px;
}

/* Styles pour le menu */
.menu ul {
    list-style-type: none;
    padding: 0;
    display: flex;
    justify-content: center;
    gap: 10px;
}

.menu li {
    margin: 0;
}

.menu a {
    display: inline-block;
    padding: 10px 20px;
    background-color: #add8e6; /* Bleu clair */
    color: white;
    text-decoration: none;
    border-radius: 8px;
    transition: background-color 0.3s;
}

.menu a:hover {
    background-color: #87ceeb; /* Bleu clair un peu plus foncé au survol */
}

/* Styles pour les messages flash */
.alert {
    padding: 10px;
    margin: 10px 0;
    border-radius: 5px;
}

.alert.success {
    background-color: #d4edda;
    color: #155724;
}

.alert.error {
    background-color: #f8d7da;
    color: #721c24;
}

/* Styles généraux */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
	min-height: 100vh;	/* Assure que le body prend au moins toute la hauteur de la fenêtre */
	display : auto;
}

.message-container {
    width: 100%;
	max-height: 10vh;
    max-width: 1200px;
    padding: 5px;
    display: flex;
	flex: 3;
	margin-bottom: 20px;

}

/* Conteneur principal pour main-content et side-bar */
.main-body {
    display: auto; /* Utilise Flexbox pour le conteneur */
    width: 100%; /* Prend toute la largeur de l'écran */
	
}

/* Styles pour main-content */
.main-content {
    width: 100%; /* Prend 80% de la largeur */
    padding: 20px;
    box-sizing: border-box; /* Inclut le padding dans la largeur totale */
    overflow: auto; /* Permet le défilement si nécessaire */
}

/* Styles pour side-bar */
.side-bar {
    width: 80%; /* Prend 20% de la largeur */
    background-color: #f4f4f4;
    padding: 20px;
    box-sizing: border-box; /* Inclut le padding dans la largeur totale */
    overflow: auto; /* Permet le défilement si nécessaire */
}

/* Responsive design */
@media (max-width: 768px) {
    .main-body  {
        flex-direction: column; /* Affiche les éléments en colonne sur les petits écrans */
    }

    .main-body, .side-bar {
        width: 100%; /* Prend toute la largeur sur les petits écrans */
    }
}
}

/* Styles pour les tooltips */
.tooltip {
    position: relative;
    cursor: pointer;
}

.tooltip .tooltiptext {
    visibility: hidden;
    max-width: 300px; /* Largeur maximale pour le texte */
    background-color: #555;
    color: #fff;
    text-align: left; /* Aligner le texte à gauche pour une meilleure lisibilité */
    border-radius: 6px;
    padding: 10px; /* Ajouter plus de padding pour le confort de lecture */
    position: fixed; /* Position fixe par rapport à la fenêtre */
    z-index: 1000; /* Augmenter le z-index pour s'assurer que l'infobulle est au premier plan */
    top: 10px; /* Position en haut de la fenêtre */
    left: 10px; /* Position à gauche de la fenêtre */
    opacity: 0;
    transition: opacity 0.3s;
    white-space: normal; /* Permettre les retours à la ligne automatiques */
    word-wrap: break-word; /* Forcer le retour à la ligne pour les mots longs */
}

.tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}
/* Footer styles */
footer {
    position: relative;
    bottom: 0;
    width: 100%;
    background-color: #f1f1f1;
    color: #333;
    text-align: center;
    padding: 10px;
    border-top: 1px solid #ccc;
	margin-top: auto; /* Pousse le footer vers le bas */
}

.footer-content {
    font-size: 0.9em;
}

/* Styles pour les tableaux */
table {
    width: 100%;
    border-collapse: collapse;
}

th, td {
    border: 1px solid #ccc;
    padding: 8px;
    text-align: left;
}

/* Styles pour les boutons */
.button {
    padding: 10px 20px;
    background-color: #add8e6;
    color: white;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.button:hover {
    background-color: #87ceeb;
}

/* Responsive design */
@media (max-width: 768px) {
    .main-content, .side-bar {
        width: 100%;
    }
}