:root {
    --border-color: #cacaca;
    --background-color: #fff;
}

body {
    overflow: auto !important;
}

#drawflow {
    position: relative;
    height: 100vh;
    width: 100%;
    top: 0 !important;
    background: var(--background-color);
    background-size: 25px 25px;
    background-image:
        linear-gradient(to right, #f1f1f1 1px, transparent 1px),
        linear-gradient(to bottom, #f1f1f1 1px, transparent 1px);
}

.drawflow .drawflow-node {
    background: var(--background-color);
    border: 1px solid var(--border-color);
    -webkit-box-shadow: 0 2px 15px 2px var(--border-color);
    box-shadow: 0 2px 15px 2px var(--border-color);
    padding: 0px;
    width: 225px;
}

.drawflow .drawflow-node.selected {
    background: white;
    border: 1px solid #4ea9ff;
    -webkit-box-shadow: 0 2px 20px 2px #4ea9ff;
    box-shadow: 0 2px 20px 2px #4ea9ff;
}

.drawflow .drawflow-node.selected .title-box {
    color: #22598c;
}

.drawflow .connection .main-path {
    stroke: #4ea9ff;
    stroke-width: 3px;
}

.drawflow .drawflow-node .input,
.drawflow .drawflow-node .output {
    height: 15px;
    width: 15px;
    border: 2px solid var(--border-color);
}

.drawflow .drawflow-node .input:hover,
.drawflow .drawflow-node .output:hover {
    background: #4ea9ff;
}

.drawflow .drawflow-node .output {
    right: 10px;
}

.drawflow .drawflow-node .input {
    left: -10px;
    background: white;
}

.drawflow>.drawflow-delete {
    border: 2px solid #43b993;
    background: white;
    color: #43b993;
    -webkit-box-shadow: 0 2px 20px 2px #43b993;
    box-shadow: 0 2px 20px 2px #43b993;
}

.drawflow-delete {
    border: 2px solid #4ea9ff;
    background: white;
    color: #4ea9ff;
    -webkit-box-shadow: 0 2px 20px 2px #4ea9ff;
    box-shadow: 0 2px 20px 2px #4ea9ff;
    line-height: 25px !important;
}

.drawflow-node .title-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 10px !important;
    height: 50px;
    line-height: 50px;
    background: #f7f7f7;
    border-bottom: 1px solid #e9e9e9;
    border-radius: 4px 4px 0px 0px;
}

.drawflow .title-box svg {
    position: initial;
}

.drawflow-node .box {
    padding: 10px 20px 20px 20px;
    font-size: 14px;
    color: #555555;
}

.drawflow .connection .point {
    stroke: var(--border-color);
    stroke-width: 2;
    fill: white;
}

.drawflow .connection .point.selected,
.drawflow .connection .point:hover {
    fill: #4ea9ff;
}

#jsonOutput {
    background: #222;
    color: #0f0;
    padding: 10px;
    margin: 0;
    height: 150px;
    overflow: auto;
}