/* BO table pagination standard — one shared layout for every paginated table. */
:root{--bo-page-blue:#2f66ed;--bo-page-border:#d5ddea;--bo-page-text:#344054}

.table-footer,.admin-table-footer,.table-pagination-wrap,.ref-pagination-row,
.game-table-footer,.subcategory-table-footer,.bo-table-pagination,.bo-pagination-standard{
  box-sizing:border-box!important;width:100%!important;min-height:58px!important;
  display:grid!important;grid-template-columns:minmax(190px,1fr) minmax(260px,1fr) minmax(190px,1fr)!important;
  align-items:center!important;gap:16px!important;margin:0!important;padding:12px 0 0!important;
  color:#667085!important;font-size:12px!important;background:transparent!important;border:0!important;
}

.table-footer>.entries-control,.admin-table-footer>.entries-control,.table-pagination-wrap>.table-page-size,
.ref-pagination-row>:first-child,.game-table-footer>.entries-control,.subcategory-table-footer>.entries-control,
.bo-table-pagination>.entries-control,.bo-pagination-standard>.entries-control{
  grid-column:1!important;justify-self:start!important;display:inline-flex!important;align-items:center!important;
  gap:8px!important;width:auto!important;margin:0!important;white-space:nowrap!important;color:#667085!important;font-weight:500!important;
}
/* Beat reports.css `.entries-control .rounded-select-wrap { margin-top:-35px }` — keep Show [N] entries on one baseline. */
.entries-control .rounded-select-wrap{
  display:inline-flex!important;align-items:center!important;vertical-align:middle!important;
  margin:0!important;margin-top:0!important;height:auto!important;width:auto!important;min-width:0!important;
  flex:0 0 auto!important;position:relative!important;overflow:visible!important;
}

.table-footer>.table-info,.admin-table-footer>.table-info,.table-pagination-wrap>.table-pagination-info,
.ref-pagination-row>:nth-child(2),.game-table-footer>#gameShowingText,.subcategory-table-footer>#subCategoryShowingText,
.bo-table-pagination>.table-info,.bo-pagination-standard>.table-info{
  grid-column:2!important;justify-self:center!important;width:auto!important;margin:0!important;text-align:center!important;
  white-space:nowrap!important;color:#667085!important;font-weight:700!important;
}

.table-footer>.pagination-clean,.admin-table-footer>.pagination-clean,.table-pagination-wrap>#memberPager,
.table-pagination-wrap>.table-pagination,.ref-pagination-row>.ref-pager,.game-table-footer>.smart-pagination,
.subcategory-table-footer>.smart-pagination,.bo-table-pagination>.pagination-clean,.bo-pagination-standard>.pagination-clean{
  grid-column:3!important;justify-self:end!important;display:inline-flex!important;align-items:center!important;
  justify-content:flex-end!important;gap:8px!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;
}

.entries-control select,.table-page-size select,.ref-pagination-row select,.bo-pagination-standard select{
  box-sizing:border-box!important;display:inline-block!important;flex:0 0 68px!important;width:68px!important;min-width:68px!important;
  max-width:68px!important;height:40px!important;margin:0!important;padding:0 28px 0 12px!important;border:1px solid var(--bo-page-border)!important;
  border-radius:10px!important;background-color:#FFF8EB!important;color:#1d2939!important;font-size:13px!important;font-weight:800!important;
  line-height:40px!important;box-shadow:none!important;
}

.pagination-clean .page-btn,.pagination-clean button,.table-page-btn,.smart-page,
.ref-pager button,.ref-pager b,.pwt-pager button,.vip-log-pagination button{
  box-sizing:border-box!important;flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:40px!important;width:auto!important;max-width:none!important;height:40px!important;min-height:40px!important;margin:0!important;
  padding:0 12px!important;border:1px solid var(--bo-page-border)!important;border-radius:10px!important;background:#fff!important;
  color:var(--bo-page-text)!important;font-size:13px!important;font-weight:800!important;line-height:1!important;text-decoration:none!important;
  box-shadow:none!important;overflow:visible!important;
}
.pagination-clean .page-btn.active,.pagination-clean button.active,.table-page-btn.active,.smart-page.active,.ref-pager b,
.pwt-pager button.active,.vip-log-pagination button.active{
  background:var(--bo-page-blue)!important;border-color:var(--bo-page-blue)!important;color:#fff!important;
}
.pagination-clean button:disabled,.pagination-clean .page-btn:disabled,.table-page-btn:disabled,.smart-page:disabled,
.ref-pager button:disabled,.pwt-pager button:disabled,.vip-log-pagination button:disabled{
  opacity:.42!important;cursor:not-allowed!important;background:#fff!important;color:#98a2b3!important;
}
.smart-page-ellipsis{min-width:20px!important;text-align:center!important;color:#98a2b3!important;font-weight:800!important}.smart-page-summary{display:none!important}

/* Remove old full-width / previous-next layouts once standardized. */
.bo-pagination-standard.d-flex{display:grid!important}.bo-pagination-standard>.clean-btn{width:auto!important}

@media(max-width:767.98px){
 .table-footer,.admin-table-footer,.table-pagination-wrap,.ref-pagination-row,.game-table-footer,.subcategory-table-footer,
 .bo-table-pagination,.bo-pagination-standard{grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important;gap:10px!important}
 .table-footer>*,.admin-table-footer>*,.table-pagination-wrap>*,.ref-pagination-row>*,.game-table-footer>*,
 .subcategory-table-footer>*,.bo-table-pagination>*,.bo-pagination-standard>*{grid-column:1!important;justify-self:center!important}
}

/* v2.0.1 safe legacy pagination normalization */
.pagination-clean-inner{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;padding:0!important;color:inherit!important}
.pagination-clean-inner>.smart-pagination{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important}
.pagination-clean-inner .smart-page-summary{display:none!important}
.pagination-clean-inner .smart-page.first,.pagination-clean-inner .smart-page.last{min-width:34px!important;width:34px!important;height:34px!important;padding:0!important}
.pagination-clean-inner>.text-muted,.pagination-clean-inner.small{margin:0!important}
.bo-pagination-standard>.pagination-clean{justify-self:end!important;display:flex!important;align-items:center!important;gap:8px!important}


/* v2.0.2: pager containers must never inherit active button backgrounds */
.pagination-clean>span,
.pagination-clean>.pagination-clean-inner,
.pagination-clean-inner,
.pagination-clean-inner>.smart-pagination,
.pagination-clean>[id*="Pager"],
.pagination-clean>[id*="Pagination"]{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:inherit!important;
  min-width:0!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  border-radius:0!important;
}
.pagination-clean .smart-page-ellipsis,
.pagination-clean .smart-page-summary{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#98a2b3!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  padding:0 2px!important;
}


/* v2.1.0 — ADMIN LOGIN LOG IS THE SINGLE PAGINATION STANDARD.
   Keep the native select; never replace it with a portal/custom dropdown. */
.report-main .table-footer{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:64px!important;
  display:grid!important;
  grid-template-columns:minmax(190px,1fr) minmax(260px,1fr) minmax(190px,1fr)!important;
  align-items:center!important;
  gap:16px!important;
  margin:0!important;
  padding:14px 14px 16px!important;
  overflow:visible!important;
  position:relative!important;
  z-index:5!important;
  background:#fff!important;
  border:0!important;
  color:#667085!important;
  font-size:12px!important;
}
.report-main .table-footer>.entries-control{
  grid-column:1!important;justify-self:start!important;
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
  overflow:visible!important;white-space:nowrap!important;color:#667085!important;font-weight:500!important;
}
.report-main .table-footer>.entries-control select{
  appearance:auto!important;-webkit-appearance:menulist!important;
  box-sizing:border-box!important;display:inline-block!important;
  width:68px!important;min-width:68px!important;max-width:68px!important;height:40px!important;
  margin:0!important;padding:0 8px!important;
  border:1px solid #d5ddea!important;border-radius:10px!important;
  background:#FFF8EB!important;color:#1d2939!important;font-size:13px!important;font-weight:800!important;
  line-height:normal!important;box-shadow:none!important;position:relative!important;z-index:20!important;
  cursor:pointer!important;overflow:visible!important;
}
.report-main .table-footer>.table-info{
  grid-column:2!important;justify-self:center!important;margin:0!important;padding:0!important;
  color:#667085!important;font-size:12px!important;font-weight:700!important;text-align:center!important;white-space:nowrap!important;
}
.report-main .table-footer>.pagination-clean{
  grid-column:3!important;justify-self:end!important;
  display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;
  width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
  overflow:visible!important;background:transparent!important;border:0!important;box-shadow:none!important;
}
/* The horizontal table scrollbar belongs to the table only and must never cross the entries footer. */
.report-main .table-wrap,
.report-main .standard-table-wrap,
.report-main .game-table-wrap,
.report-main .subcategory-table-wrap{
  position:relative!important;z-index:1!important;margin-bottom:0!important;
}
.report-main .standard-list-card,
.report-main .table-card,
.report-main .manage-list-card,
.report-main .vip-log-card{
  overflow:visible!important;
}
/* Do not let generic filter/select sizing rules touch pagination selects. */
.report-main .table-footer select[data-bo-content-sized],
.report-main .table-footer select{
  --bo-select-width:68px!important;
}
@media(max-width:767.98px){
 .report-main .table-footer{
   grid-template-columns:minmax(0,1fr) auto!important;
   grid-template-areas:"entries pager" "info info"!important;
   gap:10px!important;padding:12px!important;
 }
 .report-main .table-footer>.entries-control{grid-area:entries!important;grid-column:auto!important;justify-self:start!important}
 .report-main .table-footer>.pagination-clean{grid-area:pager!important;grid-column:auto!important;justify-self:end!important;max-width:100%!important;overflow-x:auto!important}
 .report-main .table-footer>.table-info{grid-area:info!important;grid-column:auto!important;justify-self:center!important;width:100%!important;white-space:normal!important}
}

/* v2.1.1 — THE WRAPPED PAGE-SIZE SELECT, AND THE MENU THAT OPENS UPWARD.

   TWO DEFECTS, BOTH MEASURED ON PROMOTION BONUS, EACH ALREADY PATCHED PER THEME INSTEAD
   OF ONCE HERE.

   1. reports.js replaces every native select with `.rounded-select-wrap` + a
      `.rounded-select-btn` (the control the operator actually clicks) and reports.css takes
      the real select out of the flow (`position:absolute` / 1px). The `select` rule above is
      more specific (`position:relative!important` + 68x40!important) and put it BACK IN
      FLOW: the wrap is 72px, the invisible select took 68 of them, and the 30px button was
      pushed past the wrap and painted over the word after it — measured `Show [ - ]ries`,
      the report "show entries 的设计跑了". Same two declarations as
      access-control-executive.css carries for the Access Control family (its comment records
      the identical symptom, `Show 10 ries`) — shared here instead of copied an eighth time.

   2. The page-size menu opened DOWNWARD (`top:calc(100% + 6px)` in reports.css) out of the
      footer, which is the card's LAST row: on Promotion Bonus the menu measured 648..878
      against a card ending at 788, and every ancestor that clips the table's corners ate it.
      Opening upward is what the module sheets already settled on (access-control-executive,
      agent-admin-management, reports.css → page-game-category, bo-charcoal-cms →
      manual-rebate-approval): there is a card's worth of room above the footer, and the
      wrap's own `overflow:hidden` — which exists to clip the table's corners — no longer
      truncates the menu. */
.report-main .table-footer>.entries-control .rounded-select-wrap>select,
.report-main .admin-table-footer>.entries-control .rounded-select-wrap>select,
.report-main .game-table-footer>.entries-control .rounded-select-wrap>select,
.report-main .subcategory-table-footer>.entries-control .rounded-select-wrap>select,
.report-main .bo-table-pagination>.entries-control .rounded-select-wrap>select,
.report-main .bo-pagination-standard>.entries-control .rounded-select-wrap>select,
.report-main .table-pagination-wrap>.table-page-size .rounded-select-wrap>select,
.report-main .ref-pagination-row>:first-child .rounded-select-wrap>select{
  position:absolute!important;left:0!important;top:0!important;
  width:1px!important;min-width:0!important;max-width:1px!important;height:1px!important;
  flex:0 0 auto!important;opacity:0!important;pointer-events:none!important;
  margin:0!important;padding:0!important;border:0!important;
}
.report-main .table-footer>.entries-control .rounded-select-wrap>.rounded-select-btn,
.report-main .admin-table-footer>.entries-control .rounded-select-wrap>.rounded-select-btn,
.report-main .game-table-footer>.entries-control .rounded-select-wrap>.rounded-select-btn,
.report-main .subcategory-table-footer>.entries-control .rounded-select-wrap>.rounded-select-btn,
.report-main .bo-table-pagination>.entries-control .rounded-select-wrap>.rounded-select-btn,
.report-main .bo-pagination-standard>.entries-control .rounded-select-wrap>.rounded-select-btn,
.report-main .table-pagination-wrap>.table-page-size .rounded-select-wrap>.rounded-select-btn,
.report-main .ref-pagination-row>:first-child .rounded-select-wrap>.rounded-select-btn{
  flex:1 1 auto!important;width:100%!important;min-width:0!important;max-width:none!important;
}
.report-main .table-footer>.entries-control .rounded-select-wrap>.rounded-select-menu,
.report-main .admin-table-footer>.entries-control .rounded-select-wrap>.rounded-select-menu,
.report-main .game-table-footer>.entries-control .rounded-select-wrap>.rounded-select-menu,
.report-main .subcategory-table-footer>.entries-control .rounded-select-wrap>.rounded-select-menu,
.report-main .bo-table-pagination>.entries-control .rounded-select-wrap>.rounded-select-menu,
.report-main .bo-pagination-standard>.entries-control .rounded-select-wrap>.rounded-select-menu,
.report-main .table-pagination-wrap>.table-page-size .rounded-select-wrap>.rounded-select-menu,
.report-main .ref-pagination-row>:first-child .rounded-select-wrap>.rounded-select-menu{
  top:auto!important;bottom:calc(100% + 6px)!important;z-index:3000!important;
}

/* Referral Network: Show left, pager hard-right (override 3-col grid above) */
body.referral-page .report-main .table-footer.ref-pagination-row,
body.referral-page .table-footer.ref-pagination-row{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  justify-content:space-between!important;
  align-items:center!important;
  grid-template-columns:none!important;
  grid-template-areas:none!important;
  width:100%!important;
}
body.referral-page .report-main .table-footer.ref-pagination-row > .table-info,
body.referral-page .table-footer.ref-pagination-row > .table-info{
  display:none!important;
}
body.referral-page .report-main .table-footer.ref-pagination-row > .entries-control,
body.referral-page .table-footer.ref-pagination-row > .entries-control{
  flex:0 0 auto!important;
  margin:0!important;
  grid-column:auto!important;
  grid-area:auto!important;
  justify-self:auto!important;
}
body.referral-page .report-main .table-footer.ref-pagination-row > .pagination-clean,
body.referral-page .table-footer.ref-pagination-row > .pagination-clean{
  flex:0 0 auto!important;
  margin-left:auto!important;
  margin-right:0!important;
  grid-column:auto!important;
  grid-area:auto!important;
  justify-self:auto!important;
}
