#refunds-table tbody tr { transition: background-color .12s ease; }
#refunds-table tbody tr:hover {
    background-color: color-mix(in srgb, var(--bp-green) 6%, transparent);
}
#refunds-table thead th {
    font-size: .75rem; font-family: var(--ff-ui); letter-spacing: .01em;
    color: var(--bp-muted); font-weight: 600; border-bottom-width: 1px;
    white-space: nowrap;
}
/* Текст переносим по словам, а не режем: обрезанный текст = баг. Рвать
   посреди слова разрешаем только длинным техническим идентификаторам,
   иначе «Тверь – Оснабрюкская» разлеталась по буквам в узкой колонке. */
#refunds-table td { white-space: normal; overflow-wrap: normal; }
#refunds-table { min-width: 1240px; }
.rf-nowrap { white-space: nowrap; }
.rf-id { font-family: var(--ff-mono); font-size: .72rem; overflow-wrap: anywhere; }
.rf-client-link { color: var(--bp-green-dark); text-decoration: none; font-weight: 500; }
.rf-client-link:hover { text-decoration: underline; }
.rf-amount { font-variant-numeric: tabular-nums; font-weight: 600; white-space: nowrap; }
.rf-mono { font-family: var(--ff-mono); font-size: .82rem; white-space: nowrap; }
.rf-copy { border: 0; background: none; padding: 0 .2rem; color: var(--bp-muted); line-height: 1; }
.rf-copy:hover { color: var(--bp-ink); }
/* Главная кнопка страницы не должна уезжать за правый край: таблица широкая,
   и «Ответ клиенту» по умолчанию оказывался вне видимой области. */
#refunds-table th.rf-sticky, #refunds-table td.rf-sticky {
    position: sticky; right: 0; background: var(--bp-sheet);
    box-shadow: -1px 0 0 var(--bp-line);
}
#refunds-table tbody tr:hover td.rf-sticky {
    background: color-mix(in srgb, var(--bp-green) 6%, var(--bp-sheet));
}
/* Пока грузим — старые строки не выдаём за новые */
.rf-stale { opacity: .35; }

@media (max-width: 767.98px) {
    /* Строка стала карточкой: ширина в 1240px её растянула бы, а липкая
       колонка «Ответ» накрывала бы соседнюю — на узком экране она резала
       клуб посреди слова. Кнопка ответа уезжает в подвал карточки. */
    #refunds-table { min-width: 0; }
    #refunds-table th.rf-sticky, #refunds-table td.rf-sticky {
        position: static; box-shadow: none;
    }
    /* Строка стала карточкой — колонок, которые `nowrap` берёг от
       разъезжания на десктопе, больше нет: разрешаем переносить длинную
       строку «из X ₽ от ДД.ММ.ГГГГ» и моноширинные реквизиты по слову.
       Правило НЕ лечит горизонтальную прокрутку карточки — её давал перебор
       в самой ячейке кита (`table.bp-m-cards > tbody > tr > td`,
       см. `web/README.md` → «Мобильный кит»). Оставлено ради переноса, а не
       отсечения длинных значений. */
    #refunds-table td.rf-nowrap, #refunds-table .rf-nowrap,
    #refunds-table .rf-amount, #refunds-table .rf-mono {
        white-space: normal;
    }
    /* Итоги — главные цифры страницы; в ряду с кнопками они складывались
       в шесть строк по 145px. Своей строкой, кнопки под ними. */
    .rf-summary { flex-direction: column; align-items: stretch; gap: .5rem; }
    .rf-summary > div:last-child > span, .rf-summary .btn { flex: 1 1 auto; }
}
