/* Shared DataTables footer and pagination normalization.
 * This file loads after both the member-area and public-site themes so
 * Bootstrap 3/5 and page-specific typography cannot distort the controls.
 */
.dataTables_wrapper > .row:last-child {
  display: flex !important;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin: 0 !important;
  padding: 12px !important;
  border-top: 1px solid #e7ecef;
  background: #fbfcfd;
}

.dataTables_wrapper > .row:last-child::before,
.dataTables_wrapper > .row:last-child::after {
  display: none !important;
}

.dataTables_wrapper > .row:last-child > [class*="col-"] {
  width: auto !important;
  max-width: 100% !important;
  flex: 0 1 auto !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.dataTables_wrapper .dataTables_info {
  margin: 0 !important;
  padding: 0 !important;
  color: #758391;
  font-size: 12px !important;
  line-height: 1.45 !important;
  white-space: normal;
}

.dataTables_wrapper .dataTables_paginate {
  float: none !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  text-align: right !important;
}

.dataTables_wrapper .dataTables_paginate .pagination {
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}

.dataTables_wrapper .dataTables_paginate .pagination > li,
.dataTables_wrapper .dataTables_paginate .paginate_button {
  display: block;
  margin: 0 !important;
  padding: 0;
}

/* Bootstrap renders each control as a list item containing the actual link.
 * Reset the wrapper so page-level button rules cannot create a second outline.
 */
.dataTables_wrapper .dataTables_paginate .pagination > li.paginate_button {
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button > a,
.dataTables_wrapper .dataTables_paginate .paginate_button > span,
.dataTables_wrapper .dataTables_paginate > span > .paginate_button,
.dataTables_wrapper .dataTables_paginate > .paginate_button {
  display: inline-flex !important;
  width: auto !important;
  min-width: 34px !important;
  height: 34px !important;
  align-items: center;
  justify-content: center;
  float: none !important;
  margin: 0 !important;
  padding: 6px 10px !important;
  border: 1px solid #d4dde4 !important;
  border-radius: 8px !important;
  background: #fff !important;
  background-image: none !important;
  color: #536475 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.dataTables_wrapper .dataTables_paginate .previous > a,
.dataTables_wrapper .dataTables_paginate .next > a,
.dataTables_wrapper .dataTables_paginate > .previous,
.dataTables_wrapper .dataTables_paginate > .next {
  min-width: 46px !important;
  font-size: 12px !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:not(.disabled) > a:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button:not(.disabled) > a:focus,
.dataTables_wrapper .dataTables_paginate > .paginate_button:not(.disabled):hover,
.dataTables_wrapper .dataTables_paginate > .paginate_button:not(.disabled):focus {
  border-color: #8db5dc !important;
  background: #edf5fd !important;
  color: #245f9e !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.active > a,
.dataTables_wrapper .dataTables_paginate .paginate_button.active > span,
.dataTables_wrapper .dataTables_paginate > .paginate_button.current {
  border-color: #2f6fbd !important;
  background: #2f6fbd !important;
  color: #fff !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled > a,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled > span,
.dataTables_wrapper .dataTables_paginate > .paginate_button.disabled {
  border-color: #e0e7ed !important;
  background: #f3f6f8 !important;
  color: #9ba9b5 !important;
  cursor: default !important;
}

@media (max-width: 767px) {
  .dataTables_wrapper > .row:last-child {
    align-items: stretch;
    flex-direction: column;
  }

  .dataTables_wrapper > .row:last-child > [class*="col-"] {
    width: 100% !important;
  }

  .dataTables_wrapper .dataTables_paginate {
    width: 100%;
    margin-left: 0 !important;
    text-align: left !important;
  }

  .dataTables_wrapper .dataTables_paginate .pagination {
    justify-content: flex-start;
  }
}
