
.tn-lang-flags{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
}
.tn-lang-flag{
  width:38px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #dfe6e2;
  border-radius:9px;
  background:#fff;
  overflow:hidden;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.tn-lang-flag:hover{
  border-color:#ff7a1a;
  transform:translateY(-1px);
}
.tn-lang-flag.is-current{
  border:2px solid #ff7a1a;
  box-shadow:0 0 0 3px rgba(255,122,26,.12);
}
.tn-lang-flag img{
  display:block;
  width:24px !important;
  height:auto !important;
  max-width:24px !important;
}
.tn-lang-flag span{
  font-size:11px;
  font-weight:800;
  color:#064b35;
}
@media (max-width:760px){
  .tn-lang-flags{gap:6px}
  .tn-lang-flag{width:34px;height:28px}
  .tn-lang-flag img{width:22px !important;max-width:22px !important}
}

/* v1.2: Polylang raw flag values are image URLs */
.tn-lang-flag img{
  width:24px !important;
  height:16px !important;
  object-fit:cover;
  border-radius:2px;
}

/* v1.8 compact flags: supports 5+ languages without pushing header width */
.tn-lang-flags{
  gap:4px !important;
  flex:0 0 auto;
  white-space:nowrap;
}
.tn-lang-flag{
  width:32px !important;
  height:28px !important;
  border-radius:8px !important;
  padding:0 !important;
}
.tn-lang-flag img{
  width:22px !important;
  height:15px !important;
  max-width:22px !important;
}
@media(max-width:520px){
  .tn-lang-flags{gap:3px!important}
  .tn-lang-flag{width:29px!important;height:26px!important}
  .tn-lang-flag img{width:20px!important;height:14px!important}
}
