/* The factory run table and its pieces: the unit line, the three empty
   states, the notice, the verdict pills, the customer tag. Shared by the
   Production tab (certificates.js) and the unit page's Production and
   certificate panel (device-unit.js); each loads this sheet before its own,
   so a page sheet can still override it. Palette + resets + .btn* come from
   theme.css. Selectors keep the certs- prefix the markup has always used. */

.certs-notice {
  color: var(--lf-text);
  font-size: 12px;
  padding: 8px 12px;
  margin-bottom: 10px;
  border: 1px solid var(--lf-border);
  border-radius: 8px;
  background: var(--lf-panel);
}

.certs-empty {
  padding: 14px 16px;
  border: 1px solid var(--lf-border);
  border-radius: 10px;
  background: var(--lf-panel);
  max-width: 760px;
  margin-bottom: 14px;
}
.certs-empty-head { font-size: 14px; font-weight: 600; color: var(--lf-text); margin-bottom: 6px; }
.certs-empty-detail { font-size: 12px; line-height: 1.6; color: var(--lf-text-muted); }

.certs-unit {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  align-items: baseline;
  font-size: 13px;
  color: var(--lf-text);
  margin-bottom: 12px;
}
.certs-unit-id {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-weight: 700;
  font-size: 15px;
}
.certs-unit-fact { color: var(--lf-text-muted); }

.certs-table {
  width: 100%;
  max-width: 980px;
  border-collapse: collapse;
  font-size: 13px;
}
.certs-table th, .certs-table td {
  text-align: left;
  padding: 8px 10px;
  border-bottom: 1px solid var(--lf-border);
  vertical-align: middle;
}
.certs-table th { color: var(--lf-text-muted); font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
.certs-row-customer { background: color-mix(in srgb, var(--lf-accent) 8%, transparent); }

.certs-verdict {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.certs-verdict-pass { background: rgba(46, 160, 67, .15); color: #2ea043; }
.certs-verdict-marginal { background: rgba(210, 153, 34, .18); color: #b5810f; }
.certs-verdict-fail { background: rgba(192, 57, 43, .15); color: #c0392b; }
.certs-verdict-uncertified, .certs-verdict-unknown { background: rgba(128, 128, 128, .15); color: var(--lf-text-muted); }

.certs-tag {
  display: inline-block;
  margin-left: 8px;
  padding: 1px 7px;
  border: 1px solid var(--lf-accent);
  border-radius: 999px;
  color: var(--lf-accent);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
  vertical-align: middle;
}
.certs-note { color: var(--lf-text-muted); font-size: 12px; }
.certs-truncated { color: var(--lf-text-muted); font-size: 12px; margin-top: 10px; }
