.language-trigger { display: inline-flex; align-items: center; gap: 8px; margin-left: auto; padding: 10px 14px; color: var(--ink); border: 1px solid var(--line); border-radius: 100px; background: var(--page); font-weight: 700; white-space: nowrap; }
.language-trigger:hover, .language-trigger:focus-visible { color: var(--accent); border-color: var(--accent); }
.language-dialog { width: min(520px, calc(100% - 32px)); max-height: calc(100dvh - 40px); margin: auto; padding: 28px; border: 1px solid var(--line); border-radius: 24px; color: var(--ink); background: var(--page); box-shadow: 0 30px 100px #0005; }
.language-dialog::backdrop { background: #15100dcc; backdrop-filter: blur(5px); }
.language-dialog-open { overflow: hidden; }
.language-dialog-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.language-kicker { color: var(--accent); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.language-dialog h2 { font-size: clamp(24px, 4vw, 32px); margin: 5px 0 0; }
.language-dialog-heading button { display: grid; place-items: center; width: 40px; height: 40px; flex: 0 0 40px; padding: 9px; background: transparent; color: var(--ink); border: 1px solid var(--line); border-radius: 50%; }
.language-options { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; }
.language-options a { display: flex; align-items: center; gap: 16px; padding: 16px 18px; color: var(--ink); font-size: 19px; font-weight: 700; background: var(--surface); }
.language-options a + a { border-top: 1px solid var(--line); }
.language-options a:hover, .language-options a:focus-visible { background: var(--page); color: var(--accent); }
.language-options a[aria-current] { color: var(--accent); background: #e51b230a; }
.language-options small { display: block; color: var(--muted); font-size: 11px; font-weight: 500; margin-top: 1px; }
.language-symbol { width: 25px; text-align: center; font-size: 24px; }
.language-radio { width: 22px; height: 22px; margin-left: auto; flex: 0 0 22px; border: 2px solid currentColor; border-radius: 50%; }
.language-options [aria-current] .language-radio { box-shadow: inset 0 0 0 4px var(--page); background: var(--accent); }
.translation-notice { padding: 12px 18px; margin-bottom: 24px; border-left: 3px solid var(--accent); background: #e51b2308; color: var(--muted); font-size: 14px; }
.translation-notice a { margin-left: 8px; text-decoration: underline; }
.managed-content { overflow-wrap: anywhere; line-height: 1.85; }
.managed-content h1 { margin-top: 0; }
.managed-content h2, .managed-content h3 { margin-top: 1.5em; }
.managed-content details { margin: 12px 0; padding: 0 22px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.managed-content summary { cursor: pointer; padding: 18px 0; font-weight: 700; line-height: 1.6; }
.managed-content details[open] summary { color: var(--accent); }
.managed-content table { display: block; max-width: 100%; overflow-x: auto; }
.managed-content td, .managed-content th { padding: 12px; border: 1px solid var(--line); }
.managed-page-extra:empty { display: none; }
@media (max-width: 767px) {
    .language-trigger { font-size: 13px; padding: 8px 11px; }
    .language-dialog { padding: 20px; border-radius: 20px; }
    .language-options a { padding: 13px 16px; }
}
