/* Seletor de idioma do topo (inc/i18n.php, fm_lang_switcher). Fica em .topnav-lang (inc/menu.php, v27):
   no fim da barra no computador e ao lado do botão "Menu" no celular. Mesmas cores do menu. */
.lang-sw { position: relative; }
.lang-sw summary { display: flex; align-items: center; gap: 5px; padding: 6px 9px 6px 10px; border-radius: 999px; color: var(--night-ink-2, #C9C4EE); font: 700 .84rem var(--f-body, sans-serif); letter-spacing: .04em; cursor: pointer; list-style: none; user-select: none; transition: background .15s, color .15s; }
.lang-sw summary::-webkit-details-marker { display: none; }
.lang-sw summary:hover, .lang-sw[open] summary { background: rgba(255, 255, 255, .09); color: var(--night-ink, #F4F1FF); }
.lang-sw summary:focus-visible { outline: 2px solid var(--sun, #F6C453); outline-offset: 2px; }
.lang-sw svg { flex: none; width: 18px; height: 18px; fill: none; stroke: var(--sun, #F6C453); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.lang-sw .lang-caret { width: 14px; height: 14px; margin-left: -2px; stroke: var(--night-ink-2, #C9C4EE); transition: transform .15s; }
.lang-sw[open] .lang-caret { transform: rotate(180deg); }
.lang-list { position: absolute; top: calc(100% + 8px); right: 0; z-index: 25; min-width: 170px; margin: 0; padding: 6px; list-style: none; border-radius: 14px; background: #141c5c; border: 1px solid rgba(255, 255, 255, .14); box-shadow: 0 18px 40px rgba(4, 8, 40, .45); }
.lang-list a { display: flex; align-items: center; gap: 10px; padding: 9px 11px; border-radius: 10px; color: var(--night-ink, #F4F1FF); text-decoration: none; font-weight: 600; font-size: .92rem; white-space: nowrap; }
.lang-list a:hover { background: rgba(255, 255, 255, .08); }
.lang-list a:focus-visible { outline: 2px solid var(--sun, #F6C453); outline-offset: -2px; }
.lang-list b { display: inline-grid; place-items: center; min-width: 28px; height: 22px; border-radius: 6px; background: rgba(255, 255, 255, .08); color: var(--night-ink-2, #C9C4EE); font-size: .72rem; letter-spacing: .06em; }
.lang-list a[aria-current="true"] { background: rgba(246, 196, 83, .14); box-shadow: inset 0 0 0 1px rgba(246, 196, 83, .45); }
.lang-list a[aria-current="true"] b { background: var(--sun, #F6C453); color: #1A1F4B; }
/* Fora do menu v27 (topo sem .topnav-lang): o seletor vai para o canto da barra */
.topbar > .lang-sw { margin-left: auto; }
@media (max-width: 1060px) {
  .lang-sw summary { padding: 7px 10px; border: 1px solid rgba(255, 255, 255, .28); background: rgba(255, 255, 255, .06); color: var(--night-ink, #F4F1FF); }
  .lang-sw .lang-caret { display: none; }
}

/* Aviso nos guias que ainda não têm tradução (texto original em português) */
.lang-note { margin: 0 0 18px; padding: 12px 16px; border-radius: 12px; background: var(--surface-2, #F3F1FF); border: 1px solid var(--line, #E2DFF5); color: var(--ink-2, #5D6290); font-size: .92rem; }
.lang-note a { color: var(--lagoon, #3D4FD6); font-weight: 700; }
