/* System fonts cover Latin, Cyrillic, Thai and CJK while preserving Korean art fonts. */
html:not([lang="ko"]) body, html:not([lang="ko"]) .small, html:not([lang="ko"]) .tile-label,
html:not([lang="ko"]) .kv, html:not([lang="ko"]) .stat, html:not([lang="ko"]) .dmgrow {
  font-family: system-ui, -apple-system, "Noto Sans", "Noto Sans CJK", sans-serif;
}
html:not([lang="ko"]) button, html:not([lang="ko"]) select, html:not([lang="ko"]) input { font-family: inherit; }
html:not([lang="ko"]) .tile-label { font-size: 8px; line-height: 9px; }
html:not([lang="ko"]) .btn, html:not([lang="ko"]) .b2 { line-height: 1.15; }
html:not([lang="ko"]) .settings-title h2 { letter-spacing: 0; }
html:not([lang="ko"]) .settings-row label { min-width: 0; }
html:not([lang="ko"]) .battle-result h2 { font-size: 21px; }
html:not([lang="ko"]) .result-heading p { max-width: 48%; }
html:not([lang="ko"]) .result-secondary .btn { font-size: 8px; }
html:not([lang="ko"]) .result-actions .btn { min-width: 150px; }
html[lang="th"] body { line-height: 1.35; }

html:not([lang="ko"]) .home-daily { gap: 4px; padding-inline: 5px; }
html:not([lang="ko"]) .home-daily > img { width: 24px; height: 24px; }
html:not([lang="ko"]) .home-daily > span { flex: 1; overflow: hidden; }
html:not([lang="ko"]) .home-daily b { font-size: 9px; white-space: normal; line-height: 11px; }
html:not([lang="ko"]) .home-daily small { white-space: normal; line-height: 10px; font-size: 8px; }
html:not([lang="ko"]) .home-mode-tabs button { white-space: normal; line-height: 10px; font-size: 8px; }
html:not([lang="ko"]) .home-guardian-copy strong { font-size: 12px; white-space: normal; line-height: 14px; }
html:not([lang="ko"]) .home-guardian-copy > span { font-size: 7px; line-height: 9px; }
html:not([lang="ko"]) .home-event-copy { right: 7px; font-size: 7.5px; line-height: 9px; }
html:not([lang="ko"]) .home-week > strong { right: 6px; font-size: 12px; line-height: 14px; }
html:not([lang="ko"]) .home-week > span:not(.home-event-kicker) { font-size: 7px; line-height: 9px; }
html:not([lang="ko"]) .home-day > span { font-size: 7px; }
html:not([lang="ko"]) .home-attendance-head h3 { font-size: 11px; }
html:not([lang="ko"]) .home-attend-claim { font-size: 8px; padding-inline: 5px; }
html:not([lang="ko"]) .home-loadout { gap: 4px; }
html:not([lang="ko"]) .home-loadout > span { font-size: 9px; min-width: 0; }
html:not([lang="ko"]) .home-loadout b { font-size: 8px; max-width: 55px; line-height: 10px; }
html:not([lang="ko"]) .guardian-detail { gap: 3px; }
html:not([lang="ko"]) .guardian-detail-title { flex-direction: column; gap: 1px; }
html:not([lang="ko"]) .guardian-detail > p { font-size: 8.5px; line-height: 11px; word-break: normal; overflow-wrap: anywhere; }
html:not([lang="ko"]) .guardian-supers button span { font-size: 7px; }
html:not([lang="ko"]) .guardian-confirm { min-height: 25px; font-size: 9px; flex-shrink: 0; }

html:not([lang="ko"]) .home-week { display: flex; flex-direction: column; gap: 2px; padding: 5px 7px; }
html:not([lang="ko"]) .home-week > .home-event-kicker { position: static; padding-right: 18px; font-size: 7px; line-height: 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex-shrink: 0; }
html:not([lang="ko"]) .home-week > strong { position: static; margin: 0; font-size: 10px; line-height: 11px; max-height: 22px; flex-shrink: 0; }
html:not([lang="ko"]) .home-week > span:not(.home-event-kicker) { position: static; font-size: 7px; line-height: 9px; }
html:not([lang="ko"]) .home-week > b { position: static; font-size: 7px; line-height: 9px; margin-top: auto; }
html:not([lang="ko"]) .home-week > img { width: 16px; height: 16px; }
html:not([lang="ko"]) .home-season > strong { right: 35px; font-size: 15px; line-height: 18px; }
html:not([lang="ko"]) .home-season > img { width: 30px; height: 30px; right: 7px; top: 20px; opacity: .7; }
html:not([lang="ko"]) .home-event-copy { z-index: 1; }

html:not([lang="ko"]) #hud-top .battle-speed > span { display: none; }
html:not([lang="ko"]) #hud-top .battle-speed::before { content: "»"; font-family: system-ui, sans-serif; font-size: 13px; line-height: 12px; }
html:not([lang="ko"]) #hud-top .battle-pause { width: auto; min-width: 52px; max-width: 84px; }
html:not([lang="ko"]) #hud-top .battle-pause .pause-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
html:not([lang="ko"]) #hud-top .threat { width: 64px; }

html:not([lang="ko"]) .home-daily small { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; max-height: 20px; overflow: hidden; }
html:not([lang="ko"]) .guardian-supers button { min-width: 0; }
html:not([lang="ko"]) .guardian-supers span { white-space: normal; overflow-wrap: anywhere; line-height: 9px; font-size: 7px; }
html:not([lang="ko"]) .guardian-confirm { position: sticky; bottom: 0; z-index: 1; }
html:not([lang="ko"]) .towerbtn { gap: 2px; font-size: 8px; min-width: 0; }
html:not([lang="ko"]) .towerbtn > span:first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html:not([lang="ko"]) .towerbtn .coins { flex-shrink: 0; white-space: nowrap; font-size: 9px; }

/* Keep card actions usable when translated limits wrap on short landscape screens. */
@media (max-height: 440px) {
  html:not([lang="ko"]) .t-board .bdetail { min-height: 64px; flex: 1 1 64px; }
  html:not([lang="ko"]) .t-board .bfoot { flex-shrink: 0; }
  html:not([lang="ko"]) .t-board .bfoot > button { flex-shrink: 0; }
  html:not([lang="ko"]) .t-board .bfoot > span { min-width: 0; max-height: 36px; overflow-y: auto; line-height: 12px; }
}

/* Keep translated battle controls inside the fixed 96px side rails. */
html:not([lang="ko"]) #hud-left .hd,
html:not([lang="ko"]) #hud-right .hd { font-size: 8px; line-height: 11px; gap: 3px; flex-shrink: 0; }
html:not([lang="ko"]) #hud-left .hd > span:first-child,
html:not([lang="ko"]) #hud-right .hd > span:first-child { min-width: 0; overflow-wrap: anywhere; }
html:not([lang="ko"]) .slots,
html:not([lang="ko"]) .augn,
html:not([lang="ko"]) .kc,
html:not([lang="ko"]) .sc { flex-shrink: 0; white-space: nowrap; }
html:not([lang="ko"]) #hud-left .skills { flex-shrink: 0; }
html:not([lang="ko"]) #hud-left .skill { flex-shrink: 0; }
html:not([lang="ko"]) #hud-left .skill .nm { font-size: 9px; text-overflow: ellipsis; }
html:not([lang="ko"]) #hud-left .skill .lv,
html:not([lang="ko"]) #hud-left .skill .ev { font-size: 8px; text-overflow: ellipsis; }
html:not([lang="ko"]) #hud-left .augs { min-height: 22px; max-height: 54px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #477a80 #142f3c; }
html:not([lang="ko"]) #hud-left .stats { flex-shrink: 0; font-size: 8px; line-height: 11px; overflow-wrap: anywhere; }
html:not([lang="ko"]) #hud-left .stats b { white-space: nowrap; }
html:not([lang="ko"]) #hud-right .btn { min-width: 0; flex-shrink: 0; white-space: normal; }
html:not([lang="ko"]) #hud-right .roll { display: grid; grid-template-columns: 18px minmax(0,1fr); grid-template-rows: 18px minmax(0,1fr); gap: 1px 3px; height: 42px; padding: 2px 3px; }
html:not([lang="ko"]) #hud-right .roll img { width: 18px; height: 18px; }
html:not([lang="ko"]) #hud-right .roll .rt { display: contents; }
html:not([lang="ko"]) #hud-right .roll b { min-width: 0; font-size: 9px; line-height: 9px; overflow-wrap: anywhere; }
html:not([lang="ko"]) #hud-right .roll .cnt { grid-column: 1 / -1; font-size: 7.5px; line-height: 8px; white-space: normal; overflow-wrap: anywhere; }
html:not([lang="ko"]) #hud-right .auto { min-height: 28px; gap: 3px; font-size: 8px; line-height: 9px; }
html:not([lang="ko"]) #hud-right .auto > span:first-child { min-width: 0; flex: 1; overflow-wrap: anywhere; }
html:not([lang="ko"]) #hud-right .auto .av { max-width: 35px; margin-left: 0; font-size: 7px; line-height: 9px; overflow-wrap: anywhere; }
html:not([lang="ko"]) #hud-right .tac .n,
html:not([lang="ko"]) #hud-right .super .sn { min-width: 0; font-size: 8px; line-height: 9px; white-space: normal; overflow-wrap: anywhere; }
html:not([lang="ko"]) #hud-right .dice-eq { min-height: 29px; flex-shrink: 0; gap: 3px; }
html:not([lang="ko"]) #hud-right .dice-eq img { width: 18px; height: 18px; flex-shrink: 0; }
html:not([lang="ko"]) #hud-right .dice-eq .dn { font-size: 8px; line-height: 9px; white-space: normal; overflow-wrap: anywhere; }
html:not([lang="ko"]) #hud-right .ctl .btn { min-height: 22px; font-size: 7px; line-height: 9px; }
html[lang="de"] #hud-left .stats { font-size: 7.5px; }
html[lang="th"] #hud-right .roll b { line-height: 13px; }
html[lang="th"] #hud-right .roll .cnt { line-height: 11px; }
