.link-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--Button-Min-Width, var(--P48));
  min-height: var(--Button-Min-Height, var(--P24));
  color: var(--Link-Button-Link-Default-Text);
  font: var(--Single-Line-Body-Link);
  box-sizing: border-box;
  border: var(--P00, 0) solid var(--Link-Button-Link-Default-Border);
  background: var(--Link-Button-Link-Default-Background, rgb(17 17 17 / 0%));
  border-radius: var(--Button-Radius-Ghost, var(--Border-Radius-0));
  gap: var(--Button-Gap, var(--P08));
  text-decoration-line: none;

  &:not(.disabled) {
    cursor: pointer;
  }

  & .link-btn-text {
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
  }

  & .icon {
    height: 100%;
    display: inline-flex;
    align-items: center;
    color: var(--Link-Button-Link-Default-Icon-Color);
  }
}

/* Suppress default focus ring on mouse focus; ring only via :focus-visible */
.link-btn:focus {
  outline: none;
}

/* Focused state — keyboard/a11y focus only, resets text/icon to focused tokens */
.link-btn:focus-visible {
  outline: var(--Link-Button-Link-Focused-Border-Focus, 2px) solid
  var(--Link-Button-Link-Focused-Border);
  border-radius: var(--Radius-Full);
  color: var(--Link-Button-Link-Focused-Text);

  & .icon {
    color: var(--Link-Button-Link-Focused-Icon-Color);
  }
}

/* Disabled state */
.link-btn:disabled,
.link-btn.disabled,
.link-btn[aria-disabled='true'] {
  color: var(--Link-Button-Link-Disabled-Text);
  cursor: not-allowed;

  & .icon {
    color: var(--Link-Button-Link-Disabled-Icon);
  }
}

/* Hover state */
.link-btn:hover:not(.disabled, :disabled, [aria-disabled='true']) {
  color: var(--Link-Button-Link-Hover-Text);

  & .icon {
    color: var(--Link-Button-Link-Hover-Icon-Color);
  }
}

/* Pressed state */
.link-btn:active:not(.disabled, :disabled, [aria-disabled='true']) {
  color: var(--Link-Button-Link-Pressed-Text);

  & .icon {
    color: var(--Link-Button-Link-Pressed-Icon);
  }
}
