:host {
  display: inline;
}
:host ::slotted(*) {
  all: unset;
  cursor: pointer;
  outline: none;
  color: var(--tds-link);
  text-decoration: underline;
}
:host ::slotted(*:focus-visible) {
  color: var(--tds-link-focus);
  text-decoration: none;
  outline: 2px solid var(--tds-link-focus);
  outline-offset: -2px;
}
:host ::slotted(*:active) {
  color: var(--tds-link);
  text-decoration: underline;
  text-decoration-color: var(--tds-link);
}
:host ::slotted(*:hover) {
  color: var(--tds-link-hover);
  text-decoration: underline;
  text-decoration-color: var(--tds-link-hover);
}
:host ::slotted(*:visited) {
  color: var(--tds-link-visited);
  text-decoration-color: var(--tds-link-visited);
}

.disabled ::slotted(*),
.disabled ::slotted(*:visited) {
  color: var(--tds-link-disabled);
  text-decoration-color: var(--tds-link-disabled);
  pointer-events: none;
}

.no-underline ::slotted(*) {
  text-decoration: none;
}

.no-underline:hover ::slotted(*) {
  text-decoration: none;
}

.standalone ::slotted(*) {
  font: var(--tds-detail-02);
  letter-spacing: var(--tds-detail-02-ls);
}