
.rating-widget{
  margin-top:24px;
  padding:22px;
  border:1px solid var(--border,#dfd6ef);
  border-radius:20px;
  text-align:center;
  background:linear-gradient(135deg,#fffaf5,#f8f4ff);
}
.rating-widget__title{
  margin:0 0 4px;
  font-size:1.25rem;
}
.rating-widget__subtitle{
  margin:0 0 14px;
  color:var(--muted,#6d6480);
}
.rating-widget__stars{
  display:flex;
  justify-content:center;
  gap:5px;
  margin:10px 0;
}
.rating-star{
  padding:3px;
  border:0;
  cursor:pointer;
  color:#cfc5dd;
  background:transparent;
  font-size:2rem;
  line-height:1;
  transition:color .15s ease,transform .15s ease;
}
.rating-star:hover,
.rating-star.is-active{
  color:#ff9b3f;
  transform:translateY(-2px);
}
.rating-star:disabled{
  cursor:default;
}
.rating-widget__summary{
  min-height:24px;
  margin:8px 0 0;
  color:var(--muted,#6d6480);
  font-size:.92rem;
  font-weight:800;
}
.rating-inline{
  display:flex;
  align-items:center;
  gap:6px;
  margin:10px 0 0;
  color:#745327;
  font-size:.84rem;
  font-weight:900;
}
.rating-inline__star{
  color:#ff9b3f;
  font-size:1rem;
}
.sort-control{
  display:flex;
  align-items:center;
  gap:8px;
}
.sort-control label{
  color:var(--muted);
  font-size:.84rem;
  font-weight:900;
}
.sort-control select{
  min-height:40px;
  padding:0 11px;
  border:1px solid var(--border);
  border-radius:11px;
  color:var(--primary-dark);
  background:#fff;
  font:inherit;
  font-weight:800;
}
@media(max-width:620px){
  .rating-star{font-size:1.75rem}
  .sort-control{width:100%;justify-content:space-between}
  .sort-control select{flex:1}
}
