/* =====================================================================
   Crisma+ — tokens de design (Fase 4, DS-01/DS-02)
   ---------------------------------------------------------------------
   Fonte única de cores, tipografia, espaçamento, raio e sombra. Os
   valores da marca vêm da landing page (crisma+/static/index.html):
   azul-marinho #1B2B48, amarelo #F1C40F, fonte Inter.

   Contraste (WCAG 2.1) conferido sobre branco #FFFFFF:
     --color-text     #1F2937  14,7:1  (AAA)
     --color-muted    #4B5563   7,6:1  (AAA)
     --color-primary  #1B2B48  14,4:1  (AAA)
     --color-success  #1E7B34   5,4:1  (AA)
     --color-warning  #A15C07   5,0:1  (AA)   texto; fundo usa -soft
     --color-danger   #C62828   5,6:1  (AA)
     --color-info     #1D4ED8   6,7:1  (AA)
   Amarelo (#F1C40F) só como FUNDO com texto azul-marinho (9,0:1) —
   nunca como cor de texto sobre branco (1,6:1).
   ===================================================================== */

/* Inter (variável, 100–900), hospedada no próprio servidor: sem Google
   Fonts — mais rápido e não envia o IP de quem usa o sistema a terceiros.
   Licença: assets/fonts/LICENSE-inter.txt (SIL OFL 1.1). */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url("/assets/fonts/inter-latin-wght-normal.woff2") format("woff2-variations");
  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: "Inter";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url("/assets/fonts/inter-latin-ext-wght-normal.woff2") format("woff2-variations");
  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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  /* ---------- Cores da marca ---------- */
  --color-primary: #1B2B48;        /* navegação, títulos, botão principal */
  --color-primary-hover: #12203A;
  --color-primary-soft: #E8ECF3;   /* fundo de destaque leve */
  --color-accent: #F1C40F;         /* ação de destaque (texto sempre --color-on-accent) */
  --color-accent-hover: #D9AE06;
  --color-on-accent: #1B2B48;

  /* ---------- Superfícies e texto ---------- */
  --color-bg: #F5F7FA;             /* fundo geral */
  --color-surface: #FFFFFF;        /* cards e painéis */
  --color-surface-2: #F8FAFC;      /* cabeçalho de tabela, áreas secundárias */
  --color-border: #E2E8F0;
  --color-border-strong: #CBD5E1;
  --color-text: #1F2937;
  --color-muted: #4B5563;
  --color-on-primary: #FFFFFF;

  /* ---------- Cores com significado (DS-06) ---------- */
  --color-success: #1E7B34;        /* presente, regular, concluído */
  --color-success-soft: #E7F5EA;
  --color-warning: #A15C07;        /* atenção */
  --color-warning-soft: #FEF3C7;
  --color-danger: #C62828;         /* falta, erro, exclusão */
  --color-danger-hover: #A61F1F;
  --color-danger-soft: #FDECEA;
  --color-info: #1D4ED8;           /* informação neutra */
  --color-info-soft: #E0EAFF;

  /* Foco visível (DS-12): azul sobre fundos claros, amarelo sobre o
     azul-marinho (menu e cabeçalho). */
  --color-focus: #2563EB;
  --color-focus-on-dark: #F1C40F;

  /* ---------- Tipografia ---------- */
  --font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --text-xs: 12px;
  --text-sm: 14px;
  --text-base: 16px;
  --text-lg: 18px;
  --text-xl: 20px;
  --text-2xl: 24px;
  --text-3xl: 32px;
  --leading: 1.5;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  /* ---------- Espaçamento (4, 8, 12, 16, 24, 32, 48) ---------- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;

  /* ---------- Raio ---------- */
  --radius-sm: 6px;
  --radius-field: 8px;             /* campos e botões */
  --radius-card: 12px;             /* cards e painéis */
  --radius-pill: 999px;

  /* ---------- Sombra (3 níveis) ---------- */
  --shadow-1: 0 1px 2px rgba(16, 24, 40, 0.06), 0 1px 3px rgba(16, 24, 40, 0.06);
  --shadow-2: 0 4px 12px rgba(16, 24, 40, 0.08);
  --shadow-3: 0 16px 40px rgba(16, 24, 40, 0.18);

  /* ---------- Tamanhos ---------- */
  --touch: 44px;                   /* área de toque mínima */
  --header-h: 64px;
  --sidebar-w: 248px;
  --content-max: 1200px;

  /* ---------- Compatibilidade ----------
     Nomes antigos ainda usados por estilos inline em algumas views
     (certificados). Apontam para os tokens novos. */
  --azul: var(--color-primary);
  --amarelo: var(--color-accent);
  --vermelho: var(--color-danger);
  --branco: var(--color-surface);
  --cinza: var(--color-muted);
}
