/* ── Flow View — Automation Overlay (Phase 6 Arc 1) ── */

/* Gap connector element between adjacent lane columns */
.fv-lane-gap {
  flex: 0 0 72px;
  min-width: 72px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 0.25rem;
  cursor: default;
}

.fv-lane-gap--empty {
  opacity: 0.3;
}

.fv-lane-gap-arrow {
  font-size: 1.5rem;
  line-height: 1;
  color: var(--bs-primary, #0d6efd);
  margin-bottom: 0.2rem;
  user-select: none;
}

.fv-lane-gap--empty .fv-lane-gap-arrow {
  color: var(--bs-secondary, #6c757d);
}

/* Small rule-card inside the gap */
.fv-lane-gap-card {
  width: 68px;
  background: #e8f4fd;
  border: 1px solid #bee3f8;
  border-radius: 6px;
  padding: 4px 5px;
  font-size: 0.6rem;
  line-height: 1.4;
  text-align: center;
  overflow: hidden;
}

.fv-lane-gap-trigger {
  font-weight: 700;
  color: #0d6efd;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fv-lane-gap-gate {
  color: #495057;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 1px;
}

.fv-lane-gap-name {
  color: #6c757d;
  font-style: italic;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 1px;
}

/* Row of seam-jump chips, rendered below a producing lane's header */
.fv-seam-row {
  padding: 3px 8px 4px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  border-bottom: 1px solid #e3f2fd;
  flex-shrink: 0;
}

/* Seam-jump chip: "→ FlowName (mode)" */
.fv-seam-chip {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  font-size: 0.7rem;
  background: #fff3cd;
  border: 1px solid #ffc107;
  color: #664d03;
  border-radius: 10px;
  cursor: pointer;
  white-space: nowrap;
  line-height: 1.4;
  transition: background 0.15s, color 0.15s;
}

.fv-seam-chip:hover,
.fv-seam-chip:focus-visible {
  background: #ffc107;
  color: #000;
  outline: none;
}

/* ── Health overlay glows — Phase 6 Arc 1 ── */

/* Stuck: amber glow — no lane transition for >24 h, not in a terminal lane */
.fv-health--stuck {
  box-shadow: 0 0 0 2px #ffc107, 0 0 8px 3px rgba(255, 193, 7, 0.35) !important;
  border-color: #ffc107 !important;
}

/* Escalated: orange glow — blocked/on_hold status or 'escalated' label */
.fv-health--escalated {
  box-shadow: 0 0 0 2px #fd7e14, 0 0 8px 3px rgba(253, 126, 20, 0.35) !important;
  border-color: #fd7e14 !important;
}

/* Oscillating: red glow — bouncing between the same two lanes ≥2 round-trips (HC-9) */
.fv-health--oscillating {
  box-shadow: 0 0 0 2px #dc3545, 0 0 8px 3px rgba(220, 53, 69, 0.35) !important;
  border-color: #dc3545 !important;
}
