[data-game-language] { color-scheme:light; font:13px/1.3 system-ui,sans-serif; color:#202b38; }
[data-game-language] * { box-sizing:border-box; }
[data-game-language] [role=group] { display:flex; gap:4px; padding:5px; border:1px solid #c6ccd4; border-radius:24px; background:#f7f8fa; box-shadow:0 2px 10px #0002; }
[data-game-language] button { width:auto; min-width:0; min-height:34px; flex-shrink:0; white-space:nowrap; margin:0; padding:7px 12px; border:0; border-radius:18px; background:transparent; color:#202b38; font:600 12px/1.3 system-ui,sans-serif; cursor:pointer; letter-spacing:normal; }
[data-game-language] button[aria-pressed=true] { background:#202b38; color:white; }
[data-game-language] button:focus-visible,[data-game-language] summary:focus-visible { outline:2px solid #558aff; outline-offset:3px; }
.game-language-inline { display:inline-flex; }
.game-language-floating { position:fixed; z-index:2147483646; right:max(12px,env(safe-area-inset-right)); bottom:max(12px,env(safe-area-inset-bottom)); margin:0; padding:0; }
.game-language-floating summary { display:flex; align-items:center; justify-content:center; width:36px; height:36px; border:1px solid #c6ccd4; border-radius:50%; background:#f7f8fa; box-shadow:0 2px 10px #0003; font-size:20px; cursor:pointer; list-style:none; }
.game-language-floating summary::-webkit-details-marker { display:none; }
.game-language-floating[open] [role=group] { position:absolute; right:0; bottom:46px; }
/* Reviewed DOM layout allowances. Do not change Phaser scene dimensions or game controls. */
html:not([lang|="zh"]) .game-topbar { flex-wrap: wrap; gap: 12px; height: auto; min-height: 69px; padding-block: 10px; }
html:not([lang|="zh"]) .game-topbar .stats { flex-wrap: wrap; }
html:not([lang|="zh"]) .site-header nav { flex-wrap: wrap; justify-content: flex-end; }
html:not([lang|="zh"]) .welcome-copy { min-width: 0; }
html:not([lang|="zh"]) .welcome-copy h2 { overflow-wrap: break-word; letter-spacing: 1px; }
html:not([lang|="zh"]) .control-bar { flex-wrap: wrap; }
html:not([lang|="zh"]) .stage-choice strong, html:not([lang|="zh"]) .stage-choice small, html:not([lang|="zh"]) .stage-choice em { white-space: normal; overflow-wrap: break-word; }
@media(max-width:600px) {
  html:not([lang|="zh"]) .welcome-copy h2 { font-size: 26px; line-height: 1.3; }
  html:not([lang|="zh"]) .welcome-copy .welcome-note { max-width: none; margin-top: 12px; }
  html:not([lang|="zh"]) .overlay .hero-creature { opacity: .4; width: 38%; bottom: 2%; }
  html:not([lang|="zh"]) .touch-controls button { font-size: 12px; padding-inline: 8px; }
  html:not([lang|="zh"]) .difficulty-legend { flex-wrap: wrap; }
}
