/* Module 03: back-office transfer operations */
.ct-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; max-width: 100%; }
.ops-on { outline: 2px solid var(--blue); outline-offset: -2px; background: var(--infoBg) !important; }
.ops-lbl { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--muted); }
.ops-narrow { width: 110px; max-width: 100%; }
.ops-gap { margin-top: 12px; }
.ops-pad { padding: 10px 14px; }
.ops-statusbar { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: center; justify-content: space-between; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); padding: 10px 14px; }
.ops-statusbar .ct-steps { margin: 0; }
.ops-kv { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; margin-bottom: 12px; }
.ops-kv > div { background: var(--panel2); border: 1px solid var(--line2); border-radius: var(--radius); padding: 8px 10px; min-width: 0; }
.ops-kv span { display: block; font-size: 11px; color: var(--muted); text-transform: uppercase; letter-spacing: .03em; }
.ops-kv b { display: block; font-size: 15px; margin-top: 2px; overflow-wrap: anywhere; }
.ops-mini { font-size: 12px; }
.ops-mini td, .ops-mini th { padding: 5px 8px; }
.ops-route { border-bottom: 1px solid var(--line2); padding: 10px 14px; }
.ops-route:last-child { border-bottom: 0; }
.ops-route-h { margin-bottom: 6px; }
.ops-route-h .sub { display: block; }
.ops-picked, .ops-picked td { background: var(--okBg); }
.ops-act { display: flex; flex-wrap: wrap; gap: 6px; align-items: flex-end; padding: 8px 0; border-bottom: 1px dashed var(--line2); }
.ops-act:last-child { border-bottom: 0; }
.ops-act .ct-input { flex: 1 1 180px; min-width: 0; }
.ops-chips { display: flex; flex-wrap: wrap; gap: 4px; }
.ops-chip { display: inline-block; font-size: 11px; padding: 2px 7px; border-radius: 10px; background: var(--panel2); border: 1px solid var(--line2); color: var(--text2); }
.ops-chip.ok { background: var(--okBg); color: var(--okFg); border-color: transparent; }
.ops-chip.bad { background: var(--badBg); color: var(--badFg); border-color: transparent; }
.ops-note { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 10px; }
.ops-note .ct-input { flex: 1 1 200px; }
.ops-types { display: flex; flex-direction: column; gap: 4px; }
.ops-type { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid var(--line2); border-radius: var(--radius); color: var(--text); }
.ops-type:hover { background: var(--panel2); }
.ops-type > i { color: var(--blue); font-size: 16px; }
.ops-type > span { flex: 1; min-width: 0; }
.ops-type small { display: block; color: var(--muted); font-size: 11px; }
.ops-type > b { font-size: 16px; }
.ops-overdue td:first-child { box-shadow: inset 3px 0 0 var(--badFg); }
.ops-sel { width: auto; min-width: 120px; max-width: 100%; }
.ops-decide { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.ops-decide .ct-input { flex: 1 1 160px; min-width: 0; }
@media (max-width: 700px) {
    .ops-statusbar { flex-direction: column; align-items: flex-start; }
    .ops-narrow { width: 100%; }
}
