@mixin searchFilterControl {
  background: rgb(64 64 64 / 50%);
  border-radius: 10rem;
  color: #fff;

  @include font-size(1.4rem);

  font-weight: 500;
  height: 4rem;
  padding: 0 2rem;
  white-space: nowrap;

  &:hover {
    background: #404040;
  }

  &:active {
    color: rgb(255 255 255 / 40%);
  }
}

.searchForm {
  position: relative;

  .searchField {
    background: none;
    border: none;
    border-bottom: 2px solid #fff;
    color: #fff;

    @include font-size(4.8rem);

    font-weight: bold;
    outline: none;
    padding: 0 0 0.5rem;

    &::placeholder {
      color: rgb(255 255 255 / 32%);
    }

    &:not(:placeholder-shown) + .submitControl {
      display: block;
    }
  }
}

.submitControl {
  display: none;
  filter: invert(1);
  height: 3.2rem;
  position: absolute;
  right: 0;
  top: 2rem;
  width: 3.2rem;
}

.searchDescription {
  color: rgb(255 255 255 / 64%);

  @include font-size(1.6rem);
}

.topicsList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
  margin-top: 9.6rem !important;
}

.topTopic {
  @include searchFilterControl;
}

.filterSwitcher {
  margin: 0 0 6.4rem !important;
  padding: 0 !important;

  button {
    color: #fff !important;
  }

  :global(.view-switcher__item--selected) {
    button {
      border-bottom-color: #fff !important;

      &:hover {
        background: none !important;
      }
    }
  }
}

.filterResults {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 6.4rem 0;
}

.filterResultsControl {
  @include searchFilterControl;
}
