.community-identity-badges {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 7px;
}

.community-rank + .community-identity-badges {
  margin-left: 4px;
}

.community-role,
.community-group {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
}

.community-role {
  min-width: 30px;
  padding: 4px 7px;
  border: 1px solid rgba(196, 205, 218, .36);
  color: #e4e8ee;
  background: rgba(196, 205, 218, .1);
}

.community-role--bbp_moderator,
.community-role--bbp_keymaster,
.community-role--administrator {
  border-color: rgba(255, 193, 7, .55);
  color: #ffe08a;
  background: rgba(255, 193, 7, .14);
}

.community-role__abbr {
  display: inline-block;
}

.community-group {
  gap: 5px;
  padding: 4px 8px;
  border: 1px solid rgba(255, 49, 88, .72);
  color: #fff;
  background: linear-gradient(135deg, rgba(209, 11, 47, .72), rgba(84, 8, 24, .8));
  box-shadow: 0 0 14px rgba(209, 11, 47, .18);
}

.community-group__icon {
  color: #ffd0d8;
  font-size: 12px;
  line-height: 1;
}

.community-group__label {
  letter-spacing: .12em;
}

.sk-admin-user-row--group {
  justify-content: flex-end;
  margin-top: -7px;
  padding-top: 6px;
  border-top: 0;
  background: transparent;
}

.sk-admin-user-row--group small {
  color: var(--sk-muted);
}

.sk-admin-user-row--group select {
  max-width: 230px;
}

.sk-admin-user-row--account,
.sk-admin-user-row--delete {
  justify-content: flex-end;
  margin-top: -7px;
  padding-top: 6px;
  border-top: 0;
  background: transparent;
}

.sk-admin-user-row--account small,
.sk-admin-user-row--delete small {
  color: var(--sk-muted);
}

.sk-account-state {
  display: inline-block;
  margin-left: 7px;
  color: #8cf0b0;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.sk-account-state--suspended {
  color: #ff9caf;
}

.sk-admin-user-row__protected {
  color: var(--sk-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.sk-admin-user-row--delete .button--danger,
.sk-admin-user-row--delete .button.button--danger {
  border-color: rgba(255, 49, 88, .65);
  color: #fff;
  background: rgba(209, 11, 47, .38);
}

.sk-admin-user-row__identity + .community-rank {
  flex: 0 0 auto;
}

.bbp-author-rank .community-identity-badges {
  display: flex;
  margin-left: 0;
}

.sk-forum-reactions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid rgba(196, 205, 218, .14);
  color: var(--sk-muted);
  font-size: 11px;
}

.sk-forum-reactions__label {
  margin-right: 3px;
  color: var(--sk-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.sk-forum-reaction {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 30px;
  padding: 4px 9px;
  border: 1px solid rgba(196, 205, 218, .2);
  border-radius: 999px;
  color: #d8dce1;
  background: rgba(255, 255, 255, .035);
  font: inherit;
  line-height: 1;
  white-space: nowrap;
}

button.sk-forum-reaction {
  cursor: pointer;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, transform .16s ease;
}

button.sk-forum-reaction:hover,
button.sk-forum-reaction:focus-visible,
.sk-forum-reaction.is-selected {
  border-color: rgba(255, 49, 88, .62);
  color: #fff;
  background: rgba(209, 11, 47, .2);
}

button.sk-forum-reaction:active {
  transform: translateY(1px);
}

button.sk-forum-reaction:disabled {
  cursor: wait;
  opacity: .62;
}

.sk-forum-reaction__icon {
  font-size: 14px;
  line-height: 1;
}

.sk-forum-reaction__name {
  font-size: 11px;
  font-weight: 700;
}

.sk-forum-reaction__count {
  min-width: 1.2em;
  color: var(--sk-muted);
  font-size: 10px;
  font-weight: 800;
  text-align: center;
}

.sk-forum-reaction.is-selected .sk-forum-reaction__count,
button.sk-forum-reaction:hover .sk-forum-reaction__count {
  color: #fff;
}

.sk-forum-reactions__login {
  color: var(--sk-red-bright);
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
}

.sk-forum-reactions__login:hover {
  color: #fff;
}

.sk-forum-reactions__status {
  min-height: 1em;
  color: var(--sk-muted);
  font-size: 10px;
}

.member-notifications {
  margin: 22px 0 28px;
  padding: 20px;
  border: 1px solid rgba(255, 49, 88, .3);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(209, 11, 47, .12), rgba(18, 22, 27, .78));
}

.member-notifications .section-heading {
  margin: 0 0 14px;
}

.member-notifications .section-heading h2 {
  margin: 0;
}

.member-notifications__count {
  flex: 0 0 auto;
  min-width: 52px;
  padding: 7px 10px;
  border: 1px solid rgba(255, 49, 88, .35);
  border-radius: 9px;
  color: #fff;
  font-size: 17px;
  line-height: 1;
  text-align: center;
}

.member-notifications__count small {
  display: block;
  margin-top: 4px;
  color: var(--sk-muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.member-notifications__list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.member-notifications__list li {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 10px 12px;
  border: 1px solid rgba(196, 205, 218, .14);
  border-radius: 9px;
  color: #d8dce1;
  background: rgba(7, 8, 10, .3);
  font-size: 13px;
  line-height: 1.45;
}

.member-notifications__list a {
  color: #fff;
  font-weight: 700;
}

.member-notifications__icon {
  flex: 0 0 auto;
  font-size: 16px;
  line-height: 1.2;
}

.member-notifications__actions {
  margin: 14px 0 0;
}

.member-account-card__rank .community-identity-badges {
  margin-left: 8px;
  vertical-align: middle;
}

.shoutbox-giphy-search {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(196, 205, 218, .14);
}

.shoutbox-giphy-search__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.shoutbox-giphy-search__heading small {
  color: var(--sk-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .04em;
}

.shoutbox-giphy-search__form {
  display: flex;
  gap: 8px;
  margin: 8px 0 12px;
}

.shoutbox-giphy-search__form input {
  min-width: 0;
  flex: 1 1 auto;
}

.shoutbox-giphy-search__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.shoutbox-giphy-search__grid .shoutbox-gif-card {
  min-height: 74px;
}

.shoutbox-giphy-search__grid .shoutbox-gif-card img {
  width: 100%;
  height: 74px;
  object-fit: cover;
}

@media (max-width: 560px) {
  .shoutbox-giphy-search__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Admin-Mitgliederverwaltung: klare Karte pro Konto statt einer langen, unstrukturierten Liste. */
.sk-admin-member-list {
  margin-top: 24px;
}

.sk-admin-member-list__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}

.sk-admin-member-list__heading h3 {
  margin: 0;
}

.sk-admin-member-list__heading p {
  max-width: 660px;
  margin: 5px 0 0;
  color: var(--sk-muted);
}

.sk-admin-member-list__heading > strong {
  flex: 0 0 auto;
  min-width: 72px;
  padding: 8px 12px;
  border: 1px solid var(--sk-line);
  border-radius: 10px;
  color: #fff;
  background: rgba(255, 255, 255, .04);
  font-size: 18px;
  line-height: 1;
  text-align: center;
}

.sk-admin-member-list__heading > strong small {
  display: block;
  margin-top: 5px;
  color: var(--sk-muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.sk-admin-member-card {
  padding: 18px;
  border: 1px solid var(--sk-line);
  border-radius: 14px;
  background: rgba(8, 10, 14, .4);
}

.sk-admin-member-card + .sk-admin-member-card {
  margin-top: 16px;
}

.sk-admin-member-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--sk-line);
}

.sk-admin-member-card__details {
  margin-top: 14px;
  border-top: 1px solid var(--sk-line);
}

.sk-admin-member-card__details > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 2px 2px;
  color: #fff;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  list-style: none;
}

.sk-admin-member-card__details > summary::-webkit-details-marker {
  display: none;
}

.sk-admin-member-card__details > summary::after {
  flex: 0 0 auto;
  color: var(--sk-red);
  content: '＋';
  font-size: 18px;
  line-height: 1;
}

.sk-admin-member-card__details[open] > summary::after {
  content: '−';
}

.sk-admin-member-card__details > summary small {
  margin-left: auto;
  color: var(--sk-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0;
}

.sk-admin-member-card__details > summary:focus-visible {
  outline: 2px solid var(--sk-red);
  outline-offset: 4px;
}

.sk-admin-member-card__identity {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 7px;
}

.sk-admin-member-card__identity .community-identity-badges {
  margin-top: 0;
}

.sk-admin-member-card__settings {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.sk-admin-member-card .sk-admin-user-row {
  margin-top: 0;
}

.sk-admin-setting-label {
  flex: 1 1 260px;
  min-width: 200px;
  margin-right: auto;
}

.sk-admin-setting-label strong,
.sk-admin-setting-label small {
  display: block;
}

.sk-admin-setting-label small {
  margin-top: 3px;
  color: var(--sk-muted);
}

@media (max-width: 720px) {
  .sk-admin-member-list__heading,
  .sk-admin-member-card__header {
    align-items: stretch;
    flex-direction: column;
  }

  .sk-admin-member-card__identity {
    justify-content: flex-start;
  }

  .sk-admin-user-row--group select,
  .sk-admin-user-row--group button,
  .sk-admin-user-row--account button,
  .sk-admin-user-row--delete button {
    width: 100%;
    max-width: none;
  }
}

.member-security {
  margin-top: 28px;
}

.member-security__intro {
  max-width: 760px;
  margin: -8px 0 18px;
  color: var(--sk-muted);
}

.member-security-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.member-security-card {
  margin: 0;
}

.member-security-card h3 {
  margin: 0 0 14px;
}

.member-security-card p {
  margin: 0 0 14px;
}

.member-security-card label {
  display: block;
  margin-bottom: 6px;
  color: var(--sk-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.member-security-card input[type="email"],
.member-security-card input[type="password"] {
  width: 100%;
}

.member-security-card small,
.member-security-card__hint,
.member-security-card__current {
  color: var(--sk-muted);
  font-size: 12px;
}

.member-security-card__current strong {
  color: #fff;
  overflow-wrap: anywhere;
}

.member-security-card__hint {
  margin-top: 18px !important;
}

@media (max-width: 720px) {
  .member-security-grid {
    grid-template-columns: 1fr;
  }
}
