/* Shared locale UI. All language links work without JavaScript. */
.language-picker { position: relative; flex-shrink: 0; font: var(--font-subheadline); }
.language-picker summary { display: flex; align-items: center; gap: 7px; min-height: 44px; padding: 8px 10px; border-radius: 8px; color: var(--link); cursor: pointer; list-style: none; white-space: nowrap; }
.language-picker summary::-webkit-details-marker { display: none; }
.language-picker summary::after { content: ''; width: 6px; height: 6px; margin-inline-start: 4px; border-inline-end: 1.5px solid currentColor; border-block-end: 1.5px solid currentColor; transform: rotate(45deg); }
.language-picker summary:hover, .language-picker[open] summary { background: var(--fill-tertiary); }
.language-picker summary:focus-visible { outline: 2px solid var(--link); outline-offset: 2px; }
.language-picker ul { position: absolute; inset-inline-end: 0; inset-block-start: calc(100% + 8px); z-index: 30; width: 256px; max-width: calc(100vw - 40px); max-height: calc(100dvh - 100px); overflow-y: auto; margin: 0; padding: 8px; list-style: none; background: var(--bg-primary, #fff); border: 1px solid var(--separator-opaque, #ddd); border-radius: 16px; box-shadow: 0 12px 40px #0002; }
.language-picker li { margin: 0; padding: 0; }
.site-navigation .language-picker a { justify-content: flex-start; min-height: 40px; width: 100%; padding: 9px 12px; border-radius: 8px; color: var(--label-primary); white-space: normal; font: 400 15px/1.45 system-ui, sans-serif; }
.site-navigation .language-picker a:hover { background: var(--fill-tertiary); }
.site-navigation .language-picker a[aria-current] { color: var(--link); background: rgba(0,122,255,.08); font-weight: 600; }
.site-navigation .language-picker a[aria-current]::after { content: '✓'; margin-inline-start: auto; padding-inline-start: 12px; }
html:not(:lang(en)) .guide-hero h1 { font-size: clamp(32px, 4.8vw, 54px); line-height: 1.2; overflow-wrap: anywhere; }
html:not(:lang(en)) .landing-hero h1 { font-size: clamp(32px, 4.4vw, 44px) !important; line-height: 1.2 !important; overflow-wrap: anywhere; }
html:not(:lang(en)) .site-navigation { gap: 2px; }
html:not(:lang(en)) .site-navigation > a { padding-inline: 8px; font-size: 14px; }
html:not(:lang(en)) .directory-controls { grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr); }
html:not(:lang(en)) .directory-heading p { flex-shrink: 0; }
html:not(:lang(en)) .hero-phone-title { font-size: 23px; line-height: 1.45; }
html:not(:lang(en)) .hero-phone-empty { font-size: 14px; }
html:not(:lang(en)) main { overflow-wrap: break-word; }
html:lang(es) .guide-article th, html:lang(es) .guide-article td { padding-inline: 8px; }
html:lang(es) .guide-article th[scope="row"] { width: 38%; }
html:is(:lang(ja), :lang(zh), :lang(ko), :lang(hi), :lang(ar)) h1,
html:is(:lang(ja), :lang(zh), :lang(ko), :lang(hi), :lang(ar)) h2,
html:is(:lang(ja), :lang(zh), :lang(ko), :lang(hi), :lang(ar)) h3,
html:is(:lang(ja), :lang(zh), :lang(ko), :lang(hi), :lang(ar)) p,
html:is(:lang(ja), :lang(zh), :lang(ko), :lang(hi), :lang(ar)) .eyebrow,
html:is(:lang(ja), :lang(zh), :lang(ko), :lang(hi), :lang(ar)) .category { letter-spacing: normal !important; }
html:is(:lang(hi), :lang(ar)) h2, html:is(:lang(hi), :lang(ar)) h3 { line-height: 1.4; }
html:is(:lang(hi), :lang(ar)) .landing-hero h1 { line-height: 1.4 !important; }
html:lang(ja), html:lang(ja) [data-theme] { --font-text: -apple-system, BlinkMacSystemFont, 'Hiragino Kaku Gothic ProN', 'Yu Gothic', Meiryo, sans-serif; --font-display: var(--font-text); }
html:lang(zh-Hans), html:lang(zh-Hans) [data-theme] { --font-text: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Microsoft YaHei', sans-serif; --font-display: var(--font-text); }
html:lang(zh-Hant), html:lang(zh-Hant) [data-theme] { --font-text: -apple-system, BlinkMacSystemFont, 'PingFang TC', 'Microsoft JhengHei', sans-serif; --font-display: var(--font-text); }
html:lang(ko), html:lang(ko) [data-theme] { --font-text: -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif; --font-display: var(--font-text); }
html:lang(ko) main { word-break: keep-all; }
html:lang(hi), html:lang(hi) [data-theme] { --font-text: -apple-system, BlinkMacSystemFont, 'Kohinoor Devanagari', 'Nirmala UI', sans-serif; --font-display: var(--font-text); }
html:lang(ar), html:lang(ar) [data-theme] { --font-text: -apple-system, BlinkMacSystemFont, 'Geeza Pro', Tahoma, sans-serif; --font-display: var(--font-text); }
html[dir='rtl'] .site-brand { direction: ltr; }
html:lang(ar) .site-navigation > a, html:lang(ar) .language-picker summary { font-size: 16px; }
html[dir='rtl'] .guide-card-arrow { transform: scaleX(-1); }
html[dir='rtl'] .support-email { direction: ltr; unicode-bidi: isolate; }
html[dir='rtl'] .guide-article a[href='https://apps.apple.com/app/id6813260315'] { white-space: nowrap; unicode-bidi: isolate; }
html[dir='rtl'] .guide-article strong, html[dir='rtl'] .guide-lead strong { unicode-bidi: plaintext; }
html[dir='rtl'] .privacy-details-link span { display: inline-block; transform: scaleX(-1); margin-left: 0; margin-right: 4px; }
html[dir='rtl'] .privacy-zero-number { padding-right: 0; padding-left: 12px; }
html[dir='rtl'] .hero-auth-code { text-align: right; unicode-bidi: isolate; }
html[dir='rtl'] .language-picker summary::after { transform: rotate(-45deg); }
/* The device artwork stays in its original orientation; text follows the locale. */
html[dir='rtl'] .hero-phone-stage { direction: ltr; }
html[dir='rtl'] .hero-phone-screen { direction: rtl; }
@media (max-width: 900px) {
  .language-picker summary { padding: 12px; }
  .language-picker ul { position: static; width: 100%; max-width: none; max-height: none; box-shadow: none; border: 0; padding-inline: 8px; }
  .site-navigation .language-picker a { min-height: 44px; }
}
@media (max-width: 600px) {
  html:not(:lang(en)) .directory-controls { grid-template-columns: 1fr; }
  html:not(:lang(en)) .guide-hero { padding-block: 48px 36px; }
  html:not(:lang(en)) .landing-hero h1 { font-size: 34px !important; }
  html:not(:lang(en)) .privacy-features h2, html:not(:lang(en)) .privacy-statement h2, html:not(:lang(en)) .support-section h2 { font-size: 34px; }
}
