.locale-switch { display: inline-flex; align-items: center; gap: 3px; padding: 3px; border: 1px solid rgba(139,221,181,.28); border-radius: 999px; background: rgba(7,24,19,.94); white-space: nowrap; }
.locale-switch a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 0 7px; border-radius: 999px; color: #a5bdaf; text-align: center; font: 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; }
.locale-switch a:hover, .locale-switch a:focus-visible { color: #ecffe9; outline: 1px solid rgba(185,255,57,.48); }
.locale-switch a[aria-current="true"] { color: #101c11; background: #b9ff39; }
.locale-switch a[aria-current="true"]:hover { color: #101c11; }
.top-actions .return-site { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 9px; color: #b6c9bc; font-size: 11px; white-space: nowrap; }
.top-actions .return-site:hover { color: #b9ff39; }
.narration-unavailable { max-width: 190px; color: #a5bdaf; font-size: 9px; line-height: 1.25; }
.narration-button:disabled { cursor: not-allowed; opacity: .45; }
#narrationToggle[hidden], #narrationDock[hidden] { display: none !important; }
@media (min-width: 761px) and (max-width: 1120px) {
  .site-header .menu-toggle { width: 42px; height: 42px; display: grid; align-content: center; justify-items: center; gap: 5px; border: 1px solid rgba(139,221,181,.28); background: rgba(8,20,16,.8); }
  .site-header .menu-toggle span { width: 17px; height: 1px; background: #b9ff39; }
  .site-header .site-nav { position: absolute; left: 0; right: 0; top: 75px; padding: 12px 28px 20px; display: none; align-items: stretch; flex-direction: column; gap: 0; background: rgba(7,17,15,.98); border-bottom: 1px solid rgba(139,221,181,.28); }
  .site-header .site-nav.is-open { display: flex; }
  .site-header .site-nav > a { padding: 11px 3px; border-bottom: 1px solid rgba(195,255,225,.08); font-size: 12px; }
}
@media (max-width: 760px) {
  .site-nav .locale-switch { margin-top: 15px; align-self: flex-start; }
  .top-actions .locale-switch { position: fixed; z-index: 92; top: 70px; right: 12px; }
  .top-actions .locale-switch { gap: 2px; padding: 2px; }
  .top-actions .return-site { position: fixed; z-index: 92; top: 70px; left: 12px; max-width: 76px; overflow: hidden; padding: 0 2px; font-size: 9px; text-overflow: ellipsis; }
}
@media (max-width: 760px) {
  html[lang="ko"] .intro-copy,
  html[lang="ja"] .intro-copy {
    left: max(20px, calc(8vw + env(safe-area-inset-left, 0px)));
    right: max(20px, calc(7vw + env(safe-area-inset-right, 0px)));
    max-width: none;
  }
  html[lang="ko"] .intro-copy h2,
  html[lang="ja"] .intro-copy h2 {
    max-width: 100%;
    font-size: clamp(24px, 8vw, 34px);
    line-height: 1.25;
    word-break: normal;
    overflow-wrap: anywhere;
  }
}
