/* Sidebar Positionierung und Animation */
.block-minicart {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 100% !important;
    width: 400px !important;
    max-width: 100% !important;
    min-width: inherit !important;
    margin-top: 0 !important;

    padding: 0 !important;
    border: none !important;
    box-shadow: -5px 0 20px rgba(0, 0, 0, 0.3) !important;
    border-radius: 0 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(20px) !important;

    /* Slide-in Animation von rechts */
    transform: translateX(100%) !important;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.3s ease !important;
    z-index: 9999 !important;
    overflow-y: hidden !important;
    overflow-x: hidden !important;
    z-index: 20 !important;
}



.minicard-body,
.minicard-header,
.minicard-footer {
    box-sizing: border-box !important;
    padding: 10px !important;
}

.minicard-header {
    height: auto !important;
}

.minicard-body {
    height: calc(100% - 210px) !important;
    background-color: #f4f4f4;
}

.block-content,
#minicart-content-wrapper {
    height: 100% !important;
}

.minicard-footer {
    position: absolute;
    bottom: 0;
    background: white;
    width: 100%;
    height: auto !important;
    z-index: 10 !important;
}

/* Kleinere Breite auf Tablets */
@media (max-width: 768px) {
    .block-minicart {
        width: 400px !important;
    }

    .minicard-header {
        height: 10vh;
    }

    .minicard-body {
        height: 65vh;

    }

    .minicard-footer {
        height: 25vh;
    }

}


/* Geöffneter Zustand - Sidebar sichtbar */
.minicart-wrapper.active .block-minicart {
    transform: translateX(0) !important;
}


/* Overlay/Backdrop Styling */
.ui-widget-overlay {
    background: rgba(0, 0, 0, 0.5) !important;
    opacity: 1 !important;
    z-index: 9998 !important;
}


.minicart-items-wrapper {
    height: 100% !important;
    padding-right: 5px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}


.minicart-wrapper .action.close:before {
    color: #990052;
    font-family: remixicon !important;
    content: '\eb99' !important;
    line-height: 3rem !important;
    font-size: 3rem !important;


}

.minicart-wrapper .action.close {
    right: 10px !important;
    top: 10px !important
}



/** * card
 */

.pack-unit,
.quantity-base-unit {
    font-size: 1.3rem !important;
    line-height: 1;
    /*color: #666;
    font-weight: 700;*/
}


.cart.table-wrapper .item .col.item {
    padding: 10px 10px !important;

}

.cart.table-wrapper .item .col.item .product-item-details {
    padding: 10px 10px !important;

}


.cart.table-wrapper .product-item-photo {
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
}



@media (max-width: 767px) {

    #shopping-cart-table>tbody>tr.item-info>td.col.price,
    #shopping-cart-table>tbody>tr.item-info>td.col.qty,
    #shopping-cart-table>tbody>tr.item-info>td.col.subtotal {
        width: 100% !important;
        text-align: center !important;
        display: flex !important;
        justify-content: space-between !important;
    }
}

@media (max-width: 1200px) {

    .abs-shopping-cart-items-desktop,
    .block-cart-failed,
    .cart-container .form-cart,
    .cart-container .cart-gift-item {
        width: 100% !important;
    }

    .cart-summary {
        width: 100% !important;
        top: 0 !important;

    }
}


.cart.table-wrapper .actions-toolbar>.action-edit:before,
.cart.table-wrapper .actions-toolbar>.action-delete:before {

    color: #990052 !important;

}



.minicart-wrapper .product .actions {
    margin: 10px 0 0 !important;
}

.minicart-items .action.edit:before,
.minicart-items .action.delete:before {
    color: #990052 !important;


}


.minicart-wrapper {
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
}


/* Blur overlay for entire page when minicart is active */
header:has(.minicart-wrapper.active):before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 15;
    pointer-events: all;
}

/* Prevent body scrolling when minicart is open */
body:has(.minicart-wrapper.active) {
    overflow: hidden;
    height: 100vh;
}


.minicart-items .product-image-wrapper {
    border-radius: 18px 18px 0 0 !important;

}

#top-cart-btn-checkout {
    border-radius: 360px !important;
}

.block-minicart .secondary.viewcard {
    background: #990052;
    padding: 20px 40px;
    border-radius: 360px;
    cursor: pointer;
}




.block-minicart .subtotal {
    margin: 0 10px 10px;
    text-align: left;
}

.block-minicart .items-total {
    float: none !important;
}



.minicart-items .product-item-details .product-item-name a {
    font-weight: 600 !important;
    font-size: 1.4rem !important;
}

.minicart-wrapper .minicart-widgets {
    margin-top: 0 !important;
}


.action.viewcart.action.primary.checkout {
    width: 100% !important;
    padding: 14px 17px;
    border-radius: 360px;
}

.minicart-wrapper .items-total {
    padding: 10px 10px;
}

.minicart-items .product>.product-item-photo,
.minicart-items .product>.product-image-container {
    float: none !important;
}


.minicart-items-wrapper li>div {
    border-radius: 18px;
    box-shadow: 2px 4px 12px #00000014;
    margin: 20px;
}

.minicart-items-wrapper li>div {
    border-radius: 18px;
    box-shadow: 2px 4px 12px #00000014;
    margin: 20px 10px;
}


.minicart-items-wrapper input {
    border-radius: 18px;
}

.minicart-wrapper .action.edit::before {
    font-family: 'remixicon' !important;
    content: '\efdf' !important;
    color: #990052 !important;
}

.minicart-wrapper .action.delete::before {
    font-family: 'remixicon' !important;
    content: '\ec2a' !important;
    color: #990052 !important;
}

.minicart-items .action.edit>span,
.minicart-items .action.delete>span {
    clip: inherit !important;
    height: auto !important;
    margin: 0px;
    position: static !important;
    width: auto !important;

}

.minicart-items-wrapper {
    border: none !important;
}

.minicard-body .product-item-details {
    height: auto !important;
    background-color: white !important;
    border-radius: 0 0 18px 18px !important;
    margin-top: -3px;
}

.modal-popup .modal-inner-wrap {
    border-radius: 18px !important;
}

.modal-popup .modal-footer button {
    border-radius: 360px !important;
}

.modal-popup .modal-header button {
    border-radius: 360px !important;
}

.modal-custom .action-close:before,
.modal-popup .action-close:before,
.modal-slide .action-close:before {
    font-family: 'remixicon' !important;
    font-size: 2.4rem !important;
    content: '\eb99' !important;
    color: #990052 !important;
}


@media (max-width: 767px) {

    .custom-slide .modal-inner-wrap,
    .custom-slide .modal-content,
    .custom-slide #opc-sidebar,
    .custom-slide .opc-block-summary {
        height: 100% !important;
    }

    .opc-block-summary .minicart-items-wrapper {
        height: calc(100vh - 150px) !important;
        max-height: none !important;
    }

    .items-in-cart.active {
        height: calc(100vh - 100px);

    }

    .authentication-wrapper {
        float: none !important;

    }

    .custom-slide {
        left: 0 !important;
    }

}

.minicart-items .price-container,
.minicart-items .price-excluding-tax,
.minicart-items .price-wrapper,
.minicart-items .product-unit-price-info {
    display: inline;
}

.minicart-items .product-calculated-unit-price {
    margin-top: 5px;
}

.minicart-items .product-item-details .price {
    font-size: 1.7rem !important;
}

.minicart-wrapper .product-item-price{
    display: inline !important ;
}

.minicart-wrapper .product-image-photo {
    aspect-ratio: 4/3 !important;
    width: 100% !important;
    object-fit: cover !important;
}

.minicart-wrapper .price-including-tax {
    display: inline !important;
}