/* BattleCat Modern Seed Tracker Design System - High Contrast Dark Mode */
:root {
  --bg-primary: #0d1117;
  --bg-secondary: #161b22;
  --bg-card: #1f2937;
  --bg-card-hover: #374151;
  
  --border-color: #374151;
  --border-active: #3b82f6;

  --text-primary: #f9fafb;
  --text-secondary: #d1d5db;
  --text-muted: #9ca3af;

  /* Rarity Palette */
  --rarity-rare: #e5e7eb;
  --rarity-supa: #f59e0b;
  --rarity-uber: #ef4444;
  --rarity-legend: #a855f7;

  --rarity-uber-bg: rgba(239, 68, 68, 0.25);
  --rarity-legend-bg: rgba(168, 85, 247, 0.3);
  --rarity-supa-bg: rgba(245, 158, 11, 0.25);

  --accent-glow: rgba(59, 130, 246, 0.4);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: 'Outfit', -apple-system, BlinkMacSystemFont, sans-serif;
  background-color: #0d1117 !important;
  color: #f9fafb !important;
  min-height: 100vh;
}

/* Glassmorphism Panel & Cards */
.glass-panel {
  background: #161b22 !important;
  border: 1px solid #374151 !important;
  border-radius: 16px;
}

.glass-card {
  background: #1f2937 !important;
  border: 1px solid #374151 !important;
  border-radius: 12px;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.glass-card:hover {
  background: #374151 !important;
  border-color: #6b7280 !important;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #0d1117;
}

::-webkit-scrollbar-thumb {
  background: #374151;
  border-radius: 4px;
}

/* Rarity Badges & Borders */
.badge-uber {
  background: rgba(239, 68, 68, 0.3) !important;
  color: #fca5a5 !important;
  border: 1px solid #ef4444 !important;
}

.badge-legend {
  background: rgba(168, 85, 247, 0.35) !important;
  color: #e9d5ff !important;
  border: 1px solid #a855f7 !important;
}

.badge-supa {
  background: rgba(245, 158, 11, 0.3) !important;
  color: #fef08a !important;
  border: 1px solid #f59e0b !important;
}

.badge-rare {
  background: #374151 !important;
  color: #f3f4f6 !important;
  border: 1px solid #4b5563 !important;
}

/* Track Table Cell Highlight */
.cell-uber {
  background: rgba(239, 68, 68, 0.2) !important;
  border-left: 4px solid #ef4444 !important;
}

.cell-legend {
  background: rgba(168, 85, 247, 0.25) !important;
  border-left: 4px solid #a855f7 !important;
}

.cell-supa {
  background: rgba(245, 158, 11, 0.15) !important;
}

/* Glassmorphism Panel */
.glass-panel {
  background: var(--bg-card);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid var(--border-color);
  border-radius: 16px;
}

.glass-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.glass-card:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.15);
  transform: translateY(-2px);
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: var(--bg-primary);
}

::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.3);
}

/* Rarity Badges & Borders */
.badge-uber {
  background: var(--rarity-uber-bg);
  color: #fca5a5;
  border: 1px solid rgba(239, 68, 68, 0.4);
  box-shadow: 0 0 12px rgba(239, 68, 68, 0.2);
}

.badge-legend {
  background: var(--rarity-legend-bg);
  color: #d8b4fe;
  border: 1px solid rgba(168, 85, 247, 0.5);
  box-shadow: 0 0 14px rgba(168, 85, 247, 0.3);
}

.badge-supa {
  background: var(--rarity-supa-bg);
  color: #fde68a;
  border: 1px solid rgba(245, 158, 11, 0.4);
}

.badge-rare {
  background: rgba(255, 255, 255, 0.05);
  color: #e5e7eb;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

/* Track Table Cell Highlight */
.cell-uber {
  background: rgba(239, 68, 68, 0.12) !important;
  border-left: 3px solid #ef4444 !important;
}

.cell-legend {
  background: rgba(168, 85, 247, 0.15) !important;
  border-left: 3px solid #a855f7 !important;
}

.cell-supa {
  background: rgba(245, 158, 11, 0.08) !important;
}

/* Animations */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
  animation: fadeIn 0.3s ease-out forwards;
}
