/* =============================================================================
 * SBP Admin - Design System (tokens)
 * Camada 1 de 3: tokens reutilizáveis. Não contém layout nem componentes.
 * Marca: cor oficial SBP #0d024c (indigo), formalizada em escala.
 * ============================================================================= */

:root {
  /* ---- Marca / cor primária (indigo SBP - #0d024c) ---- */
  --c-brand-50:  #f3f2fb;
  --c-brand-100: #e1dff7;
  --c-brand-200: #c0baed;
  --c-brand-300: #9088e0;
  --c-brand-400: #5e4fd0;
  --c-brand-500: #3829b4;   /* primária - botões, links */
  --c-brand-600: #261891;   /* hover */
  --c-brand-700: #0d024c;   /* cor SBP - sidebar */
  --c-brand-800: #09013a;
  --c-brand-900: #060026;

  /* ---- Neutros (texto, bordas, superfícies) ---- */
  --c-neutral-0:   #ffffff;
  --c-neutral-50:  #f6f8fb;
  --c-neutral-100: #eef1f6;
  --c-neutral-200: #e2e7ef;
  --c-neutral-300: #cdd5e1;
  --c-neutral-400: #9aa5b6;
  --c-neutral-500: #6b7480;
  --c-neutral-600: #4b5563;
  --c-neutral-700: #3a4250;
  --c-neutral-800: #232a36;
  --c-neutral-900: #141a23;

  /* ---- Semânticos ---- */
  --c-success-bg: #e8f5e9;  --c-success: #2e7d32;  --c-success-strong: #1b5e20;
  --c-warning-bg: #fff6e5;  --c-warning: #b8860b;  --c-warning-strong: #8a6100;
  --c-danger-bg:  #fdeaea;  --c-danger:  #c62828;  --c-danger-strong:  #8e1c1c;
  --c-info-bg:    #eeedfc;  --c-info:    #3829b4;  --c-info-strong:    #0d024c;

  /* ---- Papéis semânticos (apontam para a escala) ---- */
  --bg-app:        var(--c-neutral-50);
  --bg-surface:    var(--c-neutral-0);
  --bg-subtle:     var(--c-neutral-100);
  --border:        var(--c-neutral-200);
  --border-strong: var(--c-neutral-300);
  --text:          var(--c-neutral-800);
  /* #5a6473: texto secundário com contraste AA (>=4.5:1) inclusive sobre --bg-subtle
     (cabeçalhos de tabela, badges neutros, rodapés). O antigo --c-neutral-500 (#6b7480)
     falhava AA sobre o cinza claro. */
  --text-muted:    #5a6473;
  --text-on-brand: var(--c-neutral-0);
  --primary:       var(--c-brand-500);
  --primary-hover: var(--c-brand-600);

  /* ---- Tipografia ---- */
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, "Cascadia Code", Consolas, monospace;
  --fs-xs:   0.75rem;   /* 12 */
  --fs-sm:   0.8125rem; /* 13 */
  --fs-base: 0.875rem;  /* 14 */
  --fs-md:   1rem;      /* 16 */
  --fs-lg:   1.125rem;  /* 18 */
  --fs-xl:   1.375rem;  /* 22 */
  --fs-2xl:  1.75rem;   /* 28 */
  --fs-3xl:  2.25rem;   /* 36 */
  --fw-normal: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --lh-tight: 1.2;
  --lh-normal: 1.5;

  /* ---- Espaçamento (base 4px) ---- */
  --sp-1: 4px;   --sp-2: 8px;   --sp-3: 12px;  --sp-4: 16px;
  --sp-5: 20px;  --sp-6: 24px;  --sp-8: 32px;  --sp-10: 40px;
  --sp-12: 48px; --sp-16: 64px;

  /* ---- Bordas / raios ---- */
  --radius-sm: 6px;
  --radius:    10px;
  --radius-lg: 14px;
  --radius-pill: 999px;

  /* ---- Sombras (elevação) ---- */
  --shadow-xs: 0 1px 2px rgba(13, 2, 76, 0.07);
  --shadow-sm: 0 1px 3px rgba(13, 2, 76, 0.12), 0 1px 2px rgba(13, 2, 76, 0.07);
  --shadow-md: 0 4px 12px rgba(13, 2, 76, 0.12);
  --shadow-lg: 0 12px 32px rgba(13, 2, 76, 0.16);

  /* ---- Layout ---- */
  --sidebar-w: 264px;
  --sidebar-w-collapsed: 72px;
  --header-h: 64px;
  --content-max: 1280px;

  /* ---- Outros ---- */
  --z-sidebar: 30;
  --z-header: 20;
  --z-modal: 1000;
  --transition: 0.16s ease;
}
