/* card-renderer-extended.css · Blocco 1 · 25-apr-2026 ·
 * Companion CSS append-only di card-renderer.css Day 4.5b (sigillato §3.4).
 *
 * Definisce solo i pattern *davvero nuovi* introdotti dalle 4 card extended:
 *   - mini-bolle inline (.nx-card-rich-x__bolle, .nx-card-rich-x__bolla)
 *   - workflow chain orizzontale (.nx-card-rich-x__wf-chain, ...__wf-step)
 *
 * Tutte le altre classi (.nx-card-rich__header, ...__stats, ...__tabs, ...)
 * sono ereditate dal CSS base.
 */

/* ─── Mini-bolle stile grafo inline ─────────────────────────── */

.nx-card-rich-x__bolle {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.nx-card-rich-x__bolla {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px 5px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.65);
  border: 1px solid rgba(0, 0, 0, 0.08);
  cursor: pointer;
  font-size: 12px;
  font-family: var(--nx-font, "DM Sans", "Inter Tight", system-ui);
  color: #11253F;
  transition: transform 140ms cubic-bezier(.2, .8, .2, 1), background 140ms ease;
}

.nx-card-rich-x__bolla:hover {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.92);
}

.nx-card-rich-x__bolla-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}

/* ─── Workflow chain orizzontale ────────────────────────────── */

.nx-card-rich-x__wf-chain {
  display: flex;
  align-items: stretch;
  gap: 0;
  margin: 0 0 16px;
  padding: 12px 0;
  overflow-x: auto;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.nx-card-rich-x__wf-step {
  flex: 1 0 auto;
  min-width: 130px;
  padding: 10px 14px;
  margin-right: 6px;
  background: rgba(255, 255, 255, 0.6);
  border-radius: 8px;
  border-left: 3px solid var(--card-accent, #C9A373);
  position: relative;
}

.nx-card-rich-x__wf-step.is-completed {
  opacity: 0.65;
  background: rgba(155, 201, 168, 0.18);
  border-left-color: #9BC9A8;
}

.nx-card-rich-x__wf-step.is-attivo,
.nx-card-rich-x__wf-step.is-active {
  background: rgba(201, 163, 115, 0.22);
  border-left-color: #C9A373;
  box-shadow: 0 2px 8px rgba(201, 163, 115, 0.18);
}

.nx-card-rich-x__wf-step.is-bloccato,
.nx-card-rich-x__wf-step.is-blocked {
  background: rgba(208, 138, 114, 0.18);
  border-left-color: #D08A72;
}

.nx-card-rich-x__wf-step.is-attesa,
.nx-card-rich-x__wf-step.is-pending {
  opacity: 0.78;
}

.nx-card-rich-x__wf-num {
  font-family: var(--nx-mono, "IBM Plex Mono", monospace);
  font-size: 10px;
  color: rgba(17, 37, 63, 0.5);
  letter-spacing: 1px;
  margin-bottom: 4px;
}

.nx-card-rich-x__wf-name {
  font-size: 13px;
  font-weight: 500;
  color: #11253F;
  margin-bottom: 2px;
  line-height: 1.3;
}

.nx-card-rich-x__wf-status {
  font-size: 11px;
  color: rgba(17, 37, 63, 0.6);
  font-style: italic;
}
