html[data-starting], html[data-starting] body { margin: 0; background: #080d13; }
html[data-starting] #root { pointer-events: none; }
.arena-startup-loader { box-sizing: border-box; font-family: Arial, sans-serif; }
.arena-startup-loader [hidden] { display: none !important; }
.startup-wordmark { display: block; flex: 0 0 auto; width: 260px; height: 76px; max-width: 100%; object-fit: contain; margin: 0 0 22px; }
.startup-loader-card button, .startup-loader-card > a { margin: 12px 0 0; padding: 10px 18px; color: #dfbb76; background: #101922; border: 1px solid #806436; cursor: pointer; text-decoration: none; }
.arena-startup-loader {
  position: fixed;
  z-index: 10000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  overflow: hidden;
  background: #080d13;
}
/* This fixed card keeps the logo at Android's native 280x320 launch position.
   The progress details appear beneath it without replacing or moving it. */
.startup-loader-card { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; flex: 0 0 auto; height: 320px; width: min(430px, 100%); text-align: center; }
.startup-loader-card > * { box-sizing: border-box; flex-shrink: 0; }
/* Keep the card's geometry: the logo never jumps when details become visible. */
.startup-logo-only .startup-loader-card > :not(.startup-wordmark),
.startup-finishing .startup-loader-card > :not(.startup-wordmark) { visibility: hidden; }
.startup-loader-emblem { position: relative; display: grid; place-items: center; width: 88px; height: 88px; margin-bottom: 20px; border: 1px solid #9d7a4257; border-radius: 50%; color: #e0b762; box-shadow: 0 0 0 12px #d8aa5506, 0 0 65px #d8aa5522; }
.startup-loader-emblem::before,
.startup-loader-emblem::after,
.startup-loader-emblem span { content: ""; position: absolute; border-radius: 50%; }
.startup-loader-emblem::before { inset: 8px; border: 1px solid #d8aa552e; border-top-color: #e3ba63; animation: startup-orbit 1.7s linear infinite; }
.startup-loader-emblem::after { inset: 19px; border: 1px dashed #8d6d3c78; animation: startup-orbit 3.6s linear reverse infinite; }
.startup-loader-emblem span { inset: -7px; border: 1px solid transparent; border-right-color: #d8aa556e; animation: startup-orbit 2.4s linear infinite; }
.startup-loader-emblem i { font-style: normal; font-size: 32px; text-shadow: 0 0 22px #e4b75a73; animation: startup-sword-pulse 1.4s ease-in-out infinite; }
.startup-loader-card > strong { color: #ebddc2; font: 700 15px "Cormorant Garamond", serif; letter-spacing: .22em; }
.startup-loader-card > p { min-height: 18px; margin: 9px 0 20px; line-height: 18px; color: #909cab; font-size: 11px; letter-spacing: .05em; }
.startup-progress { width: 100%; height: 7px; padding: 1px; overflow: hidden; border: 1px solid #655334; background: #05090e; }
.startup-progress span { display: block; width: 0; height: 100%; min-width: 2px; background: linear-gradient(90deg, #8f6728, #e2b95f, #f4d990); box-shadow: 0 0 13px #dfa94788; transition: width .24s ease-out; }
.startup-progress-meta { display: flex; justify-content: space-between; width: 100%; min-height: 25px; padding-top: 7px; color: #637080; font-size: 9px; }
.startup-progress-meta small { max-width: 80%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.startup-progress-meta b { color: #c9a35c; font-variant-numeric: tabular-nums; }
.startup-loader-card > em { margin-top: 20px; color: #5f6a78; font-size: 9px; font-style: normal; letter-spacing: .04em; }
@keyframes startup-orbit { to { transform: rotate(360deg); } }
@keyframes startup-sword-pulse { 50% { transform: scale(.92); opacity: .62; } }

@media (max-width: 600px) {
  .arena-startup-loader { padding: 18px; }
  .startup-loader-card { width: min(330px, 90vw); }
  .startup-loader-card > strong { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .startup-content,
  .startup-progress span { transition: none; }
  .startup-loader-emblem::before,
  .startup-loader-emblem::after,
  .startup-loader-emblem span,
  .startup-loader-emblem i { animation: none; }
}
