/* ==========================================
   WORKCONNECT THEME SYSTEM
========================================== */

/* MODE SOMBRE PAR DÉFAUT */
:root {
  --bg: #0b1220;
  --surface: #111827;
  --surface2: #1f2937;
  --text: #ffffff;
  --text-soft: #cbd5e1;
  --border: #374151;

  --gold: #c9a84c;
  --gold-d: #a98932;
  --gold-l: #e6c971;
}

/* MODE CLAIR */
[data-theme="light"] {
  --bg: #f8fafc;
  --surface: #ffffff;
  --surface2: #f1f5f9;
  --text: #111827;
  --text-soft: #475569;
  --border: #dbe1ea;

  --gold: #b8860b;
  --gold-d: #8b6508;
  --gold-l: #d4af37;
}

/* APPLICATION GÉNÉRALE */
body {
  background: var(--bg);
  color: var(--text);
  transition: background .3s ease, color .3s ease;
}

.navbar,
.footer,
.team-card,
.step,
.sector-card,
.stat-item,
.cta-box,
.faq-item {
  background: var(--surface);
  color: var(--text);
  border-color: var(--border);
}

p,
span {
  color: var(--text-soft);
}

/* BOUTON THÈME */
.theme-toggle {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid var(--border);
  background: var(--surface2);
  color: var(--gold);
  cursor: pointer;

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 1.2rem;
  transition: .25s;
}

.theme-toggle:hover {
  border-color: var(--gold);
}

.theme-toggle .bx-sun {
  display: none;
}

[data-theme="light"] .theme-toggle .bx-moon {
  display: none;
}

[data-theme="light"] .theme-toggle .bx-sun {
  display: block;
}

/* BARRE DE PROGRESSION */
.scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;

  width: 0%;
  z-index: 9999;

  background: linear-gradient(
    90deg,
    var(--gold-d),
    var(--gold),
    var(--gold-l)
  );
}

/* RETOUR EN HAUT */
.back-to-top {
  position: fixed;
  left: 20px;
  bottom: 20px;

  width: 48px;
  height: 48px;

  border-radius: 50%;
  border: 1px solid var(--border);

  background: var(--surface);
  color: var(--gold);

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 1.3rem;
  cursor: pointer;

  opacity: 0;
  pointer-events: none;
  transform: translateY(15px);

  transition: .3s;
  z-index: 999;
}

.back-to-top.visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.back-to-top:hover {
  border-color: var(--gold);
}

/* ===== ASSISTANT IA ===== */

#ai-assistant{
  position:fixed;
  right:20px;
  bottom:20px;
  width:60px;
  height:60px;
  border-radius:50%;
  background:var(--gold);
  color:#000;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:30px;
  cursor:pointer;
  z-index:9999;
  box-shadow:0 10px 25px rgba(0,0,0,.25);
  animation: aiPulse 2s infinite;
}

@keyframes aiPulse{
  0%{
    transform:scale(1);
  }
  50%{
    transform:scale(1.08);
  }
  100%{
    transform:scale(1);
  }
}

/* Photos profil */

.cf-avatar{
  width:50px;
  height:50px;
  border-radius:50%;
  overflow:hidden;
}

.cf-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}