/* deploys.css — Deployments page. Layers on top of jobs.css for the
   page chrome (stats, filters, table); only the deployment-specific
   deltas live here. */

.status-pill {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 9999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: uppercase;
  line-height: 1.4;
}
.status-pill.status-queued      { background: #fff4d6; color: #8a6a00; border: 1px solid #f0d77a; }
.status-pill.status-in_progress { background: #d6ecff; color: #0a5a9e; border: 1px solid #6bb6f0; animation: pulse-soft 1.4s ease-in-out infinite; }
.status-pill.status-success     { background: #d8f5dc; color: #166a25; border: 1px solid #6ed187; }
.status-pill.status-failure     { background: #ffd9d9; color: #9b1c1c; border: 1px solid #ef8585; }
.status-pill.status-other       { background: #ece9e0; color: #555;    border: 1px solid #c8c1ad; }

@keyframes pulse-soft {
  0%, 100% { opacity: 1; }
  50%      { opacity: .65; }
}

/* Live rows (queued + in-progress) — gentle highlight so they stand
   out from the static history below them. */
#deploys-table tbody tr.live {
  background: rgba(214, 236, 255, .25);
}
#deploys-table tbody tr.live:hover {
  background: rgba(214, 236, 255, .45);
}

#deploys-table .actor {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
#deploys-table .actor-avatar {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: inline-block;
}

#deploys-table .branch {
  font-family: var(--f-mono, monospace);
  font-size: 11.5px;
  color: var(--type-2, #555);
}

#deploys-table .sha {
  font-family: var(--f-mono, monospace);
  font-size: 11.5px;
}

#deploys-table .duration {
  font-variant-numeric: tabular-nums;
  color: var(--type-2, #555);
}

#deploys-table .run-link {
  font-family: var(--f-mono, monospace);
  font-size: 11.5px;
  text-decoration: none;
}
#deploys-table .run-link:hover { text-decoration: underline; }

/* Header clock — error state */
#last-refresh.error {
  color: var(--halt, #9b1c1c);
}
