/* ── Migration board – admin-page-specific styles ─────────────── */

/* Top toolbar: view toggle on one side, add button on the other */
.board-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

/* Pill-style view toggle (הוסבו / טרם הוסבו) */
.view-toggle {
    display: inline-flex;
    border: 1px solid var(--innova-blue);
    border-radius: 50px;
    overflow: hidden;
    background: #fff;
}
.view-toggle button {
    background: #fff;
    color: var(--innova-blue);
    border: none;
    padding: 0.45rem 1.5rem;
    font-family: var(--innova-font);
    font-size: 1rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease;
}
.view-toggle button:hover { background: rgba(238, 244, 255, 1); }
.view-toggle button.active {
    background: var(--innova-nav-blue);
    color: #fff;
}

/* Filter bar */
.innova-filter-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
    margin-bottom: 1.25rem;
}

.innova-filter-input,
.innova-filter-select {
    font-family: var(--innova-font);
    font-size: 1rem;
    border: 1px solid #c9c9c9;
    border-radius: var(--innova-radius-input);
    padding: 0.5rem 0.9rem;
    background: #fff;
    color: #333;
    outline: none;
}

.innova-filter-input { min-width: 18rem; }
.innova-filter-input:focus,
.innova-filter-select:focus { border-color: var(--innova-blue); }

.innova-filter-clear {
    font-family: var(--innova-font);
    font-size: 0.95rem;
    color: var(--innova-blue);
    background: none;
    border: none;
    cursor: pointer;
    text-decoration: underline;
}

/* Sortable header cells */
.innova-table thead th[data-sort] {
    cursor: pointer;
    user-select: none;
}
.innova-table thead th[data-sort]:hover { color: var(--innova-blue); }
.innova-table thead th .sort-arrow {
    font-size: 0.8rem;
    opacity: 0.5;
    margin-right: 0.25rem;
}
.innova-table thead th.sorted .sort-arrow { opacity: 1; color: var(--innova-blue); }

/* Status badge */
.status-badge {
    display: inline-block;
    padding: 0.2em 0.85em;
    border-radius: 50px;
    font-size: 0.95rem;
    font-weight: 500;
    white-space: nowrap;
}
.status-NotConverted { background: #FDE2E2; color: #C0392B; }
.status-InProgress   { background: #FFF3CD; color: #B8860B; }
.status-Converted    { background: #DDF5E3; color: #1E7E34; }

/* Platform badge */
.platform-badge {
    display: inline-block;
    padding: 0.15em 0.7em;
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: 500;
    white-space: nowrap;
}
.platform-Net48     { background: #ECECEC; color: #555; }
.platform-NetCore10 { background: #E3EDFF; color: var(--innova-blue); }

/* Priority inline editor */
.priority-input {
    width: 4rem;
    font-family: var(--innova-font);
    font-size: 1rem;
    text-align: center;
    border: 1px solid #c9c9c9;
    border-radius: 8px;
    padding: 0.2rem;
    outline: none;
}
.priority-input:focus { border-color: var(--innova-blue); }

/* Link cell */
.innova-table td .item-link {
    color: var(--innova-blue);
    text-decoration: none;
    font-size: 1rem;
    word-break: break-all;
}
.innova-table td .item-link:hover { text-decoration: underline; }

/* Small action button */
.btn-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: var(--innova-font);
    font-weight: 500;
    font-size: 0.95rem;
    color: var(--innova-blue);
    background: #fff;
    border: 1px solid var(--innova-blue);
    border-radius: var(--innova-radius-btn);
    padding: 0.2em 1em;
    cursor: pointer;
    white-space: nowrap;
    transition: background-color 0.15s ease;
}
.btn-status:hover { background: rgba(238, 244, 255, 1); }

/* Modal form fields */
.modal-field { margin-bottom: 1rem; text-align: right; }
.modal-field label {
    display: block;
    font-weight: 500;
    color: #284986;
    margin-bottom: 0.3rem;
}
.modal-field .readonly-value {
    background: #f3f3f3;
    border-radius: 8px;
    padding: 0.5rem 0.8rem;
    color: #333;
}
.modal-field select,
.modal-field textarea,
.modal-field input[type="text"],
.modal-field input[type="number"] {
    width: 100%;
    font-family: var(--innova-font);
    font-size: 1rem;
    border: 1px solid #c9c9c9;
    border-radius: var(--innova-radius-input);
    padding: 0.5rem 0.8rem;
    outline: none;
    background: #fff;
}
.modal-field select:focus,
.modal-field textarea:focus,
.modal-field input:focus { border-color: var(--innova-blue); }
.modal-field textarea { resize: vertical; min-height: 4.5rem; }
.field-error { color: #C0392B; font-size: 0.9rem; margin-top: 0.25rem; }

/* Result count */
#result-count {
    font-family: var(--innova-font);
    font-size: 0.9rem;
    color: #6c757d;
    margin-top: 1rem;
    text-align: right;
}

/* History table cells a touch tighter */
#history-table td { font-size: 1.05rem; padding: 0.6rem 0.9rem; }

/* ── Compact sizing for the migration table (it has many rows) ── */
#migration-table thead {
    height: 2.5rem;
}
#migration-table thead th {
    font-size: 1.05rem;
}
#migration-table tbody td {
    font-size: 0.95rem;
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}
#migration-table .status-badge,
#migration-table .platform-badge {
    font-size: 0.85rem;
}
#migration-table .priority-input,
#migration-table .btn-status,
#migration-table td .item-link {
    font-size: 0.9rem;
}

/* Module column — keep its text on a single line */
#migration-table thead th:nth-child(3),
#migration-table tbody td:nth-child(3) {
    white-space: nowrap;
}
