/* IB Referrals page */

.ibrl-back {
  color: rgba(255, 255, 255, 0.75);
  font-size: 0.92rem;
}
.ibrl-back:hover { color: #fff; }
.ibrl-meta .small { font-size: 0.76rem; }

.rc-card {
  background: #07000e;
  border: 1px solid rgba(209, 209, 209, 0.45);
  border-radius: 18px;
  overflow: hidden;
  margin-bottom: 24px;
}
.rc-card-header {
  background: #d1d1d1;
  padding: 12px 22px;
}
.rc-title {
  font-size: 1.95rem;
  font-weight: 700;
  color: #101010;
}

.rc-filters {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 20px;
  flex-wrap: wrap;
}
.rc-filters-left {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.rc-search-wrap,
.rc-date-wrap { position: relative; display: flex; align-items: center; }
.rc-search-icon { position: absolute; right: 12px; color: rgba(255,255,255,0.55); font-size: 0.85rem; pointer-events: none; }
.rc-date-icon { position: absolute; right: 12px; color: rgba(255,255,255,0.55); font-size: 0.85rem; pointer-events: none; }

.rc-search,
.rc-date-input {
  background: #131313;
  border: 1px solid rgba(219, 233, 255, 0.35);
  border-radius: 9px;
  color: #fff;
  font-size: 0.84rem;
  outline: none;
  height: 34px;
}
.rc-search {
  padding: 8px 34px 8px 12px;
  width: 220px;
}
.rc-date-input {
  padding: 8px 34px 8px 12px;
  width: 200px;
}
.rc-search::placeholder,
.rc-date-input::placeholder { color: rgba(255,255,255,0.52); }

.rc-download-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: #fff;
  color: #111;
  border: none;
  border-radius: 9px;
  padding: 8px 16px;
  font-size: 0.82rem;
  font-weight: 700;
  cursor: pointer;
}

.rc-table {
  width: calc(100% - 28px);
  margin: 0 14px;
  border-collapse: separate;
  border-spacing: 0;
}
.rc-table thead th {
  background: #2f2f2f;
  color: rgba(255,255,255,0.55);
  font-size: 0.74rem;
  font-weight: 600;
  padding: 10px 12px;
  white-space: nowrap;
  border-bottom: 1px dashed rgba(255,255,255,0.12);
}
.rc-table thead th:first-child { border-radius: 999px 0 0 999px; }
.rc-table thead th:last-child { border-radius: 0 999px 999px 0; }

.rc-table tbody td {
  color: rgba(255,255,255,0.9);
  font-size: 0.84rem;
  padding: 12px 12px;
  border-bottom: 1px dashed rgba(219,233,255,0.16);
  white-space: nowrap;
}
.rc-table tbody tr:last-child td { border-bottom: 1px dashed rgba(219,233,255,0.16); }

.rc-badge {
  display: inline-block;
  font-size: 0.74rem;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 6px;
  white-space: nowrap;
  min-width: 72px;
  text-align: center;
}
.rc-badge-active {
  background: #8be59f;
  color: #1a7a3f;
}
.rc-badge-inactive {
  background: #dbe9ff;
  color: #0a5be2;
}

.rc-pagination-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  padding: 2px 0 0;
  margin-top: 10px;
}
.rc-entries { display: flex; align-items: center; gap: 8px; }
.rc-entries-select {
  background: #fff;
  border: 1px solid rgba(255,255,255,0.35);
  border-radius: 6px;
  color: #111;
  font-size: 0.8rem;
  padding: 5px 22px 5px 8px;
}
.rc-entries-label {
  font-size: 0.82rem;
  color: rgba(255,255,255,0.58);
}

.rc-pages { display: flex; align-items: center; gap: 6px; }
.rc-page-nav,
.rc-page-num {
  background: transparent;
  border: none;
  color: rgba(255,255,255,0.72);
  font-size: 0.8rem;
  font-weight: 600;
  min-width: 26px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.rc-page-num.active {
  background: #fff;
  color: #111;
  border-radius: 4px;
}
.rc-page-ellipsis { color: rgba(255,255,255,0.45); font-size: 0.85rem; padding: 0 4px; }

@media (max-width: 767px) {
  .rc-title { font-size: 1.45rem; }
  .rc-filters { padding: 12px 14px; }
}
@media (max-width: 575px) {
  .rc-filters { flex-direction: column; align-items: stretch; }
  .rc-filters-left { flex-direction: column; align-items: stretch; width: 100%; }
  .rc-search,
  .rc-date-input { width: 100%; }
  .rc-download-btn { justify-content: center; width: 100%; }
  .rc-pagination-row { flex-direction: column; align-items: flex-start; }
}
