/* ================== */
/* Navbar fixe en haut */
/* ================== */
body {
    padding-top: 60px; /* hauteur navbar */
    display: flex;
    flex-direction: column;
    min-height: 100vh; /* permet au footer de rester en bas */
}

.navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1030; /* au-dessus du contenu */
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.47), 0 2px 4px -1px rgba(0, 0, 0, 0.34)
}

.navbar-nav .nav-item{
    padding: 0 15px;    
}

.navbar-nav .nav-link{
    color: #fff; 
}

/* Style du menu actif */
.navbar-nav .nav-link.active {    
    border-bottom: #fff 2px solid;       
}

/* Hover léger */
.navbar-nav .nav-link:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

/* Logo rond */
.navbar-brand img.rounded-circle {
    border: 2px solid #fff;
}

/* ================== */
/* Footer fixe ou bas  */
/* ================== */
footer {
    flex-shrink: 0; /* empêche le footer de se rétrécir */
    background-color: #fff; /* bg-light */
    border-top: 1px solid #dee2e6; /* border-top */
    text-align: center;
    padding: 0.75rem 0;
    width: 100%;
}

/* ================== */
/* Main content flex  */
/* ================== */
main {
    flex: 1 0 auto; /* prend tout l’espace restant */
    padding-bottom: 100px; /* espace pour le footer si nécessaire */
}

.relative{
	position: relative;
}

.progress-bar {
    transition: width 0.05s linear;
}
