/* Custom scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #333360; border-radius: 3px; }

/* Smooth transitions for all interactive elements */
*, *::before, *::after { box-sizing: border-box; }

/* Code blocks */
code { font-family: 'JetBrains Mono', 'Fira Code', 'Courier New', monospace; }

/* Server card selected state */
.server-card.selected {
  border-color: rgba(99, 102, 241, 0.6);
  background-color: #1c1c3a;
}

/* Fade-in animation for toasts */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-8px); }
  to   { opacity: 1; transform: translateY(0); }
}
#switch-toast { animation: fadeIn 0.25s ease; }

/* Progress bar pulse for low days */
@keyframes pulse-bar {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0.5; }
}
.bar-urgent { animation: pulse-bar 1.5s ease-in-out infinite; }
