:root {
  --primary: #3b82f6;
  --bg-color: #eff6ff;
}
body {
  background-color: var(--bg-color);
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}
.loader {
  border: 4px solid #f3f3f3;
  border-top: 4px solid var(--primary);
  border-radius: 50%;
  width: 30px;
  height: 30px;
  animation: spin 1s linear infinite;
  display: none;
  margin: 10px auto;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.admin-nav-item.active {
  background-color: var(--primary);
  color: white;
  border-radius: 0.5rem;
}
.admin-nav-item {
  transition: all 0.3s ease;
}
.admin-nav-item:hover:not(.active) {
  background-color: #bfdbfe;
  color: #1e3a8a;
  border-radius: 0.5rem;
}
.section-view {
  display: none;
  animation: fadeIn 0.4s;
}
.section-view.active {
  display: block;
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.hero-bg {
  background: linear-gradient(135deg, #eff6ff 0%, #bfdbfe 100%);
  position: relative;
  overflow: hidden;
}
.hero-stars {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(#eab308 1.5px, transparent 1.5px);
  background-size: 30px 30px;
  opacity: 0.4;
}

/* Hide number input spinners */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
