/* One shared GiNOVA language-control standard. Themes change colors only. */
[data-language-theme]{--language-bg:#fff;--language-ink:#173a35;--language-muted:#566965;--language-line:#b7c9c0;--language-accent:#1f5b48;--language-tint:#eaf2ed;--language-shadow:0 16px 44px #0b242326;--language-radius:10px}
[data-language-theme="decision"]{--language-bg:#faf8f2;--language-ink:#17342c;--language-muted:#5c685f;--language-line:#b8c4b7;--language-accent:#28543d;--language-tint:#eaf0e6;--language-radius:10px}
[data-language-theme="engineering"]{--language-bg:#f9fbfc;--language-ink:#183643;--language-muted:#526670;--language-line:#b5c6cd;--language-accent:#805027;--language-tint:#f4eadc;--language-radius:10px}
[data-language-theme="soundlab"]{--language-bg:#fcfaff;--language-ink:#3d245c;--language-muted:#685b7c;--language-line:#c9badb;--language-accent:#7146a4;--language-tint:#eee5fa;--language-radius:10px}
[data-language-theme="portal"]{--language-bg:#101d28;--language-ink:#edf6fa;--language-muted:#b2c5ce;--language-line:#536b7a;--language-accent:#a2dcf4;--language-tint:#203746;--language-shadow:0 18px 48px #0009;--language-radius:10px;color-scheme:dark}
header .language-switcher{position:relative;flex:0 0 auto;width:168px;max-width:100%;margin:0;padding:0;border:0;overflow:visible;line-height:1.4;text-align:start}
.language-switcher .language-native,.language-switcher .language-trigger{box-sizing:border-box;width:100%;min-height:44px;margin:0;padding:10px 12px;border:1px solid var(--language-line);border-radius:var(--language-radius);background:var(--language-bg);color:var(--language-ink);font:500 12.6667px/1.45 Inter,'GiNOVA Universal',sans-serif;letter-spacing:normal;text-transform:none;cursor:pointer}
.language-switcher .language-native{appearance:auto;white-space:nowrap}
.language-switcher .language-native[hidden],.language-panel[hidden]{display:none!important}
.language-switcher .language-trigger{display:flex;align-items:center;gap:9px;text-align:start;white-space:nowrap;box-shadow:0 1px 2px #0b242307;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}
.language-switcher .language-trigger:hover,.language-switcher .language-trigger[aria-expanded="true"]{border-color:var(--language-accent);background:var(--language-tint)}
.language-trigger:focus-visible,.language-native:focus-visible{outline:2px solid var(--language-accent);outline-offset:3px}
.language-trigger .language-globe{width:17px;height:17px;flex:none;color:var(--language-muted)}
.language-trigger .language-current{flex:1;min-width:0;text-align:start}
.language-trigger .language-chevron{width:12px;height:12px;flex:none;color:var(--language-muted);transition:transform .16s ease}
.language-trigger[aria-expanded="true"] .language-chevron{transform:rotate(180deg)}
.language-name{font-family:Inter,'GiNOVA Universal',sans-serif!important;letter-spacing:normal!important;text-transform:none!important;line-height:1.5!important;unicode-bidi:isolate}
.language-name:lang(ar){font-family:'Noto Sans Arabic','GiNOVA Universal',sans-serif!important}
.language-name:lang(zh){font-family:'Noto Sans SC','GiNOVA Universal',sans-serif!important}
.language-name:lang(ru),.language-name:lang(tr){font-family:'GiNOVA Universal',sans-serif!important}
.language-panel{position:fixed;z-index:10020;box-sizing:border-box;width:232px;max-width:calc(100vw - 24px);padding:7px;border:1px solid var(--language-line);border-radius:calc(var(--language-radius) + 4px);background:var(--language-bg);color:var(--language-ink);box-shadow:var(--language-shadow);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--language-line) transparent;text-align:start;animation:language-reveal .14s ease-out;isolation:isolate}
.language-panel .language-heading{padding:6px 10px 10px;border-bottom:1px solid var(--language-line);margin:0 3px 5px;color:var(--language-muted);font:500 10.6667px/1.5 Inter,'GiNOVA Universal','Noto Sans Arabic','Noto Sans SC',sans-serif;letter-spacing:.03em;text-transform:none}
.language-panel .language-option{box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:8px 10px;margin:2px 0;border:1px solid transparent;border-radius:calc(var(--language-radius) - 2px);background:transparent;color:var(--language-ink);font:500 12.6667px/1.5 Inter,'GiNOVA Universal',sans-serif;letter-spacing:normal;text-transform:none;text-align:start;cursor:pointer;white-space:nowrap}
.language-panel .language-option .language-name{flex:1;text-align:start}
.language-panel .language-code{font:500 9.6667px/1.5 Inter,'GiNOVA Universal',sans-serif;letter-spacing:.07em;color:var(--language-muted);width:22px;text-align:center;direction:ltr}
.language-panel .language-check{width:14px;height:14px;flex:none;color:var(--language-accent);visibility:hidden}
.language-panel .language-option[aria-checked="true"]{background:var(--language-tint);border-inline-start-color:var(--language-accent)}
.language-panel .language-option[aria-checked="true"] .language-check{visibility:visible}
.language-panel .language-option:hover{background:var(--language-tint)}
.language-panel .language-option:focus-visible{outline:2px solid var(--language-accent);outline-offset:-2px;background:var(--language-tint)}
html:has(.language-trigger[aria-expanded="true"]){scroll-snap-type:none!important}
@keyframes language-reveal{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){header .language-switcher[data-language-theme="portal"]{order:3;width:168px;margin-inline-start:auto}.language-panel .language-option{min-height:44px}}
@media(prefers-reduced-motion:reduce){.language-panel{animation:none}.language-switcher .language-trigger,.language-trigger .language-chevron{transition:none}}
@media(forced-colors:active){.language-switcher .language-trigger,.language-panel{border-color:ButtonText;background:Canvas;color:CanvasText;box-shadow:none}.language-panel .language-option[aria-checked="true"]{border-color:Highlight}.language-panel .language-option:focus-visible,.language-trigger:focus-visible{outline-color:Highlight}.language-panel .language-check,.language-panel .language-code,.language-trigger .language-globe,.language-trigger .language-chevron{color:ButtonText}}
@media print{.language-switcher,.language-panel{display:none!important}}
