.rv-head {
  display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
  background: #fffdf9; border: 2px solid #2e1f16; border-radius: 24px;
  padding: 18px 22px; box-shadow: 0 6px 0 #2e1f16; margin-bottom: 16px;
}
.rv-avg { font-family: 'Fredoka', sans-serif; font-weight: 600; font-size: 2.4rem; line-height: 1; }
.rv-stars { display: inline-flex; gap: 2px; color: #f59b22; }
.rv-count { font-weight: 700; color: #6d5545; }
.rv-verified { font-weight: 700; color: #2e6b58; font-size: .92rem; }
.rv-note { font-size: .92rem; color: #6d5545; margin: 0 0 16px; max-width: 66ch; }

.rv-bars { display: grid; gap: 6px; max-width: 340px; margin-bottom: 24px; }
.rv-bar { display: grid; grid-template-columns: 34px 1fr 28px; gap: 10px; align-items: center; font-size: .85rem; font-weight: 700; color: #6d5545; }
.rv-bar-track { height: 9px; background: #ffe9d2; border-radius: 999px; overflow: hidden; }
.rv-bar-fill { display: block; height: 100%; background: #f59b22; border-radius: 999px; }
.rv-bar-num { text-align: right; }

.rv-list { display: grid; gap: 14px; }
.rv-slot.rv-hidden { display: none; }
.rv-item { background: #fffdf9; border: 2px solid #2e1f16; border-radius: 24px; padding: 20px 22px; box-shadow: 0 4px 0 #2e1f16; }
.rv-item-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.rv-item-author { font-weight: 800; }
.rv-item-date { color: #9b8676; font-size: .85rem; margin-left: auto; }
.rv-badge { background: #cfe9de; color: #1f5343; font-size: .76rem; font-weight: 800; padding: 4px 10px; border-radius: 999px; }
.rv-badge-src { background: #d3ecfb; color: #1d6ea3; }
/* Внесен отзив от предишния магазин. Нарочно НЕ е зелен: зеленото на сайта
   значи „проверена покупка при нас", а тези не са такива. */
.rv-badge-vor { background: #eee3d4; color: #6d5545; }
/* Дискретен ред, не подчертана кутия. Информацията е задължителна,
   но не е предупреждение и не бива да изглежда като такова. */
.rv-note-vor { font-size: .86rem; opacity: .85; margin-top: -8px; }
.rv-item-title { font-family: 'Fredoka', sans-serif; font-weight: 600; font-size: 1.05rem; margin: 0 0 6px; }
.rv-item-body { margin: 0; color: #4a382b; }

.rv-more-wrap { margin-top: 16px; text-align: center; }
.rv-more {
  background: #fffdf9; border: 2px solid #2e1f16; border-radius: 999px; padding: 11px 22px;
  font-family: 'Fredoka', sans-serif; font-weight: 600; cursor: pointer; box-shadow: 0 3px 0 #2e1f16;
}
.rv-more:hover { transform: translateY(-2px); }
.rv-cta { margin-top: 18px; font-weight: 700; }
.rv-cta a, .rv-empty-cta a { color: #b4620a; }

.rv-empty {
  background: #fffdf9; border: 2px dashed #d9bd95; border-radius: 24px;
  padding: 26px 24px; max-width: 640px; margin-inline: auto; text-align: center;
}
.rv-empty p { margin: 0 0 10px; color: #6d5545; }
.rv-empty p:last-child { margin-bottom: 0; }

.rv-msg { border-radius: 16px; padding: 13px 16px; font-weight: 700; margin: 0; }
.rv-msg-ok { background: #cfe9de; color: #1f5343; }
.rv-msg-err { background: #ffd6e0; color: #a52347; }
