body {
  font-family: 'Inter', sans-serif; /* A nice default sans-serif font */
  margin: 0; /* Ensure no default margin */
  min-height: 100vh; /* Ensure body takes full viewport height */
  display: flex; /* Helps with centering content if root doesn't fill height */
  flex-direction: column; /* Stack children vertically */
}

#root {
  flex-grow: 1; /* Allow root to grow and fill available space */
  display: flex;
  flex-direction: column;
}

/* Custom scrollbar for webkit browsers */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: #1a202c; /* Tailwind gray-900, slightly darker than body for contrast */
}
::-webkit-scrollbar-thumb {
  background: #4a5568; /* Tailwind gray-600 */
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #718096; /* Tailwind gray-500 */
}

/* Ensure text selection color is visible on dark backgrounds */
::selection {
  background-color: #4a90e2; /* A distinct blue */
  color: #ffffff;
}
::-moz-selection { /* Firefox */
  background-color: #4a90e2;
  color: #ffffff;
}