/* =====================================================
   WEBOTIC ADS — Contrast Rules v5 (Final)

   Tous les heroes sont maintenant sur fond BLANC.
   Les sections sombres restantes : CTA final, footer,
   KPI bars bg-slate-900.

   RÈGLE SIMPLE :
   - bg-white / bg-slate-50  → titres #1e3a8a (bleu roi)
   - bg-slate-900 / bg-slate-800 → titres #ffffff
   ===================================================== */

/* ============================================ */
/* FONDS CLAIRS — titres bleu roi              */
/* ============================================ */
section.bg-white h2,
section.bg-white h3,
section.bg-white h4,
section.bg-slate-50 h2,
section.bg-slate-50 h3,
section.bg-slate-50 h4,
div.bg-white h3,
div.bg-white h4,
a.bg-white h3 {
  color: #1e3a8a;
}

/* Cards hover sur fond blanc */
.card-hover h3,
.card-hover h4 {
  color: #1e3a8a;
}

/* ============================================ */
/* FONDS SOMBRES — titres blanc                */
/* ============================================ */

/* CTA sections en bas de pages (gradient-dark) */
section.gradient-dark h2,
section.gradient-dark h3,
section.gradient-dark p {
  color: #ffffff !important;
}

/* KPI bars bg-slate-900 */
div.bg-slate-900 h2,
div.bg-slate-900 h3,
div.bg-slate-900 p {
  color: #ffffff !important;
}

/* Cartes internes sombres dans sections claires */
div.bg-slate-800 h3,
div.bg-slate-800 h4,
div.bg-slate-800 p {
  color: #ffffff !important;
}

/* ============================================ */
/* GRADIENT TEXT ORANGE — préserver            */
/* ============================================ */
.gradient-text {
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background: linear-gradient(90deg, #EA580C, #F97316);
  -webkit-background-clip: text;
  background-clip: text;
}

/* ============================================ */
/* NAVIGATION — ne pas toucher                 */
/* ============================================ */
nav h1, nav h2, nav h3, nav h4,
nav span, nav a {
  color: unset !important;
  -webkit-text-fill-color: unset !important;
}

/* ============================================ */
/* FOOTER                                      */
/* ============================================ */
footer h1, footer h2, footer h3, footer h4 {
  color: #ffffff !important;
}

/* ============================================ */
/* BLOG — prose article (fond blanc)           */
/* ============================================ */
.prose-custom h2 { color: #1e3a8a !important; }
.prose-custom h3 { color: #1e40af !important; }

/* ============================================ */
/* CODE BLOCKS (fond sombre)                   */
/* ============================================ */
.code-block { color: #e2e8f0 !important; }
.code-block .comment { color: #94a3b8 !important; }
.code-block .key     { color: #f97316 !important; }
.code-block .val     { color: #86efac !important; }

/* ============================================ */
/* RESULT BOX calculateur                      */
/* ============================================ */
.result-box .text-3xl,
.result-box .text-4xl {
  /* gradient-text gère — ne pas écraser */
}

/* ============================================ */
/* BLOCKQUOTE                                  */
/* ============================================ */
blockquote { color: #475569; }

/* ============================================ */
/* CARDS colorées articles blog                */
/* ============================================ */
.error-card p, .error-card strong { color: #b91c1c; }
.tip-card p, .tip-card strong     { color: #15803d; }
.info-card p, .info-card strong   { color: #1d4ed8; }

/* ============================================ */
/* STAT CARDS sombres dans blog TikTok         */
/* ============================================ */
.stat-card,
.stat-card p,
.stat-card div {
  color: #ffffff !important;
}

/* ============================================ */
/* RESULT HIGHLIGHT (fond ambre clair)         */
/* ============================================ */
.result-highlight .text-4xl { /* gradient-text */ }
.result-highlight .text-xs  { color: #64748b; }
