/* Il selettore della lingua con le bandiere (assets/lang.js): landing, link, 404 e web app.
   Il tasto è una capsula di vetro alta 40 come gli altri della testata; il menu, un pannello
   scuro di vetro sotto (o sopra, con `.lp--up`) allineato a destra. */
.lp { position: relative; display: inline-flex; flex: none; }
.lp__btn {
  display: inline-flex; align-items: center; gap: 7px; height: 40px; padding: 0 11px 0 9px; border: 0; border-radius: 100px;
  font: 700 13px/1 -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif; letter-spacing: .3px;
  color: rgba(255, 255, 255, .9); cursor: pointer;
  background: rgba(255, 255, 255, .08);
  -webkit-backdrop-filter: blur(14px) saturate(1.7); backdrop-filter: blur(14px) saturate(1.7);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .14), inset 0 1.5px .5px -.5px rgba(255, 255, 255, .4);
}
.lp__btn:hover { color: #fff; background: rgba(255, 255, 255, .13); }
.lp__btn:focus-visible, .lp__opt:focus-visible { outline: 2px solid #E8A9FF; outline-offset: 2px; }
.lp__flag { width: 22px; height: 16.5px; flex: none; border-radius: 4px; overflow: hidden; box-shadow: 0 0 0 1px rgba(255, 255, 255, .22); }
.lp__chev { width: 12px; height: 12px; flex: none; opacity: .7; transition: transform .2s; }
.lp.is-open .lp__chev { transform: rotate(180deg); }
.lp--compact .lp__code { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.lp__menu {
  position: absolute; z-index: 300; top: calc(100% + 8px); right: 0; min-width: 184px;
  display: grid; gap: 2px; padding: 6px; border-radius: 20px;
  background: rgba(28, 15, 43, .94);
  -webkit-backdrop-filter: blur(20px) saturate(1.4); backdrop-filter: blur(20px) saturate(1.4);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12), 0 18px 40px rgba(0, 0, 0, .45);
  animation: lp-in .16s ease-out;
}
.lp--up .lp__menu { top: auto; bottom: calc(100% + 8px); }
.lp__menu[hidden] { display: none !important; }
@keyframes lp-in { from { opacity: 0; transform: translateY(-4px); } }
.lp--up .lp__menu { animation-name: lp-in-up; }
@keyframes lp-in-up { from { opacity: 0; transform: translateY(4px); } }
.lp__opt {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 44px; padding: 0 12px; border: 0; border-radius: 14px;
  font: 600 15px/1.2 -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;
  color: rgba(255, 255, 255, .86); background: none; cursor: pointer; text-align: left;
}
.lp__opt:hover { color: #fff; background: rgba(255, 255, 255, .08); }
.lp__opt[aria-checked="true"] { color: #fff; background: rgba(145, 98, 255, .22); }
.lp__opt span { flex: 1; }
.lp__ok { width: 16px; height: 16px; flex: none; color: #E8A9FF; visibility: hidden; }
.lp__opt[aria-checked="true"] .lp__ok { visibility: visible; }
@media (prefers-reduced-motion: reduce) { .lp__menu { animation: none; } .lp__chev { transition: none; } }
