  /* src/geo_rag/static/css/style.css */
  body {
      font-family: 'Arial', sans-serif;
      font-size: 16px;
      margin: 0;
      padding: 0;
      background-color: #f9f9f9;
      color: #333;
  }

  header {
      background-color: #343a40;
      color: #ffffff;
      padding: 10px 15px;
  }

  h1 {
      color: #007bff;
  }

  /* Typing dots animation */
.typing-dots span {
  animation: blink 1.4s infinite both;
  display: inline-block;
  font-weight: bold;
}

.typing-dots span:nth-child(2) {
  animation-delay: 0.2s;
}
.typing-dots span:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes blink {
  0% { opacity: 0; }
  20% { opacity: 1; }
  100% { opacity: 0; }
}

/* Fade-in animation */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

.fade-in {
  animation: fadeIn 0.25s ease-in-out;
}

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