/* Tema dos módulos do Link Finance — as MESMAS medidas do sistema (link-finance/app/globals.css),
   nas cores da logo nova (VPS - Link Finance/Design/identidade.md).
   Cada módulo liga as próprias variáveis a estas no seu ajustes.css; mudar uma cor aqui muda em todos.
   Carregado por último no <head> do módulo, para valer sobre o estilo original. */

/* Fontes da identidade (logo nova, 28/10/2026): Fraunces nos títulos, IBM Plex Sans no texto, IBM Plex Mono em números. Arquivos em fontes/ (a CSP só aceita o próprio domínio). */
@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 500 700; font-display: swap; src: url("fontes/Fraunces-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 500 700; font-display: swap; src: url("fontes/Fraunces-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: "IBM Plex Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("fontes/IBMPlexMono-latin-ext-400.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("fontes/IBMPlexMono-latin-400.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: "IBM Plex Mono"; font-style: normal; font-weight: 500; font-display: swap; src: url("fontes/IBMPlexMono-latin-ext-500.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Mono"; font-style: normal; font-weight: 500; font-display: swap; src: url("fontes/IBMPlexMono-latin-500.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: "IBM Plex Sans"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("fontes/IBMPlexSans-latin-ext.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("fontes/IBMPlexSans-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 {
  /* superfícies e texto */
  --sis-fundo: #F1F4F8;
  --sis-cartao: #FFFFFF;
  --sis-rebaixado: #E8EDF4;         /* "muted": faixas, cabeçalho de tabela, campos desligados */
  --sis-texto: #0E2233;
  --sis-texto-2: #24384A;
  --sis-texto-suave: #56687A;
  --sis-borda: rgba(11, 37, 64, 0.14);
  --sis-borda-forte: #C2CEDC;         /* contorno de campo */

  /* marca e semântica financeira */
  --sis-primaria: #1B4F91;
  --sis-primaria-forte: #163F74;        /* texto verde sobre fundo claro, hover de botão */
  --sis-sobre-primaria: #FFFFFF;
  --sis-realce: #E3EBF5;             /* "accent": fundo verde bem claro (item ativo, hover) */
  --sis-sobre-realce: #153046;
  --sis-positivo: #2E7D5B;
  --sis-positivo-suave: #E2F1EA;
  --sis-negativo: #C1543A;
  --sis-negativo-suave: #F7E4DF;
  --sis-aviso: #B8863E;
  --sis-aviso-suave: #F5EBDA;
  --sis-info: #1B4F91;
  --sis-info-suave: #E3EBF5;
  --sis-marca-de: #24548A;
  --sis-marca-ate: #D6A85C;

  /* forma */
  --sis-raio: 0.625rem;                                /* botões, campos */
  --sis-raio-cartao: 0.875rem;                         /* cartões e painéis (rounded-xl) */
  --sis-sombra-1: 0 1px 2px oklch(0.2 0.02 260 / 0.05);
  --sis-sombra-2: 0 1px 2px oklch(0.2 0.02 260 / 0.04), 0 10px 28px -14px oklch(0.2 0.02 260 / 0.14);
  --sis-sombra-3: 0 2px 6px oklch(0.2 0.02 260 / 0.06), 0 24px 48px -20px oklch(0.2 0.02 260 / 0.22);
  --sis-anel: 0 0 0 3px rgba(27, 79, 145, 0.28);   /* foco */
  --sis-fonte: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --sis-fonte-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --sis-transicao: 180ms cubic-bezier(0.2, 0.8, 0.2, 1);
  color-scheme: light;
}

/* tema escuro do sistema: o embutir.js põe data-tema="escuro" no <html> quando o sistema está no escuro.
   .lf-sempre-escuro é o painel da marca na tela de entrada dos sistemas em subdomínio, escuro nos dois temas. */
html[data-tema="escuro"], .lf-sempre-escuro {
  --sis-fundo: #0B1B29;
  --sis-cartao: #153046;
  --sis-rebaixado: #1D3E56;
  --sis-texto: #F2F3ED;
  --sis-texto-2: #DCE2E8;
  --sis-texto-suave: #A7B5C3;
  --sis-borda: rgba(241, 244, 248, 0.14);
  --sis-borda-forte: rgba(241, 244, 248, 0.2);
  --sis-primaria: #6FB3E6;
  --sis-primaria-forte: #A3CFF0;
  --sis-sobre-primaria: #0E2233;
  --sis-realce: #1D3E56;
  --sis-sobre-realce: #D3E6F7;
  --sis-positivo: #5CC59A;
  --sis-positivo-suave: #163D33;
  --sis-negativo: #E7826B;
  --sis-negativo-suave: #3D2420;
  --sis-aviso: #D6A85C;
  --sis-aviso-suave: #3A3022;
  --sis-info: #6FB3E6;
  --sis-info-suave: #173A57;
  --sis-sombra-1: 0 1px 2px oklch(0 0 0 / 0.3);
  --sis-sombra-2: 0 1px 2px oklch(0 0 0 / 0.3), 0 10px 28px -14px oklch(0 0 0 / 0.5);
  --sis-sombra-3: 0 2px 6px oklch(0 0 0 / 0.35), 0 24px 48px -20px oklch(0 0 0 / 0.6);
  color-scheme: dark;
}

/* base comum: fundo, letra, seleção, foco e barra de rolagem iguais aos do sistema */
html, body {
  background: var(--sis-fundo);
  color: var(--sis-texto);
  font-family: var(--sis-fonte);
  font-feature-settings: "cv11", "ss01";
  -webkit-font-smoothing: antialiased;
}
button, input, select, textarea { font-family: inherit; }
code, kbd, pre, samp { font-family: var(--sis-fonte-mono); }
::selection { background: color-mix(in oklch, var(--sis-primaria) 25%, transparent); }
:focus-visible { outline: none; box-shadow: var(--sis-anel); }
* { scrollbar-width: thin; scrollbar-color: color-mix(in oklch, var(--sis-texto) 18%, transparent) transparent; }

/* dentro do sistema (classe posta pelo embutir.js) o módulo não repete a marca nem o próprio fundo de página */
html.lf-embutido, html.lf-embutido body { background: transparent; }

@media (prefers-reduced-motion: reduce) { * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; } }

/* títulos na fonte da marca, como no sistema */
h1, h2 { font-family: "Fraunces", Georgia, serif; letter-spacing: -0.01em; }
