:host {
  display: inline;
}
:host pds-icon {
  margin-inline-start: var(--pine-dimension-2xs);
}

.pds-link {
  align-items: center;
  color: var(--color, var(--pds-context-link-color, var(--pine-color-text)));
  display: inline-flex;
  font-weight: var(--pine-font-weight-medium);
}
.pds-link:focus-visible {
  border-radius: var(--pine-dimension-2xs);
  outline: var(--pine-outline-focus);
  outline-offset: var(--pine-border-width-thick);
  position: relative;
}
.pds-link:hover {
  color: var(--color, var(--pds-context-link-color-hover, var(--pine-color-text-hover)));
  text-decoration: none;
}
:host([color=secondary]) .pds-link {
  color: var(--pine-color-text-primary);
}
:host([color=secondary]) .pds-link:hover {
  color: var(--pine-color-text-inverse-secondary);
}
:host([color=accent]) .pds-link {
  color: var(--pine-color-accent);
}
:host([color=accent]) .pds-link:hover {
  color: var(--pine-color-accent-hover);
}
:host([color=danger]) .pds-link {
  color: var(--pine-color-danger);
}
:host([color=danger]) .pds-link:hover {
  color: var(--pine-color-danger-hover);
}

.pds-link--sm {
  font-size: var(--pine-font-size-body-xs);
}
.pds-link--sm pds-icon {
  height: var(--pine-dimension-xs);
  width: var(--pine-dimension-xs);
}

.pds-link--md {
  font-size: var(--pine-font-size-body-sm);
}
.pds-link--md pds-icon {
  height: var(--pine-dimension-xs);
  width: var(--pine-dimension-xs);
}

.pds-link--lg {
  font-size: var(--pine-font-size-body-md);
}
.pds-link--lg pds-icon {
  height: var(--pine-dimension-sm);
  width: var(--pine-dimension-sm);
}

.pds-link--plain {
  text-decoration: none;
}
.pds-link--plain:hover {
  color: var(--color, var(--pds-context-link-color-hover, var(--pine-color-text-hover)));
  text-decoration: underline;
}