/* Shared by the HTML boot screen and React loading states. Keep brand actions separate. */
.app-loading-progress {
  width: 112px;
  height: 3px;
  overflow: hidden;
  border-radius: 3px;
  background: #d4d4d4;
}
.app-loading-progress::after {
  content: "";
  display: block;
  width: 42%;
  height: 100%;
  border-radius: inherit;
  background: #171717;
  animation: app-loading-slide 1.4s ease-in-out infinite alternate;
}
[data-theme="dark"] .app-loading-progress { background: #454c56; }
[data-theme="dark"] .app-loading-progress::after { background: #ededed; }
@keyframes app-loading-slide {
  to { transform: translateX(140%); }
}
@media (prefers-reduced-motion: reduce) {
  .app-loading-progress::after { animation: none; width: 100%; transform: none; }
}
