/* Preserve hidden controls when a surface supplies flex/grid display rules. */
[data-language-picker][hidden],.lb-language-picker[hidden],[data-language-choice][hidden] { display:none!important; }
[data-domestic-filing][hidden] { display:none!important; }
/* Shared language controls: structure never depends on the active theme. */
.lb-language-picker { display:inline-flex; align-items:center; flex:0 0 auto; min-width:0; max-width:100%; }
.lb-language-picker > .lb-language-trigger { display:inline-flex; align-items:center; justify-content:space-between; gap:10px; width:auto; min-width:96px; min-height:36px; margin:0; padding:7px 12px; border:1px solid var(--border,var(--line,#cbd3e2)); border-radius:8px; background:var(--surface,var(--panel,#f5f7fc)); color:var(--text,#223047); font:inherit; font-size:13px; line-height:1.4; white-space:nowrap; cursor:pointer; box-shadow:none; }
.lb-language-trigger > svg { flex:none; width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.lb-language-trigger[aria-expanded="true"] > svg { transform:rotate(180deg); }
.lb-language-picker > .lb-language-trigger:hover { border-color:var(--accent,#7882b4); background:var(--surface,var(--panel,#f1f4fb)); }
.lb-language-picker > .lb-language-trigger:active { background:var(--surface,var(--panel,#eaf0fb)); }
.lb-language-picker > .lb-language-trigger:focus-visible,.lb-language-menu > button:focus-visible { outline:2px solid var(--accent,#7864cc); outline-offset:2px; }
.lb-language-menu { position:fixed; z-index:30000; box-sizing:border-box; display:grid; gap:3px; padding:6px; overflow:auto; border:1px solid var(--border,var(--line,#d4ddeb)); border-radius:12px; background:var(--surface,var(--panel,#ffffff)); color:var(--text,#223047); box-shadow:0 12px 34px rgba(20,36,65,.16); }
.lb-language-menu[hidden] { display:none!important; }
.lb-language-menu > button { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:40px; margin:0; padding:8px 11px; border:1px solid transparent; border-radius:7px; background:transparent; color:inherit; font:inherit; font-size:13px; line-height:1.4; white-space:normal; text-align:left; cursor:pointer; box-shadow:none; }
.lb-language-menu > button > svg { width:14px; height:14px; flex:none; opacity:0; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.lb-language-menu > button[aria-selected="true"] { background:#eeeafa; border-color:#d8cfee; color:#51428b; }
.lb-language-menu > button[aria-selected="true"] > svg { opacity:1; }
.lb-language-menu > button:hover { background:#f0f3fb; border-color:#dce2f0; }
.lb-language-menu > button:active { background:#e8edf7; }
html[data-theme="dark"] .lb-language-trigger,html[data-admin-effective-theme="dark"] .lb-language-trigger,html[data-theme="dark"] .lb-language-menu,html[data-admin-effective-theme="dark"] .lb-language-menu { background:var(--surface,var(--panel,#182238)); color:var(--text,#edf1fa); border-color:var(--border,var(--line,#3b4966)); }
html[data-theme="dark"] .lb-language-menu > button:hover,html[data-admin-effective-theme="dark"] .lb-language-menu > button:hover { background:#27344d; border-color:#3c4d6f; }
html[data-theme="dark"] .lb-language-menu > button[aria-selected="true"],html[data-admin-effective-theme="dark"] .lb-language-menu > button[aria-selected="true"] { background:#302b49; color:#d4c9ff; border-color:#5a4f7c; }
@media(prefers-color-scheme:dark) {
 html[data-theme="system"] .lb-language-trigger,html[data-theme="system"] .lb-language-menu,html:not([data-theme]):not([data-admin-effective-theme]) .lb-language-trigger,html:not([data-theme]):not([data-admin-effective-theme]) .lb-language-menu { background:#182238; color:#edf1fa; border-color:#3b4966; }
 html[data-theme="system"] .lb-language-menu > button:hover { background:#27344d; border-color:#3c4d6f; }
 html[data-theme="system"] .lb-language-menu > button[aria-selected="true"] { background:#302b49; color:#d4c9ff; border-color:#5a4f7c; }
}
@media(pointer:coarse) { .lb-language-picker > .lb-language-trigger { min-height:40px; } .lb-language-menu > button { min-height:44px; } }
@media(prefers-reduced-motion:no-preference) { .lb-language-trigger > svg { transition:transform .12s ease; } }
html[lang="en"] :is(.lb-auth-tab,.lb-auth-tool,.v3-quick-actions button,.pending-connection-actions button,.st-btn,.privacy-segment button) { white-space: normal; height: auto; min-height: 36px; }
html[lang="en"] :is(.app-header-main,.header-actions,.brand-row,.admin-topbar,.st-nav-actions) { flex-wrap: wrap; }
html[lang="en"] :is(.status-pill,.account-tier-mark,.section-label,.v3-scenario-label) { max-width: 100%; }
html[lang="en"] :is(.status-pill,.privacy-note,.control-sidebar p,.assist-card p,.lb-auth-note) { overflow-wrap: anywhere; }

.lb-auth-header > .lb-language-picker { align-self: flex-end; margin-bottom: 6px; }
html[lang="en"] :is(.topbar-actions,.st-nav-links,.account-actions,.header-product,.secure-badge) { min-width: 0; }
html[lang="en"] :is(.st-nav-links,.topbar-actions,.account-actions) { flex-wrap: wrap; }
html[lang="en"] .st-nav { gap: 12px; }
html[lang="en"] .st-nav-links { justify-content: flex-end; }
@media(max-width:620px) {
  html[lang="en"] .workspace-header { flex-wrap: wrap; }
  html[lang="en"] .header-actions { flex: 1 1 auto; justify-content: flex-end; }
  .brand-row { flex-wrap: wrap; row-gap: 10px; }
  .brand-row .lb-language-picker { order: 2; margin-left: auto; }
  html[lang="en"] .st-nav-links { justify-content: flex-start; }
}
/* Header controls share available space in either language; longer labels wrap. */
@media(max-width:980px) {
  .topbar { flex-wrap: wrap; gap: 12px; }
  .topbar-title-group { min-width: 0; }
  .topbar-actions { flex: 1 1 260px; min-width: 0; flex-wrap: wrap; justify-content: flex-end; }
}
.account-language-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; color: var(--text, var(--v3-text)); }
@media(max-width:620px) {
  .workspace-header { grid-template-columns: minmax(0,1fr); }
  .workspace-header .header-product { max-width: 100%; }
  .workspace-header .header-actions { width: 100%; justify-content: flex-end; }
  html[lang="en"] #lq-site .st-nav { flex-wrap: wrap; }
}

.lb-language-picker > .lb-language-trigger:disabled,.lb-language-menu > button:disabled { opacity:.5; cursor:not-allowed; }
