/* css/products/powerorchestrator.css — PowerOrchestrator tint + stage timeline (Phase 9) */
:root {
  --color-powerorchestrator: #E15759; /* pipeline red */
  --orch-ok:      #2E7D32;
  --orch-fail:    #C62828;
  --orch-retry:   #EF6C00;
  --orch-neutral: #90A4AE;
}
.product-tab--powerorchestrator.active {
  border-bottom-color: var(--color-powerorchestrator);
  color: var(--color-powerorchestrator);
}
.health-card--powerorchestrator {
  border-left: 4px solid var(--color-powerorchestrator);
}

/* ---- Stage-timeline (result modal) ---- */
.orch-details { font-size: 0.95rem; }
.orch-details__title { margin: 0 0 0.5rem; font-weight: 600; }
.orch-details__title code { background: #f4f4f4; padding: 1px 5px; border-radius: 3px; }
.orch-details h6 { margin: 0.75rem 0 0.25rem; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.5px; color: #555; }

.crash-banner {
  padding: 0.5rem 0.75rem;
  border-radius: 4px;
  margin: 0.5rem 0;
}
.crash-banner--recovered { background: #FFF3E0; border-left: 3px solid var(--orch-retry); }
.crash-banner--failed    { background: #FFEBEE; border-left: 3px solid var(--orch-fail); }

.state-history {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  padding: 0;
  margin: 0;
}
.state-chip {
  font-family: ui-monospace, "Courier New", monospace;
  font-size: 0.75rem;
  padding: 2px 8px;
  border-radius: 10px;
  background: #eceff1;
  color: #37474f;
  position: relative;
}
.state-chip:not(:last-child)::after {
  content: "→";
  color: #90a4ae;
  margin-left: 0.25rem;
}
.state-chip--completed { background: #E8F5E9; color: var(--orch-ok); }
.state-chip--failed,
.state-chip--stage_failed { background: #FFEBEE; color: var(--orch-fail); }
.state-chip--retrying { background: #FFF3E0; color: var(--orch-retry); }

.stage-timeline {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 0;
  margin: 0;
}
.stage-timeline--empty { color: #888; font-style: italic; }

.stage-node {
  border: 1px solid #e0e0e0;
  border-left-width: 4px;
  border-radius: 4px;
  padding: 0.5rem 0.75rem;
  background: #fafafa;
}
.stage-node--ok      { border-left-color: var(--orch-ok); }
.stage-node--fail    { border-left-color: var(--orch-fail); }
.stage-node--retry   { border-left-color: var(--orch-retry); }
.stage-node--neutral { border-left-color: var(--orch-neutral); }

.stage-node__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 600;
  margin-bottom: 0.25rem;
}
.stage-node__type { font-family: ui-monospace, "Courier New", monospace; }
.stage-node__status { font-size: 0.8rem; color: #555; }

.stage-node__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  font-size: 0.8rem;
  color: #555;
  margin-bottom: 0.25rem;
}
.stage-node__meta code { font-family: ui-monospace, "Courier New", monospace; font-size: 0.75rem; }

.stage-producer {
  font-size: 0.85rem;
}
.stage-producer summary { cursor: pointer; color: var(--color-powerorchestrator); }
.stage-producer pre {
  background: #2d2d2d;
  color: #eee;
  padding: 0.5rem;
  border-radius: 3px;
  max-height: 220px;
  overflow: auto;
  font-size: 0.75rem;
}
.stage-producer--empty { color: #999; font-style: italic; font-size: 0.8rem; }
