/*
 * temas.css — paleta da marca e os 11 temas de cores do Viltrun Memorial (design system 2.0).
 *
 * Aplicado por <html data-tema="...">. Os ids e as cores base (primária, secundária, fundo) são os mesmos do enum
 * Java Tema e da lista TEMAS de js/ui.js (TemasConsistenciaTest compara as três fontes: alterou uma cor base aqui,
 * altere nas outras duas). Os demais tons de cada tema são derivados à mão das cores base, conferidos para contraste
 * WCAG AA (texto ≥ 4,5:1). Tokens derivados por fórmula (hover, anéis de foco, translúcidos) ficam em css/app.css,
 * calculados com color-mix() a partir destas variáveis — por isso também valem para o tema personalizado (§17.4).
 *
 * Variáveis contratuais (docs/ARQUITETURA.md §13.4) + complementares documentadas em docs/FRONTEND.md §9.
 */

/* ============================================================== marca Viltrun (fixa, independe do tema) */
:root {
  --viltrum-noite: #0b0f2c;        /* Noite Soberana — fundos escuros, login, menu */
  --viltrum-indigo: #161c55;       /* Índigo Imperial — símbolo, botão primário */
  --viltrum-ouro: #d1aa55;         /* Ouro Real — coroa no escuro, item ativo, destaques */
  --viltrum-ouro-claro: #ebcb7c;   /* topo do degradê da coroa no escuro */
  --viltrum-ouro-antigo: #a97e2f;  /* Ouro Antigo — coroa no claro */
  --viltrum-marfim: #f6f2e8;       /* Marfim — símbolo e palavra no escuro */
  --viltrum-eletrico: #5b6cf0;     /* Índigo Elétrico — foco, ativo, links (não entra na logo) */
}

@supports (color: oklch(50% 0.1 270)) {
  :root {
    --viltrum-noite: oklch(18.5% 0.058 273.4);
    --viltrum-indigo: oklch(26.2% 0.102 272.5);
    --viltrum-ouro: oklch(75.6% 0.113 84.8);
    --viltrum-ouro-claro: oklch(85.2% 0.105 88.1);
    --viltrum-ouro-antigo: oklch(62.1% 0.108 79.3);
    --viltrum-marfim: oklch(96.2% 0.014 88.7);
    --viltrum-eletrico: oklch(59% 0.197 273.2);
  }
}

/* ============================================================== tons de status — temas claros (padrão) */
:root {
  --cor-sucesso: #15803d;
  --cor-sucesso-suave: #e6f6ec;
  --cor-sucesso-texto: #166534;
  --cor-sucesso-contraste: #ffffff;
  --cor-aviso: #b45309;
  --cor-aviso-suave: #fdf3e0;
  --cor-aviso-texto: #92400e;
  --cor-aviso-contraste: #ffffff;
  --cor-perigo: #dc2626;
  --cor-perigo-suave: #fdecec;
  --cor-perigo-texto: #a51c1c;
  --cor-perigo-contraste: #ffffff;
  --cor-info: #0369a1;
  --cor-info-suave: #e4f2fb;
  --cor-info-texto: #075985;
  --cor-info-contraste: #ffffff;
  --cor-neutro-suave: #eef0f5;
  --cor-neutro-texto: #4a5469;
  --cor-sobreposicao: rgba(11, 15, 44, 0.42);
  --sombra-xs: 0 1px 2px rgba(16, 24, 40, 0.05);
  --sombra: 0 1px 2px rgba(16, 24, 40, 0.04), 0 1px 3px rgba(16, 24, 40, 0.06);
  --sombra-media: 0 2px 4px -2px rgba(16, 24, 40, 0.06), 0 12px 24px -6px rgba(16, 24, 40, 0.14);
  --sombra-forte: 0 4px 8px -2px rgba(16, 24, 40, 0.08), 0 28px 56px -12px rgba(16, 24, 40, 0.28);
  --brilho-superficie: inset 0 1px 0 rgba(255, 255, 255, 0.6);
  color-scheme: light;
}

/* ============================================================== tons de status — temas escuros */
[data-tema="grafite-escuro"],
[data-tema="noite-azul"] {
  --cor-sucesso: #4ade80;
  --cor-sucesso-suave: #0f2a1c;
  --cor-sucesso-texto: #86efac;
  --cor-sucesso-contraste: #052e16;
  --cor-aviso: #fbbf24;
  --cor-aviso-suave: #33260a;
  --cor-aviso-texto: #fcd34d;
  --cor-aviso-contraste: #2a1a02;
  --cor-perigo: #f87171;
  --cor-perigo-suave: #361416;
  --cor-perigo-texto: #fca5a5;
  --cor-perigo-contraste: #2a0707;
  --cor-info: #38bdf8;
  --cor-info-suave: #0b2a3d;
  --cor-info-texto: #7dd3fc;
  --cor-info-contraste: #04121d;
  --cor-sobreposicao: rgba(0, 0, 0, 0.6);
  --sombra-xs: 0 1px 2px rgba(0, 0, 0, 0.4);
  --sombra: 0 1px 2px rgba(0, 0, 0, 0.36), 0 1px 3px rgba(0, 0, 0, 0.24);
  --sombra-media: 0 2px 4px -2px rgba(0, 0, 0, 0.5), 0 14px 28px -6px rgba(0, 0, 0, 0.55);
  --sombra-forte: 0 4px 10px -2px rgba(0, 0, 0, 0.5), 0 32px 64px -12px rgba(0, 0, 0, 0.7);
  --brilho-superficie: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  color-scheme: dark;
}

/* ============================================================== Viltrun Imperial (claro) — padrão */
:root,
[data-tema="viltrum"] {
  --cor-primaria: #161c55;
  --cor-primaria-hover: #232b74;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #eceefa;
  --cor-primaria-texto: #2f3aa8;
  --cor-secundaria: #a97e2f;
  --cor-secundaria-suave: #f7f0e1;
  --cor-fundo: #f5f6f9;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #fafbfc;
  --cor-superficie-3: #eff1f6;
  --cor-borda: #e3e6ee;
  --cor-borda-forte: #cdd2df;
  --cor-texto: #14173a;
  --cor-texto-suave: #5e6487;
  --cor-menu-fundo: #0b0f2c;
  --cor-menu-texto: #a9afd3;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #151a3e;
  --cor-menu-ativo: #1b2152;
  --cor-menu-destaque: #d1aa55;
  --cor-menu-borda: #191e43;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #5b6cf0;
  --cor-link: #3f4fd6;
}

/* Azul Corporativo (claro) */
[data-tema="azul-corporativo"] {
  --cor-primaria: #1d4ed8;
  --cor-primaria-hover: #1a45c2;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #e9eefc;
  --cor-primaria-texto: #173da8;
  --cor-secundaria: #0ea5e9;
  --cor-secundaria-suave: #ddf2fc;
  --cor-fundo: #f4f6fb;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #f9fafd;
  --cor-superficie-3: #ebeff8;
  --cor-borda: #dee4f0;
  --cor-borda-forte: #c7d0e1;
  --cor-texto: #111d3a;
  --cor-texto-suave: #56637f;
  --cor-menu-fundo: #0e1b42;
  --cor-menu-texto: #aebcdb;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #18264f;
  --cor-menu-ativo: #1c3172;
  --cor-menu-destaque: #4abcef;
  --cor-menu-borda: #1c2950;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #3f69de;
  --cor-link: #1d4ed8;
}

/* Verde Floresta (claro) */
[data-tema="verde-floresta"] {
  --cor-primaria: #15803d;
  --cor-primaria-hover: #126e34;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #e8f3ec;
  --cor-primaria-texto: #106430;
  --cor-secundaria: #65a30d;
  --cor-secundaria-suave: #ebf3df;
  --cor-fundo: #f3f7f4;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #f8fbf9;
  --cor-superficie-3: #e9f1ec;
  --cor-borda: #dde6e5;
  --cor-borda-forte: #c6d3d4;
  --cor-texto: #11222a;
  --cor-texto-suave: #546871;
  --cor-menu-fundo: #0c2620;
  --cor-menu-texto: #adc4c4;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #16332b;
  --cor-menu-ativo: #184634;
  --cor-menu-destaque: #8cba4a;
  --cor-menu-borda: #19342d;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #38935a;
  --cor-link: #15803d;
}

/* Roxo Real (claro) */
[data-tema="roxo-real"] {
  --cor-primaria: #6d28d9;
  --cor-primaria-hover: #5e22bb;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #f1ebfc;
  --cor-primaria-texto: #551fa9;
  --cor-secundaria: #c026d3;
  --cor-secundaria-suave: #f7e3fa;
  --cor-fundo: #f6f4fb;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #faf9fd;
  --cor-superficie-3: #efebf9;
  --cor-borda: #e3e2f0;
  --cor-borda-forte: #cdcde2;
  --cor-texto: #191a3a;
  --cor-texto-suave: #5d6082;
  --cor-menu-fundo: #1f1242;
  --cor-menu-texto: #bab7da;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #2b1f50;
  --cor-menu-ativo: #3c2375;
  --cor-menu-destaque: #d05cde;
  --cor-menu-borda: #2d2151;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #8348df;
  --cor-link: #6d28d9;
}

/* Laranja Energia (claro) */
[data-tema="laranja-energia"] {
  --cor-primaria: #c2410c;
  --cor-primaria-hover: #a7380a;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #faede7;
  --cor-primaria-texto: #973309;
  --cor-secundaria: #f59e0b;
  --cor-secundaria-suave: #fef2de;
  --cor-fundo: #fbf7f3;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #fdfbf9;
  --cor-superficie-3: #f6eee8;
  --cor-borda: #e8e3e2;
  --cor-borda-forte: #d2cdcf;
  --cor-texto: #221c25;
  --cor-texto-suave: #65616b;
  --cor-menu-fundo: #321813;
  --cor-menu-texto: #c7bcbd;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #40251f;
  --cor-menu-ativo: #5a2a1b;
  --cor-menu-destaque: #f8b648;
  --cor-menu-borda: #422823;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #cb5e30;
  --cor-link: #c2410c;
}

/* Vermelho Rubi (claro) */
[data-tema="vermelho-rubi"] {
  --cor-primaria: #be123c;
  --cor-primaria-hover: #a30f34;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #faeaee;
  --cor-primaria-texto: #940e2f;
  --cor-secundaria: #e11d48;
  --cor-secundaria-suave: #fce2e8;
  --cor-fundo: #fbf5f6;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #fdfafa;
  --cor-superficie-3: #f6ebee;
  --cor-borda: #e8e1e7;
  --cor-borda-forte: #d2cbd5;
  --cor-texto: #21172a;
  --cor-texto-suave: #655d71;
  --cor-menu-fundo: #320e1f;
  --cor-menu-texto: #c6b5c4;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #401b2d;
  --cor-menu-ativo: #5a1631;
  --cor-menu-destaque: #e95676;
  --cor-menu-borda: #411d2e;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #c83659;
  --cor-link: #be123c;
}

/* Azul Petróleo (claro) */
[data-tema="azul-petroleo"] {
  --cor-primaria: #0f766e;
  --cor-primaria-hover: #0d655f;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #e6f2f1;
  --cor-primaria-texto: #0c5c56;
  --cor-secundaria: #0891b2;
  --cor-secundaria-suave: #ddf1f5;
  --cor-fundo: #f2f7f7;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #f8fbfb;
  --cor-superficie-3: #e8f1f1;
  --cor-borda: #dce5e9;
  --cor-borda-forte: #c4d1d9;
  --cor-texto: #10212f;
  --cor-texto-suave: #536776;
  --cor-menu-fundo: #0a252b;
  --cor-menu-texto: #acc3cc;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #143138;
  --cor-menu-ativo: #134342;
  --cor-menu-destaque: #46adc5;
  --cor-menu-borda: #173338;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #338b84;
  --cor-link: #0f766e;
}

/* Rosa Moderno (claro) */
[data-tema="rosa-moderno"] {
  --cor-primaria: #be185d;
  --cor-primaria-hover: #a31550;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #faeaf1;
  --cor-primaria-texto: #941349;
  --cor-secundaria: #f472b6;
  --cor-secundaria-suave: #fdecf5;
  --cor-fundo: #fcf5f8;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #fdfafb;
  --cor-superficie-3: #f7ebf1;
  --cor-borda: #e8e2ea;
  --cor-borda-forte: #d2cbd8;
  --cor-texto: #21182d;
  --cor-texto-suave: #655e74;
  --cor-menu-fundo: #320f27;
  --cor-menu-texto: #c6b6ca;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #401c35;
  --cor-menu-ativo: #5a1a3e;
  --cor-menu-destaque: #f795c8;
  --cor-menu-borda: #411e37;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #c83b75;
  --cor-link: #be185d;
}

/* Terra Café (claro) */
[data-tema="terra-cafe"] {
  --cor-primaria: #92400e;
  --cor-primaria-hover: #7e370c;
  --cor-primaria-contraste: #ffffff;
  --cor-primaria-suave: #f5ede8;
  --cor-primaria-texto: #72320b;
  --cor-secundaria: #b45309;
  --cor-secundaria-suave: #f6e9df;
  --cor-fundo: #f8f5f1;
  --cor-superficie: #ffffff;
  --cor-superficie-2: #fbfaf8;
  --cor-superficie-3: #f2ece7;
  --cor-borda: #e6e3e3;
  --cor-borda-forte: #cfcdd2;
  --cor-texto: #1d1c25;
  --cor-texto-suave: #60626c;
  --cor-menu-fundo: #281813;
  --cor-menu-texto: #c0bbbd;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #352520;
  --cor-menu-ativo: #4a2c1f;
  --cor-menu-destaque: #c77e47;
  --cor-menu-borda: #372724;
  --cor-topo-fundo: #ffffff;
  --cor-foco: #a25d32;
  --cor-link: #92400e;
}

/* Grafite Escuro (escuro) */
[data-tema="grafite-escuro"] {
  --cor-primaria: #60a5fa;
  --cor-primaria-hover: #78b3fb;
  --cor-primaria-contraste: #0b1324;
  --cor-primaria-suave: #1c2a3e;
  --cor-primaria-texto: #93c2fc;
  --cor-secundaria: #a78bfa;
  --cor-secundaria-suave: #29273f;
  --cor-fundo: #0f1115;
  --cor-superficie: #16191f;
  --cor-superficie-2: #1b1f26;
  --cor-superficie-3: #232832;
  --cor-borda: #262b34;
  --cor-borda-forte: #363d4a;
  --cor-texto: #e7e9ee;
  --cor-texto-suave: #98a1b0;
  --cor-menu-fundo: #0a0c10;
  --cor-menu-texto: #aeb6c4;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #15181e;
  --cor-menu-ativo: #1b2331;
  --cor-menu-destaque: #60a5fa;
  --cor-menu-borda: #191c22;
  --cor-topo-fundo: #16191f;
  --cor-foco: #60a5fa;
  --cor-link: #79b4fb;
  --cor-neutro-suave: #232832;
  --cor-neutro-texto: #c3c9d4;
}

/* Noite Azul (escuro) */
[data-tema="noite-azul"] {
  --cor-primaria: #38bdf8;
  --cor-primaria-hover: #56c7f9;
  --cor-primaria-contraste: #04121d;
  --cor-primaria-suave: #132f47;
  --cor-primaria-texto: #7dd3fc;
  --cor-secundaria: #818cf8;
  --cor-secundaria-suave: #1f294a;
  --cor-fundo: #0b1220;
  --cor-superficie: #101a2d;
  --cor-superficie-2: #142037;
  --cor-superficie-3: #1a2843;
  --cor-borda: #1f2c47;
  --cor-borda-forte: #2f3f63;
  --cor-texto: #e2e8f0;
  --cor-texto-suave: #93a3ba;
  --cor-menu-fundo: #070c18;
  --cor-menu-texto: #aebcd4;
  --cor-menu-texto-ativo: #ffffff;
  --cor-menu-hover: #111a2c;
  --cor-menu-ativo: #15253f;
  --cor-menu-destaque: #38bdf8;
  --cor-menu-borda: #131b2b;
  --cor-topo-fundo: #101a2d;
  --cor-foco: #38bdf8;
  --cor-link: #5cc9fa;
  --cor-neutro-suave: #1a2843;
  --cor-neutro-texto: #c0cadb;
}
