/*
Structure:
    .pagination
        .pagination__founds
        .pagination__content
            .pagination__limits
                .formListing
            .pagination__pages
            .pagination__jump
                .pagination__jumpForm
*/

// in React .pagination__jump and .pagination__jumpForm are on the same element

.pagination {
  text-align: center;

  @media @screen-lg {
      text-align: left;
  }
}

.pagination__founds {
  margin: 0.5rem 0;

  @media @screen-lg {
      margin: 0;
  }
}

.pagination__content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;

  @media @screen-lg {
      flex-wrap: nowrap;
      justify-content: space-between;
  }
}

.pagination__limits {
  width: 100%;

  label,
  .formListing {
      display: flex;
      gap: var(--gap--sm);
      align-items: center;
      justify-content: center;

      @media @screen-sm {
          justify-content: flex-start;
      }
  }

  @media @screen-sm {
      width: 50%;
      text-align: left;
  }

  @media @screen-lg {
      order: 1;
      width: auto;
  }
}

.pagination__pages {
  display: flex;
  gap: var(--gap--xs);
  justify-content: center;
  order: -1;

  width: 100%;
  margin: var(--margin--xs) 0;

  a,
  strong {
      padding: var(--padding--xs) var(--padding--sm);
  }
  strong {
      color: rgb(var(--foreground--neutral-full-default--dark));
      background-color: rgb(var(--background--controls-medium-selected--light));
  }

  @media @screen-lg {
      order: 2;
      width: auto;
  }
}

.pagination__jump {
  width: 100%;

  @media @screen-sm {
      width: 50%;
  }

  @media @screen-lg {
      order: 3;
      width: auto;
  }
}

.pagination__jumpForm {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--gap--sm);
  align-items: center;
  justify-content: center;

  @media @screen-sm {
      justify-content: flex-end;
  }
}
