/* admin-view-pipeline.css — layout for the Pipeline view only.
 * Zero literals: tokens + component classes (ISC-85 layer 4, ISC-86).
 * Mockup 04: .seg status tabs live in #stats, toolbar filters in
 * #orders-toolbar, the sortable table in #orders-table, footer + bulk bar. */

/* The segmented status control renders inside #stats — cancel the KPI grid. */
.stats.pl-seg-host {
  display: block;
  margin-bottom: 0;
}

/* Toolbar (mockup 04): icon input + origin/created selects + toggles; the
   .sort-label component already pushes the sort echo to the right edge. */
.pl-toolbar .pl-search {
  width: 280px;
}

/* Table — ISC-33: must fit 1024 px without horizontal scroll. Fixed layout
   with fixed side columns lets the two flexible text columns truncate. */
.pl-table table {
  table-layout: fixed;
}
.pl-table th,
.pl-table td {
  padding: var(--sp-3) var(--sp-2);
  vertical-align: middle;
}
.pl-table .pl-col-check {
  width: var(--sp-8);
}
.pl-table .pl-col-origin {
  width: 11%;
}
.pl-table .pl-col-status {
  width: 15%;
}
.pl-table .pl-col-created {
  width: 15%;
}
.pl-table .pl-col-actions {
  width: 16%;
}
.pl-table th .th-sort {
  min-height: 0;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  cursor: pointer;
  white-space: nowrap;
}
.pl-table th[aria-sort="ascending"] .th-sort,
.pl-table th[aria-sort="descending"] .th-sort {
  color: var(--ink);
}
.pl-check {
  width: var(--sp-4);
  height: var(--sp-4);
  accent-color: var(--accent);
  vertical-align: middle;
}
.pl-cell-check {
  text-align: center;
}
.pl-cell-domain,
.pl-cell-requester {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pl-domain {
  font-weight: 600;
}
.pl-cell-created {
  white-space: nowrap;
}
.pl-cell-created .row-eta {
  white-space: nowrap;
}
.pl-cell-actions {
  text-align: right;
  white-space: nowrap;
}
.pl-cell-actions a {
  font-weight: 600;
}
.pl-cell-actions .pl-action {
  margin-left: var(--sp-2);
}

/* Grouped-by-domain rows (ISC-30): tinted parent row, indented children. */
.pl-group-row td {
  background: var(--surface-2);
}
.pl-group-toggle {
  min-height: 0;
  width: var(--sp-5);
  height: var(--sp-5);
  padding: 0;
  border: 0;
  background: none;
  color: var(--ink-2);
  font: inherit;
  cursor: pointer;
}
.pl-group-summary {
  font-size: var(--fs-label);
  color: var(--ink-2);
}
.pl-child td {
  padding-top: var(--sp-2);
  padding-bottom: var(--sp-2);
}
.pl-child-name {
  padding-left: var(--sp-4);
  color: var(--ink-2);
  font-weight: 400;
}

/* Footer (ISC-34): "Showing N of M · K test orders hidden" left, pager right. */
.pl-foot {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--sp-4);
  flex-wrap: wrap;
  padding: var(--sp-3) var(--sp-5);
  border-top: 1px solid var(--tint);
  font-size: var(--fs-small);
  color: var(--ink-muted);
}
.pl-pager {
  display: inline-flex;
  align-items: center;
  gap: var(--sp-2);
}
.pl-pager button {
  min-width: var(--control-h-sm);
  height: var(--control-h-sm);
  padding: 0 var(--sp-3);
  border: 1px solid var(--border);
  border-radius: var(--r-sm);
  background: var(--paper);
  color: var(--ink);
}
.pl-pager button[aria-current="page"] {
  background: var(--ink);
  border-color: var(--ink);
  color: var(--white);
}
.pl-pager button[disabled] {
  color: var(--ink-faint);
}
.pl-pager .pl-ellipsis {
  padding: 0 var(--sp-1);
  color: var(--ink-muted);
}
.pl-rows-label {
  margin-left: var(--sp-3);
}

/* Bulk bar floats centered at the bottom of the content column (.bulkbar
   component is sticky; it is appended to .dashboard-content, a flex column). */
.pl-bulkbar {
  align-self: center;
}

@media (max-width: 900px) {
  .pl-toolbar .pl-search {
    width: 100%;
  }
  .pl-table .pl-col-origin,
  .pl-table .pl-cell-origin {
    display: none;
  }
}
