/* Language switcher, machine-translation notice, per-script typography and RTL fixes. */
.page-nav.has-lang .page-nav__inner { padding-inline-end: 5.75rem; }
.lang-switcher { position: absolute; inset-block: 0; inset-inline-end: max(4%, calc((100% - var(--column, 60rem)) / 2)); display: flex; align-items: center; z-index: 30; }
.lang-switcher__btn { display: inline-flex; align-items: center; gap: .4rem; min-height: 2.5rem; padding: 0 .65rem; font: inherit; font-size: .875rem; font-weight: 600; color: var(--ink, #1b2430); background: var(--paper-raised, #f7f8f4); border: .0625rem solid var(--rule, #a9b0a7); border-radius: .5rem; cursor: pointer; }
.lang-switcher__btn:hover { border-color: var(--archive, #2e4a6b); }
.lang-switcher__btn:focus-visible, .lang-switcher__menu a:focus-visible { outline: .1875rem solid var(--archive, #2e4a6b); outline-offset: .125rem; }
.lang-switcher__btn svg { width: 1.1rem; height: 1.1rem; flex: none; }
.page-nav .lang-switcher__menu { position: absolute; top: calc(100% - .25rem); inset-inline-end: 0; width: min(24rem, calc(100vw - 2rem)); max-height: calc(100vh - 6rem); overflow-y: auto; margin: 0; padding: .5rem; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: .125rem .25rem; background: #fff; border: .0625rem solid var(--rule, #a9b0a7); border-radius: .875rem; box-shadow: 0 .75rem 2rem rgba(27, 36, 48, .18); }
.page-nav .lang-switcher__menu[hidden] { display: none; }
.page-nav .lang-switcher__menu li { margin: 0; min-width: 0; }
.page-nav .lang-switcher__menu a, .page-nav .lang-switcher__menu span.is-soon { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-height: 2.75rem; margin: 0; padding: 0 .75rem; border-radius: .6rem; border: .125rem solid transparent; color: var(--ink, #1b2430); font-size: 1rem; line-height: 1.2; text-decoration: none; white-space: nowrap; }
.page-nav .lang-switcher__menu a:hover { background: #eef0eb; color: var(--ink, #1b2430); }
.page-nav .lang-switcher__menu a[aria-current="true"] { background: #e4e9f0; border-color: var(--archive, #2e4a6b); color: var(--ink, #1b2430); font-weight: 700; }
.page-nav .lang-switcher__menu span.is-soon { color: #8a919c; cursor: default; }
.lang-switcher__code { font-size: .75rem; font-weight: 700; letter-spacing: .06em; color: var(--ink-soft, #4a5361); }
.i18n-notice { padding: .5rem 4%; font-size: .875rem; text-align: center; background: #e4e9f0; color: var(--ink, #1b2430); border-bottom: .0625rem solid var(--rule, #a9b0a7); }
.i18n-notice a { color: var(--archive, #2e4a6b); text-decoration: underline; }
@media (max-width: 30rem) { .page-nav .lang-switcher__menu { grid-template-columns: 1fr; } .page-nav.has-lang .page-nav__inner { padding-inline-end: 4.5rem; } .lang-switcher__label { display: none; } }
:lang(ar) { --font-body: "Segoe UI", Tahoma, "Geeza Pro", "Noto Sans Arabic", Arial, sans-serif; --font-display: "Noto Naskh Arabic", "Geeza Pro", "Times New Roman", serif; line-height: 1.85; }
:lang(zh-Hans) { --font-body: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif; --font-display: "Songti SC", "Noto Serif CJK SC", "PingFang SC", serif; }
:lang(ja) { --font-body: "Hiragino Sans", "Yu Gothic", "Meiryo", "Noto Sans CJK JP", sans-serif; --font-display: "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif CJK JP", serif; }
:lang(ko) { --font-body: "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans CJK KR", sans-serif; --font-display: "AppleMyungjo", "Noto Serif CJK KR", "Malgun Gothic", serif; }
:lang(zh-Hans) .redact, :lang(ja) .redact, :lang(ko) .redact { letter-spacing: 0; }
[dir="rtl"] .p--main > ol > li { padding: 1.25rem 16rem 1.25rem 0; }
[dir="rtl"] .p--main > ol > li > strong:first-child { left: auto; right: 0; }
[dir="rtl"] .p--main { text-align: right; }
@media (max-width: 47.9375rem) { [dir="rtl"] .p--main > ol > li { padding-right: 0; } }
