/* A identidade visual da DRY.CO num lugar só.
 *
 * Este arquivo é a **única** definição da paleta e das fontes: o site
 * institucional (site.css) e a plataforma (dryco.css + app.css) leem daqui,
 * para não existirem duas listas de cor que saem do lugar uma da outra.
 * Mudou a identidade? Muda aqui e as duas telas acompanham.
 *
 * **28/09/2026 — tema claro, no padrão da Alpha Piscinas** (empresa irmã;
 * decisão dele, para o site e para o ERP). Fundo claro, superfícies brancas,
 * o azul da DRY.CO (#4f7df3) continua sendo a única cor de destaque. Os
 * neutros são QUENTES (branco-gelo, cinzas puxados para o bege) porque as
 * fotos das obras são quentes — madeira, luz âmbar, teto grafite — e cinza
 * azulado ao lado delas parecia outra empresa.
 *
 * O azul da marca não passa em texto sobre branco (3,6:1), então ele se
 * desdobra: `--accent-marca` #4f7df3 fica para o que não é texto (foco,
 * ícone, marca de seleção, gráfico); `--accent` #3563d6 é o botão (branco
 * sobre ele: 5,4:1) e `--accent-claro` #2c59c9 é o azul de link/texto
 * (6,2:1 no branco). Todos os pares de texto foram medidos (WCAG), não
 * estimados: nenhum abaixo de 4,5:1, inclusive as etiquetas de estado sobre
 * o próprio fundo tingido.
 *
 * Da reforma de 22/09 continua a forma: cantos praticamente retos
 * (--raio: 2px), a borda separa em vez da sombra, nada de brilho colorido,
 * vidro fosco ou gradiente decorativo. A iluminação animada (luz.css) saiu
 * junto com o tema escuro.
 */

/* Fontes servidas daqui (sem Google Fonts). Montserrat é a família da escrita
   "DRY.CO" da logo — títulos. Lato é a do texto corrido do site, a mesma da
   Alpha. Ambas SIL Open Font License 1.1. */
@font-face {
  font-family: "Montserrat"; font-style: normal; font-weight: 300 600; font-display: swap;
  src: url("../fonts/montserrat-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Lato"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("../fonts/lato-400-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Lato"; font-style: normal; font-weight: 700; font-display: swap;
  src: url("../fonts/lato-700-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  color-scheme: light;

  /* superfícies */
  --bg: #f6f4f0;                    /* branco-gelo quente: o fundo das telas */
  --sidebar: #fbfaf8;
  --superficie: #ffffff;            /* cards, tabelas, campos, modal */
  --superficie-alt: #f3f1ed;        /* um passo abaixo: zebra, chip, tecla */

  /* texto (contraste medido no --bg / branco / --superficie-alt) */
  --texto: #1f1d1a;                 /* 15,3 / 16,8 / 14,9 */
  --texto-suave: #4d4943;           /*  8,1 /  8,9 /  7,9 */
  --texto-fraco: #6f6a63;           /*  4,9 /  5,4 /  4,8 */
  --sidebar-texto: #4d4943;
  --sidebar-texto-forte: #1f1d1a;

  /* divisões */
  --borda: #e6e2db;
  --borda-forte: #d3cdc3;
  --sidebar-hover: rgba(31, 29, 26, .05);
  --sidebar-ativo: rgba(79, 125, 243, .12);

  /* o azul da DRY.CO */
  --accent-marca: #4f7df3;          /* o azul da marca: foco, ícone, seleção — nunca texto */
  --accent: #3563d6;                /* botão; texto branco sobre ele 5,4:1 */
  --accent-texto: #ffffff;
  --accent-hover: #2b54c2;
  --accent-claro: #2c59c9;          /* o azul de texto e link (nome herdado do tema escuro) */
  --accent-fundo: rgba(79, 125, 243, .10);
  --accent-pressionado: rgba(79, 125, 243, .18);
  --accent-borda: rgba(53, 99, 214, .45);

  /* estado — texto sempre >= 4,5:1, inclusive sobre o próprio fundo tingido */
  --verde: #127544;
  --verde-fundo: rgba(18, 117, 68, .10);
  --verde-borda: rgba(18, 117, 68, .30);
  --ambar: #8a5b00;
  --ambar-fundo: rgba(184, 122, 0, .12);
  --ambar-borda: rgba(138, 91, 0, .30);
  --vermelho: #c0392b;
  --vermelho-fundo: rgba(192, 57, 43, .10);
  --vermelho-borda: rgba(192, 57, 43, .30);

  /* a casca da plataforma: barras, véu das janelas, realce de linha */
  --barra: #ffffff;                 /* barra de cima, topo do hall, sidebar */
  --barra-linha: var(--borda);
  --veu: rgba(31, 29, 26, .42);     /* atrás do modal e da paleta Ctrl+K */
  --realce: rgba(31, 29, 26, .035); /* hover discreto em linha de tabela e gráfico */

  /* gráficos (painel do financeiro). Validados no branco (dataviz
     validate_palette, 28/09/2026): separação CVD >= 8, visão normal >= 18,
     contraste >= 3:1 — a série 4 escureceu de #c98500 para #b87a00, que no
     branco ficava em 2,99:1. A ordem é fixa: série 1 é sempre o azul da
     marca. Entrada e saída têm cor própria e fixa. Texto nunca usa estas cores. */
  --serie-1: #4f7df3;
  --serie-2: #d95926;
  --serie-3: #199e70;
  --serie-4: #b87a00;
  --serie-5: #d55181;
  --serie-6: #9085e9;
  --serie-entrada: #199e70;
  --serie-saida: #d95926;
  --grade-grafico: #eeebe6;         /* linha de grade: um passo acima do branco */
  --eixo-grafico: #d3cdc3;

  /* forma */
  --sombra: none;                   /* a borda separa; sombra só em camadas flutuantes */
  --sombra-flutuante: 0 18px 48px rgba(31, 29, 26, .16), 0 2px 6px rgba(31, 29, 26, .06);
  --raio: 2px;                      /* cantos praticamente retos */
  --fonte: "Segoe UI", system-ui, sans-serif;
  --fonte-titulo: "Montserrat", "Segoe UI", system-ui, sans-serif;
  --fonte-texto: "Lato", "Segoe UI", system-ui, sans-serif;
  /* movimento: saída rápida e pouso suave (entradas, surgimentos) */
  --ease-saida: cubic-bezier(0.23, 1, 0.32, 1);
  --largura-sidebar: 232px;
  --largura-sidebar-recolhida: 60px;
  --altura-topo: 50px;
}

/* ── tema escuro da plataforma (escolha de cada pessoa, 28/09/2026) ──────
   As cores que estavam no ar até 28/09 — preto azulado, superfícies um tom
   acima, o azul da DRY.CO — com os mesmos tokens semânticos do claro, então
   o app.css não sabe (nem precisa saber) qual tema está ligado. Liga com
   <html data-tema="escuro">; o sistema.php põe o atributo antes de pintar e o
   botão do topo alterna (app.js, guardado em localStorage "dryco.tema").
   O site institucional é sempre claro: ele nunca liga esse atributo.
   O botão continua #3563d6 (texto branco 5,4:1) nos dois temas; séries do
   gráfico são as validadas contra a superfície escura (a 4 volta a #c98500). */
:root[data-tema="escuro"] {
  color-scheme: dark;
  --bg: #07090f;
  --sidebar: #090c14;
  --superficie: #0f131c;
  --superficie-alt: #151a26;
  --texto: #e6e9f0;
  --texto-suave: #b3bac8;
  --texto-fraco: #7f8899;
  --sidebar-texto: #aab2c2;
  --sidebar-texto-forte: #ffffff;
  --borda: #1c2231;
  --borda-forte: #2b3446;
  --sidebar-hover: rgba(255, 255, 255, .05);
  --sidebar-ativo: rgba(79, 125, 243, .20);
  --accent-claro: #9db8ff;
  --accent-fundo: rgba(79, 125, 243, .14);
  --accent-pressionado: rgba(79, 125, 243, .26);
  --accent-borda: rgba(79, 125, 243, .45);
  --verde: #5fd393;
  --verde-fundo: rgba(95, 211, 147, .13);
  --verde-borda: rgba(95, 211, 147, .30);
  --ambar: #e6b968;
  --ambar-fundo: rgba(230, 185, 104, .13);
  --ambar-borda: rgba(230, 185, 104, .35);
  --vermelho: #f27878;
  --vermelho-fundo: rgba(242, 120, 120, .13);
  --vermelho-borda: rgba(242, 120, 120, .30);
  --barra: #090c14;
  --barra-linha: rgba(255, 255, 255, .07);
  --veu: rgba(4, 4, 5, .66);
  --realce: rgba(255, 255, 255, .035);
  --serie-4: #c98500;
  --grade-grafico: #1a2030;
  --eixo-grafico: #2b3446;
  --sombra-flutuante: 0 24px 70px rgba(0, 0, 0, .6);
}
/* as logos grafite (feitas para o claro) viram claras no escuro */
:root[data-tema="escuro"] .logo-tema { filter: invert(1); }

::selection { background: rgba(79, 125, 243, .22); color: var(--texto); }
:root[data-tema="escuro"] ::selection { background: rgba(79, 125, 243, .35); color: #fff; }
