/* SparkleTour Map Theme Variables and Colors */
:root {
  /* Christmas Color Palette */
  --christmas-red: #c41e3a;
  --christmas-green: #2e7d32;
  --christmas-gold: #ffd700;
  --deep-forest: #1a472a;
  
  /* UI Colors */
  --overlay-bg: rgba(255, 255, 255, 0.98);
  --overlay-shadow: rgba(0, 0, 0, 0.3);
  --text-primary: #333;
  --text-secondary: #555;
  --text-muted: #999;
  
  /* Spacing */
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  
  /* Border Radius */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-full: 50px;
  
  /* Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.15);
  --shadow-lg: 0 10px 40px rgba(0, 0, 0, 0.3);
  
  /* Transitions */
  --transition-fast: 0.2s ease;
  --transition-normal: 0.3s ease;
  --transition-slow: 0.4s ease;
}

/* Typography */
body {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  color: var(--text-primary);
}

/* Gradient Backgrounds */
.gradient-christmas {
  background: linear-gradient(135deg, var(--christmas-red), var(--christmas-green));
}

.gradient-green {
  background: linear-gradient(135deg, var(--christmas-green), var(--deep-forest));
}

.gradient-red {
  background: linear-gradient(135deg, var(--christmas-red), #a01830);
}

/* Button Styles */
.btn-christmas {
  background: linear-gradient(135deg, var(--christmas-green), var(--deep-forest));
  border: none;
  color: white;
  font-weight: 600;
  border-radius: var(--radius-full);
  transition: all var(--transition-normal);
}

.btn-christmas:hover {
  background: linear-gradient(135deg, var(--deep-forest), var(--christmas-green));
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

/* Badge Styles */
.badge-gold {
  background: var(--christmas-gold);
  color: var(--deep-forest);
  font-weight: 600;
}

.badge-feature {
  background: rgba(46, 125, 50, 0.1);
  color: var(--christmas-green);
  border: 1px solid var(--christmas-green);
  padding: 0.25rem 0.75rem;
  border-radius: var(--radius-full);
  font-size: 0.85rem;
  font-weight: 500;
}