#asLangOverlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
  z-index: 999999;
}

#asLangOverlay .asLangModal{
  width: min(520px, 100%);
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.08);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

#asLangOverlay .asLangHead{
  padding: 18px 18px 12px 18px;
  background: linear-gradient(180deg, rgba(30,64,175,.10), rgba(30,64,175,0));
}

#asLangOverlay .asLangLogo{
  font-weight: 900;
  font-size: 20px;
  letter-spacing: .2px;
}

#asLangOverlay .asLangSmall{
  margin-top: 6px;
  opacity: .75;
  font-size: 13px;
}

#asLangOverlay .asLangBtns{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  padding: 16px 18px 10px 18px;
}

#asLangOverlay .asLangBtn{
  cursor: pointer;
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
  border-radius: 14px;
  padding: 14px 12px;
  font-weight: 900;
  font-size: 16px;
  text-align: left;
  transition: transform .06s ease, box-shadow .12s ease, border-color .12s ease;
}

#asLangOverlay .asLangBtn:hover{
  border-color: rgba(30,64,175,.35);
  box-shadow: 0 10px 24px rgba(0,0,0,.10);
  transform: translateY(-1px);
}

#asLangOverlay .asLangSub{
  display: block;
  margin-top: 6px;
  font-weight: 600;
  font-size: 12px;
  opacity: .75;
}

#asLangOverlay .asLangFoot{
  padding: 10px 18px 16px 18px;
  opacity: .75;
}
@media (max-width: 520px){
  #asLangOverlay .asLangBtns{ grid-template-columns: 1fr; }
}
