.iconButton {
  border-radius: var(--Corner-radius-rounded);
  border-width: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;

  &:disabled {
    cursor: unset;
  }
}

.theme-primary {
  background-color: var(--Component-Button-Brand-Primary-Fill-Default);
  color: var(--Component-Button-Brand-Primary-On-fill-Default);

  &:hover:not(:disabled) {
    background-color: var(--Component-Button-Brand-Primary-Fill-Hover);
    color: var(--Component-Button-Brand-Primary-On-fill-Hover);
  }

  &:disabled {
    background-color: var(--Component-Button-Brand-Primary-Fill-Disabled);
    color: var(--Component-Button-Brand-Primary-On-fill-Disabled);
  }
}

.theme-inverted {
  background-color: var(--Component-Button-Inverted-Fill-Default);
  color: var(--Component-Button-Inverted-On-fill-Default);

  &:hover:not(:disabled) {
    background-color: var(--Component-Button-Inverted-Fill-Hover);
    color: var(--Component-Button-Inverted-On-fill-Hover);
  }

  &:disabled {
    background-color: var(--Component-Button-Inverted-Fill-Disabled);
    color: var(--Component-Button-Inverted-On-fill-Disabled);
  }

  &.style-muted {
    color: var(--Component-Button-Muted-On-fill-Inverted);

    &:hover:not(:disabled) {
      color: var(--Component-Button-Muted-On-fill-Inverted);
    }

    &:disabled {
      color: var(--Component-Button-Muted-On-fill-Disabled);
    }
  }
}

.theme-tertiary {
  background-color: var(--Component-Button-Brand-Tertiary-Fill-Default);
  color: var(--Component-Button-Brand-Tertiary-On-fill-Default);

  &:hover:not(:disabled) {
    background-color: var(--Component-Button-Brand-Tertiary-Fill-Hover);
    color: var(--Component-Button-Brand-Tertiary-On-fill-Hover);
  }

  &:disabled {
    background-color: var(--Component-Button-Brand-Tertiary-Fill-Disabled);
    color: var(--Component-Button-Brand-Tertiary-On-fill-Disabled);
  }
}

.theme-black {
  color: var(--Component-Button-Muted-On-fill-Default);

  &:hover:not(:disabled) {
    color: var(--Component-Button-Muted-On-fill-Hover-Inverted);
  }

  &:disabled {
    color: var(--Component-Button-Muted-On-fill-Disabled);
  }
}

.style-elevated {
  box-shadow: 0px 0px 8px 1px #0000001a;
}

.style-faded {
  background-color: var(--Component-Button-Inverted-Fill-Faded);
}

.style-muted {
  background-color: var(--Component-Button-Muted-Fill-Default);

  &:hover:not(:disabled) {
    background-color: var(--Component-Button-Muted-Fill-Hover-inverted);
  }

  &:disabled {
    background-color: var(--Component-Button-Muted-Fill-Disabled-inverted);
  }
}
