/* Thèmes sombre (défaut) et clair — activer le clair avec data-theme="light" sur <html> */

:root {
  color-scheme: dark;

  --bg: #0f1117;
  --bg-elevated: #161b26;
  --bg-hover: #1e2533;
  --surface: #161b26;
  --surface-hover: #1e2533;
  --surface-2: #121a28;
  --border: #2a3344;
  --text: #e8ecf4;
  --text-muted: #8b95a8;
  --accent: #5b8def;
  --accent-hover: #4a7de0;
  --user-bubble: #1a3a5c;
  --assistant-bubble: #1a1f2b;
  --danger: #e85d5d;
  --shadow: 0 20px 60px rgba(0, 0, 0, 0.5);

  --maia-overlay: rgba(0, 0, 0, 0.65);
  --maia-glass: rgba(15, 20, 25, 0.92);
  --maia-accent-soft: rgba(91, 141, 239, 0.12);
  --maia-accent-border: rgba(91, 141, 239, 0.35);
  --maia-danger-soft: rgba(232, 93, 93, 0.15);
  --maia-danger-text: #ffb4b4;
  --maia-success-text: #86efac;
}

html[data-theme="light"] {
  color-scheme: light;

  --bg: #f3f6fb;
  --bg-elevated: #ffffff;
  --bg-hover: #e8edf5;
  --surface: #ffffff;
  --surface-hover: #eef2f8;
  --surface-2: #e8edf5;
  --border: #d2dae8;
  --text: #152033;
  --text-muted: #5a6578;
  --accent: #3b6fd9;
  --accent-hover: #2f5fc4;
  --user-bubble: #dbeafe;
  --assistant-bubble: #eef2f8;
  --danger: #d63c3c;
  --shadow: 0 20px 60px rgba(15, 23, 42, 0.1);

  --maia-overlay: rgba(15, 23, 42, 0.35);
  --maia-glass: rgba(255, 255, 255, 0.92);
  --maia-accent-soft: rgba(59, 111, 217, 0.1);
  --maia-accent-border: rgba(59, 111, 217, 0.32);
  --maia-danger-soft: rgba(214, 60, 60, 0.12);
  --maia-danger-text: #b42318;
  --maia-success-text: #15803d;
}

/* ——— Interface applicative ——— */

html[data-theme="light"] .error-banner {
  background: var(--maia-danger-soft);
  color: var(--maia-danger-text);
}

html[data-theme="light"] .success-banner {
  background: rgba(21, 128, 61, 0.12);
  color: var(--maia-success-text);
}

html[data-theme="light"] .triage-banner {
  background: var(--maia-accent-soft);
  border-color: var(--maia-accent-border);
}

html[data-theme="light"] .global-water-widget {
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.95), rgba(232, 240, 255, 0.9));
  border-color: rgba(59, 111, 217, 0.22);
  box-shadow: 0 8px 28px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

html[data-theme="light"] .global-water-mini-badge {
  background: rgba(59, 111, 217, 0.12);
  border-color: rgba(59, 111, 217, 0.28);
  color: #1d4fbf;
}

html[data-theme="light"] .global-water-label,
html[data-theme="light"] .global-water-mini-label {
  color: #1e3a6e;
  background: rgba(255, 255, 255, 0.88);
  border-color: rgba(59, 111, 217, 0.2);
}

html[data-theme="light"] .modal-overlay {
  background: var(--maia-overlay);
}

html[data-theme="light"] .modal-body {
  box-shadow: var(--shadow);
}

html[data-theme="light"] .message-content pre,
html[data-theme="light"] .code-msg-bubble pre {
  background: rgba(15, 23, 42, 0.05);
}

html[data-theme="light"] .message-content code,
html[data-theme="light"] .code-msg-bubble code {
  background: rgba(15, 23, 42, 0.06);
}

html[data-theme="light"] .app-zone-nav-link.is-active {
  background: var(--maia-accent-soft);
  border-color: var(--maia-accent-border);
}

html[data-theme="light"] #chat-settings-status.is-success {
  color: var(--maia-success-text);
}

html[data-theme="light"] #chat-settings-status.is-error {
  color: var(--maia-danger-text);
}

html[data-theme="light"] .btn-theme-toggle {
  border-color: var(--border);
  background: var(--surface);
  color: var(--text-muted);
}

html[data-theme="light"] .btn-theme-toggle:hover {
  background: var(--bg-hover);
  color: var(--text);
}

html[data-theme="light"] .sidebar,
html[data-theme="light"] .chat-header,
html[data-theme="light"] .chat-composer,
html[data-theme="light"] .login-card,
html[data-theme="light"] .user-settings-card,
html[data-theme="light"] .admin-card {
  background: var(--bg-elevated);
  color: var(--text);
}

html[data-theme="light"] .message.user .message-content {
  background: var(--user-bubble);
  color: var(--text);
}

html[data-theme="light"] .message.assistant .message-content {
  background: var(--assistant-bubble);
  color: var(--text);
}

/* ——— Pages de présentation ——— */

html[data-theme="light"] .presentation-header {
  background: var(--maia-glass);
}

html[data-theme="light"] .presentation-hero-rich::before {
  background: radial-gradient(ellipse at center, rgba(59, 111, 217, 0.12) 0%, transparent 70%);
}

html[data-theme="light"] .presentation-badge {
  background: var(--maia-accent-soft);
  border-color: var(--maia-accent-border);
}

html[data-theme="light"] .presentation-cta-outline {
  border-color: rgba(15, 23, 42, 0.18);
  color: var(--text);
}

html[data-theme="light"] .presentation-cta-outline-light {
  border-color: rgba(15, 23, 42, 0.22);
  color: var(--text);
}

html[data-theme="light"] .presentation-cta-outline:hover,
html[data-theme="light"] .presentation-cta-outline-light:hover {
  background: rgba(15, 23, 42, 0.05);
  border-color: rgba(15, 23, 42, 0.3);
  color: var(--text);
}

html[data-theme="light"] .presentation-mockup-screen,
html[data-theme="light"] .presentation-poster-link {
  background: var(--surface);
  box-shadow: 0 12px 40px rgba(15, 23, 42, 0.12);
}

html[data-theme="light"] .presentation-card,
html[data-theme="light"] .presentation-mode-card,
html[data-theme="light"] .presentation-use-case,
html[data-theme="light"] .presentation-faq-item,
html[data-theme="light"] .presentation-step,
html[data-theme="light"] .guide-section {
  background: var(--surface);
}

html[data-theme="light"] .presentation-card-highlight {
  border-color: var(--maia-accent-border);
  background: linear-gradient(145deg, rgba(59, 111, 217, 0.06) 0%, var(--surface) 55%);
}

html[data-theme="light"] .presentation-infographic-wrap,
html[data-theme="light"] .presentation-poster-wrap {
  background: rgba(15, 23, 42, 0.04);
}

html[data-theme="light"] .presentation-footer-rich {
  background: var(--surface);
}

/* ——— Espace Code ——— */

html[data-theme="light"] .code-empty-projects-backdrop {
  background: rgba(243, 246, 251, 0.72);
}

html[data-theme="light"] .code-empty-projects-inner {
  background: rgba(255, 255, 255, 0.98);
  border-color: var(--maia-accent-border);
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.1), 0 0 0 1px rgba(255, 255, 255, 0.9) inset;
}

html[data-theme="light"] .code-header,
html[data-theme="light"] .file-tree-panel,
html[data-theme="light"] .editor-panel,
html[data-theme="light"] .code-chat-panel {
  background: var(--bg-elevated);
}

html[data-theme="light"] .code-msg.user .code-msg-bubble {
  background: var(--user-bubble);
  color: var(--text);
}

html[data-theme="light"] .code-msg.assistant .code-msg-bubble {
  background: var(--assistant-bubble);
  color: var(--text);
}

html[data-theme="light"] .upload-zone {
  background: rgba(59, 111, 217, 0.05);
  border-color: var(--border);
}

html[data-theme="light"] .code-plan-overlay {
  background: var(--maia-overlay);
}

html[data-theme="light"] .admin-nav-zone--app .admin-nav-zone-label {
  color: var(--text-muted);
}

html[data-theme="light"] .admin-nav a.is-active {
  background: var(--maia-accent-soft);
  border-color: var(--maia-accent-border);
  color: var(--accent-hover);
}

html[data-theme="light"] .login-box {
  box-shadow: var(--shadow);
}

html[data-theme="light"] .login-nav {
  align-items: center;
}
