/* Début de la structure de base */
html,
body {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Roboto", sans-serif;
    height: 100%;
}
/* Fin de la structure de base */

/* Sections pour la page d'accueil */
.background {
    background-image: url('background.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100vh;
}

/* Variables de couleurs */
:root {
    --couleur-bleu-vif: #1a73e8;
    --couleur-bleu-clair: #3c8dbc;
    --couleur-gris-clair: #f4f4f4;
    --couleur-gris-fonce: #dadce0;
    --couleur-blanc: #ffffff;
    --couleur-noir: #2D2D2D;
    --couleur-gris-bordure: #E2E2E2;
    --couleur-header-footer: #e0e8f8f6;
    --couleur-sidebar: #e4edfdf6;
}

/* Application des variables */
body {
    background-color: var(--couleur-gris-fonce);
    color: var(--couleur-noir);
}

/* Styles pour le HEADER */
#header {
    background-color: var(--couleur-header-footer) !important;
    border-bottom: 1px solid var(--couleur-gris-bordure);
}

/* Styles pour la SIDEBAR */
#sidebar {
    background-color: var(--couleur-sidebar) !important;
    border-right: 1px solid var(--couleur-gris-bordure);
}

#sidebar .nav-link {
    color: var(--couleur-noir);
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    transition: background-color 0.3s;
}

#sidebar .nav-link:hover {
    background-color: var(--couleur-gris-clair);
}

#sidebar .nav-link.active {
    background-color: var(--couleur-bleu-vif);
    color: var(--couleur-blanc) !important;
}

#sidebar .nav-link.active span {
    color: var(--couleur-blanc) !important;
}

/* Styles pour le MAIN CONTENT */
#main-container {
    background-color: var(--couleur-gris-clair);
}

/* Styles pour le FOOTER (responsive) */
#footer {
    background-color: var(--couleur-header-footer) !important;
    border-top: 1px solid var(--couleur-gris-bordure);
}

/* Styles pour le card */
.student-card .card-img-top {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

/*evaluer et relevé*/
.table-container {
overflow-x: auto;
background: white;
padding: 10px;
border-radius: 5px;
box-shadow: 0 0 5px rgba(0,0,0,0.1);
}
th, td {
border: 1px solid #ddd;
padding: 6px;
text-align: center;
}
th.vertical {
writing-mode: vertical-rl;
transform: rotate(180deg);
font-weight: normal;
white-space: nowrap;
}
input[type=number] {
width: 60px;
padding: 2px;
text-align: center;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
-webkit-appearance: none;
margin: 0;
}

.note-failure { color: red; font-weight: bold; }
.note-success { color: blue; font-weight: bold; }

/* Style personnalisé pour le message - CENTRÉ */
#custom-message-box {
position: fixed;
top: 50%; /* Centrer verticalement */
left: 50%; /* Centrer horizontalement */
transform: translate(-50%, -50%); /* Ajuster pour la taille de la boîte */
z-index: 1050;
padding: 15px;
border-radius: 5px;
box-shadow: 0 4px 10px rgba(0,0,0,0.3); /* Ombre plus prononcée */
display: none;
text-align: center;
min-width: 300px;
}
