.nav-link {
      font-size: 1.1rem;
      font-weight: 500;
      text-transform: uppercase;
    }

    .navbar-brand {
      font-size: 1.3rem;
      font-weight: bold;
    }

    .navbar-nav .nav-link {
  position: relative;
}

.navbar-nav .nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0%;
  height: 2px;
  background-color: #0dcaf0; /* text-warning */
  transition: width 0.3s ease;
}

.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after {
  width: 100%;
}

    @media (min-width: 992px) {
      .navbar-nav {
        gap: 1rem;
      }
    }

    .card-exo {
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.08);
      transition: box-shadow 0.3s ease;
      border-radius: 8px;
      margin-bottom: 1.5rem;
      padding: 1rem 1.5rem;
    }

    .card-exo:hover {
      box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    }

    .enonce {
      background-color: #f1f3f5;
      /* Fond très clair, légèrement gris */
      border-left: 6px solid #0d6efd;
      /* Bande colorée à gauche (bleu bootstrap) */
      padding: 20px 25px;
      /* Espacement interne confortable */
      margin: 1.5rem 0;
      /* Marge verticale uniforme */
      border-radius: 10px;
      /* Bords arrondis un peu plus doux */

      font-family: 'Roboto',"Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
      font-size: 1rem;
      line-height: 1.8;
      /* Meilleure hauteur de ligne pour la lisibilité */
      color: #333333;
      /* Texte gris foncé, doux pour les yeux */
      text-align: justify;
      /* Justification du texte */

      box-shadow: 0 2px 6px rgb(0 0 0 / 0.05);
      /* Ombre légère pour relief */
      transition: box-shadow 0.3s ease;
      /* Transition douce sur l’ombre */

      word-wrap: break-word;
      /* Eviter les débordements de mots longs */
      hyphens: auto;
      /* Coupure automatique des mots pour fluidité */
      user-select: text;
      /* Permet la sélection du texte */
      overflow-wrap: break-word;
      /* Compatibilité supplémentaire */
    }

    @media (max-width: 576px) {
    .enonce {
      font-size: 0.95rem; /* légèrement plus petit pour les petits écrans */
      padding: 15px 18px; /* réduire un peu le padding */
      line-height: 1.5;
      text-align: left;
    }
    }

    .enonce:hover,
    .enonce:focus {
      box-shadow: 0 6px 15px rgb(0 0 0 / 0.1);
      /* Ombre plus marquée au survol/focus */
      outline: none;
      /* Supprime le contour au focus si c’est un élément focusable */
    }

    .tags-niveau {
      font-size: 0.85rem;
      color: #666;
      margin-top: 8px;
    }

    .badge-tag {
      background-color: #d1ecf1;
      color: #0c5460;
      margin-right: 6px;
      font-weight: 500;
      font-size: 0.75rem;
      vertical-align: middle;
      padding: 0.15rem 0.25rem;
      border-radius: 0.35rem;
    }

    .niveau-badge {
      font-weight: 600;
      padding: 0.25em 0.5em;
      border-radius: 0.35rem;
      vertical-align: middle;
      text-transform: none;
      font-size: 0.85rem;
    }

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

    .niveau-warning {
      background-color: #fff3cd;
      color: #856404;
    }

    .niveau-danger {
      background-color: #f8d7da;
      color: #721c24;
    }

    .niveau-secondary {
      background-color: #e2e3e5;
      color: #6c757d;
    }

    .header-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
    }

    .btn-solution {
      white-space: nowrap;
    }

    .pagination {
      --bs-pagination-color: #0d6efd;
      --bs-pagination-hover-color: #0a58ca;
      --bs-pagination-active-bg: #0d6efd;
      --bs-pagination-active-color: #fff;
      --bs-pagination-border-color: #dee2e6;
    }

    .pagination .page-item .page-link {
      border-radius: 0.35rem;
      padding: 0.5rem 0.75rem;
      transition: background-color 0.2s ease, color 0.2s ease;
    }

    .pagination .page-item.active .page-link {
      font-weight: 600;
      box-shadow: 0 0 8px rgba(13, 110, 253, 0.5);
    }

    .pagination .page-link:hover {
      background-color: var(--bs-pagination-hover-color);
      color: #fff;
      text-decoration: none;
    }

    .pagination .page-item.disabled .page-link {
      color: #6c757d;
      pointer-events: none;
      cursor: default;
    }