body { margin: 0; }
html { overflow-x: hidden; overflow-y: scroll; }

#loading-bg {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: var(--initial-loader-bg, #FFFFFF);
  block-size: 100%;
  gap: 24px;
  inline-size: 100%;
}
.loading-logo img { display: block; inline-size: 44px; block-size: 32px; object-fit: contain; }
.loading { inline-size: 64px; block-size: 3px; background: #D7DDE8; overflow: hidden; }
.loading .effect-1 { inline-size: 32px; block-size: 100%; background: var(--initial-loader-color, #0862A4); animation: loader-progress 1s ease-in-out infinite alternate; }
@keyframes loader-progress { from { transform: translateX(0); } to { transform: translateX(32px); } }
@media (prefers-reduced-motion: reduce) { .loading .effect-1 { animation: none; transform: translateX(16px); } }
