.loading-indicator {
  position: fixed;
  top: -100px;
  /* Removed width: 100% */
  left: 50%; /* Center horizontally */
  transform: translateX(-50%); /* Offset by half its width */
  background-color: #333;
  color: white;
  transition: top 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 1000;
  border-radius: 0 0 8px 8px; /* Rounded bottom corners */
}

.loading-indicator.active {
  top: 0;
}

.loading-content {
  padding: 20px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.spinner {
  width: 20px;
  height: 20px;
  border: 3px solid #ffffff;
  border-top: 3px solid transparent;
  border-radius: 50%;
  animation: spin 1s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}