.pagination a,
.pagination span,
.pagination em {
  position: relative;
  float: left;
  margin-left: -1px;
  font-size: 13px;
  font-weight: bold;
  font-style: normal;
  padding: 7px 12px;
  color: #4078c0;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  background: #fff;
  border: 1px solid #e5e5e5;
  user-select: none;
}
.pagination a:first-child,
.pagination span:first-child,
.pagination em:first-child {
  margin-left: 0;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
.pagination a:last-child,
.pagination span:last-child,
.pagination em:last-child {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}
.pagination a:hover, .pagination a:focus,
.pagination span:hover,
.pagination span:focus,
.pagination em:hover,
.pagination em:focus {
  z-index: 2;
  background-color: #e7e7e7;
  border-color: #e5e5e5;
  text-decoration: none;
}
.pagination .selected {
  z-index: 3;
}
.pagination .current,
.pagination .current:hover {
  z-index: 3;
  color: #fff;
  background-color: #4078c0;
  border-color: #4078c0;
}
.pagination .gap,
.pagination .disabled,
.pagination .gap:hover,
.pagination .disabled:hover {
  background-color: #fafafa;
  cursor: default;
  color: #d3d3d3;
}

.ajax_paginate {
  display: block;
  margin-top: 20px;
}
.ajax_paginate a {
  float: none;
  display: block;
  padding: 6px;
  text-align: center;
}
.ajax_paginate.loading a {
  text-indent: -3000px;
  background-color: #eaeaea;
  background-image: url("/images/spinners/octocat-spinner-16px-EAF2F5.gif");
  background-repeat: no-repeat;
  background-position: center center;
  border-color: #c5c5c5;
}
@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (max--moz-device-pixel-ratio: 2) {
  .ajax_paginate.loading a {
    background-image: url("/images/spinners/octocat-spinner-32-EAF2F5.gif");
    background-size: 16px auto;
  }
}

.paginate-container {
  margin-top: 20px;
  margin-bottom: 15px;
  text-align: center;
}
.paginate-container .pagination {
  display: inline-block;
}
