.operations-board { margin: 20px 0; overflow: hidden; }
.operations-board .panel-title { align-items: end; }
.operations-board h3 { margin-top: 6px; }
.stage-grid { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 8px; padding: 0 16px 16px; }
.stage-grid button, .ops-totals button {
  display: flex; flex-direction: column; text-align: left; align-items: flex-start;
  gap: 6px; min-width: 0; padding: 12px; border-radius: 10px;
  background: #f1f6fe; border: 1px solid #d9e7fa; color: #142945;
}
.stage-grid button:hover, .ops-totals button:hover { background: #e0edff; border-color: #2585eb; }
.stage-grid small { color: #32639d; font-variant-numeric: tabular-nums; }
.stage-grid strong { font-size: 1.65rem; }
.stage-grid span, .ops-totals span { font-size: .78rem; line-height: 1.35; overflow-wrap: anywhere; }
.ops-totals { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; padding: 0 16px 16px; }
.ops-totals strong { font-size: 1.15rem; }
.stage-filter { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; font-weight: 700; }
@media (max-width: 1200px) { .stage-grid { grid-template-columns: repeat(4,minmax(0,1fr)); } }
@media (max-width: 550px) { .stage-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
