/* Smooth screen transitions */
#main {
  animation: fadeIn 0.15s ease-in;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Active nav tab */
.nav-tab.active {
  color: #42A797;
}

/* Sentiment dots */
.sentiment-positive { background-color: #22c55e; }
.sentiment-neutral { background-color: #829496; }
.sentiment-concerned { background-color: #f59e0b; }
.sentiment-negative { background-color: #ef4444; }
.sentiment-unknown { background-color: #829496; }

/* Call direction arrows */
.dir-inbound { color: #22c55e; }
.dir-outbound { color: #42A797; }

/* Priority badges */
.priority-high { background-color: #dc2626; color: white; }
.priority-medium { background-color: #d97706; color: white; }
.priority-low { background-color: #536668; color: #F5F0E8; }

/* Scrollbar styling */
::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #536668; border-radius: 2px; }

/* Modal backdrop */
.modal-backdrop {
  background-color: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
}

/* Toast notification */
.toast {
  animation: slideUp 0.3s ease-out, fadeOut 0.3s ease-in 2.7s;
}

@keyframes slideUp {
  from { transform: translateY(100%); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

@keyframes fadeOut {
  from { opacity: 1; }
  to { opacity: 0; }
}

/* Incoming call ring pulse */
.ring-pulse {
  animation: ringPulse 1.5s ease-out infinite;
}

@keyframes ringPulse {
  0% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.5); }
  70% { box-shadow: 0 0 0 20px rgba(34, 197, 94, 0); }
  100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}
