/*
 * trust8 — Design Tokens
 * FONTE CANÔNICA de todas as variáveis de tema.
 * Ordem de carregamento: 1/8
 * Zero valores hardcoded fora deste arquivo.
 */

:root {
  /* ─── Cores primárias ──────────────────────────────────────────────────── */
  --color-primary-50:  #eff6ff;
  --color-primary-100: #dbeafe;
  --color-primary-200: #bfdbfe;
  --color-primary-300: #93c5fd;
  --color-primary-400: #60a5fa;
  --color-primary-500: #3b82f6;
  --color-primary-600: #2563eb;
  --color-primary-700: #1d4ed8;
  --color-primary-800: #1e40af;
  --color-primary-900: #1e3a8a;

  /* ─── Sucesso ───────────────────────────────────────────────────────────── */
  --color-success-50:  #f0fdf4;
  --color-success-100: #dcfce7;
  --color-success-500: #22c55e;
  --color-success-600: #16a34a;
  --color-success-700: #15803d;

  /* ─── Perigo ────────────────────────────────────────────────────────────── */
  --color-danger-50:  #fef2f2;
  --color-danger-100: #fee2e2;
  --color-danger-500: #ef4444;
  --color-danger-600: #dc2626;
  --color-danger-700: #b91c1c;

  /* ─── Alerta ────────────────────────────────────────────────────────────── */
  --color-warning-50:  #fffbeb;
  --color-warning-100: #fef3c7;
  --color-warning-500: #f59e0b;
  --color-warning-600: #d97706;
  --color-warning-700: #b45309;

  /* ─── Info ──────────────────────────────────────────────────────────────── */
  --color-info-50:  #ecfeff;
  --color-info-500: #06b6d4;
  --color-info-600: #0891b2;

  /* ─── Jurídico (especialidade) ─────────────────────────────────────────── */
  --color-legal-50:  #f8fafc;
  --color-legal-500: #1e40af;
  --color-legal-600: #1e3a8a;

  /* ─── Grays (Slate) ─────────────────────────────────────────────────────── */
  --color-gray-50:  #f8fafc;
  --color-gray-100: #f1f5f9;
  --color-gray-200: #e2e8f0;
  --color-gray-300: #cbd5e1;
  --color-gray-400: #94a3b8;
  --color-gray-500: #64748b;
  --color-gray-600: #475569;
  --color-gray-700: #334155;
  --color-gray-800: #1e293b;
  --color-gray-900: #0f172a;
  --color-gray-950: #020617;

  /* ─── Semânticos (Light) ────────────────────────────────────────────────── */
  --bg-page:        var(--color-gray-50);
  --bg-card:        #ffffff;
  --bg-sidebar:     #ffffff;
  --bg-header:      #ffffff;
  --bg-hover:       var(--color-gray-50);
  --bg-subtle:      var(--color-gray-100);
  --bg-muted:       var(--color-gray-200);

  --text-primary:   var(--color-gray-900);
  --text-secondary: var(--color-gray-700);
  --text-muted:     var(--color-gray-500);
  --text-label:     var(--color-gray-600);
  --text-disabled:  var(--color-gray-400);
  --text-inverse:   #ffffff;

  --border-default: var(--color-gray-200);
  --border-input:   var(--color-gray-300);
  --border-focus:   var(--color-primary-500);

  /* ─── Tipografia ────────────────────────────────────────────────────────── */
  --font-family:     'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-mono:       'JetBrains Mono', 'Fira Code', Consolas, monospace;
  --font-size-xs:    0.75rem;
  --font-size-sm:    0.875rem;
  --font-size-base:  0.9375rem;
  --font-size-lg:    1.125rem;
  --font-size-xl:    1.25rem;
  --font-size-2xl:   1.5rem;
  --font-size-3xl:   1.875rem;
  --line-height:     1.6;

  /* ─── Espaçamento ───────────────────────────────────────────────────────── */
  --spacing-1:  0.25rem;
  --spacing-2:  0.5rem;
  --spacing-3:  0.75rem;
  --spacing-4:  1rem;
  --spacing-5:  1.25rem;
  --spacing-6:  1.5rem;
  --spacing-8:  2rem;
  --spacing-10: 2.5rem;
  --spacing-12: 3rem;

  /* ─── Bordas / Raios ────────────────────────────────────────────────────── */
  --radius-sm:  0.25rem;
  --radius-md:  0.375rem;
  --radius-lg:  0.5rem;
  --radius-xl:  0.75rem;
  --radius-2xl: 1rem;
  --radius-full: 9999px;

  /* ─── Sombras ───────────────────────────────────────────────────────────── */
  --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.04);
  --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.08), 0 1px 2px -1px rgb(0 0 0 / 0.06);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.08), 0 2px 4px -2px rgb(0 0 0 / 0.06);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.08), 0 4px 6px -4px rgb(0 0 0 / 0.05);
  --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.08), 0 8px 10px -6px rgb(0 0 0 / 0.05);

  /* ─── Transições ────────────────────────────────────────────────────────── */
  --transition-fast:   150ms ease;
  --transition-normal: 200ms ease;
  --transition-slow:   300ms ease;

  /* ─── Layout ────────────────────────────────────────────────────────────── */
  --sidebar-width:      260px;
  --sidebar-collapsed:  72px;
  --header-height:      64px;
  --content-max-width:  1400px;
}

/* ─── Dark Mode ─────────────────────────────────────────────────────────────── */
.dark {
  --bg-page:        #0f172a;
  --bg-card:        #1e293b;
  --bg-sidebar:     #1e293b;
  --bg-header:      #1e293b;
  --bg-hover:       #334155;
  --bg-subtle:      #1e293b;
  --bg-muted:       #334155;

  --text-primary:   #f1f5f9;
  --text-secondary: #cbd5e1;
  --text-muted:     #94a3b8;
  --text-label:     #94a3b8;
  --text-disabled:  #475569;
  --text-inverse:   #0f172a;

  --border-default: #334155;
  --border-input:   #475569;
  --border-focus:   var(--color-primary-400);

  --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.3);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.3);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.3);
}
