/**
 * SALFOR DESIGN SYSTEM v1.0
 * Camada 1: TOKENS (Consolidado)
 *
 * Inclui:
 * - Tokens Salfor originais
 * - Compatibilidade salfy-* → salfor-* (ex-compat_tokens.css)
 * - Dark theme overrides (ex-base.css)
 * - Brand aliases para migração gradual
 */

/* ══ 1. TOKENS SALFOR (Canônicos) ════════════════════════════ */

:root {
  /* ── CORES DA MARCA (BRAND) ── */
  --salfor-primary-50: #F3F0FF;
  --salfor-primary-100: #E6DFFF;
  --salfor-primary-200: #CFC2FF;
  --salfor-primary-300: #A996FF;
  --salfor-primary-400: #826BFF;
  --salfor-primary-500: #5B3EFF;
  --salfor-primary-600: #482FDB;
  --salfor-primary-700: #3723A8;
  --salfor-primary-800: #281A78;
  --salfor-primary-900: #1A104D;

  /* ── ACENTO (ACCENT) ── */
  --salfor-accent-50: #EFFFF9;
  --salfor-accent-100: #D6FFF0;
  --salfor-accent-200: #A9FFE0;
  --salfor-accent-300: #6DFFD0;
  --salfor-accent-400: #2EF5BB;
  --salfor-accent-500: #00E5A8;
  --salfor-accent-600: #00B884;
  --salfor-accent-700: #008A64;
  --salfor-accent-800: #006348;
  --salfor-accent-900: #003D2D;

  /* ── SUPORTE (CYAN) ── */
  --salfor-cyan-500: #00C2FF;
  --salfor-cyan-600: #009BD1;

  /* ── STATUS ── */
  --salfor-success: #22C55E;
  --salfor-success-bg: #DCFCE7;
  --salfor-warning: #F59E0B;
  --salfor-warning-bg: #FEF3C7;
  --salfor-danger: #EF4444;
  --salfor-danger-bg: #FEE2E2;
  --salfor-info: #3B82F6;
  --salfor-info-bg: #DBEAFE;

  /* ── NEUTROS (NEUTRALS) ── */
  --salfor-white: #FFFFFF;
  --salfor-slate-50: #F8FAFC;
  --salfor-slate-100: #F1F5F9;
  --salfor-slate-200: #E2E8F0;
  --salfor-slate-300: #CBD5E1;
  --salfor-slate-400: #94A3B8;
  --salfor-slate-500: #64748B;
  --salfor-slate-600: #475569;
  --salfor-slate-700: #334155;
  --salfor-slate-800: #1E293B;
  --salfor-slate-900: #0F172A;

  /* ── FUNDOS (BACKGROUNDS) ── */
  --salfor-bg-main: #f5f5f5;
  --salfor-bg-soft: var(--salfor-slate-100);
  --salfor-bg-card: var(--salfor-white);
  --salfor-bg-sidebar: var(--salfor-white);
  --salfor-bg-dark: #0B1020;

  /* ── TEXTO (TEXT) ── */
  --salfor-text-main: var(--salfor-slate-900);
  --salfor-text-secondary: var(--salfor-slate-600);
  --salfor-text-muted: var(--salfor-slate-500);
  --salfor-text-inverse: var(--salfor-white);

  /* ── BORDAS (BORDER) ── */
  --salfor-border-soft: var(--salfor-slate-200);
  --salfor-border-strong: var(--salfor-slate-300);
  --salfor-border-width: 1px;

  /* ── TIPOGRAFIA ── */
  --salfor-font-family: 'Inter', 'Outfit', system-ui, -apple-system, sans-serif;
  --salfor-font-body: var(--salfor-font-family);

  --salfor-font-size-xs: 12px;
  --salfor-font-size-sm: 13px;
  --salfor-font-size-md: 14px;
  --salfor-font-size-lg: 16px;
  --salfor-font-size-xl: 20px;
  --salfor-font-size-2xl: 24px;
  --salfor-font-size-3xl: 28px;
  --salfor-font-size-4xl: 32px;

  --salfor-font-weight-regular: 400;
  --salfor-font-weight-medium: 500;
  --salfor-font-weight-semibold: 600;
  --salfor-font-weight-bold: 700;

  --salfor-line-height-tight: 1.15;
  --salfor-line-height-normal: 1.45;
  --salfor-line-height-relaxed: 1.6;

  /* ── ESPAÇAMENTO ── */
  --salfor-space-2: 2px;
  --salfor-space-4: 4px;
  --salfor-space-6: 6px;
  --salfor-space-8: 8px;
  --salfor-space-12: 12px;
  --salfor-space-16: 16px;
  --salfor-space-20: 20px;
  --salfor-space-24: 24px;
  --salfor-space-32: 32px;
  --salfor-space-40: 40px;
  --salfor-space-48: 48px;
  --salfor-space-64: 64px;

  /* ── RADIUS ── */
  --salfor-radius-sm: 8px;
  --salfor-radius-md: 12px;
  --salfor-radius-lg: 16px;
  --salfor-radius-xl: 20px;
  --salfor-radius-pill: 999px;

  /* ── SOMBRAS (SHADOWS) ── */
  --salfor-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.08);
  --salfor-shadow-sm: var(--salfor-shadow-soft);
  --salfor-shadow-card: 0 4px 12px rgba(0, 0, 0, 0.1);
  --salfor-shadow-premium: 0 8px 24px rgba(0, 0, 0, 0.15);
  --salfor-shadow-lg: var(--salfor-shadow-premium);

  /* ── TRANSIÇÕES ── */
  --salfor-transition-fast: 120ms ease;
  --salfor-transition-normal: 180ms ease;
  --salfor-transition-slow: 260ms ease;

  /* ── Z-INDEX ── */
  --salfor-z-sidebar: 1000;
  --salfor-z-modal: 1100;
  --salfor-z-tooltip: 1200;

  /* ── TOOLTIP ── */
  --salfor-tooltip-bg: var(--salfor-slate-900);
  --salfor-tooltip-text: var(--salfor-white);

  /* ── BRAND (Legacy Aliases) ── */
  --brand-primary: var(--salfor-primary-500);
  --brand-primary-soft: var(--salfor-primary-50);
  --brand-dark: var(--salfor-primary-700);
  --brand-gradient: linear-gradient(135deg, var(--salfor-primary-500) 0%, var(--salfor-primary-600) 100%);

  /* ── BG ALIASES ── */
  --bg-main: var(--salfor-bg-main);
  --bg-card: var(--salfor-bg-card);
  --bg-sidebar: var(--salfor-bg-sidebar);

  /* ── TEXT ALIASES ── */
  --text-main: var(--salfor-text-main);
  --text-muted: var(--salfor-text-muted);
  --text-secondary: var(--salfor-text-secondary);

  /* ── BORDER ALIASES ── */
  --border-color: var(--salfor-border-soft);

  /* ── RADIUS ALIASES ── */
  --border-radius: var(--salfor-radius-md);

  /* ── SHADOW ALIASES ── */
  --shadow-soft: var(--salfor-shadow-soft);
  --shadow-premium: var(--salfor-shadow-premium);

  /* ── TRANSITION ── */
  --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);

  /* ── STATUS ALIASES (KDS/Pedidos) ── */
  --color-pending: var(--salfor-warning);
  --color-preparing: var(--salfor-info);
  --color-ready: var(--salfor-success);
  --color-canceled: var(--salfor-danger);
  --color-danger: var(--salfor-danger);

  /* ── PAGE LAYOUT ── */
  --salfor-page-padding-x: 32px;
  --salfor-page-padding-y: 28px;
  --salfor-page-padding-x-mobile: 16px;
  --salfor-page-padding-y-mobile: 24px;
  --salfor-page-content-max: 1200px;
}

/* ══ 2. COMPATIBILIDADE Salfy → Salfor (ex-compat_tokens.css) ═══ */

:root {
  --salfy-primary: var(--salfor-primary-500);
  --salfy-primary-dark: var(--salfor-primary-600);
  --salfy-bg: var(--salfor-bg-main);
  --salfy-card-bg: var(--salfor-bg-card);
  --salfy-sidebar-bg: var(--salfor-bg-sidebar);
  --salfy-text: var(--salfor-text-main);
  --salfy-text-muted: var(--salfor-text-muted);
  --salfy-border: var(--salfor-border-soft);
  --salfy-success: var(--salfor-success);
  --salfy-warning: var(--salfor-warning);
  --salfy-danger: var(--salfor-danger);
  --salfy-info: var(--salfor-info);
  --salfy-shadow-sm: var(--salfor-shadow-soft);
  --salfy-shadow-lg: var(--salfor-shadow-premium);
  --salfy-shadow-premium: var(--salfor-shadow-premium);
  --salfy-radius-sm: var(--salfor-radius-sm);
  --salfy-radius-md: var(--salfor-radius-md);
}

/* ══ 3. DARK THEME (ex-base.css) ══════════════════════════════ */

[data-bs-theme="dark"] {
  --salfor-bg-main: #0f172a;
  --salfor-bg-soft: #1a1d21;
  --salfor-bg-card: #1a1d21;
  --salfor-bg-sidebar: #0b1120;  /* mantido escuro no dark theme */
  --salfor-bg-dark: #0B1020;

  --salfor-text-main: #f1f5f9;
  --salfor-text-secondary: #94a3b8;
  --salfor-text-muted: #94a3b8;
  --salfor-text-inverse: #0f172a;

  --salfor-border-soft: rgba(255, 255, 255, 0.08);
  --salfor-border-strong: rgba(255, 255, 255, 0.15);

  --salfor-shadow-soft: 0 4px 14px rgba(0, 0, 0, 0.2);
  --salfor-shadow-card: 0 8px 24px rgba(0, 0, 0, 0.3);
  --salfor-shadow-premium: 0 18px 45px rgba(0, 0, 0, 0.4);

  --salfor-slate-50: #1a1d21;
  --salfor-slate-100: #1e293b;
  --salfor-white: #1a1d21;

  /* Compat */
  --bg-main: #0f172a;
  --bg-card: #1a1d21;
  --bg-sidebar: #0b1120;
  --text-main: #f1f5f9;
  --text-muted: #94a3b8;
  --border-color: rgba(255, 255, 255, 0.08);

  /* Toasts */
  --salfor-toast-bg: #1e293b;
  --salfor-toast-border: rgba(255, 255, 255, 0.1);
}

/* ══ 4. PRIMARY BRAND (Dark) ══════════════════════════════════ */

[data-bs-theme="dark"] .salfor-btn-primary {
  background: var(--salfor-primary-600);
}
[data-bs-theme="dark"] .salfor-btn-primary:hover {
  background: var(--salfor-primary-700);
}
