.navbar-brand > .df-logo > img,
.navbar-menu-header > .df-logo > img {
    max-height: 30px;
}

.collapser {
    transform-origin: top center;
    transform: scaleY(0);
    transition: transform 0.2s linear;
    max-height: 0px;
    overflow: hidden;
}

.collapser.show {
    transform: scaleY(1);
    max-height: fit-content;
}

.network-visualizer {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 600px;
    overflow: auto;
}

.network-visualizer .network-row {
    position: relative;
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    padding-top: 2rem;
    padding-bottom: 2rem;
    flex-wrap: wrap;
}

.network-visualizer .network-row:nth-child(1)::after {
    content: "";
    position: absolute;
    bottom: 0px;
    width: calc(50% + 2px);
    border-bottom: 2px solid #753aba;
}

.network-visualizer .network-row:nth-child(2)::after {
    content: "";
    position: absolute;
    bottom: 0px;
    left: calc(12.5% - 1px);
    width: calc(25% + 2px);
    border-bottom: 2px solid #753aba;
}

.network-visualizer .network-row:nth-child(2)::before {
    content: "";
    position: absolute;
    bottom: 0px;
    right: calc(12.5% - 1px);
    width: calc(25% + 2px);
    border-bottom: 2px solid #753aba;
}

.network-visualizer .network-column {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    flex: 1;
}

.network-visualizer .network-column::after {
    content: "";
    position: absolute;
    top: 0px;
    width: 2px;
    height: 2rem;
    border-left: 2px solid #753aba;
}

.network-visualizer .network-column::before {
    content: "";
    position: absolute;
    bottom: 0px;
    width: 2px;
    height: 2rem;
    border-left: 2px solid #753aba;
}

.network-visualizer .network-row:nth-child(1) .network-column::after {
    bottom: 0px;
    top: initial;
}

.network-visualizer .network-row:last-child .network-column::before {
    content: "";
    position: absolute;
    bottom: 0px;
    width: 0px;
    height: 0rem;
}

.network-visualizer .network-frame.no-user {
    cursor: not-allowed !important;
    opacity: 0.25;
}
.network-visualizer .network-frame .user-name {
    font-weight: bold;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 0.25rem 0.25rem;
}

.network-visualizer .image-placeholder {
    width: 110px;
    height: 120px;
    border-radius: 0.25rem;
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #090909;
}
