/* ==========================================================================
   PLATAFORMA EVANGELHO · TEMA (BASE)
   --------------------------------------------------------------------------
   ARQUIVO DERIVADO — não edite aqui.
   Gerado por plataforma/gerar-base.php a partir de tema.css, cortando no
   marcador "FIM DA BASE".

   Contém tokens, cores de identidade dos módulos, reset e tipografia — e
   nenhuma classe. É o que as páginas com CSS próprio recebem: elas passam
   a obedecer ao tema, à fonte e ao corpo do controle central sem que o
   layout que já tinham seja tocado.
   ========================================================================== */

/* ==========================================================================
   DESIGN TOKENS & TEMAS (CLARO E ESCURO) - MÁXIMA NITIDEZ & ELEGÂNCIA
   ========================================================================== */
:root {
  --rail: 270px;
  --col-min: 220px;
  --mono: "JetBrains Mono", "Cascadia Code", Consolas, monospace;
  --trans-tema: background-color .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

/* Pilha de Fontes por atributo data-font */
:root, [data-font="inter"] {
  --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, Roboto, sans-serif;
}
[data-font="segoe"] {
  --sans: "Segoe UI", -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif;
}
[data-font="verdana"] {
  --sans: Verdana, Geneva, Tahoma, sans-serif;
}
[data-font="calibri"] {
  --sans: Calibri, "Segoe UI", Candara, sans-serif;
}

/* Escala de Tamanho por data-size */
:root, [data-size="md"] {
  --tam-base: 15px;
  --tam-nota: .85rem;
  --tam-tit: .94rem;
  --tam-ch: .84rem;
}
[data-size="sm"] {
  --tam-base: 13.5px;
  --tam-nota: .79rem;
  --tam-tit: .88rem;
  --tam-ch: .78rem;
}
[data-size="lg"] {
  --tam-base: 16.5px;
  --tam-nota: .92rem;
  --tam-tit: 1.02rem;
  --tam-ch: .90rem;
}
[data-size="xl"] {
  --tam-base: 18px;
  --tam-nota: 1.00rem;
  --tam-tit: 1.10rem;
  --tam-ch: .98rem;
}

/* Espessura / Peso da Letra (Anti-Tremor no Windows) */
:root, [data-weight="firme"] {
  --peso-corpo: 460;
  --peso-semi: 600;
  --peso-forte: 700;
}
[data-weight="normal"] {
  --peso-corpo: 400;
  --peso-semi: 550;
  --peso-forte: 700;
}
[data-weight="forte"] {
  --peso-corpo: 520;
  --peso-semi: 650;
  --peso-forte: 800;
}

/* ---------- MODO ESCURO (Ébano Obsidian & Ouro Sacro) ---------- */
:root, [data-theme="dark"] {
  color-scheme: dark;
  --noite: #0d1117;              /* Fundo principal: ardósia profundo ultra-limpo */
  --noite-2: #161c26;            /* Cartões, células, painéis: ardósia sólido */
  --noite-3: #1f2736;            /* Cabeçalhos, inputs, elementos elevados */
  --noite-hover: #1c2331;        /* Hover nítido e sólido */
  --borda: #252e3f;              /* Borda sólida nítida de 1px (sem borrão de alpha) */
  --borda-forte: #38465e;        /* Borda de destaque */
  --perg: #ffffff;               /* Títulos e destaques: branco puro */
  --perg-corpo: #e2e8f0;         /* Texto corrido: ardósia claro de altíssimo contraste */
  --perg-dim: #94a3b8;           /* Texto secundário e notas explicativas */
  --perg-dimmer: #64748b;        /* Rótulos discretos e metadados */
  --ouro: #eab308;               /* Ouro celestial luminoso */
  --ouro-claro: #fde047;         /* Ouro brilhante para hover e links */
  --ouro-bg: rgba(234, 179, 8, 0.12);
  --ouro-border: rgba(234, 179, 8, 0.35);
  --topo-bg: rgba(13, 17, 23, 0.96);
  --topo-borda: #252e3f;
  --card-bg: #161c26;
  --card-borda: #252e3f;
  --card-shadow: 0 4px 18px rgba(0, 0, 0, 0.35);
  --card-shadow-hover: 0 6px 24px rgba(0, 0, 0, 0.55);
  --consenso: #22c55e;
  --consenso-bg: rgba(34, 197, 94, 0.14);
  --diverg: #f43f5e;
  --diverg-bg: rgba(244, 63, 94, 0.14);
  --na: #64748b;
  --na-bg: rgba(100, 116, 139, 0.15);
  --busca-bg: #161c26;
  --busca-borda: #38465e;
  --btn-tema-bg: rgba(234, 179, 8, 0.12);
  --btn-tema-border: rgba(234, 179, 8, 0.40);
  --btn-tema-icon: #facc15;
  --scroll-thumb: #38465e;
  --scroll-thumb-hover: #eab308;
}

/* ---------- MODO CLARO (Papiro Archival & Âmbar Imperial) ---------- */
[data-theme="light"] {
  color-scheme: light;
  --noite: #f7f6f2;              /* Fundo principal: papel linho nobre marfim suave */
  --noite-2: #ffffff;            /* Cartões, células, painéis: branco puro sólido */
  --noite-3: #ece8df;            /* Cabeçalhos, inputs, elementos elevados */
  --noite-hover: #f3f0e8;        /* Hover suave */
  --borda: #ded9cc;              /* Borda sólida de papel encadernado */
  --borda-forte: #c4bdaf;        /* Borda de realce */
  --perg: #0f172a;               /* Títulos: carvão profundo */
  --perg-corpo: #1e293b;         /* Texto corrido: grafite escuro límpido */
  --perg-dim: #475569;           /* Texto secundário e notas */
  --perg-dimmer: #64748b;        /* Rótulos e metadados */
  --ouro: #94630a;               /* Ouro âmbar imperial de alto contraste */
  --ouro-claro: #714b05;         /* Bronze escuro para links e destaque */
  --ouro-bg: rgba(148, 99, 10, 0.08);
  --ouro-border: rgba(148, 99, 10, 0.30);
  --topo-bg: rgba(247, 246, 242, 0.96);
  --topo-borda: #ded9cc;
  --card-bg: #ffffff;
  --card-borda: #ded9cc;
  --card-shadow: 0 2px 10px rgba(30, 25, 20, 0.06);
  --card-shadow-hover: 0 6px 18px rgba(30, 25, 20, 0.12);
  --consenso: #15803d;
  --consenso-bg: rgba(21, 128, 61, 0.10);
  --diverg: #be123c;
  --diverg-bg: rgba(190, 18, 60, 0.10);
  --na: #64748b;
  --na-bg: rgba(100, 116, 139, 0.10);
  --busca-bg: #ffffff;
  --busca-borda: #ded9cc;
  --btn-tema-bg: rgba(148, 99, 10, 0.08);
  --btn-tema-border: rgba(148, 99, 10, 0.35);
  --btn-tema-icon: #94630a;
  --scroll-thumb: #ded9cc;
  --scroll-thumb-hover: #94630a;
}

/* ==========================================================================
   CORES DE IDENTIDADE DOS MÓDULOS
   ========================================================================== */
/* A escatologia não recebe cor "de módulo": ela recebe de volta a própria.
   Estes quatro valores são, byte a byte, os que linha-do-tempo.html já usa —
   a página de lá não carrega este arquivo, e um tom só parecido faria a barra
   mudar de ouro ao entrar e ao sair dela. */
[data-modulo="escatologia"]      { --ouro: #eab308; --ouro-claro: #fde047;
  --ouro-bg: rgba(234,179,8,.12); --ouro-border: rgba(234,179,8,.35); }
[data-modulo="escola-dominical"] { --ouro: #5cb872; --ouro-claro: #93e0a4;
  --ouro-bg: rgba(92,184,114,.13); --ouro-border: rgba(92,184,114,.38); }
[data-modulo="livros"]           { --ouro: #62a8dd; --ouro-claro: #9dcdf0;
  --ouro-bg: rgba(98,168,221,.13); --ouro-border: rgba(98,168,221,.38); }
[data-modulo="temas-gerais"]     { --ouro: #b07fd0; --ouro-claro: #d3b3e8;
  --ouro-bg: rgba(176,127,208,.13); --ouro-border: rgba(176,127,208,.38); }
/* A Bíblia era o único módulo sem cor de assinatura: a barra dela saía com o
   ouro genérico, quebrando a regra que vale para os outros quatro. O índigo
   abaixo não foi escolhido a esmo — é o mesmo --accent que biblia.php já usa
   nos botões e na seleção, só clareado o bastante para 6,3:1 sobre a barra
   escura (o #6366f1 original dava 4,24:1, no fio). */
[data-modulo="biblia"]           { --ouro: #818cf8; --ouro-claro: #a5b0fb;
  --ouro-bg: rgba(129,140,248,.13); --ouro-border: rgba(129,140,248,.38); }

/* As variantes claras precisam valer em DOIS arranjos, e por muito tempo só
   valeram em nenhum:

     · numa página de módulo, data-modulo fica no <html>, ao lado do
       data-theme — mesmo elemento;
     · no hub, cada cartão leva o seu próprio data-modulo, enquanto o
       data-theme continua lá em cima, no <html> — elementos diferentes.

   Escrito só como [data-theme="light"][data-modulo="livros"], o seletor exige
   os dois atributos no mesmo elemento e não casava em nenhum dos dois casos.
   O efeito era silencioso e feio: no tema claro cada módulo usava o ouro do
   tema ESCURO sobre papel claro. A marca da barra ficava em 2,4:1 e a etiqueta
   do cartão de escatologia em 1,84:1 — ilegível, sem nada quebrado à vista.

   Com as duas formas juntas, o descendente cobre o hub e o composto cobre a
   página de módulo. Ambos pesam (0,2,0) e vencem o padrão escuro, que pesa
   (0,1,0) — a ordem de escrita não decide nada aqui. */
[data-theme="light"] [data-modulo="escatologia"],
[data-theme="light"][data-modulo="escatologia"]      { --ouro: #94630a; --ouro-claro: #714b05;
  --ouro-bg: rgba(148,99,10,.08); --ouro-border: rgba(148,99,10,.30); }
[data-theme="light"] [data-modulo="escola-dominical"],
[data-theme="light"][data-modulo="escola-dominical"] { --ouro: #2f6b3a; --ouro-claro: #21522b;
  --ouro-bg: rgba(47,107,58,.09); --ouro-border: rgba(47,107,58,.30); }
[data-theme="light"] [data-modulo="livros"],
[data-theme="light"][data-modulo="livros"]           { --ouro: #1f5680; --ouro-claro: #164060;
  --ouro-bg: rgba(31,86,128,.09); --ouro-border: rgba(31,86,128,.30); }
[data-theme="light"] [data-modulo="temas-gerais"],
[data-theme="light"][data-modulo="temas-gerais"]     { --ouro: #64388a; --ouro-claro: #4c2a69;
  --ouro-bg: rgba(100,56,138,.09); --ouro-border: rgba(100,56,138,.30); }
[data-theme="light"] [data-modulo="biblia"],
[data-theme="light"][data-modulo="biblia"]           { --ouro: #4338ca; --ouro-claro: #322a9e;
  --ouro-bg: rgba(67,56,202,.09); --ouro-border: rgba(67,56,202,.30); }

/* ==========================================================================
   RESET & TIPOGRAFIA ESTÁVEL (ZERO TREMOR)
   ========================================================================== */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html {
  scroll-behavior: smooth;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: subpixel-antialiased;
}
body {
  background: var(--noite);
  color: var(--perg-corpo);
  font-family: var(--sans);
  font-size: var(--tam-base);
  font-weight: var(--peso-corpo);
  line-height: 1.62;
  letter-spacing: -0.011em;
  transition: var(--trans-tema);
  min-height: 100vh;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: subpixel-antialiased;
}
a { color: var(--ouro); text-decoration: none; transition: color .15s ease; font-weight: var(--peso-semi); }
a:hover { color: var(--ouro-claro); text-decoration: underline; }

/* Scrollbars */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--scroll-thumb); border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: var(--scroll-thumb-hover); }

