body {
  margin: 0;
  padding: 20px;
}

table {
  width: 100%;
  border-collapse: collapse;
}

th,
td {
  padding: 15px;
  text-align: left;
}
tr[class="read"] {
  background-image: linear-gradient(to right, lightgreen, white);
}

tr[class="to-read"] {
  background-image: linear-gradient(to right, lightyellow, white);
}

tr[class="in-progress"] {
  background-image: linear-gradient(to right, lightblue, white);
}

tr[class="to-read"] span[class="status"] {
  border: 1px solid orange;
  background-image: linear-gradient(to right, orange, white);
}

tr[class="read"] span[class="status"] {
  border: 1px solid green;
  background-image: linear-gradient(to right, green, white);
}

tr[class="in-progress"] span[class="status"] {
  border: 1px solid blue;
  background-image: linear-gradient(to right, lightblue, white);
}

span {
  display: inline-block;
}

span[class="status"],
span[class^="rate"] {
  height: 20px;
  width: 100px;
  padding: 5px;
}

span[class^="rate"] > span {
  border: 1px solid black;
  border-radius: 50%;
  margin: 2px;
  height: 10px;
  width: 10px;
  background-color: lightgray;
}

span[class~="one"] > span:first-child {
  background-image: linear-gradient(to right, gold, orange);
}

span[class~="two"] > span:nth-child(-n+2) {
  background-image: linear-gradient(to right, gold, orange);
}

span[class~="three"] > span {
  background-image: linear-gradient(to right, gold, orange);
}