/* Language controls inherit the active theme; no arrows or global heading overrides. */
.fh-language{--fh-lang-ink:var(--ink,#263b45);--fh-lang-line:var(--line,#dce3e7);--fh-lang-accent:var(--indigo,var(--accent,#2c6375));position:relative;z-index:115;flex-shrink:0;min-width:0;text-align:start;color:var(--fh-lang-ink);font:16px/1.4 system-ui,"Microsoft YaHei",sans-serif}
.fh-language>summary{display:inline-flex;align-items:center;justify-content:center;gap:7px;list-style:none;cursor:pointer;padding:8px 10px;min-height:38px;max-width:100%;border:1px solid var(--fh-lang-line);border-radius:7px;background:transparent;color:inherit;font:inherit;font-weight:500;white-space:nowrap;transition:background-color .18s,border-color .18s}
.fh-language>summary::-webkit-details-marker{display:none}.fh-language>summary:hover,.fh-language[open]>summary{border-color:var(--fh-lang-accent);background:color-mix(in srgb,var(--fh-lang-accent) 6%,transparent)}.fh-language-current{min-width:0;max-width:91px;overflow:hidden;text-overflow:ellipsis}
.fh-language .fh-language-flag{display:block;flex:0 0 22px;width:22px;height:16px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px #182b3512}.fh-language>summary .fh-language-flag{width:18px;height:13px;flex-basis:18px}
.fh-language-panel{box-sizing:border-box;position:fixed;left:var(--fh-panel-left,12px);top:var(--fh-panel-top,78px);right:auto;width:var(--fh-panel-width,340px);max-width:calc(100vw - 24px);max-height:var(--fh-panel-height,530px);padding:17px;background:#fff;color:#233746;border:1px solid #dce3e7;border-radius:13px;box-shadow:0 14px 40px #172b4026;white-space:normal;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;z-index:500}
.fh-language:not([open]) .fh-language-panel{display:none}.fh-language-panel h2{font:650 17px/1.5 system-ui,"Microsoft YaHei",sans-serif!important;letter-spacing:0!important;text-transform:none;margin:0 0 12px!important;color:#233746!important}.fh-language-search{display:block;width:100%;min-height:43px;margin:0 0 12px;padding:10px 12px;border:1px solid #d2dce3;border-radius:7px;font:16px/1.4 system-ui,sans-serif;background:#f8fafb;color:#233746}
.fh-language-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:clamp(80px,calc(var(--fh-panel-height,530px) - 250px),345px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.fh-language-list button{display:flex;align-items:center;gap:8px;min-width:0;min-height:42px;text-align:start;padding:8px;border:1px solid transparent;background:#fff;color:#263b45;font:16px/1.4 system-ui,sans-serif;cursor:pointer;border-radius:7px}.fh-language-list button:hover{background:#f3f6f8}.fh-language-list button[aria-pressed=true]{background:#edf3f7;background:color-mix(in srgb,var(--fh-lang-accent) 9%,white);border-color:color-mix(in srgb,var(--fh-lang-accent) 34%,white);font-weight:650}.fh-language-name{min-width:0;overflow-wrap:anywhere}.fh-language-auto{display:block;width:100%;min-height:39px;padding:11px 2px 0;margin-top:12px;border:0;border-top:1px solid #e3e8ec;background:transparent;font:15px/1.5 system-ui,sans-serif;color:#395669;cursor:pointer;text-align:start}.fh-language-empty{grid-column:1/-1;font:14px/1.7 system-ui,sans-serif;color:#647683;margin:10px 0}.fh-language-help{font:14px/1.6 system-ui,sans-serif;color:#73818c;margin:10px 0 0!important}.fh-language [hidden]{display:none!important}.fh-language :focus-visible{outline:2px solid var(--fh-lang-accent);outline-offset:3px}
.fh-language-status{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:500;max-width:calc(100vw - 32px);padding:10px 16px;border:1px solid #d6dfe6;border-radius:9px;background:#fff;box-shadow:0 8px 24px #2030301a;color:#263b45;font:500 15px/1.6 system-ui,sans-serif;text-align:center;white-space:normal}.fh-language-status[hidden]{display:none!important}
@media(max-width:760px){.fh-language>summary{padding:7px 8px;font-size:14px;gap:6px;min-height:44px}.fh-language-current{max-width:73px}.fh-language>summary .fh-language-flag{width:17px;height:12px;flex-basis:17px}.fh-language-list button{font-size:15px;min-height:43px}.fh-language-status{font-size:14px}.fh-language-panel{padding:15px}}
@media(prefers-reduced-motion:reduce){.fh-language>summary{transition:none}}
