/* NutriSaaS — Mode sombre : surcharges generiques .dark qui ne sont pas
   colocalisees avec un composant specifique (voir components.css/layout.css
   pour les .dark propres a un composant, gardees a cote de leur regle claire
   pour rester faciles a maintenir ensemble).
   Extrait de site/index.html le 2026-07-13. */

/* Dark */
.dark .inp{background:#0f172a;border-color:#475569;color:#e2e8f0}
.dark .inp:focus{border-color:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.15),0 0 8px rgba(34,197,94,.08)}
.dark .lbl{color:#94a3b8}
.dark body,.dark main{background:#0f172a!important}
.dark .card, .dark .mbox{background:#1e293b!important;border-color:#334155!important;color:#e2e8f0}
.dark .sd{background:#0f172a!important;border-color:#334155!important}
.dark .hd{background:#1e293b!important;border-color:#334155!important}
.dark .txt{color:#e2e8f0!important}
.dark .txt2{color:#94a3b8!important}
.dark .trh{background:#334155!important;border-color:#475569!important;color:#cbd5e1!important}
.dark .trd{color:#e2e8f0!important}
.dark .trd:hover{background:#334155!important}
.dark .trd td{color:#cbd5e1!important}
.dark table{background:#1e293b;color:#e2e8f0}
.dark .divider{border-color:#334155!important}
.dark label.txt{color:#e2e8f0}
.dark .kpi{background:#1e293b;border-color:#334155}
.dark .kpi-v{color:#f8fafc}
.dark .kpi-l, .dark .kpi-s{color:#94a3b8}
/* Word-page card dark */
.dark .word-page-card{background:#1e293b!important;border-color:#334155!important;color:#e2e8f0!important}
.dark .word-page-card textarea{color:#e2e8f0!important;background:transparent!important}
/* Session detail dark */
.dark #m-session-detail .mbox > div[style*='background:#f8fafc']{background:#0f172a!important;border-color:#334155!important}
.dark #sd-v-forme,.dark #sd-v-observance,.dark #sd-v-transit,.dark #sd-v-sommeil,.dark #sd-v-motivation,.dark #sd-v-autre{background:#0f172a!important;border-color:#334155!important;color:#e2e8f0!important}
/* Tanita card dark */
.dark #timeline-card{background:#1e293b!important;border-color:#334155!important}
.dark #session-timeline div{color:#e2e8f0}
/* Login/Reset/Forgot screens dark mode */
.dark #login-screen,.dark #forgot-screen,.dark #reset-screen,.dark #force-reset-screen{background:#0f172a!important}
.dark #login-screen .card,.dark #forgot-screen .card,.dark #reset-screen .card,.dark #force-reset-screen .card{background:#1e293b!important;border-color:#334155!important}
.dark #login-screen h1,.dark #forgot-screen h1,.dark #reset-screen h1,.dark #force-reset-screen h1{color:#e2e8f0!important}
.dark #login-screen p,.dark #forgot-screen p,.dark #reset-screen p,.dark #force-reset-screen p{color:#94a3b8!important}
.dark #login-screen .text-slate-400,.dark #forgot-screen .text-slate-400,.dark #reset-screen .text-slate-400,.dark #force-reset-screen .text-slate-400{color:#64748b!important}
/* AETQ row dark mode — fond fixe vert clair en light, adaptatif en dark */
.dark #aetq-row{background:#052e16!important;border-color:#14532d!important}
.dark #aetq-row *{color:#bbf7d0}
.dark #aetq-row .lbl{color:#6ee7b7!important}
/* Ration buttons dark */
.dark #ration-card .trh button{background:#1e293b!important;border-color:#334155!important;color:#cbd5e1!important}
/* Questionnaire category cards dark */
.dark .acc-body .card[style*="border:1px solid #e2e8f0"]{background:#0f172a!important;border-color:#334155!important}
.dark .acc-body .card[style*="border:1px solid #e2e8f0"] div[style*="color:#16a34a"]{color:#4ade80!important}
/* Prot-note dark */
.dark #prot-note{background:#422006!important;border-color:#92400e!important;color:#fde68a!important}
/* Chart filter buttons dark */
.dark #chart-filters .dtab{background:#1e293b!important;border-color:#334155!important;color:#94a3b8!important}
.dark #chart-filters .dtab.on{background:#16a34a!important;color:#fff!important;border-color:#16a34a!important}
/* Panneau flottant IA dark mode */
.dark #ai-floating-panel{background:#1e293b!important;border-color:#334155!important;box-shadow:0 20px 40px rgba(0,0,0,.4)!important}
.dark #ai-panel-topbar{border-bottom-color:rgba(51,65,85,.8)!important}
.dark #btn-menus-manual-toggle{color:#64748b!important;border-color:#334155!important}
.dark #btn-menus-manual-toggle.active{background:#16a34a!important;color:#fff!important;border-color:#16a34a!important}
.dark #chat-messages{background:#1e293b}
.dark #ai-chat-input-bar{background:#0f172a!important;border-top-color:#334155!important}
.dark #ai-view-manual{color:#e2e8f0}
.dark #ai-manual-hint{color:#64748b!important}
.dark #ai-view-manual .lbl{color:#94a3b8!important}
/* Modale conclusion dark mode */
.dark #m-conclusion-chat .mbox > div[id='conclusion-view-chat'],
.dark #conclusion-chat-messages{background:#0f172a!important}
.dark #m-conclusion-chat .mbox > div:first-child{border-bottom-color:#334155!important}
.dark #conclusion-view-manual{color:#e2e8f0}

/* 2. Correction "Blanc sur Blanc" (Mode Sombre sur styles inline) */
.dark [style*="background:#f8fafc"], .dark [style*="background: #f8fafc"],
.dark [style*="background:#fff"], .dark [style*="background: #fff"],
.dark [style*="background:#f1f5f9"], .dark [style*="background: #f1f5f9"],
.dark [style*="background:#f0fdf4"], .dark [style*="background: #f0fdf4"],
.dark [style*="background:#f9fafb"], .dark [style*="background: #f9fafb"],
.dark [style*="background:#fefce8"], .dark [style*="background: #fefce8"],
.dark [style*="background:#ecfdf5"], .dark [style*="background: #ecfdf5"],
.dark [style*="background:#fff7ed"], .dark [style*="background: #fff7ed"],
.dark [style*="background:#eff6ff"], .dark [style*="background: #eff6ff"],
.dark [style*="background:#dcfce7"], .dark [style*="background: #dcfce7"] {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #e2e8f0 !important;
}

.dark [style*="color:#374151"], .dark [style*="color: #374151"],
.dark [style*="color:#475569"], .dark [style*="color: #475569"],
.dark [style*="color:#64748b"], .dark [style*="color: #64748b"],
.dark [style*="color:#0f172a"], .dark [style*="color: #0f172a"] {
    color: #cbd5e1 !important;
}

/* 3. Ajustement des gros espaces vides (Fix margin/padding inline) */
.dark .card {
    border-color: #334155 !important;
}

/* 4. Banner et bannières adaptatives */
.dark-banner {
  flex-wrap: wrap;
  gap: .75rem;
  background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
  border: 1px solid #bbf7d0;
  border-radius: 1rem;
  padding: 1rem 1.25rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.dark .dark-banner {
  background: linear-gradient(135deg, #064e3b, #0f172a) !important;
  border-color: #059669 !important;
}
.dark .dark-banner .txt, .dark .dark-banner strong {
  color: #f8fafc !important;
}
.dark .dark-banner .txt2 {
  color: #a7f3d0 !important;
}

/* Correctif universel gradients inline en Dark Mode */
.dark [style*="gradient"] {
  background: #1e293b !important;
  border-color: #334155 !important;
}
.dark [style*="gradient"] .txt,
.dark [style*="gradient"] strong {
  color: #e2e8f0 !important;
}
.dark [style*="gradient"] .txt2 {
  color: #94a3b8 !important;
}
