/* Shared reading cards. Legal authority and Member review controls are separate. */
body:is(.sm-legal-content,.sm-advocacy-content) {
  background:var(--sm-page,#171727);
  color:var(--sm-ink,#f1f0e5);
  font:16px/1.6 'nexa_regularregular',sans-serif;
}
/* Public Legal keeps its reading layout. Member Policies uses the same shell
   width, responsive gutters and header offset as Advocacies and other pages. */
body.sm-legal-content:not(.member-shell) .wrapper.homepage {
  width:100%;
  max-width:1000px;
  padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right));
}
body.sm-legal-content:not(.member-shell) .wrapper.homepage > .top_section { margin-top:24px; }
body.sm-legal-content .section-title-legal h1 { font:28px/1.25 'nexa_heavyregular',sans-serif; }
body:is(.sm-legal-content,.sm-advocacy-content) .accordion.home_goal_section { margin:16px 0 24px; }
body:is(.sm-legal-content,.sm-advocacy-content) .accordion.home_goal_section .card {
  margin:0;
  border:0;
  border-radius:14px !important;
  background:var(--sm-surface,#222234) !important;
  box-shadow:none;
}
body:is(.sm-legal-content,.sm-advocacy-content) .accordion.home_goal_section .card + .card { margin-top:10px; }
body.sm-legal-content .accordion.home_goal_section .card.is-hidden { display:none; }
body:is(.sm-legal-content,.sm-advocacy-content) .accordion.home_goal_section .card-header {
  padding:0;
  background:transparent;
  border:0;
  border-radius:14px;
}
body:is(.sm-legal-content,.sm-advocacy-content) .accordion.home_goal_section .card-header button[data-toggle="collapse"] {
  min-height:48px;
  height:auto;
  padding:12px 16px;
  color:var(--sm-ink,#f1f0e5);
  white-space:normal;
}
body:is(.sm-legal-content,.sm-advocacy-content) .accordion.home_goal_section .card-header button[data-toggle="collapse"] > span {
  display:block;
  width:100%;
  min-width:0;
  padding:0;
  color:inherit;
  font:16px/1.4 'nexa_heavyregular',sans-serif;
  text-align:left;
  overflow-wrap:anywhere;
}
body:is(.sm-legal-content,.sm-advocacy-content) .accordion.home_goal_section .card-header button[aria-expanded="true"] { color:var(--sm-accent,#00bcd4); }
body:is(.sm-legal-content,.sm-advocacy-content) .accordion.home_goal_section .card-body { padding:0 16px 16px; }
body:is(.sm-legal-content,.sm-advocacy-content) .add_interest.legal_text_body {
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  font:16px/1.6 'nexa_regularregular',sans-serif;
  letter-spacing:normal;
  text-align:left;
  overflow-wrap:anywhere;
}
body:is(.sm-legal-content,.sm-advocacy-content) .legal_text_body p { margin:0 0 16px; font:inherit; text-align:left; }
body:is(.sm-legal-content,.sm-advocacy-content) .legal_text_body > :is(b,strong) {
  display:block;
  margin:16px 0 8px;
  font:16px/1.5 'nexa_heavyregular',sans-serif;
  text-transform:none;
  letter-spacing:normal;
  text-align:left;
}
body.sm-legal-content .legal_text_body > :is(b,strong):first-child {
  margin:0 0 16px !important;
  font:14px/1.5 'nexa_regularregular',sans-serif;
  text-align:left;
}
body.sm-legal-content .legal_text_body > :is(b,strong):first-child i {
  font:inherit;
  font-style:normal;
}
body:is(.sm-legal-content,.sm-advocacy-content) .legal_text_body br + br { display:none; }
body:is(.sm-legal-content,.sm-advocacy-content) .legal_text_body :is(ul,ol) { margin:0 0 16px; padding-left:24px; text-align:left; }
body:is(.sm-legal-content,.sm-advocacy-content) .legal_text_body li { margin:6px 0; padding:0; font:inherit; }
body:is(.sm-legal-content,.sm-advocacy-content) .legal_text_body :is(p,li) :is(b,strong) { display:inline; margin:0; text-transform:none; }
body:is(.sm-legal-content,.sm-advocacy-content) .legal_text_body a { color:var(--sm-accent,#00bcd4); overflow-wrap:anywhere; }
body.sm-legal-content .legal-update-note { margin:0 0 16px; font:14px/1.6 'nexa_regularregular',sans-serif; }
body.sm-legal-content.sm-public-page .wrapper.homepage > .top_section { margin-top:100px; }
body.sm-legal-content.sm-public-page .legal-update-note {
  color:#b9b9c6;
  font:16px/1.55 'nexa_regularregular',Arial,sans-serif;
  text-align:center;
}
body.sm-legal-content.sm-public-page .policy-search-wrap { max-width:680px; margin:0 auto 12px; }
body.sm-legal-content.sm-public-page .policy-search {
  box-sizing:border-box;
  width:100%;
  padding:12px 16px;
  border-radius:14px;
  border:1px solid #00bcd4;
  background:transparent;
  color:inherit;
  font:16px/1.5 'nexa_regularregular',Arial,sans-serif;
}
body.sm-legal-content.sm-public-page .policy-search::placeholder { color:#cfe9ee; opacity:1; }
body.sm-legal-content.sm-public-page .policy-search:focus-visible { outline:3px solid #fff; outline-offset:3px; }
body.sm-legal-content.sm-public-page .policy-search-empty { margin:16px 0; text-align:center; overflow-wrap:anywhere; }
body.sm-legal-content.sm-public-page .policy-search-empty[hidden] { display:none; }
body.sm-legal-content.sm-public-page .accordion.home_goal_section { margin-top:0; }
body.sm-legal-content .catbar {
  display:flex;
  flex-wrap:nowrap;
  justify-content:flex-start;
  gap:8px;
  width:100%;
  max-width:100%;
  margin:16px 0;
  padding:4px 0 10px;
  overflow-x:auto;
  scroll-padding-inline:0;
}
body.sm-legal-content.sm-public-page .catbar {
  width:max-content;
  margin-block:8px 10px;
  margin-inline:auto;
}
body.sm-legal-content .catbar .pill {
  flex:0 0 auto;
  min-height:44px;
  padding:8px 14px;
  border:1px solid #777787;
  background:transparent;
  color:var(--sm-ink,#f1f0e5);
  font:14px/1.4 'nexa_heavyregular',sans-serif;
  white-space:nowrap;
}
body.sm-legal-content .catbar .pill.active { border-color:var(--sm-accent,#00bcd4); background:var(--sm-accent-fill,#00bcd4); color:var(--sm-on-accent,#171725); }
body.sm-legal-content .legal_text_body .timestamps_policy { width:100%; margin-top:24px; }
body.sm-legal-content .review-btns { width:100%; margin-top:12px; text-align:center; flex-wrap:wrap; }
/* Filled review controls use the same dark-on-accent authority as active pills.
   Keep this scoped above prose-link and Bootstrap outline/state specificity. */
body.sm-legal-content .legal_text_body :is(.review-btn,.review-updated) {
  display:inline-block;
  min-width:0;
  max-width:100%;
  padding:10px 24px;
  margin:0 auto;
  border:0;
  border-radius:8px;
  color:#171727;
  font-size:16px;
  font-weight:bold;
  text-align:center;
  text-decoration:none;
  white-space:normal;
}
body.sm-legal-content .legal_text_body .review-btn { background-color:#f56e96; cursor:pointer; }
body.sm-legal-content .legal_text_body .review-btn:is(:hover,:focus,:active) { background-color:#e75084; }
body.sm-legal-content .legal_text_body .review-updated { background-color:var(--sm-accent-fill,#00bcd4); cursor:default; }
body.sm-legal-content .legal_text_body :is(.review-btn,.review-updated):is(:hover,:focus,:active) { color:#171727; }
body.sm-legal-content :is(.catbar .pill,.card-header button,.policies-info-btn,.btn-next,.review-btn,.review-updated):focus-visible {
  outline:2px solid var(--sm-accent,#00bcd4);
  outline-offset:3px;
}
