/* Shared language control. The clipped shell prevents horizontal overflow. */
.floating-language-shell{--language-size:52px;--language-inset:max(12px,env(safe-area-inset-right,0px));position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:75;width:calc(var(--language-size) + var(--language-inset) + 8px);height:calc(var(--language-size) + 8px);overflow:hidden;pointer-events:none}
.floating-language-shell.is-revealed{pointer-events:auto}
.floating-language-shell>.floating-language{position:absolute;right:var(--language-inset);bottom:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:var(--language-size);min-width:var(--language-size);height:var(--language-size);margin:0;padding:7px 6px;border:1px solid #d4c8ba;border-radius:50%;background:#fffefb;color:#674a34;box-shadow:0 5px 20px rgba(58,40,23,.12);cursor:pointer;isolation:isolate;pointer-events:auto;opacity:.62;filter:blur(.65px);transform:translateX(calc(50% + var(--language-inset)));transition:transform .24s ease,opacity .24s ease,filter .24s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent}
.floating-language-shell>.floating-language::before{content:"";position:absolute;inset:4px;border:1px solid rgba(103,74,52,.12);border-radius:50%;pointer-events:none;z-index:-1}
.floating-language-shell>.floating-language svg{display:block;flex:none;width:19px;height:19px;stroke-width:1.4;pointer-events:none}
.floating-language-shell>.floating-language [data-language-label]{display:block;font:500 11px/1.1 Arial,"PingFang SC","Microsoft YaHei",sans-serif!important;letter-spacing:.04em;white-space:nowrap;pointer-events:none}
.floating-language-shell>.floating-language.is-revealed{transform:translateX(0);opacity:1;filter:none}
.floating-language-shell>.floating-language:focus-visible{outline:2px solid #674a34;outline-offset:3px}
.floating-language-shell>.floating-language:active{background:#f3ece3}
@media(hover:hover) and (pointer:fine){.floating-language-shell>.floating-language:hover{transform:translateX(0);opacity:1;filter:none;background:#f9f4ed;border-color:#8c6a4d;box-shadow:0 8px 25px rgba(58,40,23,.18)}}
@media(max-width:640px){.floating-language-shell{--language-size:48px;--language-inset:max(10px,env(safe-area-inset-right,0px))}.floating-language-shell>.floating-language{padding:6px}.floating-language-shell>.floating-language svg{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){.floating-language-shell>.floating-language{transition:none}}
