.fld-rating {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px;
  margin: 0 0 1.6rem; padding: 14px 18px;
  background: #fbf6ec; border: 1px solid #e4dac6; border-radius: 14px;
  font-family: inherit;
}
.fld-rating [hidden] { display: none !important; }

.fld-stars { position: relative; display: inline-block; font-size: 1.25rem; line-height: 1; letter-spacing: 2px; color: #e4dac6; }
.fld-stars__fill { position: absolute; top: 0; left: 0; overflow: hidden; white-space: nowrap; color: #cf6f43; }

.fld-rating__summary { font-size: .95rem; color: #6f6a5d; }
.fld-rating__avg { color: #2b2922; font-size: 1.05rem; }

.fld-rating__vote { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.fld-rating__label { font-size: .92rem; color: #6f6a5d; font-weight: 600; }
.fld-rating__btns { display: inline-flex; }
.fld-rating__star {
  background: none; border: none; cursor: pointer; padding: 0 2px;
  font-size: 1.5rem; line-height: 1; color: #e4dac6; transition: color .12s, transform .12s;
}
.fld-rating__star:hover { transform: scale(1.15); }
.fld-rating__star.is-on { color: #cf6f43; }
.fld-rating__star:disabled { cursor: default; }
.fld-rating__thanks { font-size: .95rem; color: #586b34; font-weight: 700; }
