/*!
 * smit-table-columns — оформление перетаскивания/ресайза колонок smit-tbl
 * (build 1989). Пара с smit-table-columns.js.
 */

/* скрытая колонка. !important — потому что у колонок часто висит бутстраповский
   d-md-table-cell (тоже !important), и инлайновый display его не перебивал */
.smit-col-off { display: none !important; }

/* заголовок можно тащить; курсор-«хват» только в шапке, чтобы не путать с сортировкой */
.smit-cols-on thead th.smit-col-draggable { cursor: grab; }
.smit-cols-on thead th.smit-col-dragging { opacity: .45; }
.smit-cols-on thead th.smit-col-over {
    box-shadow: inset 3px 0 0 var(--brand-primary, #43b77a);
}
.smit-cols-on thead th { position: relative; }

/* грип ресайза — узкая полоса у правого края заголовка */
.smit-col-grip {
    position: absolute; top: 0; right: 0; width: 6px; height: 100%;
    cursor: col-resize; -webkit-user-select: none; user-select: none;
}
.smit-col-grip:hover { background: var(--brand-primary, #43b77a); opacity: .35; }
body.smit-col-resizing { cursor: col-resize; -webkit-user-select: none; user-select: none; }
body.smit-col-resizing * { cursor: col-resize !important; }

/* список колонок в модалке */
.smit-cols-list { display: grid; gap: 2px; max-height: 52vh; overflow-y: auto; }
.smit-cols-item {
    display: flex; align-items: center; gap: .5rem; margin: 0;
    padding: .3rem .45rem; border: 1px solid transparent; border-radius: 8px;
    cursor: default;
}
.smit-cols-item:hover { background: var(--sc-subtle-bg, #f1f5f9); }
/* В теме у .form-check-input стоит float — он ломает flex-gap, и чекбокс
   прилипал к подписи. Сбрасываем и задаём отступ явно. */
.smit-cols-item .form-check-input {
    float: none !important;
    margin: 0 .15rem 0 0 !important;
    flex: 0 0 auto;
}
.smit-cols-item > span { padding-left: .15rem; }
.smit-cols-item.is-drag { opacity: .5; border-color: var(--brand-primary, #43b77a); }
.smit-cols-grip { color: #adb5bd; cursor: grab; }
.smit-cols-item[draggable="true"]:active { cursor: grabbing; }

body.dark-theme .smit-cols-item:hover,
[data-bs-theme="dark"] .smit-cols-item:hover { background: #2b3038; }
body.dark-theme .smit-cols-grip,
[data-bs-theme="dark"] .smit-cols-grip { color: #6b7280; }

/* на телефоне таблица — карточки: перестановка/ресайз там смысла не имеют */
@media (max-width: 767.98px) {
    .smit-col-grip { display: none; }
    .smit-cols-on thead th.smit-col-draggable { cursor: default; }
}

/* ── Плотность строк ──────────────────────────────────────────────────
   Компактный режим: меньше вертикальных отступов и чуть мельче шрифт.
   Читаемость сохраняется (шрифт не ниже 13px), а на экран влезает
   на 5-6 строк больше. Состояние хранится в аккаунте вместе с колонками. */
.smit-tbl-compact > tbody > tr > td,
.smit-tbl-compact > thead > tr > th {
    padding-top: .18rem !important;
    padding-bottom: .18rem !important;
    font-size: var(--sc-fz-sm, .82rem);
    line-height: 1.25;
}
.smit-tbl-compact > tbody > tr > td .badge { font-size: var(--sc-fz-2xs, .7rem); }
.smit-tbl-compact > tbody > tr > td img { max-height: 22px; }

/* на телефоне таблица — карточки, ужимать нечего */
@media (max-width: 767.98px) {
    .smit-tbl-compact > tbody > tr > td,
    .smit-tbl-compact > thead > tr > th { padding-top: .35rem !important; padding-bottom: .35rem !important; }
}
