.w_product_mini{
    width: var(--width, 100%);
    padding: 2px;

    transition: 0.3s ease all;
    &:hover{
        -webkit-box-shadow: 0px 0px 3px 2px rgba(50, 50, 50, 0.25);
        -moz-box-shadow: 0px 0px 3px 2px rgba(50, 50, 50, 0.25);
        box-shadow: 0px 0px 3px 2px rgba(50, 50, 50, 0.25);
    }

    :has(.text_gradient){
        position: relative;
        height: var(--heigth);
        padding-top: 3px;
        overflow: hidden;
    }

    .product_image{
        width: 100%;
        text-decoration: none;

        display: block;
        margin-bottom: 2px;
        img{
            width: 100%;
            height: 100px;
            object-fit: cover;
            object-position: center;
        }
    }

    .product_name{
        /* --heigth: 38px; */
        --n_width: calc(var(--width, 100%) - 4px);
        overflow: hidden;

        width: var(--n_width);
        height: 36px;
        /* height: var(--heigth); */

        font-size: 14px;
        font-weight: 600;
        color: #0096cd;
        line-height: 18px;
        text-decoration: none;
        text-overflow: ellipsis;
        margin-bottom: 5px;

        display: -webkit-box;

        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;

        transition: 0.3s ease all;
        &:hover{
            color: #000;
        }
    }

    .authors{
        --height: 17px;
        height: 17px;
        color: #303030;
        font-size: 12px;
        white-space: nowrap;
    }

    .publishers_info{
        color: #657170;
        font-size: 12px;
        margin-bottom: 6px;
        height: 35px;
    }

    .text_gradient{
        background: -moz-linear-gradient(left, rgba(255, 255, 255, 0.2), #fff 100%);
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.2), #fff 100%);
        background: -o-linear-gradient(left, rgba(255, 255, 255, 0.2), #fff 100%);
        background: -ms-linear-gradient(left, rgba(255, 255, 255, 0.2), #fff 100%);
        background: linear-gradient(to right, rgba(255, 255, 255, 0.2), #fff 100%);

        position: absolute;
        right: 0;
        top: 0;
        width: 25px;
        height: 100%;
    }

    .product_control_panel{
        display: grid;
        grid-template-columns: calc(100% - 66px) 30px 30px;
        gap: 2px;

        .price{
            width: 100%;
            padding: 4px;
            background: #edefee;

            font-size: 12px;
            color: #303030;
            text-align: center;
            white-space: nowrap;
            text-overflow: ellipsis;
        }

        .control_btn{
            --filter: var(--white_icon_filter);
            width: 100%;
            padding: 4px 8px;
            background: #aeb6b5;
            cursor: pointer;

            img{
                display: block;
                width: 15px;
                height: 15px;
                filter: var(--filter);
            }

            &:hover{
                background: #0096cd;
            }
            &.active{background: #edefee;--filter: var(--light_grey_icon_filter);cursor: not-allowed;}
        }
    }
}