/* =============================================================
   ControllerHabil — Identidade visual (v1)
   -------------------------------------------------------------
   Camada de identidade aplicada SOBRE as classes utilitárias já
   escritas nas telas, na mesma técnica do tema-claro.css: as telas
   usam a escala slate (herança do Regente, azulada) e o acento
   índigo antigo; esta folha remapeia essas classes para a paleta
   do ControllerHabil sem tocar nos módulos.

   Paleta:
   - Acento (marca): verde-petróleo #0E7C66 (escala completa no
     tailwind.config do header.php, classes brand-*).
   - Neutros: "ink" com viés esveredeado — o slate azulado do
     Tailwind destoa do acento.

   Regras:
   - html.dark remapeia os neutros do tema escuro (padrão).
   - html.light complementa o tema-claro.css (carregada DEPOIS
     dele, então vence no empate de especificidade).
   - Índigo era a marca antiga → vira brand. Violet/purple ficam:
     são cores de categoria, não de marca.
   - Se esta folha não carregar, a aplicação continua funcional
     com a paleta antiga.
   ============================================================= */

/* ── ESCURO: superfícies slate → ink esverdeado ─────────────── */
html.dark .bg-slate-950 { background-color: #0A100E !important; }
html.dark .bg-slate-900 { background-color: #101917 !important; }
html.dark .bg-slate-800,
html.dark .bg-gray-800   { background-color: #16211E !important; }
html.dark .bg-slate-700,
html.dark .bg-gray-700   { background-color: #1F2D29 !important; }
html.dark .bg-slate-600,
html.dark .bg-gray-600   { background-color: #2B3C36 !important; }
html.dark .bg-slate-500  { background-color: #40534B !important; }

html.dark [class~="bg-slate-800/10"] { background-color: rgba(22,33,30,0.10) !important; }
html.dark [class~="bg-slate-800/20"] { background-color: rgba(22,33,30,0.20) !important; }
html.dark [class~="bg-slate-800/25"] { background-color: rgba(22,33,30,0.25) !important; }
html.dark [class~="bg-slate-800/30"] { background-color: rgba(22,33,30,0.30) !important; }
html.dark [class~="bg-slate-800/40"] { background-color: rgba(22,33,30,0.40) !important; }
html.dark [class~="bg-slate-800/50"] { background-color: rgba(22,33,30,0.50) !important; }
html.dark [class~="bg-slate-800/60"] { background-color: rgba(22,33,30,0.60) !important; }
html.dark [class~="bg-slate-800/70"] { background-color: rgba(22,33,30,0.70) !important; }
html.dark [class~="bg-slate-800/80"] { background-color: rgba(22,33,30,0.80) !important; }

html.dark [class~="bg-slate-700/20"] { background-color: rgba(31,45,41,0.20) !important; }
html.dark [class~="bg-slate-700/30"] { background-color: rgba(31,45,41,0.30) !important; }
html.dark [class~="bg-slate-700/40"] { background-color: rgba(31,45,41,0.40) !important; }
html.dark [class~="bg-slate-700/50"] { background-color: rgba(31,45,41,0.50) !important; }
html.dark [class~="bg-slate-700/60"] { background-color: rgba(31,45,41,0.60) !important; }
html.dark [class~="bg-slate-600/20"] { background-color: rgba(43,60,54,0.20) !important; }
html.dark [class~="bg-slate-600/30"] { background-color: rgba(43,60,54,0.30) !important; }
html.dark [class~="bg-slate-600/40"] { background-color: rgba(43,60,54,0.40) !important; }
html.dark [class~="bg-slate-600/50"] { background-color: rgba(43,60,54,0.50) !important; }

html.dark [class~="bg-slate-900/20"] { background-color: rgba(16,25,23,0.20) !important; }
html.dark [class~="bg-slate-900/30"] { background-color: rgba(16,25,23,0.30) !important; }
html.dark [class~="bg-slate-900/40"] { background-color: rgba(16,25,23,0.40) !important; }
html.dark [class~="bg-slate-900/50"] { background-color: rgba(16,25,23,0.50) !important; }
html.dark [class~="bg-slate-900/60"] { background-color: rgba(16,25,23,0.60) !important; }
html.dark [class~="bg-slate-900/70"] { background-color: rgba(16,25,23,0.70) !important; }
html.dark [class~="bg-slate-900/80"] { background-color: rgba(16,25,23,0.80) !important; }
html.dark [class~="bg-slate-900/90"] { background-color: rgba(16,25,23,0.90) !important; }
html.dark [class~="bg-slate-900/95"] { background-color: rgba(16,25,23,0.95) !important; }
html.dark [class~="bg-slate-950/20"] { background-color: rgba(10,16,14,0.20) !important; }
html.dark [class~="bg-slate-950/30"] { background-color: rgba(10,16,14,0.30) !important; }
html.dark [class~="bg-slate-950/40"] { background-color: rgba(10,16,14,0.40) !important; }
html.dark [class~="bg-slate-950/50"] { background-color: rgba(10,16,14,0.50) !important; }
html.dark [class~="bg-slate-950/60"] { background-color: rgba(10,16,14,0.60) !important; }
html.dark [class~="bg-slate-950/70"] { background-color: rgba(10,16,14,0.70) !important; }
html.dark [class~="bg-slate-950/80"] { background-color: rgba(10,16,14,0.80) !important; }

/* Hovers de superfície (o tema claro nunca cobriu; aqui cobre) */
html.dark [class~="hover:bg-slate-800"]:hover { background-color: #16211E !important; }
html.dark [class~="hover:bg-slate-700"]:hover { background-color: #1F2D29 !important; }
html.dark [class~="hover:bg-slate-600"]:hover { background-color: #2B3C36 !important; }
html.dark [class~="hover:bg-slate-800/40"]:hover { background-color: rgba(22,33,30,0.40) !important; }
html.dark [class~="hover:bg-slate-800/60"]:hover { background-color: rgba(22,33,30,0.60) !important; }
html.dark [class~="hover:bg-slate-800/80"]:hover { background-color: rgba(22,33,30,0.80) !important; }
html.dark [class~="hover:bg-slate-700/40"]:hover { background-color: rgba(31,45,41,0.40) !important; }
html.dark [class~="hover:bg-slate-700/50"]:hover { background-color: rgba(31,45,41,0.50) !important; }
html.dark [class~="hover:bg-slate-700/60"]:hover { background-color: rgba(31,45,41,0.60) !important; }

/* ── ESCURO: bordas ─────────────────────────────────────────── */
html.dark .border-slate-900,
html.dark [class~="border-slate-900/30"] { border-color: #131D1A !important; }

html.dark .border-slate-800,
html.dark [class~="border-slate-800/30"],
html.dark [class~="border-slate-800/40"],
html.dark [class~="border-slate-800/50"],
html.dark [class~="border-slate-800/60"],
html.dark [class~="border-slate-800/70"],
html.dark [class~="border-slate-800/80"] { border-color: #1E2B27 !important; }

html.dark .border-slate-700,
html.dark [class~="border-slate-700/30"],
html.dark [class~="border-slate-700/40"],
html.dark [class~="border-slate-700/50"],
html.dark [class~="border-slate-700/60"],
html.dark [class~="border-slate-700/70"],
html.dark [class~="border-slate-700/80"] { border-color: #2B3A34 !important; }

html.dark .border-slate-600,
html.dark .border-gray-600,
html.dark [class~="border-slate-600/30"],
html.dark [class~="border-slate-600/40"],
html.dark [class~="border-slate-600/50"] { border-color: #3A4C45 !important; }

html.dark [class*="divide-slate-"] > :not([hidden]) ~ :not([hidden]) {
    border-color: #1E2B27 !important;
}

/* ── ESCURO: texto neutro ───────────────────────────────────── */
html.dark .text-slate-100 { color: #ECF2EF !important; }
html.dark .text-slate-200 { color: #DAE4E0 !important; }
html.dark .text-slate-300 { color: #BECBC5 !important; }
html.dark .text-slate-400 { color: #97A9A1 !important; }
html.dark .text-slate-500 { color: #7A8C84 !important; }
html.dark .text-slate-600 { color: #55655E !important; }
html.dark .placeholder-slate-500::placeholder,
html.dark .placeholder-slate-600::placeholder { color: #6B7D75 !important; }

/* ── Índigo (marca antiga) → verde-petróleo, tema escuro ────── */
html.dark .text-indigo-400 { color: #56C6A9 !important; }
html.dark .text-indigo-300 { color: #7DD3BC !important; }
html.dark .bg-indigo-600   { background-color: #0E7C66 !important; }
html.dark .bg-indigo-500   { background-color: #1B9077 !important; }
html.dark [class~="hover:bg-indigo-500"]:hover { background-color: #12886F !important; }
html.dark [class~="hover:bg-indigo-700"]:hover { background-color: #0B6353 !important; }
html.dark [class~="bg-indigo-500/5"]  { background-color: rgba(27,144,119,0.07) !important; }
html.dark [class~="bg-indigo-500/20"] { background-color: rgba(27,144,119,0.18) !important; }
html.dark [class~="border-indigo-500/20"] { border-color: rgba(27,144,119,0.25) !important; }
html.dark [class~="border-indigo-500/30"] { border-color: rgba(27,144,119,0.35) !important; }
html.dark [class~="focus:ring-indigo-500"]:focus { --tw-ring-color: #2FA98C !important; }
html.dark [class~="shadow-indigo-500/25"] { --tw-shadow-color: rgba(14,124,102,0.35) !important; }

/* ── Índigo → verde-petróleo, tema claro (vence o tema-claro.css
      por vir depois dele no <head>) ──────────────────────────── */
html.light .text-indigo-400, html.light [class*="text-indigo-400/"] { color: #0B6353 !important; }
html.light .text-indigo-300, html.light [class*="text-indigo-300/"] { color: #0A5044 !important; }
html.light .bg-indigo-600   { background-color: #0E7C66 !important; }
html.light .bg-indigo-500   { background-color: #12886F !important; }
html.light [class~="hover:bg-indigo-500"]:hover { background-color: #0B6353 !important; }
html.light [class~="hover:bg-indigo-700"]:hover { background-color: #0A5044 !important; }
html.light [class~="bg-indigo-500/5"]  { background-color: rgba(14,124,102,0.06) !important; }
html.light [class~="bg-indigo-500/20"] { background-color: rgba(14,124,102,0.14) !important; }
html.light [class~="border-indigo-500/20"] { border-color: rgba(14,124,102,0.30) !important; }
html.light [class~="border-indigo-500/30"] { border-color: rgba(14,124,102,0.40) !important; }
html.light [class~="focus:ring-indigo-500"]:focus { --tw-ring-color: #0E7C66 !important; }
html.light [class~="shadow-indigo-500/25"] { --tw-shadow-color: rgba(14,124,102,0.20) !important; }

/* ── CLARO: tons brand-3xx/4xx/5xx são pensados para fundo escuro
      e perdem contraste no branco ────────────────────────────── */
html.light .text-brand-300 { color: #0A5044 !important; }
html.light .text-brand-400 { color: #0B6353 !important; }
html.light .text-brand-500, html.light [class*="text-brand-500/"] { color: #0E7C66 !important; }
html.light [class~="hover:text-brand-300"]:hover,
html.light [class~="hover:text-brand-400"]:hover { color: #0A5044 !important; }
