.auth-loading {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 24px;
  background: rgba(33, 30, 23, .38);
  text-align: center;
}
.auth-loading::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(340px, calc(100vw - 40px));
  height: 210px;
  border: 1px solid #e8dfce;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 18px 55px rgba(33, 30, 23, .22);
}
.auth-loading > * { position: relative; }
.auth-loading-spinner {
  width: 44px;
  height: 44px;
  border: 4px solid #e8dfce;
  border-top-color: #a47616;
  border-radius: 50%;
  animation: company-auth-spin .75s linear infinite;
}
.auth-loading strong { font-size: 1.05rem; }
.auth-loading p { margin: 0; color: #716859; }
@keyframes company-auth-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .auth-loading-spinner { animation-duration: 1.8s; }
}
