/* Раздел «Отзывы» (макеты Zi0CO «Отзывы на проверке», kBDXb «Отзывы · Карточка видео-отзыва»). */

/* Шапка: «назад», заголовок, пояснение, справа сегменты или статус */
.rv-back { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 10px; font-size: 14px; font-weight: 600; color: var(--ive-ink-2); }
.rv-back:hover { color: var(--ive-pink); }
.rv-back svg { width: 16px; height: 16px; }
.rv-seg .ive-seg button { display: inline-flex; align-items: center; gap: 6px; }

/* Плашки статусов отзыва */
.rv-pill { display: inline-flex; align-items: center; padding: 5px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; white-space: nowrap; background: var(--ive-bg-2); color: var(--ive-ink-2); }
.rv-pill--lg { padding: 7px 14px; font-size: 14px; font-weight: 700; }
.rv-pill--ok { background: #E6F6EC; color: var(--ive-green-dark); }
.rv-pill--warn { background: var(--ive-late-soft); color: var(--ive-warn-text); }
.rv-pill--bad { background: var(--ive-bad-soft); color: var(--ive-bad-text); }
.rv-pill--accent { background: var(--ive-blue-soft); color: var(--ive-blue); }

/* Очередь: карточки по три в ряд, «похож на дубль» — на две колонки (новый и похожий рядом) */
.rv-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: start; }
.rv-card { background: var(--ive-bg); border-radius: 20px; padding: 14px 14px 16px; display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.rv-card--wide { grid-column: span 2; }
.rv-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.rv-compare__label { margin-bottom: 6px; font-size: 13px; font-weight: 600; color: var(--ive-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rv-info { display: flex; flex-direction: column; gap: 4px; padding: 0 4px; min-width: 0; }
.rv-info__top { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.rv-info__title { font-size: 16px; font-weight: 700; color: var(--ive-ink); }
.rv-info__title:hover { color: var(--ive-pink); }
.rv-info__time { font-size: 13px; color: var(--ive-ink-3); white-space: nowrap; }
.rv-info__who { font-size: 14px; color: var(--ive-ink-2); }
.rv-info__meta { font-size: 13px; color: var(--ive-ink-3); }
.rv-info__meta a, .rv-link { color: var(--ive-pink) !important; font-weight: 600; }
.rv-info__comment { font-size: 13px; color: var(--ive-ink); }
.rv-warn { padding: 10px 12px; border-radius: 12px; background: var(--ive-late-soft); color: var(--ive-warn-text); font-size: 13px; }
.rv-err { padding: 10px 12px; border-radius: 12px; background: var(--ive-bad-soft); color: var(--ive-bad-text); font-size: 13px; }
.rv-empty { background: var(--ive-bg); border-radius: 20px; }

/* Плеер / фото */
.rv-media { background: #14161A; border-radius: 14px; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.rv-media video, .rv-media img { max-width: 100%; max-height: 100%; object-fit: contain; }
.rv-media span { color: #C9CCD3; font-size: 13px; }
.rv-media--big { border-radius: 20px; }
.rv-media__tg { display: inline-block; margin-top: 6px; font-size: 13px; }

/* Кнопки решений: Принять — розовая, Отклонить — белая, Дубль — мягкая красная */
.rv-btns { display: flex; gap: 10px; }
.rv-btns > * { flex: 1 1 0; min-width: 0; }
.rv-btns .fi-btn { width: 100%; justify-content: center; min-height: 42px; border-radius: 12px !important; font-size: 14px; font-weight: 700; box-shadow: none !important; padding-inline: 8px; }
.rv-btns .fi-btn.fi-color-success { background: var(--ive-pink) !important; color: #fff !important; }
.rv-btns .fi-btn.fi-color-success:hover { background: var(--ive-pink-dark) !important; }
.rv-btns .fi-btn.fi-color-success .fi-icon { color: #fff !important; }
.rv-btns .fi-btn.fi-color-danger { background: var(--ive-bg) !important; color: var(--ive-ink) !important; box-shadow: inset 0 0 0 1px var(--ive-line) !important; }
.rv-btns .fi-btn.fi-color-danger .fi-icon { color: var(--ive-ink-2) !important; }
.rv-btns .fi-btn.fi-color-warning { background: var(--ive-bad-soft) !important; color: var(--ive-bad-text) !important; }
.rv-btns .fi-btn.fi-color-warning .fi-icon { color: var(--ive-bad-text) !important; }
/* В карточке: Дубль — белая, Отклонить — белая с красной рамкой */
.rv-btns--card .fi-btn.fi-color-warning { background: var(--ive-bg) !important; color: var(--ive-ink) !important; box-shadow: inset 0 0 0 1px var(--ive-line) !important; }
.rv-btns--card .fi-btn.fi-color-warning .fi-icon { color: var(--ive-ink-2) !important; }
.rv-btns--card .fi-btn.fi-color-danger { box-shadow: inset 0 0 0 1px #F3B8B2 !important; }
.rv-btns--card .fi-btn { border-radius: 10px !important; }
.rv-retry .fi-btn { width: 100%; justify-content: center; min-height: 40px; border-radius: 10px !important; background: var(--ive-bg-2) !important; box-shadow: none !important; color: var(--ive-ink) !important; }

/* Недавние решения */
.rv-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 14px; }
.rv-table thead th { background: var(--ive-bg-2); padding: 9px 12px; font-size: 12px; font-weight: 700; color: var(--ive-ink-3); text-align: left; white-space: nowrap; }
.rv-table thead th:first-child { border-radius: 10px 0 0 10px; }
.rv-table thead th:last-child { border-radius: 0 10px 10px 0; }
.rv-table td { padding: 11px 12px; border-bottom: 1px solid var(--ive-line); color: var(--ive-ink-2); white-space: nowrap; }
.rv-table tbody tr:last-child td { border-bottom: 0; }
.rv-table td.who { color: var(--ive-ink); font-weight: 600; width: 100%; }
.rv-table a { color: var(--ive-ink); font-weight: 600; }
.rv-table a:hover { color: var(--ive-pink); }

/* Карточка отзыва: видео слева, панель «Решение» 400 px справа */
.rv-view { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 18px; align-items: start; }
.rv-view__main { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.rv-files { background: var(--ive-bg); border-radius: 20px; padding: 10px 18px; }
.rv-file { display: flex; align-items: center; gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--ive-line); font-size: 13px; }
.rv-file:last-child { border-bottom: 0; }
.rv-file svg { flex: none; width: 16px; height: 16px; color: var(--ive-ink-3); }
.rv-file b { font-weight: 600; color: var(--ive-ink); white-space: nowrap; }
.rv-file span { margin-left: auto; text-align: right; font-weight: 500; color: var(--ive-ink-2); }
.rv-file.is-bad span, .rv-file.is-bad b { color: var(--ive-bad-text); }
.rv-caption { background: var(--ive-bg); border-radius: 20px; padding: 14px 18px; display: flex; flex-direction: column; gap: 6px; }
.rv-caption__head { font-size: 12px; font-weight: 700; color: var(--ive-ink-3); }
.rv-caption__text { white-space: pre-line; font-size: 14px; color: var(--ive-ink); }
.rv-caption__text a { color: var(--ive-pink); }
.rv-dup { background: var(--ive-bg); border-radius: 20px; padding: 14px 18px; display: flex; flex-direction: column; gap: 10px; }
.rv-dup__head { font-size: 14px; font-weight: 600; color: var(--ive-ink); }
.rv-dup__head a { color: var(--ive-pink); }

.rv-side { background: var(--ive-bg); border-radius: 20px; padding: 18px 20px; display: flex; flex-direction: column; gap: 12px; position: sticky; top: 84px; }
.rv-side__label { display: flex; justify-content: space-between; align-items: center; font-size: 12px; font-weight: 700; color: var(--ive-ink-3); }
.rv-side__label .fi-link, .rv-side__label .fi-btn { font-size: 13px; font-weight: 600; color: var(--ive-pink) !important; }
.rv-side__label .fi-link .fi-icon { color: var(--ive-pink) !important; }
.rv-side__note { font-size: 12px; font-weight: 500; color: var(--ive-ink-3); text-align: center; }
.rv-quality { display: flex; gap: 8px; }
.rv-quality div { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 10px 0; border-radius: 12px; background: var(--ive-bg-2); }
.rv-quality div.is-good { background: var(--ive-green-soft); }
.rv-quality div.is-ok { background: var(--ive-late-soft); }
.rv-quality div.is-bad { background: var(--ive-bad-soft); }
.rv-quality i { font-style: normal; font-size: 22px; line-height: 1.2; }
.rv-quality small { font-size: 12px; font-weight: 500; color: var(--ive-ink-2); }
.rv-kv { margin: 0; display: flex; flex-direction: column; }
.rv-kv > div { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--ive-line); font-size: 13px; }
.rv-kv > div:last-child { border-bottom: 0; }
.rv-kv dt { color: var(--ive-ink-2); flex: none; }
.rv-kv dd { margin: 0; font-weight: 600; color: var(--ive-ink); text-align: right; min-width: 0; overflow-wrap: anywhere; }
.rv-kv .is-ok { color: var(--ive-green-dark); }
.rv-kv .is-warn, .rv-kv .is-warn dt { color: var(--ive-warn-text); }
.rv-kv a { color: var(--ive-pink); }

@media (max-width: 1280px) {
    .rv-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rv-view { grid-template-columns: minmax(0, 1fr); }
    .rv-side { position: static; }
}
@media (max-width: 760px) {
    .rv-grid { grid-template-columns: minmax(0, 1fr); }
    .rv-card--wide { grid-column: auto; }
    .rv-compare { grid-template-columns: 1fr; }
}
