/* basement — страница отзывов */
.b-rev-top { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: 14px; margin-bottom: 14px; }
.b-rev-score { display: flex; align-items: center; gap: 20px; padding: 24px; background: linear-gradient(145deg, var(--b-accent-16), var(--b-surface) 65%); }
.b-rev-score__num { font: 600 64px/1 var(--b-display); color: var(--b-accent); letter-spacing: .01em; }
.b-rev-score p { margin: 8px 0 12px; color: var(--b-muted); font-size: 14px; }
.b-rev-score p b { color: var(--b-text); }
.b-stars--lg .b-star { width: 20px; height: 20px; }

.b-rev-form { padding: 20px; }
.b-rev-form form { display: flex; flex-direction: column; gap: 12px; }
.b-rev-form__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.b-rev-form__head h2 { margin: 0; font-size: 18px; }
.b-rev-form__foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.b-rev-form textarea { min-height: 88px; }

/* выбор оценки: радиокнопки идут 5→1, подсветка «до выбранной» через ~ */
.b-rate { display: inline-flex; flex-direction: row-reverse; gap: 2px; }
.b-rate input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.b-body .b-rate label { cursor: pointer; padding: 2px; margin: 0; display: block; }
.b-rate svg { width: 26px; height: 26px; fill: var(--b-hover); transition: fill var(--b-fast), transform var(--b-fast); }
.b-rate label:hover svg, .b-rate label:hover ~ label svg, .b-rate input:checked ~ label svg { fill: var(--b-accent); }
.b-rate label:hover svg { transform: scale(1.12); }
.b-rate input:focus-visible + label { outline: 2px solid var(--b-accent); border-radius: 6px; }
.b-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.b-rev-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 18px; }
.b-review__who { min-width: 0; flex: 1; }
.b-review__who a { color: var(--b-text); text-decoration: none; }
.b-review__who a:hover { color: var(--b-accent); }
.b-review__who b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.b-review__del { margin-left: auto; opacity: .5; }
.b-review:hover .b-review__del { opacity: 1; }
.b-review__text.is-full { -webkit-line-clamp: unset; display: block; }

@media (max-width: 1100px) {
  .b-rev-top { grid-template-columns: minmax(0, 1fr); }
  .b-rev-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .b-rev-grid { grid-template-columns: minmax(0, 1fr); }
  .b-rev-score { padding: 18px; gap: 14px; }
  .b-rev-score__num { font-size: 48px; }
}
