/* Раздел «Сходимость». Довесок к predict.css (сетка карточек, чипы, плитки,
   таблицы, подсказки) — тут только то, чего там нет. */

/* Форма фильтров главной внутри раздела: та же карточка, без нижнего отступа сетки */
.conv form.card{margin-bottom:8px}

/* Карточки выводов: цветная кромка слева — уровень, крупный заголовок, текст,
   строка чисел мелким. Две колонки, на узком экране одна. */
.conv .vgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:var(--pgap);margin-bottom:var(--pgap)}
.conv .vcard{background:var(--panel);border:1px solid var(--line);border-left-width:4px;border-radius:10px;
  padding:10px 14px;min-width:0}
.conv .vcard.ok{border-left-color:var(--good)}
.conv .vcard.warn{border-left-color:var(--warning)}
.conv .vcard.weak{border-left-color:var(--line)}
.conv .vcard.bad{border-left-color:var(--bad)}
.conv .vcard .vt{font-size:13.5px;font-weight:600;line-height:1.35;margin-bottom:4px}
.conv .vcard .vt .lvl{display:inline-block;width:1.4em;color:var(--dim)}
.conv .vcard.ok .vt .lvl{color:var(--success-text)}
.conv .vcard.warn .vt .lvl{color:var(--warning)}
.conv .vcard.bad .vt .lvl{color:var(--critical)}
.conv .vcard .vx{font-size:12.5px;color:var(--ink-2);line-height:1.45}
.conv .vcard .vn{font-size:11px;color:var(--dim);margin-top:6px;font-variant-numeric:tabular-nums}
.conv .vcard .vn b{color:var(--ink-2);font-weight:500}

/* Списки связей и «год к году» внутри карточек-графиков */
.conv .vlist{list-style:none;margin:0;padding:0;font-size:12.5px}
.conv .vlist li{display:flex;gap:10px;align-items:baseline;padding:4px 0;border-bottom:1px solid var(--grid)}
.conv .vlist li:last-child{border-bottom:0}
.conv .vlist .r{font-variant-numeric:tabular-nums;font-weight:600;min-width:52px;text-align:right}
.conv .vlist .r.pos{color:var(--success-text)}
.conv .vlist .r.neg{color:var(--critical)}
.conv .vlist .r.dim{color:var(--dim);font-weight:400}
.conv .vlist .lab{flex:1;min-width:0}
.conv .vlist .sub{color:var(--dim);font-size:11.5px}
.conv .vhead{font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin:8px 0 2px}
.conv .vhead:first-child{margin-top:0}

/* Плитки «сколько нужно»: три числа подряд — входы, доллары, месяцы */
.conv .tile .v small{font-size:12px;color:var(--dim);font-weight:400;margin-left:4px}
.conv .tile .v.dim{color:var(--dim);font-size:15px}
.conv .tile.zero{border-style:dashed}

/* Значок надёжности в таблицах: ● ◐ ○ */
.conv td .rel{margin-left:4px;font-size:.9em}
.conv td.rel-solid{color:var(--success-text)}
.conv td.rel-weak{color:var(--warning)}
.conv td.rel-none{color:var(--dim)}
.conv td.v-ok{color:var(--success-text)}
.conv td.v-warn{color:var(--warning)}
.conv td.v-bad{color:var(--critical)}
.conv td.v-weak{color:var(--dim)}

/* Правило одной строкой (T8) */
.conv #rule .banner{margin:8px 0}

/* Кнопки-действия эмпирики: в работе — приглушены */
.conv .ptools a.busy{opacity:.5;pointer-events:none}
.conv .ptools a.busy::after{content:" · считаю…"}
.conv .ptools a[hidden]{display:none}

/* Точечная диаграмма split-half */
.conv .scat circle{opacity:.75}

/* Спойлеры раздела — как на /model, но заголовок заметнее */
.conv details>summary{cursor:pointer;color:var(--dim);font-size:12.5px;list-style:revert;padding:4px 0;margin:6px 0}
.conv details>summary:hover{color:var(--ink-2)}
.conv details[open]>summary{margin-bottom:8px}

/* Раздел «Фильтры»: ворота в отдельной колонке помечаются цветом */
.conv td.gate-ok{color:var(--success-text)}
.conv td.gate-bad{color:var(--critical)}
.conv .predict table td.dimtxt{color:var(--dim)}
