/* Selector de idioma (details/summary + menú). Escala a 7-8 idiomas: el menú hace scroll si no cabe. */
.langsel{position:relative;display:inline-block}
.langsel>summary{list-style:none;display:inline-flex;align-items:center;gap:6px;min-height:36px;min-width:44px;padding:6px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.16);background:rgba(20,20,28,.85);color:#f2f2f7;cursor:pointer;line-height:1;user-select:none}
.langsel>summary::-webkit-details-marker{display:none}
.langsel>summary::marker{content:""}
.langsel>summary:hover{background:rgba(40,40,55,.95)}
.langsel>summary:focus-visible,.langsel-menu a:focus-visible{outline:2px solid #8ab4ff;outline-offset:2px}
.langsel img{display:block;border-radius:3px;box-shadow:0 0 0 1px rgba(255,255,255,.18);object-fit:cover}
.langsel-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.75;transition:transform .15s}
.langsel[open] .langsel-caret{transform:rotate(180deg)}
.langsel-menu{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:1000;margin:0;padding:6px;list-style:none;min-width:180px;max-height:min(70vh,360px);overflow-y:auto;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#14141c;box-shadow:0 12px 32px rgba(0,0,0,.5)}
.langsel-menu li{margin:0}
.langsel-menu a{display:flex;align-items:center;gap:10px;padding:10px 12px;min-height:44px;box-sizing:border-box;border-radius:8px;color:#f2f2f7;text-decoration:none;font-size:15px;white-space:nowrap}
.langsel-menu a:hover,.langsel-menu a:focus{background:rgba(255,255,255,.08)}
.langsel-menu a[aria-current]{background:rgba(138,180,255,.14);font-weight:600}
.langsel-menu a[aria-current]::after{content:"✓";margin-inline-start:auto;opacity:.8}
@media (max-width:560px){.langsel-menu{min-width:170px}}
/* Aislar de estilos genéricos de details/summary (FAQ) y de nav a (ocultación en móvil). */
details.langsel{padding:0;border-radius:0;background:none;border:0;box-shadow:none;margin-inline-start:4px}
details.langsel>summary{padding:6px 10px;font-size:13px;font-weight:400;justify-content:flex-start}
details.langsel>summary::after{content:none!important;display:none}
nav .langsel-menu a,nav .langsel-menu a:not(.lang){display:flex!important;padding:10px 12px;font-size:15px;border:0;color:#f2f2f7}
