/* ===== Thème principal ===== */

*{
  text-decoration: none;
}

body {
  font-family: 'Segoe UI', sans-serif;
  background: linear-gradient(to right, rgba(116, 185, 255, 0.3), rgba(0, 206, 201, 0.3));
  margin-top: 80px; /* pour compenser la navbar fixed */
}

/* Effet de fade */
.fade-in {
  animation: fadeIn 0.6s ease-in;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Gradient pour les titres */
.gradient-title {
  background: linear-gradient(to right, #00cec9, #0984e3);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* Boutons */
.btn-primary {
  background-color: #00cec9;
  border-color: #00cec9;
}
.btn-primary:hover {
  background-color: #019994;
}

/* Cartes */
.card {
  border-radius: 12px;
}

/* Alertes */
.alert {
  border-radius: 8px;
}

/* Pied de page */
.footer {
  font-size: 0.9rem;
}

.loader-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,0.85);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  animation: fadeIn 0.3s ease-in-out both;
}

.loader-svg {
  width: 80px;
  height: 80px;
}

.loader-ring {
  stroke-dasharray: 251;
  stroke-dashoffset: 0;
  transform-origin: center;
  animation: rotateRing 1.2s linear infinite;
}

@keyframes rotateRing {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}