/* =====================================================
   PixelCraft CSS Variables
   ===================================================== */

:root {
  /* Colors - Dark Theme with Neon Accents */
  --color-bg-primary: #0a0a0a;
  --color-bg-secondary: #1a1a1a;
  --color-bg-card: #252525;
  --color-bg-hover: #2f2f2f;
  
  /* Neon Accents */
  --color-neon-cyan: #00f5ff;
  --color-neon-purple: #b53dff;
  --color-neon-pink: #ff3d8e;
  
  /* Text Colors */
  --color-text-primary: #ffffff;
  --color-text-secondary: #b3b3b3;
  --color-text-muted: #666666;
  
  /* CTA & Buttons */
  --color-cta-primary: var(--color-neon-cyan);
  --color-cta-secondary: var(--color-neon-purple);
  --color-cta-hover: #00d4e6;
  
  /* Status Colors */
  --color-success: #00ff88;
  --color-error: #ff4466;
  --color-warning: #ffaa00;
  
  /* Typography */
  --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-heading: 'Poppins', 'Inter', sans-serif;
  
  /* Font Sizes */
  --font-size-xs: 0.75rem;      /* 12px */
  --font-size-sm: 0.875rem;     /* 14px */
  --font-size-base: 1rem;       /* 16px */
  --font-size-lg: 1.125rem;     /* 18px */
  --font-size-xl: 1.25rem;      /* 20px */
  --font-size-2xl: 1.5rem;      /* 24px */
  --font-size-3xl: 2rem;        /* 32px */
  --font-size-4xl: 2.5rem;      /* 40px */
  --font-size-5xl: 3rem;        /* 48px */
  
  /* Font Weights */
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  
  /* Spacing */
  --space-xs: 0.25rem;    /* 4px */
  --space-sm: 0.5rem;     /* 8px */
  --space-md: 1rem;       /* 16px */
  --space-lg: 1.5rem;     /* 24px */
  --space-xl: 2rem;       /* 32px */
  --space-2xl: 3rem;      /* 48px */
  --space-3xl: 4rem;      /* 64px */
  --space-4xl: 6rem;      /* 96px */
  
  /* Border Radius */
  --radius-sm: 0.25rem;   /* 4px */
  --radius-md: 0.5rem;    /* 8px */
  --radius-lg: 1rem;      /* 16px */
  --radius-xl: 1.5rem;    /* 24px */
  --radius-full: 9999px;
  
  /* Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.5);
  --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.6);
  
  /* Neon Glow Shadows */
  --shadow-neon-cyan: 0 0 20px rgba(0, 245, 255, 0.5);
  --shadow-neon-purple: 0 0 20px rgba(181, 61, 255, 0.5);
  --shadow-neon-subtle: 0 0 10px rgba(0, 245, 255, 0.3);
  
  /* Transitions */
  --transition-fast: 150ms ease-in-out;
  --transition-base: 250ms ease-in-out;
  --transition-slow: 350ms ease-in-out;
  
  /* Z-index Layers */
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;
  
  /* Container Widths */
  --container-xs: 480px;
  --container-sm: 640px;
  --container-md: 768px;
  --container-lg: 1024px;
  --container-xl: 1280px;
  --container-2xl: 1536px;
  
  /* Grid & Layout */
  --grid-gap: var(--space-lg);
  --card-padding: var(--space-lg);
  --section-padding: var(--space-4xl);
  
  /* Header */
  --header-height: 70px;
}

/* =====================================================
   Light Theme - Anime Style
   ===================================================== */

body[data-theme="light"] {
  /* Anime Pastel Colors */
  --color-bg-primary: #FAF9F9;
  --color-bg-secondary: #FFFFFF;
  --color-bg-card: #FFFFFF;
  --color-bg-hover: #FFF0F5;
  
  /* Anime Accents - Pastel */
  --color-neon-cyan: #4FC3F7;
  --color-neon-purple: #E0AAFF;
  --color-neon-pink: #FFB3D9;
  
  /* Text Colors - Dark on Light */
  --color-text-primary: #2D2D2D;
  --color-text-secondary: #5A5A5A;
  --color-text-muted: #999999;
  
  /* CTA & Buttons - Vibrant Pastels */
  --color-cta-primary: #FF6B9D;
  --color-cta-secondary: #C77DFF;
  --color-cta-hover: #FF5A8F;
  
  /* Status Colors - Softer */
  --color-success: #69DB7C;
  --color-error: #FF8080;
  --color-warning: #FFD93D;
  
  /* Light Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.12);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.15);
  --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.18);
  
  /* Soft Anime Glow */
  --shadow-neon-cyan: 0 4px 20px rgba(79, 195, 247, 0.3);
  --shadow-neon-purple: 0 4px 20px rgba(224, 170, 255, 0.3);
  --shadow-neon-subtle: 0 2px 12px rgba(255, 179, 217, 0.25);
}

/* =====================================================
   Theme Presets
   ===================================================== */

:root[data-theme-preset="ocean"],
body[data-theme-preset="ocean"] {
  --color-neon-cyan: #2dd4bf;
  --color-neon-purple: #3b82f6;
  --color-neon-pink: #38bdf8;
  --color-cta-primary: #0ea5e9;
  --color-cta-secondary: #2563eb;
  --color-cta-hover: #0284c7;
}

:root[data-theme-preset="sunset"],
body[data-theme-preset="sunset"] {
  --color-neon-cyan: #fb7185;
  --color-neon-purple: #f97316;
  --color-neon-pink: #f43f5e;
  --color-cta-primary: #f97316;
  --color-cta-secondary: #ec4899;
  --color-cta-hover: #ea580c;
}

:root[data-theme-preset="mono"],
body[data-theme-preset="mono"] {
  --color-neon-cyan: #cbd5e1;
  --color-neon-purple: #94a3b8;
  --color-neon-pink: #e2e8f0;
  --color-cta-primary: #e5e7eb;
  --color-cta-secondary: #9ca3af;
  --color-cta-hover: #d1d5db;
}

/* =====================================================
   Accessibility Modes
   ===================================================== */

:root[data-contrast="high"],
body[data-contrast="high"] {
  --color-text-primary: #ffffff;
  --color-text-secondary: #f3f4f6;
  --color-text-muted: #d1d5db;
  --color-bg-primary: #000000;
  --color-bg-secondary: #0a0a0a;
  --color-bg-card: #111827;
}

body[data-theme="light"][data-contrast="high"] {
  --color-text-primary: #000000;
  --color-text-secondary: #111111;
  --color-text-muted: #222222;
  --color-bg-primary: #ffffff;
  --color-bg-secondary: #f8fafc;
  --color-bg-card: #ffffff;
}

:root[data-motion="reduced"] *,
body[data-motion="reduced"] * {
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}

/* Breakpoints for reference in media queries */
/* 
  Mobile: 0-639px
  Tablet: 640px-1023px
  Desktop: 1024px+
*/
