﻿.rating-wrap {
  display: flex;
  text-align: center;
  height: 10vh;
  justify-content: space-around;
  align-items: center;
  border: 1px solid lightgray;
  border-radius: 5px;
  margin-bottom: 1vh;
}

.rating {
  width: 200px;
  height: 40px;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: flex-end;
}

.rating:not(:checked)>input {
  display: none;
}

.rating:not(:checked)>label {
  width: 40px;
  cursor: pointer;
  font-size: 40px;
  color: lightgrey;
  text-align: center;
  line-height: 1;
}

.rating:not(:checked)>label:before {
  content: '★';
}

.rating>input:checked~label {
  color: gold;
}

.rating:not(:checked)>label:hover,
.rating:not(:checked)>label:hover~label {
  color: gold;
}

.rating>input:checked+label:hover,
.rating>input:checked+label:hover~label,
.rating>input:checked~label:hover,
.rating>input:checked~label:hover~label,
.rating>label:hover~input:checked~label {
  color: gold;
}
