/* Shared language picker; the standard publisher inlines this stylesheet. */
.language-menu { position: relative; flex-shrink: 0; }
.language-menu > summary { display: flex; gap: 5px; cursor: pointer; list-style: none; user-select: none; }
.language-menu > summary::-webkit-details-marker { display: none; }
.language-menu > summary::marker { content: ""; }
.language-menu > summary svg { width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.language-menu[open] > summary svg { transform: rotate(180deg); }
.language-options {
  position: absolute; z-index: 50; top: calc(100% + 8px); right: 0; min-width: 160px; max-width: calc(100vw - 40px);
  max-height: min(360px, calc(100dvh - 80px)); overflow-y: auto; padding: 5px;
  border: 1px solid var(--line); border-radius: 9px; background: var(--panel); box-shadow: var(--shadow);
}
.language-options a { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 8px 10px; border-radius: 5px; color: var(--ink-2); font-size: 14px; text-decoration: none; white-space: nowrap; }
.language-options a:hover, .language-options a:focus-visible { color: var(--ink); background: var(--panel-2); text-decoration: none; }
.language-options a[aria-current] { color: var(--ink); font-weight: 600; }
.language-menu > summary:focus-visible { outline: 2px solid var(--signal); outline-offset: 2px; }
