tr[class="read"] {
  background-image: linear-gradient(#DCE8D5, white);
}

tr[class="to-read"] {
  background-image: linear-gradient(#DCE8EE, white);
}

tr[class="in-progress"] {
  background-image: linear-gradient(#F3E1D1, white);
}

span {
  display: inline-block;
}

tr[class="to-read"] span[class="status"] { 
   border: 1px solid blue;
   background-image: linear-gradient(lightblue, white);
}

tr[class="read"] span[class="status"] { 
   border: 1px solid green;
   background-image: linear-gradient(lightgreen, white);
}

tr[class="in-progress"] span[class="status"] { 
   border: 1px solid orange;
   background-image: linear-gradient(peachpuff, white);
}

span[class="status"], span[class^="rate"] {
  height: 25px;
  width: 100px;
  padding: 5px;
}

span[class^=rate] > span {
  border: 1px solid grey;
  border-radius: 50%;
  margin: 3px;
  height: 15px;
  width: 15px;
  background-color: white;
}

span[class~="one"] span:first-child {
  background-image: linear-gradient(gold, orange);
}

span[class~="two"] span:first-child,
span[class~="two"] span:nth-child(2) {
  background-image: linear-gradient(gold, orange);
}

span[class~="three"] span {
  background-image: linear-gradient(gold, orange);
}

body {
  background: #F7F1E8;
  color: #3B2A22;
  font-family: Georgia, serif;
  margin: 30px;
}

h1 {
  color: #7A343E;
  font-size: 36px;
  text-align: center;
  margin-bottom: 10px;
}

table {
  width: 100%;
  border-collapse: collapse;
  background: white;
  margin-top: 20px;
}

th {
  background: #7A343E;
  color: white;
  padding: 12px;
  justify-content: left;
}

td {
  padding: 12px;
  border: 1px solid #E5D8C8;
  vertical-align: top;
  line-height: 1.5;
}

.reflection {
  background: #FFFDF9;
  padding: 25px;
  margin-top: 30px;
  border-left: 5px solid #7A343E;
}