.drawflow-node.selected-list .menu,
.drawflow-node.selected .menu,
.drawflow-node .block-base:hover .menu {
  @apply translate-y-11;
}

.drawflow,
.drawflow .parent-node {
  position: relative
}

.parent-drawflow {
  display: flex;
  overflow: hidden;
  touch-action: none;
  outline: none;
}

.drawflow {
  width: 100%;
  height: 100%;
  user-select: none;
  perspective: 0;
}

.drawflow .drawflow-node {
  position: absolute;
  align-items: center;
  background: white;
  min-width: 150px;
  min-height: 40px;
  z-index: 2;
  cursor: move;
  white-space: nowrap;
  @apply rounded-lg transition ring-2 ring-transparent duration-200 shadow-lg;
}

.drawflow .drawflow-node.selected,
.drawflow .drawflow-node.selected-list {
  @apply ring-accent;
}

.drawflow .drawflow-node .inputs,
.drawflow .drawflow-node .outputs {
  z-index: 20;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.drawflow .drawflow-node .inputs {
  left: -22px;
}
.drawflow .drawflow-node .outputs {
  right: -22px;
}

.drawflow .drawflow-node .drawflow_content_node {
  width: 100%;
  display: block
}

.drawflow .drawflow-node .input,
.drawflow .drawflow-node .output {
  position: relative;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  cursor: crosshair;
  z-index: 1;
  margin-bottom: 5px;
  border-width: 3px;
  @apply border-accent bg-white dark:bg-gray-900;
}

.drawflow .drawflow-node .input {
  @apply bg-accent !important;
}

.drawflow .icon-ui {
  position: relative;
}

.drawflow svg:not(.v-remixicon) {
  z-index: 0;
  position: absolute;
  overflow: visible !important
}

.drawflow .connection {
  position: absolute;
}

.drawflow .connection .main-path {
  fill: none;
  stroke-width: 5px;
  stroke: theme('colors.accent');
  transition: stroke 100ms ease-in-out;
}

.drawflow .connection .main-path:hover {
  stroke: theme('colors.yellow.300');
  cursor: pointer
}

.drawflow .connection .main-path.selected {
  stroke: theme('colors.green.300');
}

.drawflow .connection .point {
  cursor: move;
  stroke: #000;
  stroke-width: 2;
  fill: #fff;
}

.drawflow .connection .point.selected,
.drawflow .connection .point:hover {
  fill: theme('colors.blue.600');
}

.drawflow .main-path {
  fill: none;
  stroke-width: 5px;
  stroke: theme('colors.accent');
}

.drawflow-node .drawflow-delete {
  display: none !important;
}

.drawflow-delete {
  position: absolute;
  display: block;
  width: 20px;
  height: 20px;
  @apply bg-red-500;
  color: #fff;
  z-index: 4;
  line-height: 20px;
  font-weight: 700;
  text-align: center;
  border-radius: 50%;
  font-family: monospace;
  cursor: pointer;
  text-transform: uppercase;
}

.drawflow>.drawflow-delete {
  margin-left: -15px;
  margin-top: 15px
}

.parent-node .drawflow-delete {
  right: -15px;
  top: -15px
}
