@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700;900&family=Inter:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,800;1,400;1,600&display=swap');

:root {
  --bg-obsidian: #080C12;
  --bg-card: rgba(14, 20, 30, 0.78);
  --bg-card-hover: rgba(22, 32, 48, 0.88);
  --border-glass: rgba(0, 235, 255, 0.15);
  --border-glass-gold: rgba(245, 210, 110, 0.25);
  --cyan-glow: #00EBFF;
  --emerald-glow: #00E575;
  --gold-warm: #F5D26E;
  --text-main: #E6EDF3;
  --text-muted: #94A3B8;
  --font-serif: 'Playfair Display', serif;
  --font-display: 'Cinzel', serif;
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

body {
  background-color: var(--bg-obsidian);
  color: var(--text-main);
  font-family: var(--font-sans);
  overflow-x: hidden;
  selection-background-color: rgba(0, 235, 255, 0.3);
}

::selection {
  background: rgba(0, 235, 255, 0.3);
  color: #FFFFFF;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #080C12;
}
::-webkit-scrollbar-thumb {
  background: #1e293b;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #00EBFF;
}

/* Typography Classes */
.font-display { font-family: var(--font-display); }
.font-serif { font-family: var(--font-serif); }

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

.glass-panel-gold {
  background: var(--bg-card);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--border-glass-gold);
}

.glass-panel:hover {
  border-color: rgba(0, 235, 255, 0.35);
  box-shadow: 0 12px 40px rgba(0, 235, 255, 0.08);
}

/* Glow Elements */
.glow-cyan-text {
  text-shadow: 0 0 20px rgba(0, 235, 255, 0.6);
}

.glow-gold-text {
  text-shadow: 0 0 20px rgba(245, 210, 110, 0.6);
}

.glow-emerald-text {
  text-shadow: 0 0 20px rgba(0, 229, 117, 0.6);
}

.gradient-title {
  background: linear-gradient(135deg, #FFFFFF 20%, #F5D26E 60%, #00EBFF 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Ambient Background Lights */
.ambient-sphere-1 {
  position: fixed;
  top: -10%;
  left: 20%;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(0, 235, 255, 0.06) 0%, rgba(0, 0, 0, 0) 70%);
  filter: blur(80px);
  pointer-events: none;
  z-index: 0;
}

.ambient-sphere-2 {
  position: fixed;
  bottom: 10%;
  right: -5%;
  width: 700px;
  height: 700px;
  background: radial-gradient(circle, rgba(245, 210, 110, 0.05) 0%, rgba(0, 0, 0, 0) 70%);
  filter: blur(90px);
  pointer-events: none;
  z-index: 0;
}

/* Pentatonic Key Pads */
.penta-btn {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  background: rgba(14, 20, 30, 0.9);
  border: 1px solid rgba(245, 210, 110, 0.2);
}
.penta-btn:hover {
  transform: translateY(-3px) scale(1.03);
  border-color: #F5D26E;
  box-shadow: 0 0 25px rgba(245, 210, 110, 0.35);
}
.penta-btn:active {
  transform: translateY(1px) scale(0.98);
}

/* Timeline & Chapter numbers */
.chapter-badge {
  background: linear-gradient(135deg, rgba(0, 235, 255, 0.15), rgba(245, 210, 110, 0.15));
  border: 1px solid rgba(245, 210, 110, 0.3);
  color: #F5D26E;
}

/* Sound Wave Animation */
@keyframes wavePulse {
  0%, 100% { height: 6px; }
  50% { height: 28px; }
}

.wave-bar {
  width: 4px;
  background: #00EBFF;
  border-radius: 2px;
  animation: wavePulse 1.2s infinite ease-in-out;
}
.wave-bar:nth-child(2) { animation-delay: 0.2s; background: #00E575; }
.wave-bar:nth-child(3) { animation-delay: 0.4s; background: #F5D26E; }
.wave-bar:nth-child(4) { animation-delay: 0.1s; background: #00EBFF; }
.wave-bar:nth-child(5) { animation-delay: 0.3s; background: #F5D26E; }

/* Sticky Navigator Drawer */
.chapter-nav-item {
  transition: all 0.2s ease;
  border-left: 2px solid transparent;
}
.chapter-nav-item:hover, .chapter-nav-item.active {
  border-left-color: #00EBFF;
  color: #FFFFFF;
  background: rgba(0, 235, 255, 0.08);
}
