/* Uses the Bootstrap Popover bundled in Roundcube. No vendor copy or external CDN. */
.rf-hover-anchor {
  position: fixed;
  pointer-events: none;
}
html .rf-hovercard {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  z-index: 1080;
  max-width: min(320px, calc(100vw - 24px));
  border: 1px solid var(--rf-border);
  border-radius: 10px;
  background: var(--rf-surface);
  color: var(--rf-text);
  box-shadow: 0 8px 28px rgb(0 0 0 / 20%);
  font-family: var(--rf-ui-font);
  text-align: left;
  overflow-wrap: anywhere;
}
html .rf-hovercard > .popover-header {
  display: block;
  height: auto;
  min-height: 0;
  padding: 10px 12px;
  margin: 0;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--rf-text);
  font-size: 13px;
  font-weight: 600;
  line-height: 18px;
}
html .rf-hovercard > .popover-body {
  padding: 0 12px 11px;
  color: var(--rf-muted);
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
}
.rf-hovercard .popover-body:empty { display: none; }
.rf-hovercard > .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: .5rem;
}
.rf-hovercard > .arrow::before,
.rf-hovercard > .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}
.rf-hovercard.bs-popover-top > .arrow::after,
.rf-hovercard[x-placement^="top"] > .arrow::after { border-top-color: var(--rf-surface); }
.rf-hovercard.bs-popover-bottom > .arrow::after,
.rf-hovercard[x-placement^="bottom"] > .arrow::after { border-bottom-color: var(--rf-surface); }
.rf-hovercard.bs-popover-left > .arrow::after,
.rf-hovercard[x-placement^="left"] > .arrow::after { border-left-color: var(--rf-surface); }
.rf-hovercard.bs-popover-right > .arrow::after,
.rf-hovercard[x-placement^="right"] > .arrow::after { border-right-color: var(--rf-surface); }
.rf-hovercard.bs-popover-bottom .popover-header::before { display: none; }
