/* ── Language switcher + per-language fonts ───────────────── */

.lang-switch {
  display: inline-flex;
  align-items: center;
  gap: 0.15rem;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.lang-switch button {
  font-family: inherit;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--text-light, #666);
  background: none;
  border: 1px solid transparent;
  border-radius: 100px;
  padding: 0.28rem 0.6rem;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.lang-switch button:hover {
  background: var(--bg, #F8F7F4);
  color: var(--text, #1A1A1A);
}
.lang-switch button.is-active {
  color: var(--deep, #2C5F4A);
  border-color: var(--deep, #2C5F4A);
  background: rgba(44, 95, 74, 0.06);
}

/* Header layout: stack the switcher above the nav on the right */
.header-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.5rem;
}

/* Keep the switcher visible even where the main nav is hidden on mobile */
@media (max-width: 500px) {
  .lang-switch { gap: 0.05rem; }
  .lang-switch button { padding: 0.25rem 0.45rem; font-size: 0.68rem; }
}

/* Per-language typography: load CJK fonts so Korean/Chinese render correctly */
html[data-lang="ko"] body,
html[data-lang="ko"] h1,
html[data-lang="ko"] h2,
html[data-lang="ko"] h3,
html[data-lang="ko"] h4 {
  font-family: 'Noto Sans KR', 'Noto Sans JP', sans-serif;
}
html[data-lang="zh"] body,
html[data-lang="zh"] h1,
html[data-lang="zh"] h2,
html[data-lang="zh"] h3,
html[data-lang="zh"] h4 {
  font-family: 'Noto Sans SC', 'Noto Sans JP', sans-serif;
}
