/**
 * Pagination
 */
.pagination {
  display: flex;
  max-width: 100%;
  font-size: var(--pagination--font-size, var(--font-size));
}
.pagination .pagination-items {
  list-style: none;
  margin-bottom: 0;
  padding-left: 0;
  display: flex;
  align-items: center;
}
.pagination .pagination-item {
  display: inline-flex;
  border-color: var(--pagination--border-color, var(--pagination--border-top-color, var(--border-top-color)) var(--pagination--border-right-color, var(--border-right-color)) var(--pagination--border-bottom-color, var(--border-bottom-color)) var(--pagination--border-left-color, var(--border-left-color)));
  border-width: var(--pagination--border-width, var(--pagination--border-top-width, var(--border-top-width)) var(--pagination--border-right-width, var(--border-right-width)) var(--pagination--border-bottom-width, var(--border-bottom-width)) var(--pagination--border-left-width, var(--border-left-width)));
  border-style: var(--pagination--border-style, var(--pagination--border-top-style, var(--border-top-style)) var(--pagination--border-right-style, var(--border-right-style)) var(--pagination--border-bottom-style, var(--border-bottom-style)) var(--pagination--border-left-style, var(--border-left-style)));
  border-radius: var(--pagination--border-radius, var(--pagination--border-top-left-radius, var(--border-top-left-radius)) var(--pagination--border-top-right-radius, var(--border-top-right-radius)) var(--pagination--border-bottom-right-radius, var(--border-bottom-right-radius)) var(--pagination--border-bottom-left-radius, var(--border-bottom-left-radius)));
  box-shadow: var(--pagination--box-shadow, var(--pagination--box-shadow-x-offset, var(--box-shadow-offset-x)) var(--pagination--box-shadow-y-offset, var(--box-shadow-offset-y)) var(--pagination--box-shadow-blur-radius, var(--box-shadow-blur-radius)) var(--pagination--box-shadow-spread-radius, var(--box-shadow-spread-radius)) var(--pagination--box-shadow-color, var(--box-shadow-color)));
  padding: var(--pagination--padding, var(--pagination--padding-top, var(--padding-top)) var(--pagination--padding-right, var(--padding-right)) var(--pagination--padding-bottom, var(--padding-bottom)) var(--pagination--padding-left, var(--padding-left)));
  min-width: var(--pagination--min-width, 40px);
  color: var(--pagination--color);
  background-color: var(--pagination--background);
  margin: var(--pagination--margin, var(--pagination--margin-top, var(--margin-top)) var(--pagination--margin-right, var(--margin-right)) var(--pagination--margin-bottom, var(--margin-bottom)) var(--pagination--margin-left, var(--margin-left)));
  text-align: center;
  justify-content: center;
  cursor: pointer;
  transition-property: var(--pagination--transition-property, background, color, border);
  transition-timing-function: var(--pagination--transition-timing-function, var(--transition-timing-function));
  transition-duration: var(--pagination--transition-duration, var(--transition-duration));
}
.pagination .pagination-item:hover:not(.-disabled), .pagination .pagination-item:focus:not(.-disabled) {
  background: var(--pagination--hover--background);
}
.pagination .pagination-item.-active {
  background: var(--pagination--active--background, var(--pagination--background));
  border-color: var(--pagination--active--border-color, var(--pagination--active--border-top-color, var(--pagination--border-top-color, var(--border-top-color))) var(--pagination--active--border-right-color, var(--pagination--border-right-color, var(--border-right-color))) var(--pagination--active--border-bottom-color, var(--pagination--border-bottom-color, var(--border-bottom-color))) var(--pagination--active--border-left-color, var(--pagination--border-left-color, var(--border-left-color))));
  color: var(--pagination--active--color, var(--pagination--color));
  font-weight: bold;
}
.pagination .pagination-item.-active:hover, .pagination .pagination-item.-active:focus {
  background: var(--pagination--active--background, var(--pagination--background));
}
.pagination .pagination-item.-disabled {
  cursor: default;
  color: var(--pagination--disabled--color, var(--pagination--color));
  opacity: var(--pagination--disabled--opacity, 0.75);
}
.pagination .pagination-item.-quick-next.-disabled, .pagination .pagination-item.-quick-previous.-disabled {
  color: var(--pagination--quick--disabled--border-color, var(--pagination--disabled--color));
  border-color: var(--pagination--quick--disabled--border-color, var(--pagination--background));
  opacity: var(--pagination--quick--disabled--opacity, var(--pagination--disabled--opacity, 0.75));
}

/**
 * Color variants
 */
.pagination.-light {
  --pagination--background: var(--pagination--light--background, var(--color-light));
  --pagination--border-top-color: var(
      --pagination--light--border-top-color,
      var(--color-light-shade-50)
  );
  --pagination--border-right-color: var(
      --pagination--light--border-right-color,
      var(--color-light-shade-50)
  );
  --pagination--border-bottom-color: var(
      --pagination--light--border-bottom-color,
      var(--color-light-shade-50)
  );
  --pagination--border-left-color: var(
      --pagination--light--border-left-color,
      var(--color-light-shade-50)
  );
  --pagination--color: var(--pagination--light--color, var(--contrast-text-color-light));
  --pagination--hover--background: var(
      --pagination--light--hover--background,
      var(--color-light-shade-50)
  );
  --pagination--active--background: var(
      --pagination--light--active--background,
      var(--color-primary)
  );
  --pagination--active--border-top-color: var(
      --pagination--light--border-top-color--active,
      var(--color-primary-shade-50)
  );
  --pagination--active--border-right-color: var(
      --pagination--light--border-right-color--active,
      var(--color-primary-shade-50)
  );
  --pagination--active--border-bottom-color: var(
      --pagination--light--border-bottom-color--active,
      var(--color-primary-shade-50)
  );
  --pagination--active--border-left-color: var(
      --pagination--light--border-left-color--active,
      var(--color-primary-shade-50)
  );
  --pagination--active--color: var(
      --pagination--light--active--color,
      var(--contrast-text-color-primary)
  );
  --pagination--disabled--color: var(
      --pagination--light--disabled--color,
      var(--text-color-weak)
  );
}
.pagination.-dark {
  --pagination--background: var(--pagination--dark--background, var(--color-dark));
  --pagination--border-top-color: var(
      --pagination--dark--border-top-color,
      var(--color-dark-tint-50)
  );
  --pagination--border-right-color: var(
      --pagination--dark--border-right-color,
      var(--color-dark-tint-50)
  );
  --pagination--border-bottom-color: var(
      --pagination--dark--border-bottom-color,
      var(--color-dark-tint-50)
  );
  --pagination--border-left-color: var(
      --pagination--dark--border-left-color,
      var(--color-dark-tint-50)
  );
  --pagination--color: var(--pagination--dark--color, var(--contrast-text-color-dark));
  --pagination--hover--background: var(
      --pagination--dark--hover--background,
      var(--color-dark-tint-50)
  );
  --pagination--active--background: var(
      --pagination--dark--active--background,
      var(--color-primary)
  );
  --pagination--active--border-top-color: var(
      --pagination--dark--border-top-color--active,
      var(--color-primary-shade-50)
  );
  --pagination--active--border-right-color: var(
      --pagination--dark--border-right-color--active,
      var(--color-primary-shade-50)
  );
  --pagination--active--border-bottom-color: var(
      --pagination--dark--border-bottom-color--active,
      var(--color-primary-shade-50)
  );
  --pagination--active--border-left-color: var(
      --pagination--dark--border-left-color--active,
      var(--color-primary-shade-50)
  );
  --pagination--active--color: var(
      --pagination--dark--active--color,
      var(--contrast-text-color-primary)
  );
  --pagination--disabled--color: var(
      --pagination--dark--disabled--color,
      var(--text-color-weak)
  );
}

/**
 * Size variants
 */
.pagination.-sm {
  --pagination--border-top-left-radius: var(
      --pagination--sm--border-top-left-radius,
      calc(var(--border-top-left-radius) * var(--size-multiplier-sm))
  );
  --pagination--border-top-right-radius: var(
      --pagination--sm--border-top-right-radius,
      calc(var(--border-top-right-radius) * var(--size-multiplier-sm))
  );
  --pagination--border-bottom-right-radius: var(
      --pagination--sm--border-bottom-right-radius,
      calc(var(--border-bottom-right-radius) * var(--size-multiplier-sm))
  );
  --pagination--border-bottom-left-radius: var(
      --pagination--sm--border-bottom-left-radius,
      calc(var(--border-bottom-left-radius) * var(--size-multiplier-sm))
  );
  --pagination--font-size: var(
      --pagination--sm--font-size,
      calc(var(--font-size) * var(--size-multiplier-sm))
  );
  --pagination--margin-right: var(
      --pagination--sm--margin-right,
      calc(calc(var(--margin-right) / 4) * var(--size-multiplier-sm))
  );
  --pagination--margin-left: var(
      --pagination--sm--margin-left,
      calc(calc(var(--margin-left) / 4) * var(--size-multiplier-sm))
  );
  --pagination--min-width: var(
      --pagination--sm--min-width,
      calc(40px * var(--size-multiplier-sm))
  );
  --pagination--padding-top: var(
      --pagination--sm--padding-top,
      calc(var(--padding-top) / 2 * var(--size-multiplier-sm))
  );
  --pagination--padding-right: var(
      --pagination--sm--padding-right,
      calc(var(--padding-right) / 2 * var(--size-multiplier-sm))
  );
  --pagination--padding-bottom: var(
      --pagination--sm--padding-bottom,
      calc(var(--padding-bottom) / 2 * var(--size-multiplier-sm))
  );
  --pagination--padding-left: var(
      --pagination--sm--padding-left,
      calc(var(--padding-left) / 2 * var(--size-multiplier-sm))
  );
}
.pagination.-md {
  --pagination--border-top-left-radius: var(
      --pagination--md--border-top-left-radius,
      calc(var(--border-top-left-radius) * var(--size-multiplier-md))
  );
  --pagination--border-top-right-radius: var(
      --pagination--md--border-top-right-radius,
      calc(var(--border-top-right-radius) * var(--size-multiplier-md))
  );
  --pagination--border-bottom-right-radius: var(
      --pagination--md--border-bottom-right-radius,
      calc(var(--border-bottom-right-radius) * var(--size-multiplier-md))
  );
  --pagination--border-bottom-left-radius: var(
      --pagination--md--border-bottom-left-radius,
      calc(var(--border-bottom-left-radius) * var(--size-multiplier-md))
  );
  --pagination--font-size: var(
      --pagination--md--font-size,
      calc(var(--font-size) * var(--size-multiplier-md))
  );
  --pagination--margin-right: var(
      --pagination--md--margin-right,
      calc(var(--margin-right) / 4 * var(--size-multiplier-md))
  );
  --pagination--margin-left: var(
      --pagination--md--margin-left,
      calc(var(--margin-left) / 4 * var(--size-multiplier-md))
  );
  --pagination--min-width: var(
      --pagination--md--min-width,
      calc(40px * var(--size-multiplier-md))
  );
  --pagination--padding-top: var(
      --pagination--md--padding-top,
      calc(var(--padding-top) / 2 * var(--size-multiplier-md))
  );
  --pagination--padding-right: var(
      --pagination--md--padding-right,
      calc(var(--padding-right) / 2 * var(--size-multiplier-md))
  );
  --pagination--padding-bottom: var(
      --pagination--md--padding-bottom,
      calc(var(--padding-bottom) / 2 * var(--size-multiplier-md))
  );
  --pagination--padding-left: var(
      --pagination--md--padding-left,
      calc(var(--padding-left) / 2 * var(--size-multiplier-md))
  );
}
.pagination.-lg {
  --pagination--border-top-left-radius: var(
      --pagination--lg--border-top-left-radius,
      calc(var(--border-top-left-radius) * var(--size-multiplier-lg))
  );
  --pagination--border-top-right-radius: var(
      --pagination--lg--border-top-right-radius,
      calc(var(--border-top-right-radius) * var(--size-multiplier-lg))
  );
  --pagination--border-bottom-right-radius: var(
      --pagination--lg--border-bottom-right-radius,
      calc(var(--border-bottom-right-radius) * var(--size-multiplier-lg))
  );
  --pagination--border-bottom-left-radius: var(
      --pagination--lg--border-bottom-left-radius,
      calc(var(--border-bottom-left-radius) * var(--size-multiplier-lg))
  );
  --pagination--font-size: var(
      --pagination--lg--font-size,
      calc(var(--font-size) * var(--size-multiplier-lg))
  );
  --pagination--margin-right: var(
      --pagination--lg--margin-right,
      calc(var(--margin-right) / 4 * var(--size-multiplier-lg))
  );
  --pagination--margin-left: var(
      --pagination--lg--margin-left,
      calc(var(--margin-left) / 4 * var(--size-multiplier-lg))
  );
  --pagination--min-width: var(
      --pagination--lg--min-width,
      calc(40px * var(--size-multiplier-lg))
  );
  --pagination--padding-top: var(
      --pagination--lg--padding-top,
      calc(calc(var(--padding-top) / 2) * var(--size-multiplier-lg))
  );
  --pagination--padding-right: var(
      --pagination--lg--padding-right,
      calc(var(--padding-right) / 2 * var(--size-multiplier-lg))
  );
  --pagination--padding-bottom: var(
      --pagination--lg--padding-bottom,
      calc(var(--padding-bottom) / 2 * var(--size-multiplier-lg))
  );
  --pagination--padding-left: var(
      --pagination--lg--padding-left,
      calc(var(--padding-left) / 2 * var(--size-multiplier-lg))
  );
}