/* 多言語（lib/translations.mjs）。言語の切り替えは日本語のページと訳したページのヘッダーの上（<body> の直下）に、訳したページの見た目は .translated-page だけに当てる。
   scripts/stage-cloudflare.mjs が dist/cloudflare/translations.css に置く（訳したページがあるときだけ）。 */
/* ヘッダーの上の細い帯。地の色と左右の余白はヘッダー（.site-header）にそろえる */
.language-switch { position: relative; display: block; padding: 8px 5% 0; background: var(--ink); color: var(--paper); text-align: right; font-size: 12px; letter-spacing: 0.06em; }
.language-switch summary { display: inline-flex; align-items: center; min-height: 32px; padding: 0 12px; cursor: pointer; border: 1px solid rgba(246, 244, 237, 0.45); list-style: none; }
.language-switch summary::-webkit-details-marker { display: none; }
.language-switch summary::after { content: '▾'; margin-left: 6px; }
.language-switch[open] summary, .language-switch summary:hover { border-color: var(--copper); }
.language-switch .language-nav { position: absolute; right: 5%; top: calc(100% + 8px); z-index: 60; display: flex; flex-wrap: wrap; gap: 2px 16px; width: min(86vw, 30rem); padding: 12px 16px; background: var(--paper); color: var(--ink); border: 1px solid var(--border); box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18); text-align: left; letter-spacing: 0; font-size: 14px; }
.language-switch .language-nav a { display: inline-flex; align-items: center; min-height: 40px; }
.language-switch .language-nav a:hover, .language-switch .language-nav a[aria-current] { text-decoration: underline; text-decoration-color: var(--copper); text-underline-offset: 4px; }
.language-switch .language-nav a[aria-current] { font-weight: 700; }
.translated-page .site-header > nav { gap: 24px; }
.translated-page h1, .translated-page h2, .translated-page h3, .translated-page p, .translated-page dd { overflow-wrap: break-word; }
/* 韓国語は語（分かち書きの単位）の途中で改行しない */
.translated-page:lang(ko) { word-break: keep-all; }
/* 中国語の見出しは句読点で改行する（大きな文字で「品一／杯酒」のように語の途中で折れないように）。句読点の無い長い見出しは overflow-wrap で折れる */
.translated-page:lang(zh) h1, .translated-page:lang(zh) h2, .translated-page:lang(zh) h3 { word-break: keep-all; }
/* ベトナム語は見出しの日本語の明朝体（h1・h2）だと声調記号がずれる（記号つきの文字が無く、分けて重ねた記号の位置が合わない）。記号を持つ欧文の明朝体にする */
.translated-page:lang(vi) h1, .translated-page:lang(vi) h2 { font-family: 'Times New Roman', 'Noto Serif', serif; }
/* 3ページの言語（お食事・店舗案内）の日本語原文の併記 */
.translation-original { margin-top: 64px; padding-top: 32px; padding-bottom: 32px; border-top: 2px solid var(--border); }
.translation-original-head { margin: 0 0 24px; font-size: 18px; letter-spacing: 0.08em; }
@media (max-width: 680px) {
  .language-switch { padding: 6px 6% 0; }
  .language-switch .language-nav { right: 6%; width: min(88vw, 22rem); }
  .translated-page .site-header > nav { gap: 14px; }
}
