/* ==========================================================================
   DiaMétal - Mode Clair / Mode Sombre (Theme Switching)
   ========================================================================== */

/* Thème Clair */
[data-theme="light"] {
  --bg-primary: #f8fafc;
  --bg-secondary: #ffffff;
  --bg-tertiary: #f1f5f9;
  --bg-card: rgba(255, 255, 255, 0.95);
  --bg-card-hover: #ffffff;
  --bg-glass: rgba(255, 255, 255, 0.92);
  --bg-input: #f8fafc;

  --metal-100: #0f172a;
  --metal-200: #1e293b;
  --metal-300: #334155;
  --metal-400: #475569;
  --metal-500: #64748b;
  --metal-600: #94a3b8;
  --metal-700: #cbd5e1;
  --metal-800: #e2e8f0;
  --metal-900: #f8fafc;

  --accent-spark: #ff5722;
  --accent-spark-glow: rgba(255, 87, 34, 0.2);
  --accent-spark-light: #ff784e;
  --accent-spark-dark: #d84315;
  --accent-yellow: #d97706;
  --accent-blue: #0284c7;
  --accent-cyan: #0369a1;

  --text-primary: #0f172a;
  --text-secondary: #334155;
  --text-muted: #64748b;
  --text-inverse: #ffffff;

  --border-subtle: rgba(15, 23, 42, 0.1);
  --border-focus: rgba(255, 87, 34, 0.6);
  --border-glass: rgba(0, 0, 0, 0.06);
  

  --shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.04);
  --shadow-sm: 0 2px 5px rgba(15, 23, 42, 0.05);
  --shadow-md: 0 4px 14px rgba(15, 23, 42, 0.07);
  --shadow-lg: 0 10px 25px rgba(15, 23, 42, 0.09);
  --shadow-spark: 0 42px 14px rgba(255, 87, 34, 0.2);
}

/* Transitions douces lors du basculement */
body,
header,
footer,
.card,
.modal-content,
.bento-card,
.nav-link,
.btn,
.theme-toggle-btn,
input,
select,
textarea {
  transition: background-color var(--transition-normal),
              color var(--transition-normal),
              border-color var(--transition-normal),
              box-shadow var(--transition-normal);
}

/* Bouton bascule de thème */
.theme-toggle-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: var(--radius-full);
  background: var(--bg-tertiary);
  border: 1px solid var(--border-subtle);
  color: var(--text-primary);
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: all var(--transition-fast);
}

.theme-toggle-btn:hover {
  border-color: var(--accent-spark);
  color: var(--accent-spark);
  transform: translateY(-1px);
  box-shadow: var(--shadow-sm);
}

.theme-toggle-btn .sun-icon,
.theme-toggle-btn .moon-icon {
  width: 18px;
  height: 18px;
  transition: transform var(--transition-normal), opacity var(--transition-normal);
}

[data-theme="dark"] .sun-icon {
  display: block;
}
[data-theme="dark"] .moon-icon {
  display: none;
}

[data-theme="light"] .sun-icon {
  display: none;
}
[data-theme="light"] .moon-icon {
  display: block;
}
