/* ===================================================================
   Ops Tracker — internal admin/AM detailed orders table
   =================================================================== */
.ops-tracker-page { padding: 1.5rem 2.5rem 5rem; max-width: 100%; }

.ops-tracker-header { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 1.25rem; }
.ops-tracker-title { font-size: 1.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: -0.5px; margin: 0; color: #242424; }
.ops-tracker-sub { font-size: 0.875rem; color: #6b6b6b; margin: 0.25rem 0 0; }
.ops-tracker-fy { color: #1a56db; font-weight: 600; }
.ops-tracker-export { font-size: 0.8125rem; font-weight: 600; padding: 0.5rem 1rem; border-radius: 0.5rem; border: 1px solid #d0d0d0; background: #fff; cursor: pointer; }
.ops-tracker-export:hover { background: #f5f5f5; }

/* filter bar */
.ops-tracker-filters { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: flex-end; padding: 1rem; background: #fafafa; border: 1px solid #ececec; border-radius: 0.75rem; margin-bottom: 1rem; }
.ops-filter { display: flex; flex-direction: column; gap: 0.25rem; }
.ops-filter-label { font-size: 0.6875rem; text-transform: uppercase; color: #9a9a9a; letter-spacing: 0.03em; }
.ops-filter-input, .ops-filter-select { font-size: 0.8125rem; padding: 0.4375rem 0.625rem; border: 1px solid #d0d0d0; border-radius: 0.5rem; background: #fff; min-width: 8.125rem; }
.ops-tracker-apply { font-size: 0.8125rem; font-weight: 600; padding: 0.5rem 1.125rem; border-radius: 0.5rem; border: none; background: #1a56db; color: #fff; cursor: pointer; align-self: flex-end; }
.ops-tracker-apply:hover { background: #1647b8; }

/* table */
.ops-tracker-table-wrap { overflow-x: auto; border: 1px solid #ececec; border-radius: 0.75rem; }
.ops-tracker-table { width: 100%; border-collapse: collapse; font-size: 0.8125rem; min-width: 68.75rem; }
.ops-tracker-table thead th { text-align: left; font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.03em; color: #888; padding: 0.75rem 0.875rem; border-bottom: 1px solid #e8e8e8; background: #fafafa; white-space: nowrap; position: sticky; top: 0; }
.ops-tracker-table td { padding: 0.6875rem 0.875rem; border-bottom: 1px solid #f1f1f1; vertical-align: top; white-space: nowrap; }
.ops-tracker-row:hover { background: #fafbff; }
.ops-cell-customer { font-weight: 500; color: #242424; }
.ops-cell-project { white-space: normal; max-width: 15rem; }
.ops-project-name { color: #242424; }
.ops-po-number { font-size: 0.75rem; color: #9a9a9a; font-family: monospace; }
.ops-cell-value { font-weight: 600; text-align: right; }
.ops-cell-days { text-align: center; color: #6b6b6b; }
.ops-cell-sap { font-family: monospace; font-size: 0.75rem; }
.ops-cell-am { color: #6b6b6b; font-size: 0.75rem; }

/* type chips */
.ops-type-chip { font-size: 0.6875rem; font-weight: 600; padding: 3px 0.5rem; border-radius: 0.375rem; background: #eef; color: #44a; }
.ops-type-service { background: #f0f0f0; color: #777; }
.ops-type-new_transformer { background: #e6f0ff; color: #1a56db; }
.ops-type-spare_part { background: #e6f6ec; color: #1a7f37; }
.ops-type-switchgear { background: #fff4e5; color: #b35900; }
.ops-type-project, .ops-type-repair, .ops-type-training { background: #f3e8ff; color: #7c3aed; }

/* status pills */
.ops-status-pill { font-size: 0.6875rem; font-weight: 600; padding: 3px 0.5625rem; border-radius: 999px; }
.ops-status-pending { background: #fff8e1; color: #b8860b; }
.ops-status-confirmed { background: #e6f0ff; color: #1a56db; }
.ops-status-processing { background: #eef2ff; color: #4f46e5; }
.ops-status-completed { background: #e6f6ec; color: #1a7f37; }
.ops-status-cancelled { background: #fdecea; color: #c0392b; }

.ops-sap-yes { color: #1a7f37; font-weight: 600; }
.ops-sap-no { color: #c0392b; font-weight: 600; }
.ops-sap-doc { color: #444; }

.ops-tracker-loading, .ops-tracker-empty { padding: 2.5rem; text-align: center; color: #9a9a9a; }
.ops-tracker-pager { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-top: 1rem; }
.ops-tracker-pager button { font-size: 0.8125rem; padding: 0.4375rem 0.875rem; border: 1px solid #d0d0d0; border-radius: 0.5rem; background: #fff; cursor: pointer; }
.ops-tracker-pager button:disabled { opacity: 0.4; cursor: default; }
.ops-pager-info { font-size: 0.8125rem; color: #6b6b6b; }
