/**
 * SEO CMS - Design Tokens
 * Sistema de Design: NOIR EDITORIAL
 * Version: 4.0
 * 
 * Este arquivo contém todas as variáveis CSS centralizadas.
 * Deve ser importado PRIMEIRO em qualquer arquivo CSS.
 * 
 * Uso: @import url('tokens.css');
 *      ou <link rel="stylesheet" href="/css/tokens.css">
 */

:root {
    /* ============================================
       COLOR PALETTE - NOIR EDITORIAL
       ============================================ */
    
    /* Background Layers (do mais escuro ao mais claro) */
    --color-bg-deep: #08090a;        /* Fundo principal */
    --color-bg-surface: #0f1012;     /* Cards, containers */
    --color-bg-elevated: #161719;    /* Elementos elevados */
    --color-bg-hover: #1c1d20;       /* Hover states */
    --color-bg-active: #222326;      /* Active/pressed states */
    --color-bg-overlay: rgba(8, 9, 10, 0.9);
    
    /* Glass/Blur Effects */
    --color-glass-bg: rgba(22, 23, 25, 0.85);
    --color-glass-border: rgba(255, 255, 255, 0.06);
    --color-glass-highlight: rgba(255, 255, 255, 0.03);
    
    /* Text Hierarchy */
    --color-text-primary: #fafafa;   /* Títulos, texto principal */
    --color-text-secondary: #a1a1aa; /* Texto de suporte */
    --color-text-muted: #71717a;     /* Labels, hints */
    --color-text-disabled: #52525b;  /* Texto desabilitado */
    --color-text-inverse: #08090a;   /* Texto em fundo claro */
    
    /* Brand/Accent - Warm Amber */
    --color-accent-primary: #f59e0b;
    --color-accent-secondary: #fbbf24;
    --color-accent-hover: #d97706;
    --color-accent-subtle: rgba(245, 158, 11, 0.08);
    --color-accent-light: rgba(245, 158, 11, 0.15);
    --color-accent-glow: rgba(245, 158, 11, 0.25);
    
    /* Semantic/Status Colors */
    --color-success: #22c55e;
    --color-success-light: rgba(34, 197, 94, 0.15);
    --color-success-subtle: rgba(34, 197, 94, 0.08);
    
    --color-warning: #f59e0b;
    --color-warning-light: rgba(245, 158, 11, 0.15);
    --color-warning-subtle: rgba(245, 158, 11, 0.08);
    
    --color-error: #ef4444;
    --color-error-light: rgba(239, 68, 68, 0.15);
    --color-error-subtle: rgba(239, 68, 68, 0.08);
    
    --color-info: #3b82f6;
    --color-info-light: rgba(59, 130, 246, 0.15);
    --color-info-subtle: rgba(59, 130, 246, 0.08);
    
    /* Borders */
    --color-border-subtle: rgba(255, 255, 255, 0.06);
    --color-border-default: rgba(255, 255, 255, 0.1);
    --color-border-strong: rgba(255, 255, 255, 0.15);
    --color-border-focus: var(--color-accent-primary);
    
    /* ============================================
       TYPOGRAPHY
       ============================================ */
    
    /* Font Families */
    --font-display: 'Syne', system-ui, sans-serif;
    --font-body: 'Onest', system-ui, sans-serif;
    --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
    
    /* Font Sizes (fluid typography) */
    --text-xs: 0.75rem;     /* 12px */
    --text-sm: 0.8125rem;   /* 13px */
    --text-base: 0.875rem;  /* 14px */
    --text-md: 1rem;        /* 16px */
    --text-lg: 1.125rem;    /* 18px */
    --text-xl: 1.25rem;     /* 20px */
    --text-2xl: 1.5rem;     /* 24px */
    --text-3xl: 1.875rem;   /* 30px */
    --text-4xl: 2.25rem;    /* 36px */
    --text-5xl: 3rem;       /* 48px */
    
    /* Font Weights */
    --font-normal: 400;
    --font-medium: 500;
    --font-semibold: 600;
    --font-bold: 700;
    --font-extrabold: 800;
    
    /* Line Heights */
    --leading-none: 1;
    --leading-tight: 1.2;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --leading-loose: 2;
    
    /* Letter Spacing */
    --tracking-tighter: -0.03em;
    --tracking-tight: -0.02em;
    --tracking-normal: 0;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;
    
    /* ============================================
       SPACING SCALE
       ============================================ */
    --space-0: 0;
    --space-1: 0.25rem;   /* 4px */
    --space-2: 0.5rem;    /* 8px */
    --space-3: 0.75rem;   /* 12px */
    --space-4: 1rem;      /* 16px */
    --space-5: 1.25rem;   /* 20px */
    --space-6: 1.5rem;    /* 24px */
    --space-8: 2rem;      /* 32px */
    --space-10: 2.5rem;   /* 40px */
    --space-12: 3rem;     /* 48px */
    --space-16: 4rem;     /* 64px */
    --space-20: 5rem;     /* 80px */
    --space-24: 6rem;     /* 96px */
    
    /* ============================================
       LAYOUT
       ============================================ */
    
    /* Container */
    --container-sm: 640px;
    --container-md: 768px;
    --container-lg: 1024px;
    --container-xl: 1200px;
    --container-2xl: 1400px;
    
    /* Layout Components */
    --sidebar-width: 260px;
    --sidebar-collapsed: 72px;
    --header-height: 64px;
    --footer-height: 60px;
    
    /* Container Padding */
    --container-padding: 24px;
    --container-padding-mobile: 16px;
    
    /* ============================================
       BORDER RADIUS
       ============================================ */
    --radius-none: 0;
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;
    --radius-2xl: 20px;
    --radius-3xl: 24px;
    --radius-full: 9999px;
    
    /* ============================================
       SHADOWS
       ============================================ */
    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.25);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.3);
    --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.4);
    --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.5);
    --shadow-2xl: 0 24px 64px rgba(0, 0, 0, 0.6);
    
    /* Glow Shadows */
    --shadow-glow-sm: 0 0 10px var(--color-accent-glow);
    --shadow-glow-md: 0 0 20px var(--color-accent-glow);
    --shadow-glow-lg: 0 0 30px var(--color-accent-glow);
    
    /* ============================================
       TRANSITIONS & ANIMATIONS
       ============================================ */
    
    /* Durations */
    --duration-fast: 150ms;
    --duration-normal: 200ms;
    --duration-slow: 300ms;
    --duration-slower: 500ms;
    
    /* Easing Functions */
    --ease-linear: linear;
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
    --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    
    /* ============================================
       Z-INDEX SCALE
       ============================================ */
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-fixed: 300;
    --z-modal-backdrop: 400;
    --z-modal: 500;
    --z-popover: 600;
    --z-tooltip: 700;
    --z-toast: 800;
    --z-max: 9999;
    
    /* ============================================
       BREAKPOINTS (for reference in JS)
       ============================================ */
    --breakpoint-sm: 640px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 1024px;
    --breakpoint-xl: 1280px;
    --breakpoint-2xl: 1536px;
}

/* ============================================
   DARK MODE ADJUSTMENTS (if needed)
   ============================================ */
@media (prefers-color-scheme: dark) {
    :root {
        /* Already dark by default */
    }
}

/* ============================================
   REDUCED MOTION
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    :root {
        --duration-fast: 0ms;
        --duration-normal: 0ms;
        --duration-slow: 0ms;
        --duration-slower: 0ms;
    }
}

/* ============================================
   LEGACY VARIABLE ALIASES
   For backward compatibility with existing code
   ============================================ */
:root {
    /* Background aliases */
    --bg-deep: var(--color-bg-deep);
    --bg-surface: var(--color-bg-surface);
    --bg-elevated: var(--color-bg-elevated);
    --bg-hover: var(--color-bg-hover);
    --bg-active: var(--color-bg-active);
    
    /* Glass aliases */
    --glass-bg: var(--color-glass-bg);
    --glass-border: var(--color-glass-border);
    --glass-highlight: var(--color-glass-highlight);
    
    /* Text aliases */
    --text-primary: var(--color-text-primary);
    --text-secondary: var(--color-text-secondary);
    --text-muted: var(--color-text-muted);
    --text-disabled: var(--color-text-disabled);
    
    /* Accent aliases */
    --accent-primary: var(--color-accent-primary);
    --accent-secondary: var(--color-accent-secondary);
    --accent-glow: var(--color-accent-light);
    --accent-subtle: var(--color-accent-subtle);
    
    /* Status aliases */
    --status-success: var(--color-success);
    --status-warning: var(--color-warning);
    --status-error: var(--color-error);
    --status-info: var(--color-info);
    
    /* Border aliases */
    --border-subtle: var(--color-border-subtle);
    --border-default: var(--color-border-default);
    --border-strong: var(--color-border-strong);
    
    /* ============================================
       EXTENDED COLOR PALETTE
       Additional accent colors for UI components
       ============================================ */
    
    /* Blue */
    --accent-blue: #3b82f6;
    --accent-blue-soft: rgba(59, 130, 246, 0.12);
    --accent-blue-light: rgba(59, 130, 246, 0.20);
    
    /* Amber/Yellow */
    --accent-amber: #f59e0b;
    --accent-amber-soft: rgba(245, 158, 11, 0.12);
    --accent-amber-light: rgba(245, 158, 11, 0.20);
    
    /* Green */
    --accent-green: #22c55e;
    --accent-green-soft: rgba(34, 197, 94, 0.12);
    --accent-green-light: rgba(34, 197, 94, 0.20);
    
    /* Purple */
    --accent-purple: #8b5cf6;
    --accent-purple-soft: rgba(139, 92, 246, 0.12);
    --accent-purple-light: rgba(139, 92, 246, 0.20);
    
    /* Red */
    --accent-red: #ef4444;
    --accent-red-soft: rgba(239, 68, 68, 0.12);
    --accent-red-light: rgba(239, 68, 68, 0.20);
    
    /* Cyan */
    --accent-cyan: #06b6d4;
    --accent-cyan-soft: rgba(6, 182, 212, 0.12);
    --accent-cyan-light: rgba(6, 182, 212, 0.20);
    
    /* ============================================
       LEGACY ALIASES FOR app.css COMPATIBILITY
       ============================================ */
    
    /* Background aliases (app.css compatibility) */
    --bg-secondary: var(--color-bg-surface);
    --bg-card: var(--color-bg-elevated);
    --bg-tertiary: var(--color-bg-hover);
    
    /* Border aliases (app.css compatibility) */
    --border-medium: var(--color-border-default);
    --border-light: var(--color-border-subtle);
    
    /* Shadow aliases (app.css compatibility) */
    --shadow-glow-blue: 0 0 20px rgba(59, 130, 246, 0.3);
    --shadow-glow-green: 0 0 20px rgba(34, 197, 94, 0.3);
    --shadow-glow-amber: 0 0 20px rgba(245, 158, 11, 0.3);
    
    /* Transition aliases (app.css compatibility) */
    --transition-fast: 150ms ease;
    --transition-base: 200ms ease;
    --transition-slow: 300ms ease;
    --transition-spring: 300ms cubic-bezier(0.34, 1.56, 0.64, 1);
    
    /* Additional background aliases */
    --bg-primary: var(--color-bg-deep);
    
    /* Additional spacing (app.css compatibility) */
    --space-7: 1.75rem;   /* 28px */
    --space-9: 2.25rem;   /* 36px */
}
