.flex-stage {
  min-height: 280px;
  border: 2px dashed var(--border-strong);
  border-radius: var(--radius);
  background: var(--bg-muted);
  padding: 12px;
  margin-bottom: 16px;
  overflow: auto;
}
.flex-item {
  background: var(--primary);
  color: #fff;
  font-weight: 700;
  border-radius: 8px;
  padding: 16px;
  min-width: 48px;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: grab;
  user-select: none;
  touch-action: none;
}
.flex-item:active { cursor: grabbing; }
.flex-item.is-dragging { opacity: 0.6; }
.controls-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 12px;
  margin-bottom: 12px;
}
.css-out { font-family: var(--font-mono); font-size: 0.8rem; min-height: 140px; }
