/* Only the active language is visible until the user opens the chooser. */
[data-compact-language]:not([data-language-ready]) > button[aria-pressed="false"] { display: none; }
[data-compact-language][data-language-ready] { position: relative; display: block; width: max-content; max-width: 100%; flex-shrink: 0; padding: 0; border: 0; background: none; box-shadow: none; }
.compact-language-picker { position: relative; margin: 0; padding: 0; border: 0; }
.compact-language-picker > summary { display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 68px; min-height: 44px; margin: 0; padding: 8px 12px; border: 1px solid #d8d8d0; border-radius: 999px; background: #fffdf8; color: #3d405b; font-weight: 700; font-size: 13px; line-height: 1.4; font-family: inherit; cursor: pointer; list-style: none; }
.compact-language-picker > summary::-webkit-details-marker { display: none; }
.compact-language-picker > summary::after { content: none; }
.compact-language-caret { display: block; width: 10px; height: 7px; flex: 0 0 auto; overflow: visible; }
.compact-language-caret path { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.compact-language-picker > summary[aria-disabled="true"] { opacity: .65; cursor: default; }
.compact-language-options { position: absolute; z-index: 100; top: calc(100% + 8px); right: 0; display: grid; gap: 4px; min-width: 156px; padding: 6px; border: 1px solid #d8d8d0; border-radius: 16px; background: #fffdf8; box-shadow: 0 12px 30px #3d405b24; }
[data-compact-language] .compact-language-options > button { display: block; width: 100%; min-height: 44px; margin: 0; padding: 10px 12px; border: 0; border-radius: 10px; background: transparent; color: #3d405b; font-size: 14px; font-weight: 600; line-height: 1.4; text-align: start; cursor: pointer; }
[data-compact-language] .compact-language-options > button[aria-pressed="true"] { color: #3d405b; background: #e1ede7; }
[data-compact-language] .compact-language-options > button:hover { background: #f8e8df; }
.compact-language-picker > summary:focus-visible, [data-compact-language] .compact-language-options > button:focus-visible { outline: 3px solid #426baf; outline-offset: 3px; }
@media (forced-colors: active) { .compact-language-picker > summary, .compact-language-options { border: 1px solid ButtonText; } }
