/* Base-theme stylesheet, vendored for the platform surfaces. Its rem values
   were authored against a 10px root (html{font-size:62.5%}); this theme keeps the
   browser's 16px root, so every rem here is rescaled x0.625 to render at the
   base theme's intended size. */
.pagination-wrapper {
  margin-top: 2.5rem;
  margin-bottom: 4.375rem;
}

@media screen and (min-width: 990px) {
  .pagination-wrapper {
    margin-top: 3.125rem;
    margin-bottom: 6.25rem;
  }
}

.pagination__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.pagination__list > li {
  flex: 1 0 2.75rem;
  max-width: 2.75rem;
}

.pagination__list > li:not(:last-child) {
  margin-right: .625rem;
}

.pagination__item {
  color: rgb(var(--color-foreground));
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 2.75rem;
  width: 100%;
  padding: 0;
  text-decoration: none;
}

.pagination__item:hover {
  color: rgb(var(--color-foreground));
}

a.pagination__item:hover::after {
  height: .125rem;
}

.pagination__item .icon-caret {
  height: .375rem;
}

.pagination__item--current {
  font-weight: 600;
}

.pagination__item--current::after {
  height: .0625rem;
}

.pagination__item--current::after,
.pagination__item:hover::after {
  content: '';
  display: block;
  width: 1.25rem;
  position: absolute;
  bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
  background-color: currentColor;
}

.pagination__item--next .icon {
  margin-left: -.125rem;
  transform: rotate(90deg);
}

.pagination__item--next:hover .icon {
  transform: rotate(90deg) scale(1.07);
}

.pagination__item--prev .icon {
  margin-right: -.125rem;
  transform: rotate(-90deg);
}

.pagination__item--prev:hover .icon {
  transform: rotate(-90deg) scale(1.07);
}

.pagination__item-arrow {
  color: rgba(var(--color-foreground), 0.75);
}

.pagination__item-arrow:hover .icon {
  color: rgb(var(--color-foreground));
}

.pagination__item-arrow:hover::after {
  display: none;
}
