/* Shared loading state; disappears as soon as the existing page is ready. */
body.account-loading > :not(.apliq-loader) { visibility: hidden; }
.apliq-loader { display: none; }
body.account-loading > .apliq-loader,
.apliq-loader.apliq-loader--route {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  padding: 32px 24px;
  overflow: auto;
  background: #f7f7f6;
  color: #15151b;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  text-align: center;
  visibility: visible;
}
.apliq-loader__content { max-width: 360px; }
.apliq-loader__mark { position: relative; width: 64px; height: 64px; margin: 0 auto 22px; }
.apliq-loader__mark > span {
  position: absolute; inset: -7px; border: 1px solid #d9d8ee; border-radius: 23px;
  transform: rotate(-12deg); animation: apliq-loader-orbit 3.2s ease-in-out infinite;
}
.apliq-loader__mark img {
  position: relative; display: block; width: 64px; height: 64px; border-radius: 19px;
  animation: apliq-loader-lift 3.2s ease-in-out infinite;
}
.apliq-loader__brand { margin: 0 0 28px; font-size: 16px; font-weight: 750; letter-spacing: -.5px; }
.apliq-loader__title { margin: 0; font-size: clamp(25px, 5vw, 32px); line-height: 1.2; font-weight: 700; letter-spacing: -1px; }
.apliq-loader__caption { margin: 13px 0 25px; font-size: 14px; line-height: 1.5; color: #68686d; }
.apliq-loader__track { width: 88px; height: 3px; margin: 0 auto; overflow: hidden; border-radius: 3px; background: #e4e3ed; }
.apliq-loader__track span { display: block; height: 100%; width: 36px; border-radius: inherit; background: #3235ff; animation: apliq-loader-travel 1.6s ease-in-out infinite; }
@keyframes apliq-loader-orbit { 50% { transform: rotate(6deg); } }
@keyframes apliq-loader-lift { 50% { transform: translateY(-4px); } }
@keyframes apliq-loader-travel { from { transform: translateX(-36px); } to { transform: translateX(88px); } }
@media (prefers-reduced-motion: reduce) {
  .apliq-loader__mark > span, .apliq-loader__mark img, .apliq-loader__track span { animation: none; }
  .apliq-loader__track span { margin: 0 auto; }
}
