/* Shared language control; native links and disclosure work without JavaScript. */
.locale-menu { position: relative; flex: 0 0 auto; font: 13px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #f5efe5; z-index: 110; text-align: left; }
.locale-menu summary { cursor: pointer; list-style: none; padding: 10px 12px; min-height: 40px; border: 1px solid rgba(255,255,255,.24); border-radius: 8px; background: #141721; white-space: nowrap; }
.locale-menu summary::-webkit-details-marker { display: none; }
.locale-menu summary::after { content: ' ▾'; }
.locale-menu summary:focus-visible, .locale-menu a:focus-visible { outline: 2px solid #fb923c; outline-offset: 3px; }
.locale-menu > div { position: absolute; right: 0; top: calc(100% + 6px); min-width: 132px; padding: 6px; border: 1px solid #41434a; border-radius: 10px; background: #141721; box-shadow: 0 12px 36px #0006; }
.locale-menu a { display: block; color: #f5efe5; padding: 10px 12px; border-radius: 5px; text-decoration: none; white-space: nowrap; }
.locale-menu a:hover, .locale-menu a[aria-current="true"] { background: #ffffff14; color: #fb923c; }
.locale-menu--standalone { position: absolute; top: 12px; right: 16px; }
body.has-standalone-locale { padding-top: 54px; }
.nav-wrap > .locale-menu { margin-left: auto; }
.nav-wrap { gap: 12px; }
.header-actions { margin-left: auto; }
.site-header .brand { flex-shrink: 0; }
html[lang="en"] .site-header .cc-account-plain { white-space: nowrap; }
html[lang="en"] .stage-ask h1 { letter-spacing: -.035em; }
html[lang="en"] .stage-name { letter-spacing: 0; font-size: 17px; }
html[lang="en"] .stage-hint { letter-spacing: 0; }
html[lang="en"] .how-line.big { font-size: clamp(30px, 4vw, 54px); }
html[lang="en"] .brand-name small { display: none; }
html[lang="en"] .cc-tabs { flex-wrap: wrap; }
html[lang="en"] .cc-tab { white-space: normal; }
@media (max-width: 600px) {
  .site-header .nav-tail, .site-header .back { display: none; }
}
@media (max-width: 520px) {
  .header-actions { gap: 8px; }
  .locale-menu summary { padding: 9px 8px; font-size: 12px; }
  html[lang="en"] .header-cta { padding: 0 12px; font-size: 12px; }
  html[lang="en"] .brand-name { font-size: 16px; }
  html[lang="en"] .site-header .cc-account-plain { font-size: 12px; padding: 8px 10px; }
  html[lang="en"] .stage-ask h1 { font-size: clamp(38px, 11vw, 64px); }
  .nav-wrap > .back-link { display: none; }
}
@media (max-width: 360px) {
  .site-header .brand-name { display: none; }
}

/* Additional locales; production Chinese and English typography stays intact. */
/* Cloud-computer footer links must wrap as whole links on narrow screens. */
.cloud-wrap > a { overflow-wrap: anywhere; }
footer .cloud-wrap > a { display: inline-block; max-width: 100%; margin: 0 16px 8px 0; }
.locale-menu > div { max-height: min(65vh, 440px); max-width: calc(100vw - 24px); overflow-y: auto; overscroll-behavior: contain; }
html:not([lang="zh-CN"]):not([lang="en"]) h1, html:not([lang="zh-CN"]):not([lang="en"]) h2 { overflow-wrap: anywhere; hyphens: auto; }
html:not([lang="zh-CN"]):not([lang="en"]) .stage-name { letter-spacing: 0; font-size: 17px; }
html:not([lang="zh-CN"]):not([lang="en"]) .stage-hint { letter-spacing: 0; }
html:not([lang="zh-CN"]):not([lang="en"]) .brand-name small { display: none; }
html:not([lang="zh-CN"]):not([lang="en"]) .cc-tabs { flex-wrap: wrap; }
html:not([lang="zh-CN"]):not([lang="en"]) .cc-tab { white-space: normal; }
html:not([lang="zh-CN"]):not([lang="en"]) .how-line.big em { display: block; text-wrap: balance; }
@media (max-width: 600px) {
 .site-header .nav-wrap { gap: 8px; }
 .site-header .header-right { min-width: 0; }
 html:not([lang="zh-CN"]) .site-header .cc-account-plain { max-width: 104px; white-space: normal; line-height: 1.3; text-align: center; }
 .locale-menu summary { max-width: 108px; overflow: hidden; text-overflow: ellipsis; }
 .locale-menu > div { position: fixed; top: 72px; left: 12px; right: 12px; min-width: 0; max-width: none; }
}
@media (max-width: 520px) {
 html:not([lang="zh-CN"]):not([lang="en"]) .header-cta { padding: 0 12px; font-size: 12px; }
 html:not([lang="zh-CN"]):not([lang="en"]) .brand-name { font-size: 16px; }
 html:not([lang="zh-CN"]):not([lang="en"]) .site-header .cc-account-plain { font-size: 12px; padding: 8px 10px; }
 html:not([lang="zh-CN"]):not([lang="en"]) .stage-ask h1 { font-size: clamp(38px, 11vw, 64px); }
}
