/* Account surfaces share the reporting layout, type, colours and controls. */
[data-account-page] .account-navigation {
  display: grid;
  gap: .25rem;
}
[data-account-page] .account-navigation a {
  display: flex;
  justify-content: space-between;
  padding: .65rem .75rem;
  border-radius: var(--reporting-control-radius);
  color: var(--bs-body-color);
  text-decoration: none;
}
[data-account-page] .account-navigation a:hover,
[data-account-page] .account-navigation a[aria-current="page"] {
  background: rgba(var(--bs-primary-rgb), .06);
  color: var(--bs-primary);
}
[data-account-page] .account-heading {
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--reporting-border);
}
[data-account-page] .account-heading h1 {
  font-size: clamp(1.5rem, 2.5vw, 2rem);
  font-weight: 650;
  letter-spacing: -.025em;
}
[data-account-page] .auth-card {
  width: 100%;
  max-width: none;
  box-shadow: none !important;
  border: 1px solid var(--reporting-border);
  border-radius: .6rem;
}
[data-account-page] .auth-card .card-body { padding: clamp(1rem, 3vw, 2rem) !important; }
[data-account-page] .account-entry {
  padding-block: 1.25rem;
  border-bottom: 1px solid var(--reporting-border);
}
[data-account-page] .account-entry:last-child { border-bottom: 0; }
[data-account-page] .account-entry h3 { font-size: 1.15rem; line-height: 1.4; }
[data-account-page] .account-entry h3 a { color: var(--bs-body-color); text-decoration: none; }
[data-account-page] .account-entry h3 a:hover { color: var(--bs-primary); }
[data-account-page] .account-empty { padding-block: 2rem; color: var(--reporting-muted); }
[data-account-page] .account-main { min-width: 0; }
[data-account-page] .list-group-item { border-color: var(--reporting-border); }
[data-account-page] .list-group-item.active {
  background: rgba(var(--bs-primary-rgb), .06);
  color: var(--bs-primary);
}

/* Stateful controls also appear on public reporting pages. */
.interest-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: var(--bs-border-radius-sm);
  background: transparent;
  color: var(--reporting-muted, var(--bs-secondary));
  text-decoration: none;
  vertical-align: middle;
}
.interest-toggle:hover { background: rgba(var(--bs-primary-rgb), .07); color: var(--bs-primary); }
.interest-toggle:focus-visible { outline: 2px solid var(--bs-primary); outline-offset: 2px; }
.interest-toggle[data-saved="true"] { color: var(--bs-primary); }
/* Watchlist eyes need a selected background as well as a filled icon. */
.interest-toggle[data-saved="true"]:not([data-save-kind="report"]) {
  background: var(--bs-primary);
  color: var(--bs-white);
}
.interest-toggle[data-saved="true"]:not([data-save-kind="report"]):hover {
  background: var(--bs-link-hover-color);
}
/* Bookmarks are standalone buttons, rather than segments of a name badge. */
.interest-toggle[data-save-kind="report"] {
  box-sizing: border-box;
  border: 1px solid var(--reporting-border, var(--bs-border-color));
  background: rgba(var(--bs-primary-rgb), .04);
}
.interest-toggle[data-save-kind="report"]:hover {
  border-color: var(--bs-primary);
  background: rgba(var(--bs-primary-rgb), .1);
}
.interest-toggle[data-save-kind="report"][data-saved="true"] {
  border-color: var(--bs-primary);
  background: var(--bs-primary);
  color: var(--bs-white);
}
.interest-toggle[data-save-kind="report"][data-saved="true"]:hover {
  border-color: var(--bs-link-hover-color);
  background: var(--bs-link-hover-color);
}
.interest-outline { fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linejoin: round; }
.interest-filled { fill: currentColor; stroke: none; display: none; }
.interest-toggle[data-saved="true"] .interest-outline { display: none; }
.interest-toggle[data-saved="true"] .interest-filled { display: inline; }
.interest-toggle[aria-busy="true"] { opacity: .55; cursor: progress; }
.interest-heading, .interest-discovery-row { display: flex; align-items: center; gap: .5rem; }
.interest-heading > :first-child { min-width: 0; }
.interest-trailing { margin-inline-start: auto; }
.interest-discovery-row { justify-content: space-between; border-bottom: 1px solid var(--reporting-border); }
[data-globe-page-content] .home-report-gallery-slide .home-report-gallery-content { padding-inline-end: 4.5rem; }
.home-gallery-bookmark { position: absolute; inset-inline-end: 1rem; bottom: 1rem; }
.home-gallery-bookmark .interest-toggle[data-save-kind="report"] {
  border-color: rgba(255, 255, 255, .5);
  color: var(--bs-white);
  background: rgba(0, 0, 0, .5);
}
.home-gallery-bookmark .interest-toggle[data-save-kind="report"]:hover {
  border-color: var(--bs-white);
  background: rgba(0, 0, 0, .7);
}
.home-gallery-bookmark .interest-toggle[data-save-kind="report"][data-saved="true"] {
  border-color: var(--bs-primary);
  background: var(--bs-primary);
}
.home-gallery-bookmark .interest-toggle[data-save-kind="report"][data-saved="true"]:hover {
  border-color: var(--bs-link-hover-color);
  background: var(--bs-link-hover-color);
}
.interest-feedback {
  position: fixed;
  bottom: 1rem;
  inset-inline-end: 1rem;
  z-index: 1080;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .75rem;
  max-width: min(36rem, calc(100vw - 2rem));
  padding: 1rem;
  background: var(--bs-body-bg, white);
  color: var(--bs-body-color);
  border: 1px solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  box-shadow: 0 .25rem 1rem rgba(0, 0, 0, .12);
}
.interest-feedback[hidden] { display: none; }
.saved-picker { width: min(95vw, 36rem); max-height: 85vh; overflow: auto; }
.saved-picker::backdrop { background: rgba(0, 0, 0, .35); }