.umb-block-grid-column-editor {

    position: relative;
    width: 100%;
    --umb-block-grid-column-editor-ui-height: 22px;
    padding-bottom: 10px;

    .__grid-box {
        border: 1px solid grey;
        margin-top: var(--umb-block-grid-column-editor-ui-height);
        width: 100%;
        height: 40px;
    }

    .__column {

        position: absolute;
        top: 1px;
        height: 40px;
        pointer-events: none;
        width: 100%;
        //z-index: calc(var(--umb-block-grid--gridColumns) - var(--umb-block-grid--columnN));

        &::before {
            content: '';
            position: absolute;
            inset: 0;
            //z-index: calc(var(--umb-block-grid--gridColumns) - var(--umb-block-grid--columnN));
            transition: background-color 120ms;
            width: calc((100% / var(--umb-block-grid--gridColumns)) * (var(--umb-block-grid--columnN)));
            pointer-events:none;
        }


        > div {
            position: absolute;
            left: calc((100% / var(--umb-block-grid--gridColumns)) * (var(--umb-block-grid--columnN) - 0.5));
            top: 0;
            width: calc(100% / var(--umb-block-grid--gridColumns));
            display: flex;
            flex-direction: column;
            align-items: center;
            > span {
                display: block;
                font-size: 13px;
                font-weight: 700;
                opacity: 18%;
                height: var(--umb-block-grid-column-editor-ui-height);
                margin-top: calc(var(--umb-block-grid-column-editor-ui-height) * -1);
                transition: opacity 120ms;
            }
            .__border {
                position:absolute;
                height:40px;
                right: 50%;
                margin-right: -2px;
                width:1px;
                background-color: @blueExtraDark;
                border-left: 1px solid white;
                z-index: calc(var(--umb-block-grid--gridColumns) + 2);
                opacity: 18%;
                transition: opacity 120ms, border-left-width 120ms, right 120ms;
            }
            button {
                width: 100%;
                height:40px;
                margin-top: 3px;
                pointer-events: all;
                opacity: 18%;
                transition: opacity 120ms;
            }
        }


        &.--active {
            &::before {
                background-color: @blueExtraDark;
            }
            > div {
                .__border {
                    border-left-width: 2px;
                    opacity: 100% !important;
                }
                > span {
                    opacity: 80%;
                }
            }
            button {
                opacity: 18%;
            }
        }
        

        &:hover {
            &::before {
                z-index: calc(var(--umb-block-grid--gridColumns) + 1);
                background-color: @blueMid;
                transition-delay: 0ms;
            }
            > div {
                .__border {
                    border-left-width: 2px;
                    opacity: 50%;
                }
                > span {
                    opacity: 100%;
                }
            }
            button {
                opacity: 100%;
            }
        }

    }

}