/* Shared dropdown: globe and current language code; full native names inside. */
.aa-language-picker {
  position: relative; display: inline-flex; align-items: center;
  max-width: 100%; min-width: 0; color: var(--aa-language-color, #f8f4ed);
  font: 500 14px/1.4 Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  text-align: left;
}
.aa-language-picker .aa-language-trigger {
  box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 44px; margin: 0; padding: 10px 12px;
  border: 1px solid var(--aa-language-border, #ffffff65); border-radius: 4px;
  background: transparent; color: inherit; font: 600 14px/1.4 Arial, sans-serif;
  letter-spacing: normal; white-space: nowrap; cursor: pointer; touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.aa-language-trigger:hover { background: var(--aa-language-hover, #ffffff12); }
.aa-language-trigger svg {
  display: block; width: 18px; height: 18px; flex: 0 0 18px;
  fill: none; stroke: currentColor; stroke-width: 1.6;
}
.aa-language-trigger svg.aa-language-chevron { width: 14px; height: 14px; flex-basis: 14px; }
.aa-language-trigger:focus-visible { outline: 2px solid var(--aa-language-focus, #f3978e); outline-offset: 3px; }
.aa-language-menu {
  box-sizing: border-box; z-index: 1000; width: 196px; max-width: calc(100vw - 24px);
  max-height: min(360px, var(--radix-dropdown-menu-content-available-height, 70vh)); overflow-y: auto;
  padding: 6px; border: 1px solid #d8d5d0; border-radius: 6px;
  background: #fff; color: #1b1b1b; box-shadow: 0 12px 36px #00000026;
  font: 500 14px/1.4 Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  text-align: left;
}
.aa-language-menu .aa-language-choice {
  box-sizing: border-box; position: relative; display: flex; align-items: center; justify-content: flex-start;
  width: 100%; min-height: 44px; margin: 0; padding: 10px 12px 10px 32px;
  border: 0; border-radius: 3px; background: transparent; color: inherit;
  font: inherit; font-style: normal; letter-spacing: normal; text-decoration: none; white-space: nowrap;
  cursor: pointer; touch-action: manipulation; outline: none;
}
.aa-language-menu .aa-language-choice:is(:hover, :focus-visible, [data-highlighted]) { background: #f1eee9; color: #1b1b1b; }
.aa-language-menu .aa-language-choice:is([aria-current="page"], [aria-current="true"], [aria-pressed="true"], [data-state="checked"]) {
  background: #b5122b; color: #ffffff; font-weight: 700;
}
.aa-language-menu .aa-language-choice:focus-visible { outline: 2px solid #b5122b; outline-offset: -2px; }
details.aa-language-picker > summary { list-style: none; }
details.aa-language-picker > summary::-webkit-details-marker { display: none; }
details.aa-language-picker > .aa-language-menu { position: absolute; top: calc(100% + 6px); right: 0; }
footer details.aa-language-picker > .aa-language-menu { top: auto; bottom: calc(100% + 6px); }
