.language-menu { position:relative; flex-shrink:0; font-size:12px; letter-spacing:0; }
.language-menu summary { display:flex; align-items:center; gap:7px; min-height:44px; padding:8px; cursor:pointer; list-style:none; }
.language-menu summary::-webkit-details-marker { display:none; }
.language-menu svg { fill:none; stroke:currentColor; stroke-width:1.3; }
.language-menu nav { position:absolute; right:0; top:100%; z-index:1000; display:grid!important; grid-template-columns:1fr 1fr; gap:0!important; width:320px; max-width:calc(100vw - 32px); max-height:65vh; overflow:auto; padding:10px; background:#111c23; border:1px solid #34434b; border-radius:8px; box-shadow:0 12px 30px #0006; }
.language-menu a { display:block; padding:11px 12px; color:#c8d0d0; font-size:13px; letter-spacing:0; }
.language-menu a:hover,.language-menu a[aria-current] { color:#e7f4d6; background:#26343a; border-radius:3px; }
.header,.guide-header { gap:16px; }
.header > .language-menu { margin-left:-8px; }
.guide-header > .button { margin-left:auto; }
:lang(ja),:lang(zh),:lang(ko),:lang(th) { line-break:strict; }
html:lang(ja) h1,html:lang(ja) h2,html:lang(zh) h1,html:lang(zh) h2,html:lang(ko) h1,html:lang(ko) h2,html:lang(th) h1,html:lang(th) h2 { letter-spacing:0; line-height:1.35; }
html:lang(th) body { font-family:-apple-system,'Thonburi','Leelawadee UI',sans-serif; }
.map-toolbar { flex-wrap:wrap; }
.map-toolbar > div { flex-wrap:wrap; }
.hero-actions,.closing-action { flex-wrap:wrap; }
h1,h2,h3,.feature-body { overflow-wrap:anywhere; }
@media(max-width:1050px) { .header > nav { display:none; } }
@media(max-width:600px) { .header,.guide-header { gap:8px; } .header-actions { margin-left:auto; } .header .brand { font-size:21px; gap:6px; } .header .button-small,.guide-header .button-small { padding:10px 12px; font-size:10px; } .language-menu summary { gap:4px; padding:4px; font-size:10px; } .header > .language-menu { margin-left:0; } .sky-phrase h1,.sky-phrase h2 { font-size:clamp(32px,8vw,52px); } .map-toolbar label { max-width:100%; } }
.language-menu summary::after { content:none; }
@media(max-width:600px) { .sky-phrase h1,.sky-phrase h2 { letter-spacing:-1px; } }
