/* auth-cover.css — Loading overlay with animated truck */
#auth-cover {
  position: fixed; inset: 0; z-index: 9999;
  background: #FAFAFA;
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
}
#auth-cover .ac-wrap {
  width: min(320px, 100%);
  text-align: center;
  color: #111;
}
#auth-cover .ac-brand {
  display: grid;
  justify-items: center;
  gap: 10px;
  margin-bottom: 20px;
}
#auth-cover .ac-logo {
  display: grid; place-items: center;
}
#auth-cover .ac-logo img {
  height: auto; object-fit: contain;
}

/* Animated truck */
.ac-truck-wrap {
  width: 120px;
  height: 40px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}
.ac-truck {
  position: absolute;
  left: -60px;
  animation: ac-truck-drive 2.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}
.ac-truck svg {
  width: 48px; height: 32px;
  color: #111;
}
/* Road line under the truck */
.ac-road {
  position: absolute;
  bottom: 4px; left: 0; right: 0;
  height: 1px;
  background: #E5E7EB;
}
.ac-road::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: repeating-linear-gradient(90deg, #D1D5DB 0px, #D1D5DB 8px, transparent 8px, transparent 16px);
  animation: ac-road-scroll 0.8s linear infinite;
}

@keyframes ac-truck-drive {
  0% { left: -60px; }
  20% { left: 36px; }
  80% { left: 36px; }
  100% { left: 140px; }
}
@keyframes ac-road-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-16px); }
}

@media (prefers-reduced-motion: reduce) {
  .ac-truck { animation: none; left: 36px; }
  .ac-road::after { animation: none; }
}
