.dpma-language-picker{position:relative;display:inline-flex;flex:0 0 auto;z-index:90}
.dpma-language-trigger,.dpma-language-option{position:relative;display:block;width:28px;height:18px;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:4px;overflow:hidden;background:#17233d;box-shadow:0 1px 4px rgba(15,23,42,.2);cursor:pointer}
.dpma-language-flag-image{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;filter:grayscale(1) brightness(.58);transition:filter .16s ease,transform .16s ease}
.dpma-language-flag-code{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:9px;font-weight:900;line-height:1;letter-spacing:.04em;text-shadow:0 1px 3px #000,0 0 5px #000;transition:opacity .16s ease}
.dpma-language-trigger:hover .dpma-language-flag-image,.dpma-language-trigger:focus-visible .dpma-language-flag-image,.dpma-language-option:hover .dpma-language-flag-image,.dpma-language-option:focus-visible .dpma-language-flag-image{filter:none;transform:scale(1.03)}
.dpma-language-trigger:hover .dpma-language-flag-code,.dpma-language-trigger:focus-visible .dpma-language-flag-code,.dpma-language-option:hover .dpma-language-flag-code,.dpma-language-option:focus-visible .dpma-language-flag-code{opacity:0}
.dpma-language-trigger:focus-visible,.dpma-language-option:focus-visible{outline:3px solid #6ea8fe;outline-offset:2px}
.dpma-language-menu{position:absolute;top:calc(100% + 7px);right:0;display:flex;gap:7px;padding:8px;background:#fff;border:1px solid #d8e1ee;border-radius:10px;box-shadow:0 12px 30px rgba(15,23,42,.22);z-index:1000}
.dpma-language-menu[hidden]{display:none}
.dpma-language-option{width:38px;height:23px;border-color:#cbd5e1}
.dpma-language-option.is-selected{outline:2px solid #3f63df;outline-offset:1px}
.sidebar-logo>.dpma-language-picker{margin-left:auto}
.auth-head>.dpma-language-picker{position:absolute;right:0;top:50%;transform:translateY(-50%)}
.public-flow-top>.dpma-language-picker,.op-header>.dpma-language-picker,.tm-toolbar-right>.dpma-language-picker{margin-left:auto}
.tm-toolbar-right .dpma-language-trigger{width:28px;height:18px;border-radius:4px}
.tm-toolbar-right .dpma-language-menu{right:0}
.tm-top-actions>.dpma-language-picker{margin-left:auto}
.tm-top-actions .dpma-language-trigger{width:28px;height:18px;border-radius:4px}
.tm-top-actions .dpma-language-menu{right:0}
.credential-language-picker{position:absolute;right:22px;top:20px}
.dpma-language-picker.is-busy{opacity:.65;pointer-events:none}
@media(max-width:560px){.dpma-language-trigger{width:28px;height:18px}
.dpma-language-option{width:38px;height:23px}
.dpma-language-menu{padding:7px;gap:6px}
}

/* TM: compact icon frame with the flag centred inside it. */
.tm-top-actions .dpma-language-trigger{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  overflow:visible;
  border:1px solid #cbd5e1;
  border-radius:8px;
  background:#fff;
  box-shadow:0 2px 8px rgba(15,23,42,.14);
}
.tm-top-actions .dpma-language-trigger .dpma-language-flag-image{
  inset:auto;
  left:50%;
  top:50%;
  width:20px;
  height:13px;
  border-radius:2px;
  box-shadow:0 0 0 1px rgba(15,23,42,.2);
  transform:translate(-50%,-50%);
}
.tm-top-actions .dpma-language-trigger .dpma-language-flag-code{
  font-size:8px;
}
.tm-top-actions .dpma-language-trigger:hover .dpma-language-flag-image,
.tm-top-actions .dpma-language-trigger:focus-visible .dpma-language-flag-image{
  transform:translate(-50%,-50%) scale(1.04);
}
