/* Targeted BO fixes v2.2.0 — intentionally excludes User/Admin Management geometry. */

/* Referral filter: preserve approved controls and force a true 10px sequence. */
.referral-page .referral-filter-card:not(.referral-reward-config) .referral-filter-grid{
  display:flex!important;flex-flow:row wrap!important;align-items:flex-end!important;justify-content:flex-start!important;gap:10px!important;
  grid-template-columns:none!important;
}
.referral-page .referral-filter-card:not(.referral-reward-config) .ref-date-field{flex:0 0 390px!important;width:390px!important;max-width:390px!important;margin:0!important}
.referral-page .referral-filter-card:not(.referral-reward-config) .referral-filter-grid>.field:nth-child(2){flex:0 0 190px!important;width:190px!important;max-width:190px!important;margin:0!important}
.referral-page .referral-filter-card:not(.referral-reward-config) .referral-filter-grid>.field:nth-child(3){flex:0 0 auto!important;width:auto!important;margin:0!important}
.referral-page .referral-filter-card:not(.referral-reward-config) .ref-filter-actions{display:flex!important;align-items:flex-end!important;gap:10px!important;width:auto!important;flex:0 0 auto!important;margin:0!important}
.referral-page .ref-input-icon{position:relative!important;width:100%!important}
.referral-page .ref-input-icon>i{left:13px!important;right:auto!important;top:50%!important;transform:translateY(-50%)!important;pointer-events:none!important;z-index:2!important}
.referral-page .ref-input-icon>input{padding-left:39px!important;padding-right:12px!important;width:100%!important;box-sizing:border-box!important}

/* Shared approved date-range width only on report pages that use the generated picker. */
.wallet-ledger-page .bo-range-field,
.provider-bet-report-page .bo-range-field,
.provider-transaction-page .bo-range-field,
body.provider-session-page .bo-range-field,
.rebate-page .bo-range-field{flex:0 0 390px!important;width:390px!important;max-width:390px!important}
.wallet-ledger-page .bo-range-trigger,
.provider-bet-report-page .bo-range-trigger,
.provider-transaction-page .bo-range-trigger,
body.provider-session-page .bo-range-trigger,
.rebate-page .bo-range-trigger{width:390px!important;max-width:390px!important}

/* Approval pages: exact 10px adjacency, without touching other pages. */
.deposit-approval-page .user-search-grid,
.withdraw-approval-page .user-search-grid{display:flex!important;flex-flow:row wrap!important;align-items:flex-end!important;justify-content:flex-start!important;gap:10px!important;grid-template-columns:none!important}
.deposit-approval-page .user-search-grid>.field,
.withdraw-approval-page .user-search-grid>.field{margin:0!important;flex:0 0 auto!important;width:auto!important}
.deposit-approval-page .user-search-grid>.field:first-child,
.withdraw-approval-page .user-search-grid>.field:first-child{width:190px!important;flex-basis:190px!important}
.deposit-approval-page .deposit-reset-field,.deposit-approval-page .deposit-search-field,
.withdraw-approval-page .withdraw-reset-field,.withdraw-approval-page .withdraw-search-field{width:120px!important;flex-basis:120px!important}

/* API Debug Tools: provider is the only select that fills its own column. */
.page-game-provider #walletForm .slider-two-col>.field:has(#walletProviderCode),
.page-game-provider #walletProviderCode{width:100%!important;max-width:100%!important}

/* VIP experience rules: compact, consistent 10px grid. */
.vip-management-page .vip-settings-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;align-items:end!important}
.vip-management-page .vip-settings-grid>label{margin:0!important;min-width:0!important}
.vip-management-page .vip-settings-grid input{width:100%!important}
.vip-management-page .vip-settings-grid select{width:max-content!important;min-width:64px!important;max-width:100%!important}

/* Mobile pagination only. Desktop pagination remains untouched. */
@media(max-width:767.98px){
  .report-main :is(.table-footer,.admin-table-footer,.table-pagination-wrap,.ref-pagination-row,.game-table-footer,.subcategory-table-footer,.bo-table-pagination,.standard-pagination){
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"entries pager" "info info"!important;
    align-items:center!important;gap:10px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important;
  }
  .report-main :is(.entries-control,.table-length,.page-size-wrap,.ref-pagination-row>div:first-child){grid-area:entries!important;justify-self:start!important;min-width:0!important}
  .report-main :is(.pagination-clean,.smart-pagination,.ref-pager,.bo-pagination-buttons,[id*="Pager"],[id*="pager"]){grid-area:pager!important;justify-self:end!important;display:flex!important;gap:6px!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important}
  .report-main :is(.pagination-clean,.smart-pagination,.ref-pager,.bo-pagination-buttons,[id*="Pager"],[id*="pager"])::-webkit-scrollbar{display:none!important}
  .report-main :is(.table-info,.table-pagination-info,.bo-pagination-info,[id*="Showing"],[id*="showing"],[id*="PageInfo"]){grid-area:info!important;justify-self:center!important;text-align:center!important;width:100%!important;min-width:0!important;white-space:normal!important}
  .referral-page .referral-filter-card:not(.referral-reward-config) .referral-filter-grid{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important}
  .referral-page .referral-filter-card:not(.referral-reward-config) .ref-date-field,
  .referral-page .referral-filter-card:not(.referral-reward-config) .referral-filter-grid>.field:nth-child(2),
  .referral-page .referral-filter-card:not(.referral-reward-config) .referral-filter-grid>.field:nth-child(3){width:100%!important;max-width:100%!important;flex:0 0 auto!important}
  .referral-page .referral-filter-card:not(.referral-reward-config) .ref-filter-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:10px!important}
  .referral-page .referral-filter-card:not(.referral-reward-config) #refRewardConfigOpen{grid-column:1/-1!important;width:max-content!important;max-width:100%!important}
  .wallet-ledger-page .bo-range-field,.provider-bet-report-page .bo-range-field,.provider-transaction-page .bo-range-field,body.provider-session-page .bo-range-field,.rebate-page .bo-range-field,
  .wallet-ledger-page .bo-range-trigger,.provider-bet-report-page .bo-range-trigger,.provider-transaction-page .bo-range-trigger,body.provider-session-page .bo-range-trigger,.rebate-page .bo-range-trigger{width:100%!important;max-width:100%!important;flex-basis:100%!important}
  .vip-management-page .vip-settings-grid{grid-template-columns:1fr!important;gap:10px!important}
}
@media(min-width:768px) and (max-width:1199.98px){.vip-management-page .vip-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Targeted follow-up v2.2.1: only VIP Management, Manual Rebate Approval,
   Deposit Approval and Withdrawal Approval. */

/* VIP Management only: every dropdown fills the width of its own grid cell. */
.vip-management-page .vip-settings-grid select{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Manual Rebate Approval only: allow the standard date-range panel to render
   above the table without being clipped by the list card/filter wrappers. */
.rebate-page .standard-list-card,
.rebate-page .standard-card-head,
.rebate-page .standard-filter-grid,
.rebate-page .manual-rebate-filters{
  overflow:visible!important;
}
.rebate-page .manual-rebate-filters{
  position:relative!important;
  z-index:30!important;
}
.rebate-page .bo-range-field,
.rebate-page .bo-range-wrap,
.rebate-page .bo-date-range,
.rebate-page .date-range-wrap{
  position:relative!important;
  overflow:visible!important;
  z-index:40!important;
}
.rebate-page .bo-range-popover,
.rebate-page .bo-range-panel,
.rebate-page .date-range-popover,
.rebate-page .date-range-panel{
  z-index:5000!important;
  max-width:calc(100vw - 32px)!important;
}
.rebate-page .standard-table-wrap,
.rebate-page .manual-select-bar{
  position:relative!important;
  z-index:1!important;
}

/* Deposit / Withdrawal Approval only: exact 10px between Page Size, Reset and Search. */
.deposit-approval-page .user-search-grid,
.withdraw-approval-page .user-search-grid{
  column-gap:10px!important;
  row-gap:10px!important;
}
.deposit-approval-page .user-search-grid>.field,
.withdraw-approval-page .user-search-grid>.field{
  margin:0!important;
  padding:0!important;
}
.deposit-approval-page .deposit-reset-field,
.deposit-approval-page .deposit-search-field,
.withdraw-approval-page .withdraw-reset-field,
.withdraw-approval-page .withdraw-search-field{
  margin-left:0!important;
  margin-right:0!important;
}
.deposit-approval-page .deposit-reset-field>label,
.deposit-approval-page .deposit-search-field>label,
.withdraw-approval-page .withdraw-reset-field>label,
.withdraw-approval-page .withdraw-search-field>label{
  display:block!important;
  width:100%!important;
  margin:0 0 7px!important;
  padding:0!important;
  line-height:1!important;
  visibility:hidden!important;
}
.deposit-approval-page .deposit-reset-field button,
.deposit-approval-page .deposit-search-field button,
.withdraw-approval-page .withdraw-reset-field button,
.withdraw-approval-page .withdraw-search-field button{
  margin:0!important;
}

@media(max-width:767.98px){
  .deposit-approval-page .user-search-grid,
  .withdraw-approval-page .user-search-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:end!important;
  }
  .deposit-approval-page .user-search-grid>.field,
  .withdraw-approval-page .user-search-grid>.field{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    flex:none!important;
  }
  .deposit-approval-page .user-search-grid>.field:first-child,
  .withdraw-approval-page .user-search-grid>.field:first-child{
    grid-column:1/-1!important;
    width:100%!important;
  }
  .deposit-approval-page .user-search-grid select,
  .deposit-approval-page .user-search-grid input,
  .withdraw-approval-page .user-search-grid select,
  .withdraw-approval-page .user-search-grid input{
    width:100%!important;
    max-width:100%!important;
  }
  .deposit-approval-page .deposit-reset-field,
  .withdraw-approval-page .withdraw-reset-field{grid-column:1!important}
  .deposit-approval-page .deposit-search-field,
  .withdraw-approval-page .withdraw-search-field{grid-column:2!important}
  .deposit-approval-page .deposit-reset-field button,
  .deposit-approval-page .deposit-search-field button,
  .withdraw-approval-page .withdraw-reset-field button,
  .withdraw-approval-page .withdraw-search-field button{
    width:100%!important;
    min-width:0!important;
  }
  .rebate-page .bo-range-popover,
  .rebate-page .bo-range-panel,
  .rebate-page .date-range-popover,
  .rebate-page .date-range-panel{
    left:0!important;
    right:auto!important;
    width:min(390px,calc(100vw - 32px))!important;
  }
}
.rebate-page .bo-range-pop{
  z-index:5000!important;
  overflow:hidden!important;
  width:390px!important;
  max-width:calc(100vw - 32px)!important;
}
@media(max-width:767.98px){
  .rebate-page .bo-range-pop{
    left:0!important;
    right:auto!important;
    width:min(390px,calc(100vw - 32px))!important;
  }
}

.link-button{border:0;background:transparent;color:#0d6efd;padding:0;text-decoration:underline;cursor:pointer}.modal-clean[hidden]{display:none!important}.modal-clean:not([hidden]){display:flex!important;position:fixed;inset:0;background:rgba(15,23,42,.45);align-items:center;justify-content:center;z-index:9999;padding:20px}.modal-open{overflow:hidden}

/* Member wallet totals: number itself opens the related detail page. */
.wallet-total-link{display:inline-block;font-weight:700;color:#1e3a5f;text-decoration:none;white-space:nowrap}
.wallet-total-link:hover,.wallet-total-link:focus{color:#0d6efd;text-decoration:underline}

.provider-wallet-total-link{border:0;background:transparent;padding:0;font:inherit;cursor:pointer}
