/* =========================
   BASE
========================= */
body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  background: #f5f6f8;
  margin: 0;
  color: #222;
}

/* RESET TOUS LES LIENS DANS LE FORUM */
.forum-container a,
.header-text a,
.sujet-lien a,
.back-link,
.repondre a,
.sujet-question a {
  text-decoration: none;   /* plus de soulignement par défaut */
  color: #0ea5e9;          /* couleur bleu moderne */
  transition: color 0.2s ease, background 0.2s ease;
}

/* HOVER / FOCUS */
.forum-container a:hover,
.header-text a:hover,
.sujet-lien a:hover,
.back-link:hover,
.repondre a:hover,
.sujet-question a:hover {
    color: #0ea5e9; 
   /* color: #0284c7;  */         /* bleu foncé au hover */
  text-decoration: underline; /* léger soulignement au hover */
}


/* Largeur commune */
.header-wrapper,
.forum-container {
  max-width: 900px;
  margin: 0 auto;
  box-sizing: border-box;
}

/* =========================
   HEADER
========================= */
.header {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.2rem;
  background: #ffffff;
  border-radius: 16px;
  margin-top: 1rem;
  box-shadow: 0 10px 30px rgba(0,0,0,.05);
}

.header img {
  max-height: 60px;
}

.header-text h4 {
  color: #ec9558; 
  margin: 0 0 .6rem 0;
  font-size: 1rem;
  font-weight: 700;
}

.header-text a {
  display: inline-block;
  margin-right: .5rem;
  padding: .35rem .9rem;
 background: #0ea5e9; 
  color: #fff;
  border-radius: 999px;
  text-decoration: none;
  font-size: 1.1rem;
  transition: background .2s ease;
  }

.header-text a:hover {
  background: #0284c7;   
  color: #fff;
   /*color: #ec9558; */
    font-size: 1.1rem;
}

/* =========================
   TITRE PAGE
========================= */
h1 {
  margin: 0.2rem 0 0.5rem;
  font-size: 1.1rem;
  font-weight: 500;
}

/* =========================
   CONTAINER
========================= */
.forum-container {
  margin-top: 1rem;
  padding: 0 1rem;
}

/* =========================
   CARTE SUJET (INDEX)
========================= */
.sujet {
  background: #ffffff;
  border-radius: 18px;
  padding: 1rem 1rem;
  margin-bottom: 1.2rem;
  box-shadow: 0 8px 24px rgba(0,0,0,.05);
  transition: transform .15s ease, box-shadow .15s ease;
}

.sujet:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 36px rgba(0,0,0,.08);
}

.sujet-question {
  margin: 0 0 .4rem;
  font-size: 1.05rem;
  font-weight: 600;
  color: #7a3e06;
}

.sujet-question a {
  color: inherit;
  text-decoration: none;
}

.sujet-question a:hover {
  text-decoration: underline;
}

.sujet-meta {
  font-size: .85rem;
  color: #6b7280;
  margin-bottom: .8rem;
}

/* Bouton lire */
.sujet-lien a {
  display: inline-block;
  padding: .4rem 1rem;
  background: #f0f9ff;
  color: #0284c7;
  border-radius: 999px;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 500;
}

.sujet-lien a:hover {
  background: #e0f2fe;
}

/* =========================
   PAGE QUESTION
========================= */
.back-link {
  display: inline-block;
  margin-bottom: 1rem;
  font-size: 1.2rem;
  color: #0284c7;
  text-decoration: none;
}

.back-link:hover {
  text-decoration: underline;
}

.question-meta {
  font-size: .85rem;
  color: #6b7280;
  margin-bottom: 1.2rem;
}

/* =========================
   RÉPONSES
========================= */
.reponse {
  background: #ffffff;
  border-radius: 18px;
  padding: 1.2rem;
  margin-bottom: 1rem;
  box-shadow: 0 6px 18px rgba(0,0,0,.05);
}

.reponse-meta {
  font-size: 0.90rem;
  color: #6b7280;
  margin-bottom: .4rem;
}

.reponse-texte {
  font-size: 1.2rem;
}

/* =========================
   BOUTON RÉPONDRE
========================= */
.repondre a {
  display: inline-block;
  margin-top: 1.2rem;
  padding: .6rem 1.4rem;
  background: #16a34a;
  color: #fff;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 500;
}

.repondre a:hover {
  background: #15803d;
}

/* =========================
   PAGINATION
========================= */
.Pagination {
  display: flex;
  gap: .4rem;
  justify-content: center;
  margin: 2rem 0;
}

.Pagination a {
  padding: .4rem .9rem;
  border-radius: 999px;
  text-decoration: none;
  font-size: .85rem;
  background: #ffffff;
  color: #0284c7;
  border: 1px solid #e5e7eb;
}

.Pagination a.selected {
  background: #0284c7;
  color: #ffffff;
  border-color: #0284c7;
}

/* =========================
   MOBILE
========================= */
@media (max-width: 768px) {
  .header {
    flex-direction: column;
    text-align: center;
  }

  .header-text a {
    display: inline-block;
    margin: .3rem .2rem;
  }

  .sujet {
    padding: 1rem;
  }

  h1 {
    font-size: 1rem;
  }
}
