.sh-language-picker { position: relative; flex: 0 0 auto; }
.sh-language-picker > .sh-language-link { display: inline-flex; align-items: center; justify-content: center; list-style: none; cursor: pointer; }
.sh-language-picker > summary::-webkit-details-marker { display: none; }
.sh-language-picker > summary svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.sh-language-picker > summary:focus-visible { outline: 2px solid #dbb457; outline-offset: 4px; }
.sh-language-picker__panel { position: absolute; inset-inline-end: 0; top: calc(100% + 14px); z-index: 120; width: min(275px, calc(100vw - 40px)); padding: 18px; border: 1px solid rgba(219,180,87,.3); border-radius: 16px; background: #0a1d26; color: #fff; box-shadow: 0 18px 45px rgba(0,0,0,.25); }
.sh-language-picker__panel p { margin: 0 0 12px; font-size: .95rem; font-weight: 700; }
.sh-language-picker__panel ul { margin: 0; padding: 0; list-style: none; max-height: min(360px, 55vh); overflow-y: auto; overscroll-behavior: contain; }
.sh-language-picker__panel a { display: block; padding: 9px 12px; color: #fff; text-decoration: none; border-radius: 8px; }
.sh-language-picker__panel a:hover, .sh-language-picker__panel a:focus-visible, .sh-language-picker__panel a[aria-current] { background: rgba(219,180,87,.15); color: #e6c46f; }
.sh-language-picker__auto { display: block; width: 100%; margin-top: 12px; padding: 10px; border: 1px solid rgba(219,180,87,.5); border-radius: 8px; background: transparent; color: #e6c46f; font: inherit; font-size: .85rem; cursor: pointer; }
.sh-language-picker__panel small { display: block; margin-top: 12px; font-size: .72rem; line-height: 1.6; color: #bbc8ce; }
.sh-translation-notice { position: relative; z-index: 150; padding: 12px 24px; background: #f4eedf; border-bottom: 1px solid #dbb457; color: #10222b; text-align: center; font: 14px/1.6 sans-serif; }
.sh-translation-notice a { margin-inline: 8px; color: #10222b; text-decoration: underline; }
.sh-translation-notice small { display: block; margin-top: 5px; font-size: 11px; }
.sh-translation-notice__attribution { display: inline-block; width: 150px; height: auto; vertical-align: middle; }
@media (max-width: 640px) { .sh-language-picker__panel { inset-inline-end: -80px; } }
