/*****
cart: 
    * cart main
    * cart products
    * cart side main
    * cart side top 
    * cart side total
    * cart side empty
    * cart serach results
    * cart back to Wm button

*****/  


 /* 
---------------------------------
-----      cart Main         -----
---------------------------------
 */  

.mod_shop_cart {

    background: var(--second-color);
    padding: 4rem 0;
    min-height: calc(100dvh - 17.5rem);
} 

.mod_shop_cart_main{

    width: 66.66%;
}

/* .cart_main_container{

    max-width: 1200px !important;
    
    width: 100%;
    padding: 0 1rem;
    box-sizing: border-box;
} */

.mod_shop_cart_wrapper {

    display: flex;
    gap: 2.5rem;
}

.mod_shop_cart_search_input {

    width: 100%;
    height: 3rem;
    padding-right: 3rem;
}

img.mod_shop_cart_search_icon {

    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translate(-50%, -50%);
}

.mod_shop_cart_search_input::placeholder{

    font-size: 1rem;
}

.mod_shop_cart_search{

    position: relative;
}

.mod_shop_cart_products {

    min-height: 30rem;
    height: auto;
    margin-top: 1.5rem;

    padding: 0 1.5rem 1rem 1.5rem;
    
    box-sizing: border-box;
    
    border-radius: var(--card-border-l);
    border: 1px solid var(--border-color);
    background: #fff;
    box-shadow: 0px 3px 6px #00000029;
}


.mod_shop_cart_products:has(.mod_shop_cart_product_empty){

    display: flex;
    align-items: center;
}

.mod_shop_cart_products_icon{

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 0.5rem;
}

.mod_shop_cart_products_main{

    display: flex;
    align-items: baseline;
    justify-content: center;
    flex-wrap: wrap;
}

.mod_shop_cart_search_form {

    display: flex;
    gap: 1rem;
}

.mod_shop_cart_search_form_btn{

    min-width: 10rem;
    font-size: 1rem !important;
    font-family: 'Noto Sans Hebrew';
}


.open_result_page{

    transform: translateY(0);
    transition: transform 0.2s, opacity 0.2s, visibility 0.2s;
    opacity: 1;
    visibility: visible;
}

button.product_element_close {

    position: absolute;
    left: 1rem;
    top: 1rem;
    background: none;
    border: 1px solid;
    border-radius: 50%;
    height: 1.5rem;
    width: 1.5rem;
}
.cart_main_side{
    
    margin-top: 1.5rem;
}
.mod_shop_cart_aside_summary_wrapper{

    background: #fff;
    min-height: 9rem;
    border-radius: var(--card-border-l);
    padding: 1rem 2rem;
    box-shadow: 0px 3px 6px #00000029;
}

.product_element{

    display: grid;
    grid-auto-flow: column;
    align-items: center;
    padding: 0.5rem;
}

.product_element .btn{

    font-size: 0.75rem;
}

.mod_shop_cart_aside_summary_header {
    font-weight: bold;
    border-bottom: 1px solid #d9d9d9;
    padding-bottom: 1rem;
}

@media only screen and (max-width: 768px) {


    .mod_shop_cart_main{

        width: 100%;
    }

    .mod_shop_cart_products{

        align-items: center;
        padding: 1rem
    }

    .mod_shop_cart_wrapper {

        display: flex;
        flex-direction: column;

        gap: 0;
    }

    .cart_main.cart_main {
       
        padding: 2.5rem 0;
    }

   .mod_shop_cart_search_form_btn{

        min-width: 8rem;
        font-size: 0.9rem !important;
        padding: 0 !important;
    }
    .mod_shop_cart {
        
        height: auto;
        padding: 2rem 0;
    }
}

/* 
---------------------------------
-----    cart products      -----
---------------------------------
*/  

.mod_shop_cart_products_wrapper{
    
    height: 100%;
    width: 100%;
}

.mod_shop_cart_product_toolbar {
    
    width: 5%;
}

.mod_shop_cart_product_actions{

    display: flex;
    align-items: center;

    width: 45%;
}

.mod_shop_cart_product {

    display: flex;
    align-items: center;

    width: 100%;
}

.mod_shop_cart_product_wrapper{
    
    padding-bottom: 1.5rem;
    padding-top: 1.5rem;
}

.mod_shop_cart_product_wrapper:not(:last-child){

    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.mod_shop_cart_product_details {

    display: flex;
    flex-direction: column;
    gap: 0.5rem;

    width: 50%;
}

.mod_shop_cart_product_details_sku{

    font-size: 0.8rem;
    font-weight: bold;
    color: #fff;
    background: #000;
    width: fit-content;
    padding: 0.25rem 0.5rem;
}

.mod_shop_cart_product_details_linked{

    font-size: .8rem;
    color: #FF0000;
}

.mod_shop_cart_product_details_stampa{

    font-size: 0.7rem;
    color: var(--stampa-color);
}

.mod_shop_cart_product_details_title{
    font-weight: bold;
}

.mod_shop_cart_product_details_desc {
    
    font-size: 0.9rem;
    max-width: 80%;
}

.mod_shop_cart_product_actions_form{

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem;

    width: 50%;
}

.mod_shop_cart_product_actions_price{

    width: 50%;

    text-align: center;
    font-weight: bold;
}

.mod_shop_cart_product_details_price{

    font-weight: bold;
}

.mod_shop_cart_product_toolbar button{

    background: none;
    border-radius: 50%;
    height: 1.5rem;
    width: 1.5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #E0E0E0;
    cursor: pointer;
}

.mod_shop_cart_product_input {

    width: fit-content;
    position: relative;
    display: flex;

    padding: 0 0.5rem;

    border: 1px solid;
    border-radius: 3rem;
}

.mod_shop_cart_product_actions_btn{

    background: none;
    border: none;
    cursor: pointer;
}

.mod_shop_cart_product_input input{

    padding: 0.5rem 0;

    text-align: center;
    background: none;

    max-width: 3.5rem;
}

.mod_shop_cart_product_assembly{
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 1rem;
}

.com_popup_top_btn {

    background: #000 !important;
    font-size: .9rem;
    margin-top: 1rem;
    text-decoration: none !important;
}

.mod_shop_cart_product_assembly_title{

    min-width: 4rem;
    font-size: .8rem;
    margin-right: 0.25rem;
}

.mod_shop_cart_product_assembly button {

    width: fit-content;
    flex-shrink: 0;

    background: none;
    border: none;
    text-decoration: underline;
    cursor: pointer;
}

.mod_shop_cart_product_details_linked_wrap{

    position: relative;

    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.mod_shop_cart_product_details_linked_wrap label{

    display: flex;
}

.mod_shop_cart_product_details_linked_items{

    top: 1.5rem;
    position: absolute;
    z-index: 10;
    
    height: auto;
    padding: 1.4rem;

    border: 1px solid var(--border-color);
    border-radius: var(--card-border-l);
    background: #fff;
    box-shadow: 0px 3px 6px #00000029;
    min-width: 25rem;
}

.mod_shop_cart_product_details_linked_items .mod_shop_cart_product_details_sku{

    height: 1.1rem;
}

.mod_shop_cart_product_details_linked_item {
    
    display: flex;
    gap: 1rem;

    margin: .5rem 0;
}

.mod_shop_cart_product_assembly_notactive {

    width: 1rem;
}

.mod_shop_cart_product_assembly_active {
    width: 1.75rem;
}

.mod_shop_cart_product_outofstock {

    padding: 0.5rem 1rem;
    
    font-size: 0.7rem;
    background: var(--stampa-color);
    border-radius: 5rem;
    color: #fff;
}

#myInput{

    width: 3.5rem;
    text-align: center;
    background: none;
    border: 1px solid #000;
    height: 0.45rem;
}


@media only screen and (max-width: 900px) {

    .mod_shop_cart_product_details_linked_items{
    
        min-width: unset;
        max-width: 79vw;
        width: 100%;
        right: -12vw;
    }
}

@media only screen and (max-width: 768px) {

    .mod_shop_cart_product_actions{

        flex-direction: column-reverse;
        gap: 1rem;

        width: 50%;
    }

    .mod_shop_cart_product_toolbar {
    
        width: 10%;
    }
    
    .mod_shop_cart_product_details_desc{

        max-width: 100%;
    }

    .mod_shop_cart_product_details{

        width: 50%;
        padding-right: .75rem;
        word-break: break-all;
    }

    .mod_shop_cart_product_details_linked_wrap{

        margin-right: calc(10% + .75rem);
    }


    .mod_shop_cart_product_actions_form{

        gap: .5rem;
        width: 100%;
    }

    .mod_shop_cart_product:first-child {

        padding-top: 0;
    }

    .mod_shop_cart_product_outofstock {

        font-size: .7rem;
        padding: 0.3rem;
    }

}

/* empty products */


.mod_shop_cart_product_empty {

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;

    text-align: center;

}

.mod_shop_cart_product_empty_icon {

    width: 11rem;
    margin-bottom: 1rem;
}

.mod_shop_cart_product_empty_desc {

    max-width: 15rem;
}


/* 
---------------------------------
-----      cart aside        -----
---------------------------------
 */ 
 
.mod_shop_cart_aside{

    margin-top: 4.5rem;
    width: 33.33%;
}

.mod_shop_cart_aside_promo_content {

    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    
    margin-top: 1rem;
    
    font-size: .8rem;
    font-weight: bold;
    filter: invert(1);
}

.mod_shop_cart_aside_promo_icon {

    width: 1.75rem;
    height: 1.75rem;
}

.mod_shop_cart_aside_summary_item {

    display: flex;
    justify-content: space-between;
    margin-top: 1rem;
}

.mod_shop_cart_aside_summary_item p{

    font-size: 0.8rem;
}

@media only screen and (max-width: 768px) {

    .mod_shop_cart_aside{

        margin-top: 2.5rem;
        width: 100%;
    }
}



/* 
---------------------------------
-----      cart side  top   -----
---------------------------------
 */  


.mod_shop_cart_aside_address_icon {

    width: 1rem;
    height: 1rem;
    object-fit: contain;
}

.mod_shop_cart_aside_top_content {
    
    width: fit-content;
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.mod_shop_cart_aside_address {

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    
    padding: 1rem 2rem;
    margin-bottom: 1rem;
    
    font-weight: bold;
    border-radius: var(--card-border-l);
    background: #fff;
    box-shadow: 0px 3px 6px #00000029;
}

.mod_shop_cart_aside_address select {
    width: 72%;
    height: 1.75rem;
    border: none;
    border-bottom: 1px solid #d9d9d9;
    font-size: 0.9rem;
    font-family: 'Noto Sans Hebrew';
}

.mod_shop_cart_aside_address_content {

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
}

/* 
---------------------------------
-----    cart side total    -----
---------------------------------
 */  


.mod_shop_cart_aside_total {
    
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 2rem;

    color: #fff;
    background: var(--prim-color);
    border-radius: 5rem;
    margin-top: 1rem;

    font-size: 1.1rem;
    font-weight: bold;

    cursor: pointer;
}

.mod_shop_cart_aside_total_btn_items {

    display: flex;
    justify-content: space-between;
    width: 100%;
}

.mod_shop_cart_aside_total_title {

    font-size: 1rem;
    font-weight: bold;
}

.mod_shop_cart_aside_total_price {

    font-size: 1rem;
    font-weight: bold;
}

.mod_shop_cart_aside_cantorder.sticky-element {

    text-align: center;
    margin-top: 1rem;
}

.mod_shop_cart_aside_cantorder.sticky-element span{
    
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
    background: var(--stampa-color);
    border-radius: 5rem;
    color: #fff;
}


@media only screen and (max-width: 768px) {
       
    .sticky-element{

        transition: box-shadow 0.2s, position 0.4s ;
    }

    .sticky{

        position: fixed;
        z-index: 99;
        bottom: 1rem;
        right: 0;
        left: 0;
        
        margin: 0 auto;
        width: 98%;
        
        box-shadow: 0 0 0 28px #fff, 0 2rem 0 35px #fff;
        transition: box-shadow 0.2s, position 0.4s;
        box-sizing: border-box;
    }  
}



/* 
---------------------------------
-----    cart empty         -----
---------------------------------
*/  


.mod_shop_cart_products_empty_title{

    font-size: 1.1rem;
    margin: 0;
}

.mod_shop_cart_products_empty_desc{

    text-align: center;
}




/* 
---------------------------------
-----   cart search results -----
---------------------------------
*/  


.mod_shop_cart_search_results{

    position: absolute;
    top: 4rem;
    z-index: 99;
    
    width: 100%;
    max-height: 30rem;
    padding: 1.5rem;

    display: flex;
    flex-direction: column;

    overflow: auto;
    
    border-radius: var(--card-border-l);
    background: #fff;
    box-sizing: border-box;
    box-shadow: 0px 3px 6px #00000029;
}

.mod_shop_cart_search_result_details_note{

    display: flex;
    gap: 0.5rem;
    align-items: center;

    padding: .3rem 0;
}

.mod_shop_cart_search_result_details_note p{

    font-size: .7rem !important;
}

.mod_shop_cart_search_result_details_note_icon{

    width: .9rem;
    height: .9rem;
}

.mod_shop_cart_search_product {
    
    display: flex;
}

.mod_shop_cart_search_product_info{

    display: flex;
    align-items: center;
    gap: 1.5rem;

    width: 70%;
}

.mod_shop_cart_search_product_actions{

    display: flex;
    align-items: center;
    justify-content: space-between;

    width: 20%;
}


.mod_shop_cart_search_product {

    display: flex;
    align-items: center;
    justify-content: space-between;

    position: relative;

    padding: 1.5rem;
}

.mod_shop_cart_product_actions_btn.end_qty {
    opacity: 0.3;
    pointer-events: none;
}

.mod_shop_cart_search_product{

    border-bottom: 1px solid var(--border-b-color);
}

.mod_shop_cart_search_result_price{

    font-weight: bold;
}

.mod_shop_cart_search_result_button {
    font-size: 0.8rem;
    padding: 0.75rem 0;
    text-align: center;
    width: 6.5rem;
    border: 1px solid #000;
}
.mod_shop_cart_search_result_button:disabled{
    background: #fff;
    color: #000;
    cursor: not-allowed;
}

.mod_shop_cart_search_result_btn_wrap {

    display: flex;
    justify-content: flex-end;
}

.mod_shop_cart_search_result_sku {

    font-size: 0.8rem;
    font-weight: bold;
    color: #fff;
    background: #000;
    width: fit-content;
    padding: 0.25rem 0.5rem;
}

.mod_shop_cart_search_result_details p{
    
    font-size: .9rem;
}

button.mod_shop_cart_search_results_close {

    position: absolute;
    left: 1rem;
    top: 1rem;

    width: 1.5rem;
    height: 1.5rem;

    background: no-repeat;
    border: 1px solid;
    border-radius: 50%;
    cursor: pointer;
}

@media only screen and (max-width: 768px) {
    
    .mod_shop_cart_search_product{

        padding: 1rem 0 1rem 0;
    }

    .mod_shop_cart_search_results{

        padding: 1rem;
    }

    .mod_shop_cart_search_product_info {

        flex-direction: column-reverse;
        align-items: flex-start;
    }

    .mod_shop_cart_search_product_actions {

        flex-direction: column;
    }

    .mod_shop_cart_search_product_info{

        gap: .5rem;
        width: 60%;
        padding-left: .5rem;
    }
    
    .mod_shop_cart_search_product_actions{
    
        width: 40%;
        gap: .5rem;
    }
    


}



/* 
---------------------------------
-----   cart search results -----
---------------------------------
*/  


.mod_cart_popup_title{

    font-size: 1.65rem;
}


/* 
---------------------------------
--   cart back to Wm button   ---
---------------------------------
 */ 
 .back_to_wm_button{
     
     position: fixed;
     left: 1rem;
     top: 6rem;
     width: 11rem;
     z-index: 99999;
 }


/* 
---------------------------------
--        Upload File         ---
---------------------------------
 */ 

 .mod_shop_cart_product_custom,.mod_shop_cart_product_custom form {

    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: .5rem;

    margin-top: 1rem;
}

.mod_shop_cart_product_custom-text{

    text-align: center;
    width: 100%;
}

.mod_shop_cart_product_custom-file-input::-webkit-file-upload-button {

    visibility: hidden;
}
.mod_shop_cart_product_custom-file-input{

    width: 10rem;
}
.mod_shop_cart_product_custom-file-input::before {

    content: 'קובץ מותאם אישית';
    display: inline-block;
    background: linear-gradient(top, #f9f9f9, #e3e3e3);
    border-radius: 3px;
    padding: 5px 8px;
    outline: none;
    white-space: nowrap;
    -webkit-user-select: none;
    cursor: pointer;
    text-shadow: 1px 1px #fff;
    font-weight: 700;
    font-size: 10pt;
}

.mod_shop_cart_product_custom-file-input:hover::before {

    border-color: black;
}

.mod_shop_cart_product_custom-file-input:active::before {

    background: -webkit-linear-gradient(top, #e3e3e3, #f9f9f9);
}