/* Custom App Styles */
body {
    /* Removed test background color for production */
}

/* ============================================
   FEATURED NEWS SWIPER - Navigation Buttons
   ============================================ */

/* Boutons de navigation avec opacité réduite par défaut */
.featured-news-nav-btn {
  opacity: 0.75;
  transition: opacity 0.3s ease, transform 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Desktop avec souris : opacité complète au hover */
@media (hover: hover) and (pointer: fine) {
  .featured-news-swiper:hover .featured-news-nav-btn {
    opacity: 1;
  }

  .featured-news-nav-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  }
}

/* Appareils tactiles : opacité augmentée pour visibilité */
@media (hover: none) and (pointer: coarse) {
  .featured-news-nav-btn {
    opacity: 0.9;
  }

  /* Feedback tactile au tap */
  .featured-news-nav-btn:active {
    transform: scale(0.95);
    opacity: 1;
  }
}

/* ============================================
   FEATURED NEWS SWIPER - Slide Height Fix
   ============================================ */

/* Assurer une hauteur minimale cohérente pour éviter layout shift */
.featured-news-swiper .swiper-slide {
  min-height: 400px;
}

/* Responsive : ajuster la hauteur minimale */
@media (max-width: 767.98px) {
  .featured-news-swiper .swiper-slide {
    min-height: auto; /* Hauteur flexible sur mobile car en colonne */
  }
}

@media (min-width: 768px) {
  .featured-news-swiper .swiper-slide {
    min-height: 450px;
  }
}

@media (min-width: 992px) {
  .featured-news-swiper .swiper-slide {
    min-height: 500px;
  }
}

/* Card body : flexbox pour distribution verticale équilibrée */
.featured-news-swiper .card-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* ============================================
   SWIPER PAGINATION - Dégradé Vert CEP
   ============================================ */

/* Remplacer le bleu Bootstrap par le vert CEP pour tous les swipers */
.swiper-pagination-bullets {
  --swiper-pagination-color: #16a34a !important;  /* Vert CEP clair */
  --swiper-pagination-bullet-inactive-color: #e0e5eb;  /* Gris clair (inchangé) */
}

/* Bullet actif avec couleur vert CEP */
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #16a34a !important;
}

/* Bullets inactifs restent gris clair */
.swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
  background: #e0e5eb !important;
}

/* Dark mode : bullets inactifs en blanc transparent */
[data-bs-theme="dark"] .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
  background: rgba(255, 255, 255, 0.3) !important;
}

/* Dark mode : bullet actif reste vert CEP */
[data-bs-theme="dark"] .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #16a34a !important;
}

/* Transition douce pour les changements de slide */
.swiper-pagination-bullet {
  transition: background 0.3s ease, transform 0.2s ease;
}

/* Effet hover sur les bullets (optionnel mais agréable) */
.swiper-pagination-bullet:hover {
  transform: scale(1.2);
  cursor: pointer;
}

/* Bullet actif légèrement plus grand */
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  transform: scale(1.15);
}
