[hidden] {
  display: none !important;
}

.member-dashboard > .section-heading {
  margin-bottom: 0.6rem;
}

.member-switcher {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 0.75rem;
  padding: 1rem 1.1rem;
  margin-bottom: 0.65rem;
}

.member-switcher-copy {
  max-width: 60ch;
}

.member-switcher-copy h3 {
  max-width: 26ch;
}

.member-switcher-controls {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.65rem;
  justify-content: stretch;
}

.member-quick-card {
  min-height: 0;
  padding: 0.82rem 0.9rem;
}

.member-dashboard .dashboard-card {
  gap: 0.72rem;
  padding: 1.1rem;
}

.member-dashboard .dashboard-summary-grid,
.member-dashboard .dashboard-detail-grid,
.member-dashboard .dashboard-topup-card,
.member-dashboard .dashboard-redeem-card,
.member-dashboard .dashboard-licenses,
.member-dashboard .dashboard-services,
.member-dashboard .dashboard-history {
  margin-top: 0.65rem;
}

.member-dashboard .dashboard-summary-grid,
.member-dashboard .dashboard-detail-grid,
.member-dashboard .member-redeem-grid,
.member-dashboard .dashboard-topup-shell,
.member-dashboard .dashboard-stat-grid,
.member-dashboard .dashboard-detail-list,
.member-dashboard .credit-block-list,
.member-dashboard .redemption-list,
.member-dashboard .transaction-list {
  gap: 0.65rem;
}

.member-dashboard .redemption-item,
.member-dashboard .credit-block-item,
.member-dashboard .transaction-item,
.member-dashboard .reward-card {
  padding: 0.88rem 0.92rem;
}

.member-dashboard .dashboard-inline-actions {
  gap: 0.55rem;
}

.member-dashboard .dashboard-copy,
.member-dashboard .dashboard-summary-text,
.member-dashboard .member-redeem-intro,
.member-dashboard .member-redeem-meta {
  line-height: 1.6;
}

@media (max-width: 1120px) {
  .member-switcher-controls {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .member-switcher {
    padding: 0.95rem;
    gap: 0.7rem;
  }

  .member-dashboard .dashboard-card {
    padding: 1rem;
    gap: 0.7rem;
  }
}

@media (max-width: 520px) {
  .member-switcher-controls {
    grid-template-columns: 1fr;
  }
}
