/* The crisis footer and panel (FR-1, FR-3; spec §5: phone links, contrast in light and dark themes). Fixed by the
   library: a page's own styles may not hide them, and the route crawl fails a page that does (CTL-118). */
.fp-crisis,
.fp-crisis-panel {
  --fp-crisis-bg: #ffffff;
  --fp-crisis-fg: #1b1b1b;
  --fp-crisis-link: #0b4fb3;
  --fp-crisis-edge: #4d4d4d;
  box-sizing: border-box;
  color: var(--fp-crisis-fg);
  background: var(--fp-crisis-bg);
  font: 16px/1.45 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  text-align: left;
}
@media (prefers-color-scheme: dark) {
  .fp-crisis,
  .fp-crisis-panel {
    --fp-crisis-bg: #161616;
    --fp-crisis-fg: #f2f2f2;
    --fp-crisis-link: #8cb8ff;
    --fp-crisis-edge: #b3b3b3;
  }
}
.fp-crisis {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
  margin: 0;
  padding: 12px 16px;
  border-top: 1px solid var(--fp-crisis-edge);
}
.fp-crisis p,
.fp-crisis-panel p {
  margin: 4px 0;
}
.fp-crisis a,
.fp-crisis-panel a {
  color: var(--fp-crisis-link);
  font-weight: 700;
  text-decoration: underline;
  white-space: nowrap;
}
.fp-crisis-panel[hidden] {
  display: none !important;
}
.fp-crisis-panel:not([hidden]) {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 2147483647;
  max-width: 560px;
  max-height: 50vh;
  overflow: auto;
  margin: 0 auto;
  padding: 16px;
  border: 2px solid var(--fp-crisis-edge);
  border-radius: 8px;
  box-shadow: 0 4px 16px rgb(0 0 0 / 30%);
}
.fp-crisis-panel__heading {
  font-size: 18px;
  font-weight: 700;
}
