.button {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 13px 39px;
  column-gap: 12px;
  border-radius: 24px;
  border: 1px solid transparent;

  font-family: 'Rubik', sans-serif;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;

  background: none;

  transition: background-color 0.1s, border 0.1s;
}

/*Primary*/
.button.primary {
  background: var(--surface-action);
  border-color: var(--surface-action);
  color: var(--text-primary-inverse);
  cursor: pointer;
}

.button.primary:hover {
  background: var(--surface-action-dark);
  border-color: var(--surface-action-dark);
}

.button.primary:disabled,
.button.primary:disabled:hover {
  background: var(--surface-disabled);
  border-color: var(--surface-disabled);
  color: var(--text-disabled);
  cursor: default;
}

/*Secondary*/
.button.secondary {
  background: transparent;
  border-color: var(--surface-action);
  color: var(--surface-action);
  cursor: pointer;
}

.button.secondary:hover {
  background: var(--surface-action-light);
}

.button.secondary:disabled,
.button.secondary:disabled:hover {
  border-color: var(--border-disabled);
  color: var(--text-disabled);
  cursor: default;
}

/*LinkLike*/
.button.linkLike {
  font-weight: 400;
  color: var(--text-action);
  cursor: pointer;
  padding: 0;
  border: none;
  border-radius: unset;
}

.button.linkLike:disabled {
   color: var(--text-disabled);
  cursor: default;
}

/*Loading*/
.button.loading::before {
  content: '';
  width: 16px;
  height: 16px;
  border: 2px solid var(--surface-secondary);
  border-bottom-color: var(--surface-action);
  border-radius: 50%;
  animation: rotation 1s linear infinite;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
