/**
 * Design Tokens / CSS Variables
 * All customizable values in one place for easy theming
 */

:root {
    /* ===== Colors ===== */
    /* Background */
    --color-bg-primary: #0a0e14;
    --color-bg-secondary: #111820;
    --color-bg-tertiary: #1a2332;
    
    /* Accent Colors */
    --color-accent-green: #00ff9d;
    --color-accent-cyan: #00d4ff;
    --color-accent-orange: #ff6b35;
    --color-accent-purple: #b362ff;
    --color-accent-yellow: #ffd93d;
    --color-accent-blue: #3b82f6;

    /* Tech tag colours (used in project cards) */
    --color-tech-language: var(--color-accent-blue);
    --color-tech-framework: var(--color-accent-purple);
    --color-tech-data: var(--color-accent-yellow);
    --color-tech-devops: var(--color-accent-green);
    --color-tech-tool: var(--color-accent-green);
    --color-tech-database: var(--color-accent-orange);
    --color-tech-service: var(--color-accent-yellow);
    --color-tech-domain: var(--color-accent-cyan);
    --color-tech-other: var(--color-accent-cyan);
    
    /* Text */
    --color-text-primary: #e6edf3;
    --color-text-secondary: #8b949e;
    --color-text-muted: #484f58;
    
    /* Borders */
    --color-border: #21262d;
    
    /* Glows */
    --glow-green: rgba(0, 255, 157, 0.15);
    --glow-cyan: rgba(0, 212, 255, 0.15);
    
    /* ===== Typography ===== */
    --font-primary: 'Space Grotesk', -apple-system, sans-serif;
    --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
    --font-mono-alt: 'IBM Plex Mono', monospace;
    
    /* Font Sizes */
    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 0.9375rem;
    --text-lg: 1.05rem;
    --text-xl: 1.18rem;
    --text-2xl: 1.4rem;
    --text-3xl: 1.8rem;
    --text-4xl: 2.2rem;
    --text-5xl: 3.1rem;
    
    /* Font Weights */
    --font-normal: 400;
    --font-medium: 500;
    --font-semibold: 600;
    --font-bold: 700;
    
    /* Line Heights */
    --leading-tight: 1.2;
    --leading-normal: 1.6;
    --leading-relaxed: 1.8;
    
    /* ===== Spacing ===== */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.6875rem;
    --space-4: 0.875rem;
    --space-5: 1.125rem;
    --space-6: 1.375rem;
    --space-8: 1.75rem;
    --space-10: 2.25rem;
    --space-12: 2.75rem;
    --space-16: 3.5rem;
    --space-20: 4.5rem;
    --space-24: 5.5rem;
    
    /* ===== Layout ===== */
    --container-max: 1240px;
    --container-padding: 1.5rem;
    --nav-height: 64px;
    
    /* ===== Borders ===== */
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;
    --radius-full: 50px;
    
    /* ===== Shadows ===== */
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.2);
    --shadow-md: 0 10px 40px rgba(0, 0, 0, 0.3);
    --shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.5);
    --shadow-glow: 0 0 40px var(--glow-green);
    
    /* ===== Transitions ===== */
    --transition-fast: 150ms ease;
    --transition-base: 300ms ease;
    --transition-slow: 500ms ease;
    
    /* ===== Z-Index Scale ===== */
    --z-base: 1;
    --z-dropdown: 100;
    --z-sticky: 500;
    --z-fixed: 1000;
    --z-modal: 2000;
}
