/* Indigo Charter – Sprachumschalter (modern, eckige Flaggen) */
#indigo-lang-switcher { position: relative; display: inline-block; font-family: inherit; line-height: 1; z-index: 9999; }

#indigo-lang-switcher .ilang-flag {
  width: 26px; height: 18px; object-fit: cover;
  border-radius: 3px;                      /* eckig mit dezenter Rundung */
  box-shadow: 0 0 0 1px rgba(0,0,0,.12) inset, 0 1px 2px rgba(0,0,0,.18);
  display: block; flex: 0 0 auto;
}

/* Button (aktuelle Sprache) */
#indigo-lang-switcher .ilang-btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 6px 10px; margin: 0;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 8px;
  color: #fff; font-size: 14px; font-weight: 600; letter-spacing: .2px;
  cursor: pointer; backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
#indigo-lang-switcher .ilang-btn:hover { background: rgba(255,255,255,.2); border-color: rgba(255,255,255,.45); }
#indigo-lang-switcher .ilang-btn:active { transform: translateY(1px); }
#indigo-lang-switcher .ilang-name { white-space: nowrap; text-shadow: 0 1px 2px rgba(0,0,0,.35); }
#indigo-lang-switcher .ilang-caret {
  width: 0; height: 0; margin-left: 2px;
  border-left: 4px solid transparent; border-right: 4px solid transparent;
  border-top: 5px solid currentColor; opacity: .8;
  transition: transform .2s ease;
}
#indigo-lang-switcher[data-open="1"] .ilang-caret { transform: rotate(180deg); }

/* Dropdown */
#indigo-lang-switcher .ilang-menu {
  position: absolute; top: calc(100% + 8px); right: 0; min-width: 184px;
  list-style: none; margin: 0; padding: 6px;
  background: #ffffff; color: #16202b;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(0,0,0,.18), 0 2px 8px rgba(0,0,0,.10);
  opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s;
}
#indigo-lang-switcher[data-open="1"] .ilang-menu { opacity: 1; visibility: visible; transform: translateY(0); }

#indigo-lang-switcher .ilang-item {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 10px; border-radius: 7px;
  font-size: 14px; font-weight: 500; color: #16202b;
  cursor: pointer; outline: none;
  transition: background .14s ease;
}
#indigo-lang-switcher .ilang-item:hover,
#indigo-lang-switcher .ilang-item:focus-visible { background: #eef3f8; }
#indigo-lang-switcher .ilang-item[aria-selected="true"] { background: #e3edf6; font-weight: 700; }
#indigo-lang-switcher .ilang-item .ilang-flag { width: 24px; height: 17px; }

@media (max-width: 640px) {
  #indigo-lang-switcher .ilang-btn .ilang-name { display: none; }  /* mobil nur Flagge */
  #indigo-lang-switcher .ilang-menu { right: 0; }
}
