/* Globe language menu (language-globe.js). Wide screens keep the button row,
   unless the row opts in with data-language-globe="always". */
/* Fallback fuer Links ohne eigene Farbe (wie in mobile-header.css): nie Browser-
   Blau/-Lila, sondern Romera-Farbe. :where() hat keine Spezifitaet. */
:where(a:link, a:visited) { color: #C8824A; }
.language-globe { display: none; position: relative; flex: 0 0 auto; }
[data-language-globe=always] { display: none !important; }
.language-globe-always { display: block; }
@media (max-width: 640px) {
  [data-language-globe] { display: none !important; }
  .language-globe { display: block; }
}
.language-globe-toggle {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; padding: 8px;
  border: 1px solid #ddd5c8; border-radius: 12px; background: transparent;
  color: #1c1917; cursor: pointer;
}
.language-globe-toggle svg { display: block; width: 22px; height: 22px; stroke: #247699; }
.language-globe-toggle svg circle { fill: #e2f3fa; }
.language-globe-toggle svg ellipse { stroke: #26806b; }
.language-globe-toggle[aria-expanded=true] { background: #e8d5c4; }
.language-globe-panel {
  position: absolute; top: calc(100% + 8px); right: 0; z-index: 400;
  min-width: 200px; max-height: calc(100dvh - 80px); overflow-y: auto;
  padding: 6px; background: #faf7f2; border: 1px solid #ddd5c8; border-radius: 12px;
  box-shadow: 0 6px 24px rgba(26, 22, 18, 0.14);
}
.language-globe-panel[hidden] { display: none; }
.language-globe-panel button {
  display: flex; align-items: center; width: 100%; min-height: 44px; padding: 10px 12px;
  border: 0; border-radius: 8px; background: transparent; color: #1c1917;
  font: 15px/1.3 'DM Sans', Arial, sans-serif; text-align: left; cursor: pointer;
}
.language-globe-panel button:hover { background: #eee6dd; }
.language-globe-panel button[aria-pressed=true] { background: #e8d5c4; font-weight: 600; }
.language-globe :focus-visible { outline: 2px solid #8b5e3c; outline-offset: 2px; }
