/* ===============================
   Pump Feature Matrix (scoped)
   =============================== */

.pump-matrix {
  margin: 1.25rem 0;
}

/* Scroll wrapper */
.pump-matrix .pump-matrix__wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 10px;
  background: #fff;
}

/* Table base */
.pump-matrix .pump-matrix__table {
  width: 100%;
  min-width: 760px;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

/* Caption */
.pump-matrix .pump-matrix__caption {
  caption-side: top;
  text-align: left;
  font-weight: 700;
  padding: .75rem .75rem .5rem .75rem;
}

/* Header */
.pump-matrix .pump-matrix__table thead th {
  background: #fff;
  font-weight: 700;
  border-bottom: 1px solid rgba(0,0,0,.12);
  padding: .85rem .9rem;
}

/* Cells */
.pump-matrix .pump-matrix__table th,
.pump-matrix .pump-matrix__table td {
  border-right: 1px solid rgba(0,0,0,.10);
  border-bottom: 1px solid rgba(0,0,0,.10);
  padding: .95rem .9rem;
  vertical-align: middle;
}

/* Remove trailing borders */
.pump-matrix .pump-matrix__table th:last-child,
.pump-matrix .pump-matrix__table td:last-child {
  border-right: 0;
}

.pump-matrix .pump-matrix__table tbody tr:last-child th,
.pump-matrix .pump-matrix__table tbody tr:last-child td {
  border-bottom: 0;
}

/* Feature column */
.pump-matrix .pump-matrix__table th[scope="row"] {
  text-align: left;
  font-weight: 600;
  background: #fff;
}

/* Column widths */
.pump-matrix .pump-matrix__table col.col-feature { width: 36%; }
.pump-matrix .pump-matrix__table col.col-gear    { width: 21.333%; }
.pump-matrix .pump-matrix__table col.col-meter   { width: 21.333%; }
.pump-matrix .pump-matrix__table col.col-var     { width: 21.333%; }

/* Center comparison cells */
.pump-matrix .pump-matrix__table td {
  text-align: center;
  font-weight: 700;
  font-size: 1.05rem;
  letter-spacing: .02em;
}

/* Header alignment */
.pump-matrix .pump-matrix__table th[scope="col"]:first-child {
  text-align: left;
}

/* Background colors by value */
.pump-matrix .pump-matrix__table td[data-value="yes"]  { background: #dff2df; }
.pump-matrix .pump-matrix__table td[data-value="no"]   { background: #f8d7da; }
.pump-matrix .pump-matrix__table td[data-value="case"] { background: #fff3cd; }

/* Icon styling */
.pump-matrix .pump-matrix__icon {
  display: inline-block;
  min-width: 2rem;
  line-height: 1;
}

/* Zebra stripe (Feature column only) */
.pump-matrix .pump-matrix__table tbody tr:nth-child(even) th[scope="row"] {
  background: #fafafa;
}

/* Legend / note */
.pump-matrix .pump-matrix__note {
  font-size: .95rem;
  color: #555;
  margin-top: .5rem;
}

/* Screen-reader only (scoped) */
.pump-matrix .sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
