@mixin msfa__link($ignore-visited: false, $theme: 'dark') {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  color: var(--digi--typography--color--link);
  font-size: var(--digi--typography--font-size);
  font-weight: var(--digi--typography--font-weight--semibold);
  gap: var(--digi--layout--gutter--xs);

  @if ($theme == 'light') {
    color: var(--digi--typography--color--text--light);

    &:visited {
      color: var(--digi--typography--color--text--light);

      &:hover {
        color: var(--digi--typography--color--text--light);
      }
    }
  }

  &:hover {
    text-decoration: underline;
  }

  @if ($ignore-visited) {
    &:visited {
      color: var(--digi--typography--color--link);

      &:hover {
        color: var(--digi--typography--color--link--active);
      }
    }
  }
}

@mixin msfa__button-as-link($ignore-visited: false) {
  @include msfa__link($ignore-visited);
  background-color: transparent;
  border-width: 0;
  padding: 0;
}
