﻿.preview-table td, .preview-table th {
    white-space: nowrap;
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 0.8rem;
    cursor: pointer;
}

.preview-table .row-num {
    background: #f8f9fa;
    color: #6c757d;
    font-weight: 600;
    text-align: center;
    width: 40px;
    cursor: default;
}

.preview-table .col-head {
    text-align: center;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
}

.preview-table tbody tr:hover {
    background-color: #fff3cd;
}

.preview-table tbody tr.table-warning td {
    background-color: #ffe69c !important;
    font-weight: 600;
}
/* Phase 3 — cell selection highlights */
.preview-cell.cell-start {
    background-color: #198754 !important;
    color: #fff !important;
    font-weight: 700;
}

.preview-cell.cell-end {
    background-color: #0d6efd !important;
    color: #fff !important;
    font-weight: 700;
}

.preview-cell.cell-range {
    background-color: #cfe2ff !important;
}
/* ── Mapper UI ──────────────────────────────────────────────────────────── */

.mapper-row td {
    vertical-align: middle;
}

.mapper-row.type-transform {
    background-color: #f0f8ff;
}

.mapper-row.type-retain {
    background-color: #f9fff9;
}

.mapper-row:hover {
    filter: brightness(0.97);
}

.formula-input {
    min-width: 260px;
    font-size: 0.82rem;
}

    .formula-input.is-valid {
        border-color: #198754;
        background-image: none;
    }

    .formula-input.is-invalid {
        border-color: #dc3545;
        background-image: none;
    }

.exec-seq {
    width: 70px;
}

.source-select {
    min-width: 200px;
    font-size: 0.82rem;
}

.formula-feedback {
    font-size: 0.75rem;
}

.multi-sum-preview {
    padding: 2px 6px;
    background: #f0fff4;
    border: 1px solid #d4edda;
    border-radius: 4px;
    display: inline-block;
}
