html,
body {
    margin: 0;
    padding: 0;
    background-color: #fff;
    height: 100%;
    width: 100%;
    overflow: hidden;
    cursor: none
}

#root {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0
}

.webgl-wrapper {
    z-index: 0;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    overflow: clip;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    contain: strict
}

.webgl-canvas {
    outline: none
}

#css-container {
    position: absolute;
    top: 0%
}

.StateTable-container {
    position: absolute;
    top: 25vmin;
    right: 0%;
    height: 50vmin;
    width: 3rem;
    margin: 0vmin 2% 0% 0%;
    justify-content: center;
    display: flex;
    align-items: center
}

.StateTable-container .StateTable-content {
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly
}

.StateTable-container .StateTable-content .backgroundLine {
    position: absolute;
    height: 100%;
    width: 1px;
    background-color: #ffffffa0
}

.StateTable-container .StateTable-content .item {
    position: relative;
    right: calc(.25rem - .5px);
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    background-color: #fff
}

.StateTable-container .StateTable-content .item .item-Line {
    content: "";
    position: absolute;
    top: -3px;
    left: -3px;
    width: calc(.5rem + 6px);
    height: calc(.5rem + 6px);
    border-radius: 50%;
    box-shadow: 0 0 0 1px #ff9245
}

.StateTable-container .StateTable-content .item .tableName {
    -webkit-user-select: none;
    user-select: none;
    position: relative;
    height: 1rem;
    width: 1rem;
    top: -4px;
    left: -2rem;
    color: #ccc;
    display: flex;
    flex-direction: row-reverse;
    align-items: center
}

.StateTable-container .StateTable-content .item .tableName div {
    font-size: .7rem;
    white-space: nowrap;
    transition: all .3s
}

.StateTable-container .StateTable-content .item .clickBox {
    position: absolute;
    top: -1.25rem;
    left: -3.5rem;
    height: 3rem;
    width: 5rem
}

#preloader {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 40px;
    color: azure;
    background-color: #000
}

#preloader .progress-bar {
    position: relative;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-around
}

#preloader .progress-bar .progress-bar-svg {
    position: relative;
    left: -5vmin;
    top: -5vmin;
    height: 25vmin
}

#preloader .progress-bar .speed-line-bg {
    stroke-linejoin: round;
    stroke-linecap: round;
    stroke-width: 8px;
    stroke: #ccc;
    fill: none
}

#preloader .progress-bar .speed-line {
    fill: url(#linear_0);
    opacity: 100
}

#preloader .progress-num {
    font-size: 5vmin;
    position: absolute;
    color: #fff
}

.version {
    z-index: 10;
    top: 1%;
    left: 1%;
    font-size: 1vmin;
    position: absolute;
    color: #fff
}

.TopInfo-container {
    position: absolute;
    top: 0%;
    width: 100%;
    margin-top: 5vmin;
    transition: all .5s;
    pointer-events: none
}

.TopInfo-container .TopInfo-content {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #fff
}

.TopInfo-container .TopInfo-content .addon {
    position: absolute;
    bottom: -15vmin;
    left: 6rem;
    width: 10vmin;
    height: 10vmin;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 2.5vmin
}

.TopInfo-container .TopInfo-content .addon div {
    white-space: nowrap;
    margin-top: 1vmin;
    color: #fff;
    display: flex
}

.ColorBar-container {
    position: absolute;
    bottom: 0%;
    width: 100%;
    pointer-events: none;
    display: flex;
    justify-content: space-evenly
}

.ColorBar-container .ColorBar-content {
    position: relative;
    margin-bottom: 5vmin;
    height: 2.8rem;
    background-color: #ccc3;
    border-radius: 1.5rem;
    display: flex;
    align-items: center
}

.ColorBar-container .ColorBar-content .Bar {
    pointer-events: all;
    position: relative;
    margin: .5rem;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-size: 100% 100%
}

.ColorBar-container .ColorBar-content .Bar .Bar-Line {
    position: absolute;
    top: -3px;
    left: -3px;
    width: calc(2rem + 6px);
    height: calc(2rem + 6px);
    border-radius: 50%;
    box-shadow: 0 0 0 1px #fff
}

#custom-cursor {
    position: absolute;
    width: 2rem;
    height: 2rem;
    pointer-events: none;
    z-index: 9999;
    display: none;
    transform: translate(-1rem, -1rem);
    display: flex;
    align-items: center;
    justify-content: space-evenly
}

#custom-cursor #custom-cursor-inner {
    position: absolute;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #fff;
    transition: all .5s
}

#custom-cursor #custom-cursor-outer {
    position: absolute;
    width: 2rem;
    height: 2rem;
    box-shadow: 0 0 0 .5px #fff;
    border-radius: 50%;
    transition: all .5s
}

.Logo-container {
    position: absolute;
    top: 5vmin;
    right: 5vmin;
    margin-bottom: 5vmin;
    margin-left: 5vmin;
    height: 2.8rem;
    border-radius: 1.4rem;
    -webkit-user-select: none;
    user-select: none
}

.Logo-container .Logo-content {
    margin: 0rem 1rem;
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    font-size: .7rem;
    color: #fff;
    transition: all .2s
}

.Logo-container .Logo-content:hover {
    font-size: .9rem
}