.regen {
  position: absolute;
  z-index: 3;
  display: flex;
  gap: 6px;
}
.legend__figure .regen {
  top: 10px;
  right: 10px;
}
.regen form {
  display: contents;
}
.regen__button,
.regen__revert {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  padding: 0;
  color: var(--text);
  background: var(--surface-raised);
  border: var(--border-w) solid var(--border);
  border-radius: var(--radius-pill);
  cursor: pointer;
}
.regen__button:hover,
.regen__revert:hover {
  color: var(--primary);
  border-color: var(--primary);
}
.regen__button[disabled] {
  cursor: default;
}
.regen__icon {
  width: 16px;
  height: 16px;
}
.regen__button--busy {
  color: var(--primary);
}
.regen__button--busy .regen__icon {
  animation: loading-spin 1s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .regen__button--busy .regen__icon {
    animation: none;
  }
}
.regen__error {
  position: absolute;
  top: 38px;
  right: 0;
  width: max-content;
  max-width: 220px;
  padding: 6px 10px;
  font-family: var(--font-mono);
  font-size: 11px;
  line-height: 1.3;
  color: var(--on-color);
  background: var(--danger);
  border-radius: var(--radius-sm);
}
