:root {
    --size: 6px;
    --c1: #e8e8e8;
    --c2: #f5f5f5;
}

.plain {
    background-color: #e8e8e8;
}

.checker {
    width: 300px;
    height: 200px;
    background: conic-gradient( from 0deg, var(--c1) 0 25%, var(--c2) 0 50%, var(--c1) 0 75%, var(--c2) 0 );
    background-size: calc(var(--size) * 2) calc(var(--size) * 2);
}

.order-grid {
    --order-title-height: 3rem;

    display: flex;
    flex-direction: column;
    height: 100vh;
}
    .order-grid img.logo-new-order {
        vertical-align: top;
        max-height: var(--order-title-height);
        margin-right: 50px;
    }

    .order-grid * {
        font-size: 0.85rem !important;
        border-radius: 0.2rem;
    }

    .order-grid .order-item-detail {
        z-index: 999;
        width: 100%;
        overflow: auto;
        flex: 1 1 auto;
        width: 100vw;
        padding: 15px 15px 50px 15px;
        display: none;
    }

    .order-grid .order-header {
        height: fit-content;
        background: #f6f6f6;
        padding: 0.5rem;
        border: 0.05rem solid #ccc;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        row-gap: 0.8rem;
        flex: 0 0 auto; /* fit-content */
    }

        .order-grid .order-header .order-header-title {
            display: flex;
            flex-direction: row;
            row-gap: 1rem;
        }

            .order-grid .order-header .order-header-title .order-title {
                flex: 1;
                font-size: 1.5rem !important;
                font-weight: bold;
                /*text-transform: uppercase;*/
                line-height: var(--order-title-height);
            }

            .order-grid .order-header .order-header-title .order-buttons {
                width: fit-content;
                font-size: 1.5rem !important;
                font-weight: bold;
                text-transform: uppercase;
            }

        .order-grid .order-header .order-filter-tags {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            gap: 0.3rem;
        }

            .order-grid .order-header .order-filter-tags .order-filter-tag {
                padding: 0 5px;
                width: fit-content;
                background-color: #e0e0e0;
                border-radius: 5px;
                font-size: 90% !important;
                white-space: nowrap;
                max-width: 50px;
                text-overflow: ellipsis;
            }

                .order-grid .order-header .order-filter-tags .order-filter-tag i {
                    font-size: 60% !important;
                    font-weight: normal;
                    color: #555;
                    line-height: 0;
                    float: right;
                    margin-top: 11px;
                    margin-left: 10px;
                }

        .order-grid .order-header .order-filters {
            display: none;
        }

        .order-grid .order-header:hover .order-filters {
            display: grid;
            grid-template-columns: repeat(6, 1fr);
            gap: 1rem;
        }

            .order-grid .order-header .order-filters .order-filter {
                display: flex;
                flex-direction: column;
            }

                .order-grid .order-header .order-filters .order-filter span.ui-widget {
                    width: 100%;
                    box-sizing: border-box;
                }

                .order-grid .order-header .order-filters .order-filter label {
                    font-size: 0.8rem !important;
                    margin: 0;
                }

    .order-grid .order-body {
        overflow: auto;
        flex: 1 1 auto; /* full */
    }

        .order-grid .order-body .order-content-title {
            height: fit-content;
            font-size: 2rem !important;
            margin: 3.5rem 1rem 1rem 1rem;
            font-weight: bold;
            text-transform: uppercase;
            overflow: hidden;
        }

        .order-grid .order-body .order-content {
            flex: 1;
            display: flex;
            flex-direction: row;
            column-gap: 1rem;
        }

            .order-grid .order-body .order-content .order-cover {
                width: 25%;
                overflow: hidden;
                border: 0.05rem solid #ccc;
                background-color: #f6f6f6;
            }

                .order-grid .order-body .order-content .order-cover .order-cover-image {
                    width: 100%;
                    border-bottom: 0.1rem solid #ccc;
                }

            .order-grid .order-body .order-content .order-items {
                flex: 1;
                display: grid;
                gap: 1rem;
                grid-template-columns: repeat(6, 1fr);
            }

                .order-grid .order-body .order-content .order-items .order-item {
                    background: #f6f6f6;
                    text-align: center;
                    border-top: 0.05rem solid #ccc;
                    border-right: 0.05rem solid #ccc;
                    border-bottom: 0.05rem solid #ccc;
                    border-left: 0.05rem solid #ccc;
                    height: 35.4rem;
                    position: relative;
                }

                    .order-grid .order-body .order-content .order-items .order-item:hover {
                        box-shadow: 0 0 10px #aaa;
                        cursor: pointer;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .nothing {
                        color: #ccc;
                    }

                    .order-grid .order-body .order-content .order-items .order-item > div.order-banner {
                        padding: 0 0.31rem;
                        background-color: white;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-image-container {
                        position: absolute;
                        top: 0;
                        left: 0;
                        width: 100%;
                        height: 22rem;
                        position: relative;
                        overflow: hidden;
                        border-top-left-radius: 0;
                        border-bottom-left-radius: 0;
                        border-bottom-right-radius: 0;
                    }

                        .order-grid .order-body .order-content .order-items .order-item .order-item-image-container img {
                            width: 100%;
                            height: 100%;
                            object-fit: contain; /* mantiene proporzioni senza tagliare */
                        }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-thumbnails {
                        position: absolute;
                        top: 22.5rem;
                        left: 0;
                        height: 3.75rem;
                        display: flex;
                        flex-direction: row;
                        gap: 0.31rem;
                        width: 100%;
                    }

                        .order-grid .order-body .order-content .order-items .order-item .order-item-thumbnails .thumbnails-arrow-left,
                        .order-grid .order-body .order-content .order-items .order-item .order-item-thumbnails .thumbnails-arrow-right {
                            width: fit-content;
                            line-height: 3.75rem;
                            width: 0.5rem;
                            font-weight: bold;
                            cursor: pointer;
                            border: 0;
                        }

                            .order-grid .order-body .order-content .order-items .order-item .order-item-thumbnails .thumbnails-arrow-left:hover,
                            .order-grid .order-body .order-content .order-items .order-item .order-item-thumbnails .thumbnails-arrow-right:hover {
                                background-color: #ccc;
                            }

                        .order-grid .order-body .order-content .order-items .order-item .order-item-thumbnails .thumbnails-container {
                            width: calc(100% - 2.5rem);
                            display: flex;
                            flex-direction: row;
                            gap: 0.625rem;
                            overflow: hidden;
                        }

                            .order-grid .order-body .order-content .order-items .order-item .order-item-thumbnails .thumbnails-container div {
                                height: 100%;
                                min-width: 2.5rem;
                                background-color: #fefefe;
                                line-height: 3.75rem;
                            }

                                .order-grid .order-body .order-content .order-items .order-item .order-item-thumbnails .thumbnails-container div img {
                                    width: 100%;
                                    height: 100%;
                                    object-fit: contain; /* mantiene proporzioni senza tagliare */
                                }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-title {
                        position: absolute;
                        top: 26.5rem;
                        font-size: 1.1rem !important;
                        font-weight: 600;
                        color: #555;
                        padding: 0.8rem;
                        text-align: left;
                        height: 3.75rem;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-details {
                        position: absolute;
                        top: 30.5rem;
                        display: flex;
                        flex-direction: row;
                        gap: 0.625rem;
                        color: #555;
                        padding: 0 0.8rem 0.2rem 0.8rem;
                        width: 100%;
                        border-radius: 0;
                        border-bottom: 1px solid #ccc;
                    }

                        .order-grid .order-body .order-content .order-items .order-item .order-item-details .order-item-product-code {
                            width: fit-content;
                            text-align: left;
                            font-size: 85% !important;
                        }

                        .order-grid .order-body .order-content .order-items .order-item .order-item-details .order-item-product-size {
                            padding: 0;
                            text-align: right;
                            flex: 1;
                            width: 100%;
                            font-size: 85% !important;
                        }

                            .order-grid .order-body .order-content .order-items .order-item .order-item-details .order-item-product-size span {
                                display: inline-block;
                                padding: 0 0.125rem;
                                border: 0.05rem solid #ccc;
                                min-width: 1rem;
                                font-size: 110% !important;
                                text-align: center;
                            }

                    .order-grid .order-body .order-content .order-items .order-item hr {
                        position: absolute;
                        top: 36.25rem;
                        border: 0.05rem solid #ddd;
                        margin: 0 0.625rem;
                        box-sizing: border-box;
                        width: 100%;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-season {
                        position: absolute;
                        top: 0.8rem;
                        left: 0.8rem;
                        border: 0.05rem solid #ccc;
                        width: fit-content;
                        height: 1.25rem;
                        white-space: nowrap;
                        overflow: hidden;
                        max-width: 50%;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-discount {
                        position: absolute;
                        top: 0.85rem;
                        right: 0.8rem;
                        border: 0.05rem solid #ccc;
                        width: fit-content;
                        height: 1.25rem;
                        text-align: center;
                        min-width: 2.5rem;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-box {
                        position: absolute;
                        top: 2.5rem;
                        right: 0.8rem;
                        border: 0.05rem solid #ccc;
                        width: fit-content;
                        height: 1.25rem;
                        text-align: center;
                        min-width: 2.5rem;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-lprice {
                        position: absolute;
                        bottom: 2.1rem;
                        right: 0.8rem;
                        border: 0.05rem solid #ccc;
                        width: 5rem;
                        height: 1.25rem;
                        text-decoration: line-through;
                        color: #888;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-price {
                        position: absolute;
                        bottom: 0.8rem;
                        right: 0.8rem;
                        border: 0.05rem solid #ccc;
                        width: 5rem;
                        height: 1.25rem;
                        font-weight: bold;
                    }

                    .order-grid .order-body .order-content .order-items .order-item .order-item-other {
                        position: absolute;
                        bottom: 0.8rem;
                        left: 0.8rem;
                        border: 0.05rem solid #ccc;
                        width: 5rem;
                        height: 1.25rem;
                    }

                    .order-grid .order-body .order-content .order-items .order-item > .order-item-other.order-qta {
                        color: #aaa;
                    }

                    .order-grid .order-body .order-content .order-items .order-item > .order-item-other.order-qta.active {
                        background-color: var(--row-order-selected);
                        color: white;
                    }




/* Quando lo spazio orizzontale non č pių sufficiente viene cambiato il numero di colonnne */
/* Quando non basta per 6 si passa a 4 */
@media (max-width: 146.875rem) {
    .order-grid .order-body .order-content .order-items {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* Quando non basta per 4 si passa a 3 */
@media (max-width: 109.375rem) {
    .order-grid .order-body .order-content .order-items {
        grid-template-columns: repeat(3, 1fr);
    }

    .order-grid .order-body .order-header .order-filters {
        grid-template-columns: repeat(4, 1fr);
        gap: 0.625rem;
    }

    .order-grid .order-body .order-content .order-cover {
        width: 35%;
    }
}

/* Quando non basta per 3 si passa a 2 */
@media (max-width:86.375rem) {
    .order-grid .order-body .order-content .order-items {
        grid-template-columns: repeat(2, 1fr);
    }

    .order-grid .order-body .order-header .order-filters {
        grid-template-columns: repeat(4, 1fr);
        gap: 0.625rem;
    }

    .order-grid .order-body .order-content .order-cover {
        width: 35%;
    }
}

/* Quando non basta per 2 si passa a 1 */
@media (max-width: 59.375rem) {
    .order-grid .order-body .order-content .order-items {
        grid-template-columns: 1fr;
    }

    .order-grid .order-body .order-header .order-filters {
        grid-template-columns: repeat(2, 1fr);
    }


    .order-grid .order-body .order-content .order-cover {
        width: 45%;
    }

    .order-grid .order-body .order-content-title {
        font-size: 1.5rem !important;
    }
}

/* Nasconde cover */
@media (max-width: 37.5rem) {
    .order-grid .order-body .order-content .order-cover {
        display: none;
    }
}
