.fes-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  color: var(--f-text-color);
  text-decoration: none;
  cursor: pointer;
}
.fes-link a {
  color: inherit;
  text-decoration: inherit;
}
.fes-link .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 4px;
}
.fes-link.is-disabled {
  cursor: not-allowed;
  opacity: 0.7;
}
.fes-link.is-underline:not(.is-disabled):hover::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 0;
  border-bottom: 1px solid currentcolor;
  content: "";
}
.fes-link-type-default {
  color: var(--f-text-color);
}
.fes-link-type-default:hover:not(.is-disabled) {
  color: var(--f-hover-color-base);
}
.fes-link-type-primary {
  color: var(--f-primary-color);
}
.fes-link-type-primary:hover:not(.is-disabled) {
  color: var(--f-hover-color-base);
}
.fes-link-type-success {
  color: var(--f-success-color);
}
.fes-link-type-success:hover:not(.is-disabled) {
  color: var(--f-hover-success-text-color);
}
.fes-link-type-warning {
  color: var(--f-warning-color);
}
.fes-link-type-warning:hover:not(.is-disabled) {
  color: var(--f-hover-warning-text-color);
}
.fes-link-type-danger {
  color: var(--f-danger-color);
}
.fes-link-type-danger:hover:not(.is-disabled) {
  color: var(--f-hover-danger-text-color);
}
.fes-link-size-middle {
  font-size: var(--f-font-size-base);
}
.fes-link-size-small {
  font-size: calc(var(--f-font-size-base) - 2px);
}
.fes-link-size-large {
  font-size: calc(var(--f-font-size-base) + 2px);
}
