/* Membership entry surfaces use Bootstrap for layout and components. */
.member-entry-compact { max-width: 30rem; }
.member-entry-register { max-width: 66rem; }
.member-entry-tint { background-color: #f2f8f4; }
.member-login-invitation { background-color: #edf5e5; }
.member-promotion { border-left: .25rem solid var(--bs-success) !important; }
/* Match the report action buttons without changing the table date picker. */
.member-report-actions .past-data-datepicker { padding: 8px 15px; }
@media (prefers-reduced-motion: reduce) {
  [data-watchlist-loading] .spinner-grow { animation: none; opacity: .5; transform: none; }
}
/* Match the neutral menu states used by the watchlist's view selector. */
.member-report-actions .dropdown-menu {
  --bs-dropdown-link-active-bg: var(--bs-secondary-bg);
  --bs-dropdown-link-active-color: var(--bs-body-color);
}
/* Outline labels remain readable on the tinted report backgrounds. */
.member-report-actions .btn-outline-success { --bs-btn-color: var(--bs-success-text-emphasis); }
.member-report-actions .btn-outline-secondary, .member-promotion .btn-outline-secondary { --bs-btn-color: var(--bs-secondary-text-emphasis); }
/* Restore readable links and keyboard focus within the older public styles. */
.member-entry a:not(.btn), .member-promotion a:not(.btn) { color: var(--bs-success-text-emphasis); text-decoration: underline; text-underline-offset: .15em; }
.member-entry :is(a, button, input):focus-visible,
.member-report-actions :is(a, button):focus-visible,
.member-promotion a:focus-visible { outline: 2px solid var(--bs-success); outline-offset: 3px; }
@media (max-width: 991.98px) {
  .member-entry-register { max-width: 36rem; }
  .member-promotion-cta { width: 100%; }
}

.member-promotion-title { font-size: 1.125rem; line-height: 1.35; }
.member-promotion-preview { font-size: .8125rem; }
.member-promotion summary:focus-visible { outline: 2px solid var(--bs-success); outline-offset: 3px; }
