/* Custom Scrollbar */
.custom-scrollbar::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

.custom-scrollbar::-webkit-scrollbar-track {
  background: #15191f;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
  background: #2a303b;
  border-radius: 3px;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
  background: #3b4250;
}

/* Tab Active State */
.tab-active {
  color: #6abf69;
  border-bottom: 2px solid #6abf69;
  background: linear-gradient(to top, rgba(106, 191, 105, 0.08), transparent);
}

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

.animate-in {
  animation: fadeIn 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Typing Indicator */
@keyframes pulse-dot {
  0%,
  100% {
    transform: scale(0.8);
    opacity: 0.5;
  }
  50% {
    transform: scale(1.2);
    opacity: 1;
  }
}

.typing-dot {
  animation: pulse-dot 1.4s infinite ease-in-out;
}
.typing-dot:nth-child(1) {
  animation-delay: 0s;
}
.typing-dot:nth-child(2) {
  animation-delay: 0.2s;
}
.typing-dot:nth-child(3) {
  animation-delay: 0.4s;
}

/* Modal Transitions */
#evalModal:not(.hidden) {
  opacity: 1;
}
#evalModal:not(.hidden) > div {
  transform: scale(1);
}

/* Range Input Styling (if needed later) */
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #6abf69;
  cursor: pointer;
}

/* Select Arrow Fix */
select {
  background-image: none;
}

/* Chart JS Tooltip Customization */
#trendsChart {
  filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.3));
}
