/* 🔄 Loading Spinner */
.np-loading-spinner {
  text-align: center;
  margin: 30px auto;
  padding: 12px;
  animation: fadeIn 0.6s ease-in;
  font-family: "Noto Sans Devanagari", sans-serif;
  color: #4CAF50;
  font-weight: 500;
  background: #f1f8e9;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

.np-spinner-circle {
  width: 40px;
  height: 40px;
  border: 4px solid #ccc;
  border-top-color: #4CAF50;
  border-radius: 50%;
  margin: 0 auto 10px;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

/* 🌸 Fade-in effect for route cards */
.np-fade-in {
  animation: fadeIn 0.8s ease-in;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* 📱 Responsive tweaks */
@media (max-width: 600px) {
  .np-loading-spinner {
    margin: 20px 10px;
    padding: 10px;
    font-size: 14px;
  }
  .np-spinner-circle {
    width: 30px;
    height: 30px;
  }
}
