From SQL FOREIGN KEY Constraint
A FOREIGN KEY in one table points to a PRIMARY KEY in another table.
Now from your script, the PRIMARY KEY on table paper consists of columns paper_id, paper_color, but the foreign key referenceing it, only references paper(paper_color)
This techinically allows you to have 2 entries with
paper_id paper_color
1 blue
2 blue
which would satisfy the primary key constraint of table paper, but not the foreign key constraint on table brick
Changing the primary key on table paper to only paper_color would work though.
create table paper (
paper_id int(20) not null,
description VARCHAR(40)not null,
paper_color VARCHAR(40) NOT NULL,
primary key ( paper_color)
)engine=InnoDB;
create table brick(
brick_id int(20) not null,
description varchar(40) not null,
brick_color varchar (40) not null,
primary key (brick_id),
foreign key (brick_color) references paper(paper_color)
)engine=InnoDB