/* Long translations may wrap without shrinking controls or covering adjacent content. */
html:not([lang="en"]) .btn,
html:not([lang="en"]) button,
html:not([lang="en"]) .nav-dropdown-toggle { white-space: normal; overflow-wrap: anywhere; }
html:not([lang="en"]) .site-nav { flex-wrap: wrap; }
html:not([lang="en"]) .nav-dropdown-menu { max-width: min(28rem, calc(100vw - 24px)); }
.ui-startup-error { position: fixed; z-index: 10000; inset: auto 1rem 1rem; display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; padding: .8rem 1rem; border: 1px solid #a57e40; border-radius: .5rem; background: #201c15; color: #fff5dd; box-shadow: 0 4px 24px #0005; }
.ui-startup-error button { padding: .4rem .7rem; cursor: pointer; }
html:is([lang="zh-CN"], [lang="ja"], [lang="ko"]) :is(h1, h2, h3, h4, button, .btn, .site-nav) {
  font-family: system-ui, sans-serif;
  letter-spacing: normal;
  text-transform: none;
}
@media (max-width: 700px) {
  html:not([lang="en"]) .gym-side { display: block; }
  html:not([lang="en"]) .gym-stats { margin-block: 1rem; gap: 1rem; }
  html:not([lang="en"]) .gym-stats dt { line-height: 1.5; }
  html:not([lang="en"]) .gym-stage-head { gap: .75rem; flex-wrap: wrap; }
}
