* {
    margin: 0;
    padding: 0;
}
.flowChart {
    /*background-color: rgb(245, 245, 245);*/
    padding: 12px;
    height: 460px;
   /* width: max-content;*/
}
.flowChart .solid {
    width: 200px;
    border-top-style: solid;
    border-top-color: gainsboro;
    border-top-width: 2px;
    position: absolute;

}
.flowChart .oneNode {
    display: flex;
    position: relative;
    height: 230px;
    width: 150px;
    float: left;
}
.flowChart .check {
    width: 20px;
    height: 20px;
    border-radius: 50px;
    line-height: 40px;
    color: white;
    font-size: 12px;
    text-align: center;
    position: absolute;
    left: 50%;
    flex-shrink: 0;
    transform: translate(-50%,0);
    background-color: rgb(125, 122, 117);
    border: 4px solid rgb(173,168,163);
}
.tag-boder {
    width: 2px;
    height: 55px;
    background: gainsboro;
    position: absolute;
    left: 50%;
    transform: translate(-50%,-50%);
}
.flowChart .NodeDetail {
    background-color: white;
    width: 15px;
    height: 15px;
    flex-grow: 1;
    border: 5px solid gainsboro;
    border-radius: 164px;
    display: flex;
    position: absolute;
    transform: translate(-50%,0);
    left: 50%;
    box-shadow: 1px 1px 10px gainsboro;
}
.NodeDetail-content {
    width: 124px;
    height: 124px;
    font-size: 12px;
    padding: 0;
    position: absolute;
    transform: translate(-50%,0);
}
.BadgeGray {
    background-color: rgb(104, 108, 104);
}

.upNode{

}
.bottomNode{
    top: 52%;
}
.upNode .NodeDetail{
    top: 66%;
}
.upNode .check{
    top: 95%;
}
.upNode .tag-boder{
    top: 84%;
}
.upNode .solid{
    bottom: 0;
}

.bottomNode .NodeDetail{
    top: 29%;
}
.bottomNode .check{
    top: -4%;
}
.bottomNode .tag-boder{
    top: 18%;
}
.bottomNode .solid{
    top: 0.5%;
}
.upNode .NodeDetail-content{
    transform: translate(-50%,-50%);
    text-align: center;
}
.NodeDetail-content{color:#cccccc;}
.bottomNode .NodeDetail-content{
    transform: translate(-50%,10%);
    text-align: center;
}

.startNode{
    width: 10px;
    height: 10px;
    border-radius: 10px;
    color: white;
    font-size: 12px;
    position: relative;
    right: 0;
    float: left;
    top: 224px;
    flex-shrink: 0;
    background-color: rgb(234, 234, 234);
    border: 2px solid rgb(220, 220, 220);
}
.endNode {
    width: 0;
    height: 0;
    border: 10px solid;
    border-style: dashed;
    border-color: transparent transparent transparent gainsboro;
    position: relative;
    float: left;
    top: 221px;
}

.NodeDetail:hover::before {
    content: attr(data-title);    /*取到data-title属性的值*/
    display: block;
    height: auto;
    width: 250px;
    padding: 10px 14px;
    font-size: 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background: #DEDEDE;
    position: absolute;
    top: -20px;
    left: -50px;
    z-index: 999;
}


.flowChart .check-success {
    background-color: rgb(87, 194, 64);
    border: 4px solid rgba(198, 228, 177,0.9);
}
.flowChart .check-danger {
    background-color: rgb(228,108,35);
    border: 4px solid rgb(250, 166, 122);
}
.flowChart .check-prime {
    background-color: rgb(0, 136, 165);
    border: 4px solid rgb(88, 191, 243);
}
.flowChart .check-warning {
    background-color: rgb(248, 144,2);
    border: 4px solid rgba(255, 208, 122,1);
}
