.group-browser .group-badges {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  gap: 0.2em;
  align-items: center;
  font-size: 0.7em;
}
.group-browser .group-badges.above {
  margin-bottom: 0.3em;
}
.group-browser .group-badges.below {
  margin-top: 0.3em;
}
.group-browser .group-more-link {
  text-align: right;
  font-size: 0.8em;
}
.group-browser .group-browser-filters {
  display: flex;
  flex-flow: row;
  gap: 0.5em;
  flex-wrap: wrap;
}
.group-browser .group-browser-filters .dropdown-menu {
  width: 100vw;
}
.group-browser h3 {
  margin-bottom: 0.5em;
  margin-top: 1em;
}
.group-browser .group-browser-groups {
  margin-top: 0.5em;
}
.group-browser .group-browser-group > .card {
  height: 100%;
}
.group-browser .group-browser-group > .card > .card-content {
  height: 100%;
  display: flex;
  flex-flow: column;
}
.group-browser .group-browser-group .group-name {
  font-size: 1em;
  font-weight: bold;
  margin-bottom: 0.3em;
}
.group-browser .group-browser-group .group-presentation {
  display: flex;
  flex: 1 auto;
  flex-flow: row;
  flex-wrap: nowrap;
  justify-content: center;
  gap: 0.5em;
}
.group-browser .group-browser-group .group-presentation .group-image-wrapper {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  aspect-ratio: 1;
  width: 120px;
  height: 120px;
}
@media only screen and (min-width: 200px) and (max-width: 719px) {
  .group-browser .group-browser-group .group-presentation .group-image-wrapper {
    width: 80px;
    height: 80px;
  }
}
.group-browser .group-browser-group .group-presentation .group-image {
  border-radius: var(--border-radius);
  width: 100%;
  max-height: 100%;
}
.group-browser .group-browser-group .group-presentation .group-image:not(.group-logo) {
  height: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  object-position: center;
}
.group-browser .group-browser-group .group-presentation .group-image.group-logo {
  border-radius: 0;
  width: auto;
  max-width: 100%;
  object-fit: contain;
}
.group-browser .group-browser-group .group-presentation .group-info {
  flex: 1 0 0;
  display: flex;
  flex-flow: column;
  gap: 0.5em;
}
.group-browser .group-browser-group .group-presentation .group-info .group-description {
  flex: 1 auto;
}
.group-browser .group-browser-filter-sync {
  display: flex;
  flex-flow: row;
  flex-wrap: wrap;
  gap: 0.5em;
  margin: 1em 0;
}
.group-browser .group-browser-filter-sync:empty {
  margin: 0;
}
.group-browser .group-browser-filter-sync .category-badge {
  font-size: 0.7em;
}
