.startup-loader { display: none; }
html.is-startup-locked { overflow: hidden; scrollbar-gutter: stable; }
html.is-startup-locked body { overflow: hidden; touch-action: none; }
html.is-starting .top { z-index: 1001; }
html.is-starting .startup-loader {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 15px;
  background: #080d12;
  color: #a8becd;
  touch-action: none;
  cursor: progress;
  font: 10px/1.5 system-ui, sans-serif;
  letter-spacing: .15em;
}
.startup-spinner {
  width: 28px;
  height: 28px;
  border: 2px solid #95c9e526;
  border-top-color: #b9def2;
  border-radius: 50%;
  animation: startup-spin .85s linear infinite;
}
.startup-label--ko { display: none; }
html[lang="ko"] .startup-label--en { display: none; }
html[lang="ko"] .startup-label--ko { display: inline; letter-spacing: .04em; }
@keyframes startup-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .startup-spinner { animation: none; } }
