.vue-flow__selection {
  background: rgba(0, 89, 220, 0.08);
  border: 1px dotted rgba(0, 89, 220, 0.8);
}

.vue-flow__edge {
  &.selected {
    .vue-flow__edge-path {
      stroke: #555;
    }
  }

  &.animated path {
    stroke-dasharray: 5;
    animation: dashdraw 0.5s linear infinite;
  }

  &.updating {
    .vue-flow__edge-path {
      stroke: #777;
    }
  }
}

.vue-flow__edge-path {
  stroke: #b1b1b7;
  stroke-width: 1;
}

.vue-flow__edge-text {
  font-size: 10px;
}

.vue-flow__edge-textbg {
  fill: white;
}

.vue-flow__connection-path {
  stroke: #b1b1b7;
  stroke-width: 1;
}

.vue-flow__node {
  cursor: grab;
}

.vue-flow__node-default,
.vue-flow__node-input,
.vue-flow__node-output {
  padding: 10px;
  border-radius: 3px;
  width: 150px;
  font-size: 12px;
  color: #222;
  text-align: center;
  border-width: 1px;
  border-style: solid;
}

.vue-flow__node-default.selectable,
.vue-flow__node-input.selectable,
.vue-flow__node-output.selectable {
  &:hover {
    box-shadow: 0 1px 4px 1px rgba(0, 0, 0, 0.08);
  }
}

.vue-flow__node-input {
  background: #fff;
  border-color: #0041d0;

  &.selected,
  &.selected:hover {
    box-shadow: 0 0 0 0.5px #0041d0;
  }

  .vue-flow__handle {
    background: #0041d0;
  }
}

.vue-flow__node-default {
  background: #fff;
  border-color: #1a192b;

  &.selected,
  &.selected:hover {
    box-shadow: 0 0 0 0.5px #1a192b;
  }

  .vue-flow__handle {
    background: #1a192b;
  }
}

.vue-flow__node-output {
  background: #fff;
  border-color: #ff0072;

  &.selected,
  &.selected:hover {
    box-shadow: 0 0 0 0.5px #ff0072;
  }

  .vue-flow__handle {
    background: #ff0072;
  }
}

.vue-flow__nodesselection-rect {
  background: rgba(0, 89, 220, 0.08);
  border: 1px dotted rgba(0, 89, 220, 0.8);
}

.vue-flow__handle {
  position: absolute;
  width: 6px;
  height: 6px;
  background: #555;
  border: 1px solid white;
  border-radius: 100%;

  &.connectable {
    cursor: crosshair;
  }
}

.vue-flow__minimap {
  background-color: #fff;
}

.vue-flow__controls {
  box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.08);

  &-button {
    background: #fefefe;
    border-bottom: 1px solid #eee;
    box-sizing: content-box;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16px;
    height: 16px;
    cursor: pointer;
    user-select: none;
    padding: 5px;

    svg {
      max-width: 12px;
      max-height: 12px;
    }

    &:hover {
      background: #f4f4f4;
    }
  }
}
