/* Custom CSS Animations & Styles for Light Parchment Theme */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@500&display=swap');

body {
  font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
  background: #F8F5EE;
  color: #1C1917;
}

.disp { font-family: 'Cinzel', serif; }
.mono { font-family: 'JetBrains Mono', monospace; }

/* 3D Floating Avatar Animations */
@keyframes float3D {
  0%, 100% { transform: translateY(0px) rotate(0deg); }
  50% { transform: translateY(-6px) rotate(2deg); }
}
.float-avatar-3d {
  animation: float3D 3.5s ease-in-out infinite;
}

/* Game-Style Lively Idle Bounce */
@keyframes gameIdleBounce {
  0%, 100% { transform: translateY(0px) rotate(0deg) scale(1); filter: drop-shadow(0 4px 10px rgba(217, 119, 6, 0.15)); }
  30% { transform: translateY(-7px) rotate(-1.5deg) scale(1.04); filter: drop-shadow(0 10px 15px rgba(217, 119, 6, 0.25)); }
  70% { transform: translateY(-3px) rotate(1.5deg) scale(1.02); filter: drop-shadow(0 6px 12px rgba(217, 119, 6, 0.2)); }
}
.game-idle-bounce {
  animation: gameIdleBounce 2.8s ease-in-out infinite;
}

/* Speech Bubble Pop */
@keyframes speechBubblePop {
  0% { opacity: 0; transform: scale(0.6) translateY(8px); }
  100% { opacity: 1; transform: scale(1) translateY(0); }
}
.speech-bubble-pop {
  animation: speechBubblePop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

/* Sound Wave Equalizer Pulse */
@keyframes soundWavePulse {
  0%, 100% { height: 6px; }
  50% { height: 16px; }
}
.sound-wave-bar {
  width: 3px;
  background: #D97706;
  border-radius: 2px;
  display: inline-block;
  animation: soundWavePulse 0.4s ease-in-out infinite alternate;
}

/* Card Hover 3D Shift */
.card-3d-hover {
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.card-3d-hover:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 20px -5px rgba(180, 83, 9, 0.12);
}

/* Custom Scrollbar for Light Theme */
.custom-scrollbar::-webkit-scrollbar {
  width: 6px;
}
.custom-scrollbar::-webkit-scrollbar-track {
  background: #EFECE6;
  border-radius: 999px;
}
.custom-scrollbar::-webkit-scrollbar-thumb {
  background: #D6D1C7;
  border-radius: 999px;
}
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
  background: #B8B2A6;
}


/* Explicit Input Text Visibility Fix */
input, select, textarea {
  color: #1C1917 !important;
  background-color: #FFFFFF !important;
  -webkit-text-fill-color: #1C1917 !important;
  font-weight: 600 !important;
}
input::placeholder, select::placeholder {
  color: #A8A29E !important;
  -webkit-text-fill-color: #A8A29E !important;
}
