/* Language switcher - shared by the public site and the back office */
.lang-switch{position:relative;display:inline-block;font-size:13px;z-index:60}
.lang-switch>summary{list-style:none;display:flex;align-items:center;gap:7px;cursor:pointer;
  padding:7px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;
  color:var(--ink);font-weight:600;white-space:nowrap;user-select:none;transition:border-color .18s,box-shadow .18s}
.lang-switch>summary::-webkit-details-marker{display:none}
.lang-switch>summary::marker{content:""}
.lang-switch>summary:hover,.lang-switch[open]>summary{border-color:var(--green);box-shadow:0 0 0 3px rgba(127,166,80,.14)}
.lang-globe svg{width:16px;height:16px;display:block;color:var(--green)}
.lang-current{min-width:18px;text-align:center}
.lang-caret{font-size:9px;color:var(--muted);line-height:1}
.lang-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:#fff;
  border:1px solid var(--line);border-radius:10px;padding:6px;
  max-height:min(85vh,620px);overflow-y:auto;overscroll-behavior:contain;
  box-shadow:0 14px 38px rgba(18,51,42,.16);z-index:300}
.lang-menu a{display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:9px 10px;border-radius:7px;color:var(--text)}
.lang-menu a:hover{background:var(--cream)}
.lang-menu a.active{background:var(--lime);color:var(--ink)}
.lang-menu a span{font-weight:600;line-height:1.3}
.lang-menu a small{display:block;font-size:11px;color:var(--muted);font-weight:400;letter-spacing:.01em}
.lang-menu a b{color:var(--ink);font-size:13px}
.lang-menu a em{font-style:normal;font-size:11px;color:var(--muted)}
/* Dark footer variant */
.site-footer .lang-switch>summary{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.24);color:#fff}
.site-footer .lang-caret,.site-footer .lang-menu a small{color:rgba(255,255,255,.62)}
.site-footer .lang-menu{background:#fff;color:var(--text)}
.site-footer .lang-menu a small{color:var(--muted)}
.site-footer .lang-switch>summary:hover{border-color:var(--green-2)}
@media (max-width:600px){
  .lang-switch>summary{padding:6px 9px;font-size:12px}
  .lang-menu{min-width:172px}
  .site-footer .lang-switch{margin-top:10px}
  .footer-bottom{flex-wrap:wrap;gap:10px}
}
