/* Language switcher, suggestion banner and per-language font stacks. Uses existing theme variables only. */
.ve-lang{position:relative;display:inline-block}
.ve-nav-actions .ve-lang .ve-lang__btn{padding:0 12px}
.ve-lang__btn .fad{margin:0 8px 0 0;font-size:.9375rem}
.ve-lang__btn{position:relative;display:inline-flex;align-items:center;justify-content:flex-start;min-width:150px;white-space:nowrap}
.ve-lang__btn .arrow{font-size:.75rem}
.ve-lang__btn[aria-expanded="true"] .arrow{transform:translateY(-50%) rotate(180deg)}
[dir=rtl] .ve-lang__btn{padding-right:12px!important;padding-left:40px!important}
[dir=rtl] .ve-lang__btn .arrow{right:auto!important;left:10px!important}
.ve-lang__menu{min-width:100%;width:max-content;max-width:calc(100vw - 32px);max-height:70vh;overflow-y:auto;margin-top:6px;background:var(--ve-surface-2,#1e2024);border:1px solid var(--ve-line,rgba(255,255,255,.1));border-radius:var(--ve-radius-sm,6px);padding:6px 0}
.ve-lang__menu .dropdown-item{display:flex;align-items:center;color:var(--ve-text,#d4d6db);padding:7px 14px;white-space:nowrap}
.ve-lang__menu .dropdown-item:hover,.ve-lang__menu .dropdown-item:focus{background:var(--ve-hover,rgba(255,255,255,.06));color:var(--ve-text-strong,#fff)}
.ve-lang__menu .dropdown-item.active{background:var(--ve-accent-soft,rgba(108,148,255,.14));color:var(--ve-accent-fg,#6c94ff)}
@media (max-width:991.98px){.ve-nav-actions .ve-lang{flex:1 1 100%;order:3}.ve-nav-actions .ve-lang .btn{width:100%}.ve-lang__menu{position:static!important;transform:none!important;float:none;width:100%;max-width:none;max-height:max(120px,calc(100vh - 560px));overflow-y:auto;margin:6px 0 0;box-shadow:none}}
.ve-lang-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px 16px;margin-top:14px;padding-top:12px;border-top:1px solid var(--ve-line,rgba(255,255,255,.1));font-size:.8125rem}
.ve-lang-footer .fad{color:var(--ve-text-muted,#8d919b)}
.ve-lang-footer a{color:var(--ve-text-muted,#8d919b)}
.ve-lang-footer a:hover,.ve-lang-footer a.active{color:var(--ve-accent-fg,#6c94ff);text-decoration:none}
@media (max-width:767.98px){.ve-lang-footer{justify-content:center}}
.ve-lang-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:1040;max-width:560px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding:12px 16px;background:var(--ve-surface-2,#1e2024);color:var(--ve-text-strong,#fff);border:1px solid var(--ve-line-strong,rgba(255,255,255,.18));border-radius:var(--ve-radius,10px);box-shadow:0 8px 28px rgba(0,0,0,.35);font-size:.875rem}
.ve-lang-banner span{flex:1 1 220px}
/* Font stacks: system fonts first, Noto families only if already installed (no webfont downloads). */
html[lang^="ar"] body,html[lang^="ar"] .btn,html[lang^="ar"] input,html[lang^="ar"] select,html[lang^="ar"] textarea{font-family:"Segoe UI",Tahoma,"Noto Naskh Arabic","Noto Sans Arabic","Geeza Pro","Droid Arabic Naskh",Arial,sans-serif}
html[lang^="ur"] body,html[lang^="ur"] .btn,html[lang^="ur"] input,html[lang^="ur"] select,html[lang^="ur"] textarea{font-family:"Noto Nastaliq Urdu","Jameel Noori Nastaleeq","Segoe UI",Tahoma,"Noto Naskh Arabic","Geeza Pro",Arial,sans-serif;line-height:1.9}
html[lang^="hi"] body,html[lang^="hi"] .btn,html[lang^="hi"] input,html[lang^="hi"] select,html[lang^="hi"] textarea{font-family:"Nirmala UI","Mangal","Noto Sans Devanagari","Kohinoor Devanagari","Segoe UI",Arial,sans-serif}
html[lang^="bn"] body,html[lang^="bn"] .btn,html[lang^="bn"] input,html[lang^="bn"] select,html[lang^="bn"] textarea{font-family:"Nirmala UI","Vrinda","Noto Sans Bengali","Kohinoor Bangla","Segoe UI",Arial,sans-serif}
html[lang^="ja"] body,html[lang^="ja"] .btn,html[lang^="ja"] input,html[lang^="ja"] select,html[lang^="ja"] textarea{font-family:"Yu Gothic UI","Meiryo UI","Hiragino Sans","Noto Sans JP","Segoe UI",sans-serif}
html[lang^="zh"] body,html[lang^="zh"] .btn,html[lang^="zh"] input,html[lang^="zh"] select,html[lang^="zh"] textarea{font-family:"Microsoft YaHei UI","PingFang SC","Noto Sans SC","Segoe UI",sans-serif}
html[lang^="ar"] body,html[lang^="ur"] body,html[lang^="hi"] body,html[lang^="bn"] body{line-height:1.7}
html[lang^="ja"] body,html[lang^="zh"] body{line-height:1.75;word-break:normal;overflow-wrap:anywhere}
.ve-flag{display:inline-block;width:20px;height:14px;margin-inline-end:10px;vertical-align:-2px;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.16);flex:none}
.ve-lang__btn .ve-flag{margin-inline-end:8px;vertical-align:-2px}
/* Keep the header on one line in every language: labels never wrap, the switcher shrinks before anything breaks. */
@media (min-width:992px){
.ve-site .main-menu .navbar-nav .nav-link{white-space:nowrap}
.ve-site .main-menu .navbar-nav .nav-item .nav-link{padding-left:10px;padding-right:10px}
.ve-site .main-menu .navbar-nav .nav-item.active .nav-link:after{left:10px;right:10px}
.ve-site .main-menu .ve-nav-actions{flex:none}
.ve-lang__btn{min-width:0}
}
@media (min-width:992px) and (max-width:1399.98px){
.ve-lang__btn .ve-lang__name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ve-lang__btn{padding-right:30px!important}
.ve-lang__btn .arrow{right:9px!important}
.ve-lang__btn .ve-flag{margin-inline-end:0}
}
@media (min-width:992px) and (max-width:1199.98px){
html:not([lang="en"]) .ve-site .main-menu .navbar-nav .nav-item .nav-link{margin:0 1px;padding-left:7px;padding-right:7px;font-size:.875rem}
html:not([lang="en"]) .ve-site .main-menu .navbar-nav .nav-item.active .nav-link:after{left:7px;right:7px}
}
