@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');

:root {
  /* Fonts */
  --font-heading: 'Outfit', sans-serif;
  --font-body: 'Inter', sans-serif;

  /* Color Palette (Deep Space / Cosmic Dark Theme) */
  --bg-primary: #0a0b16;
  --bg-secondary: #121426;
  --bg-tertiary: #191c33;
  
  --accent-primary: #8b5cf6;       /* Violet */
  --accent-primary-glow: rgba(139, 92, 246, 0.4);
  --accent-secondary: #06b6d4;     /* Cyan */
  --accent-secondary-glow: rgba(6, 182, 212, 0.4);
  --accent-gradient: linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-secondary) 100%);
  --accent-gradient-hover: linear-gradient(135deg, #a78bfa 0%, #22d3ee 100%);
  
  /* Text colors */
  --text-primary: #f8fafc;
  --text-secondary: #94a3b8;
  --text-muted: #64748b;
  
  /* Glassmorphism system */
  --glass-bg: rgba(18, 20, 38, 0.65);
  --glass-border: rgba(255, 255, 255, 0.08);
  --glass-border-glow: rgba(139, 92, 246, 0.2);
  --glass-blur: blur(12px);
  --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);

  /* Status Colors */
  --color-success: #10b981;
  --color-success-bg: rgba(16, 185, 129, 0.1);
  --color-warning: #f59e0b;
  --color-warning-bg: rgba(245, 158, 11, 0.1);
  --color-danger: #ef4444;
  --color-danger-bg: rgba(239, 68, 68, 0.1);
  --color-info: #3b82f6;
  --color-info-bg: rgba(59, 130, 246, 0.1);

  /* Borders & Radii */
  --border-radius-sm: 8px;
  --border-radius-md: 16px;
  --border-radius-lg: 24px;
  --border-radius-full: 9999px;
  
  /* Layout */
  --max-width: 1200px;
  --header-height: 80px;

  /* Transitions */
  --transition-fast: 0.2s ease;
  --transition-normal: 0.3s ease;
  --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Base keyframe animations */
@keyframes float {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-10px); }
  100% { transform: translateY(0px); }
}

@keyframes pulse-glow {
  0% { box-shadow: 0 0 5px var(--accent-primary-glow); }
  50% { box-shadow: 0 0 20px var(--accent-primary-glow); }
  100% { box-shadow: 0 0 5px var(--accent-primary-glow); }
}

@keyframes pulse-glow-cyan {
  0% { box-shadow: 0 0 5px var(--accent-secondary-glow); }
  50% { box-shadow: 0 0 20px var(--accent-secondary-glow); }
  100% { box-shadow: 0 0 5px var(--accent-secondary-glow); }
}

@keyframes slide-up {
  0% { transform: translateY(30px); opacity: 0; }
  100% { transform: translateY(0); opacity: 1; }
}

@keyframes fade-in {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes spin-slow {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
