#weave_grid {
    display: flex;
    justify-content: center;

    table {
        width: unset;
    }

    &.loading {
        table {
            display: none;
        }

        &:before {
            content: "Chargement en cours...";
        }
    }

    td {
        color: transparent;
        background-size: cover;
        cursor: pointer;
        transition: all 0.3s ease;
        font-size: 0;

        &.highlight {
            background-color: rgba(0, 0, 0, 0.05);
        }

        &:not([data-weave]) {
            border: 1px solid #efefef !important;
        }

        &[data-weave] {
            border: none;
            position: relative;
            border: none !important;

            &.vertical {
                &:before {
                    content: "";
                    position: absolute;
                    height: 5px;
                    top: 0;
                    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 100%);
                    left: 0;
                    right: 0;
                }

                &:after {
                    content: "";
                    position: absolute;
                    height: 5px;
                    bottom: 0;
                    left: 0;
                    right: 0;
                    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.1) 100%);
                }

            }

            &.horizontal {
                &:before {
                    content: "";
                    position: absolute;
                    width: 5px;
                    left: 0;
                    top: 0;
                    bottom: 0;
                    background: linear-gradient(to right, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 100%);
                    ;
                }

                &:after {
                    content: "";
                    position: absolute;
                    width: 5px;
                    bottom: 0;
                    right: 0;
                    top: 0;
                    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.1) 100%);
                    ;
                }

            }
        }


    }
}

#toolbox {
    position: fixed;
    top: var(--top);
    left: var(--left);
    background: #fff;
    z-index: 100;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
    border-radius: var(--bs-border-radius);
    overflow: hidden;
    width: 300px;
    height: 450px;
    display: none;
    border-radius: .25rem;
    flex-flow: column;
    z-index: 9999;

    &.on {
        display: flex;
    }

    .header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 1rem;
        background-color: #efefef;

        h4 {
            margin: 0;
        }
    }

    ul {
        border-radius: 0;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-left: 0;
        margin-top: 0;
        margin-bottom: 0;

        li {
            border-left: none;
            border-right: none;
            display: flex;
            align-items: center;
            justify-content: space-between;
            align-items: center;
            position: relative;
            display: flex;
            padding: .75rem 1.25rem;
            margin: 0 0 -1px 0;
            background-color: #fff;
            border: 1px solid rgba(0, 0, 0, .125);
            cursor: pointer;

            &:last-child {
                margin-bottom: 0;
            }

            img {
                width: 100px;
                height: 15px;
                object-fit: cover;
            }
        }
    }

    .list {
        overflow: auto;
        width: 100%;
    }
}

#capture {
    display: none;
}

#compoGroup {
    display: none;

    &.on {
        display: flex;
    }

    button {
        display: flex;
        align-items: center;
    }
}

.shadow-0 {
    box-shadow: none !important;
}

/* .spinner-border {
    display: inline-block;
    width: 1rem;
    height: 1rem;
    vertical-align: -.125em;
    border: .2em solid currentcolor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: .75s linear infinite spinner-border;
    margin-left: 0.5rem;
}

@keyframes spinner-border {
    to {
        transform: rotate(360deg);
    }
} */