/* ==========================================================================
   NeoChat — Emoji-Picker (Chat, Feed-Composer, Feed-Kommentare)
   Nutzt die --neo-*-Variablen aus NeoUser.
   ========================================================================== */

.neo-emoji-wrap {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
}

.neo-emoji-btn {
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1.5px solid rgba(var(--neo-primaer-dunkel-rgb), 0.3);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.6);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  filter: grayscale(1);
  opacity: 0.7;
  transition: opacity 0.15s ease, filter 0.15s ease, border-color 0.15s ease;
}

.neo-emoji-btn:hover,
.neo-emoji-btn:focus-visible,
.neo-emoji-btn[aria-expanded="true"] {
  filter: none;
  opacity: 1;
  border-color: var(--neo-primaer, #ffa500);
}

/* Kommentarzeile: kleinerer Knopf passend zur Eingabehöhe */
.nf-kommentar-form .neo-emoji-btn {
  width: 34px;
  height: 34px;
  font-size: 17px;
}

.neo-emoji-pop {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 0;
  z-index: 50;
  width: 300px;
  max-width: calc(100vw - 32px);
  max-height: 280px;
  overflow-y: auto;
  padding: 10px;
  border: 1px solid rgba(var(--neo-primaer-dunkel-rgb), 0.25);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(var(--neo-dunkel-rgb), 0.18);
}

/* Nach unten aufklappen: im Composer-Footer immer, sonst wenn oben kein Platz ist */
.nf-composer-footer .neo-emoji-pop,
.neo-emoji-pop.is-unten {
  bottom: auto;
  top: calc(100% + 8px);
}

.neo-emoji-gruppe {
  margin: 6px 0 4px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(var(--neo-dunkel-rgb), 0.55);
}

.neo-emoji-gruppe:first-child {
  margin-top: 0;
}

.neo-emoji-raster {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 2px;
}

.neo-emoji-zeichen {
  height: 32px;
  padding: 0;
  border: none;
  border-radius: 8px;
  background: transparent;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.neo-emoji-zeichen:hover,
.neo-emoji-zeichen:focus-visible {
  background: rgba(var(--neo-primaer-rgb), 0.18);
}

@media (prefers-reduced-motion: reduce) {
  .neo-emoji-btn {
    transition: none;
  }
}

/* ==========================================================================
   Tastaturfokus — EINE kontrastfeste Regel statt entfernter Umrisse.
   Dunkel statt Primärfarbe: Der Rahmen muss 3:1 zum Hintergrund haben
   (WCAG 2.4.7 / 1.4.11), das schafft ein helles Orange nicht.
   ========================================================================== */
.neo-emoji-pop :focus-visible,
.neo-emoji-btn:focus-visible {
  outline: 3px solid var(--neo-dunkel, #333d40);
  outline-offset: 2px;
}
