/* Раздел «Бонусная программа»: правила (oCSNC), импорт и сверки (sMWco), предпросмотр сгорания. Цвета — var(--ive-*). */
.loy-stack { display: flex; flex-direction: column; gap: 16px; }
.loy-panel-head { display: flex; flex-direction: column; gap: 3px; padding-bottom: 14px; }
.loy-panel-head p { margin: 0; font-size: 13px; color: var(--ive-ink-2); }

/* Таблицы (отличия версий, месяцы сгорания, отчёт запуска) */
.loy-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 13px; }
.loy-table th { padding: 8px 10px; background: var(--ive-bg-2); font-size: 12px; font-weight: 700; color: var(--ive-ink-3); text-align: left; white-space: nowrap; }
.loy-table th:first-child { border-radius: 10px 0 0 10px; }
.loy-table th:last-child { border-radius: 0 10px 10px 0; }
.loy-table td { padding: 9px 10px; border-bottom: 1px solid var(--ive-line); color: var(--ive-ink); vertical-align: top; font-weight: 500; }
.loy-table tbody tr:last-child td { border-bottom: 0; }
.loy-table .num { text-align: right; white-space: nowrap; }
.loy-table .muted { color: var(--ive-ink-2); }
.loy-table .is-new { color: var(--ive-pink); font-weight: 600; }
.loy-table .pre { white-space: pre-wrap; }
.loy-table .w-field { width: 260px; }
.loy-table .w-bar { width: 40%; vertical-align: middle; }
.loy-bar { display: block; height: 8px; border-radius: 999px; background: var(--ive-pink); opacity: .8; }
.loy-comment { margin: 12px 0 0; font-size: 13px; color: var(--ive-ink-2); }
.loy-comment b { color: var(--ive-ink); font-weight: 600; }

/* Пояснения-плашки */
.loy-note { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border-radius: 12px; background: var(--ive-blue-soft); color: var(--ive-blue); font-size: 13px; }
.loy-note svg { flex: none; width: 16px; height: 16px; margin-top: 1px; }
.loy-note code { font-size: 12px; padding: 1px 5px; border-radius: 6px; background: rgba(255,255,255,.6); }
.loy-note--warn { background: var(--ive-late-soft); color: var(--ive-warn-text); }
.loy-note--bad { background: var(--ive-bad-soft); color: var(--ive-bad-text); margin-bottom: 12px; }
.fi-resource-list-records-page .loy-note { margin-top: 2px; }

/* Плитки итогов */
.loy-tiles { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 14px; }
.loy-tiles--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1100px) { .loy-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) { .loy-tiles, .loy-tiles--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.loy-tile { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; border-radius: 16px; background: var(--ive-bg); }
.loy-tile b { font-size: 24px; line-height: 1.15; font-weight: 800; color: var(--ive-ink); letter-spacing: -.01em; }
.loy-tile span { font-size: 12px; color: var(--ive-ink-3); }
.loy-tile--accent b { color: var(--ive-pink); }
.loy-tile--bad b { color: var(--ive-bad-text); }

/* Форма предпросмотра сгорания */
.loy-form { display: grid; gap: 14px; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; align-items: end; }
@media (max-width: 1000px) { .loy-form { grid-template-columns: 1fr; } }
.loy-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.loy-field > span { font-size: 13px; font-weight: 600; color: var(--ive-ink-2); }
.loy-form__btn .fi-btn { min-height: 42px; }
.loy-error { margin: 8px 0 0; font-size: 13px; color: var(--ive-bad-text); }

/* Отчёт запуска (модалка) */
.loy-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.loy-chip { padding: 4px 9px; border-radius: 999px; background: var(--ive-bg-2); font-size: 12px; color: var(--ive-ink-2); }
.loy-chip b { color: var(--ive-ink); }
.loy-report__title { font-size: 14px; font-weight: 700; color: var(--ive-ink); margin-bottom: 8px; }
.loy-report__scroll { max-height: 320px; overflow: auto; }
