/* ============================================================
   EBMENU1 — Product Cards
   Theme 2
   Style : Modern WordPress / WooCommerce
   Namespace : ebmenu1-crd1-theme3
============================================================ */


@import "./ebmenu1-main.css";



:root {


    /* ========================================================
       Section
    ======================================================== */


    --ebmenu1-crd1-theme3-section-width:

        calc(100vw - 2em);


    --ebmenu1-crd1-theme3-section-max-width:

        1440px;


    --ebmenu1-crd1-theme3-section-padding:

        20px 0;


    --ebmenu1-crd1-theme3-section-gap:

        35px;



    /* ========================================================
       Section Title
    ======================================================== */


    --ebmenu1-crd1-theme3-title-color:

        var(--ebmenu1-secondary-color);



    --ebmenu1-crd1-theme3-title-size:

        clamp(1.3rem, 4vw, 1.8rem);



    --ebmenu1-crd1-theme3-title-weight:

        700;



    --ebmenu1-crd1-theme3-title-line-color:

        var(--ebmenu1-primary-color);



    /* ========================================================
       Grid
    ======================================================== */


    --ebmenu1-crd1-theme3-grid-gap:

        25px;




    /* ========================================================
       Card
    ======================================================== */


    --ebmenu1-crd1-theme3-card-background:

        #ffffff;



    --ebmenu1-crd1-theme3-card-border:

        rgba(0, 0, 0, 0.08);



    --ebmenu1-crd1-theme3-card-radius:

        18px;



    --ebmenu1-crd1-theme3-card-shadow:

        0 8px 25px rgba(0, 0, 0, 0.08);



    --ebmenu1-crd1-theme3-card-hover-shadow:

        0 18px 45px rgba(0, 0, 0, 0.15);



    --ebmenu1-crd1-theme3-card-transition:

        0.35s ease;



    /* ========================================================
       Image Container
    ======================================================== */


    --ebmenu1-crd1-theme3-image-container-background:

        #f8f8f8;



    --ebmenu1-crd1-theme3-image-container-radius:

        16px;

    --ebmenu1-crd1-theme3-image-radius:

        12px;



    --ebmenu1-crd1-theme3-image-shadow:

        0 5px 18px rgba(0, 0, 0, 0.12);



    /* ========================================================
       Product Title
    ======================================================== */


    --ebmenu1-crd1-theme3-product-title-color:

        #202020;



    --ebmenu1-crd1-theme3-product-title-size:

        clamp(1rem, 3vw, 1.25rem);



    --ebmenu1-crd1-theme3-product-title-weight:

        700;



    /* ========================================================
       Price
    ======================================================== */


    --ebmenu1-crd1-theme3-price-color:

        var(--ebmenu1-primary-color);



    --ebmenu1-crd1-theme3-price-size:

        clamp(1.2rem, 4vw, 1.5rem);



    --ebmenu1-crd1-theme3-price-weight:

        800;



    /* ========================================================
       Description
    ======================================================== */


    --ebmenu1-crd1-theme3-description-color:

        #666666;



    --ebmenu1-crd1-theme3-description-size:

        0.85rem;



    /* ========================================================
       Best Seller Badge
    ======================================================== */


    --ebmenu1-crd1-theme3-best-seller-background:

        var(--ebmenu1-primary-color);



    --ebmenu1-crd1-theme3-best-seller-color:

        #ffffff;



    --ebmenu1-crd1-theme3-best-seller-size:

        0.8rem;



    --ebmenu1-crd1-theme3-best-seller-radius:

        50px;



    /* ========================================================
       Buttons
    ======================================================== */


    --ebmenu1-crd1-theme3-add-button-background:

        var(--ebmenu1-primary-color);



    --ebmenu1-crd1-theme3-add-button-color:

        #ffffff;



    --ebmenu1-crd1-theme3-details-button-background:

        transparent;



    --ebmenu1-crd1-theme3-details-button-color:

        var(--ebmenu1-secondary-color);



    --ebmenu1-crd1-theme3-button-radius:

        12px;


    /* -- البطاقة المعلّقة (بدل الـ discount ribbon) -- */
    --ebmenu1-crd1-theme3-discount-badge-width: 48px;
    --ebmenu1-crd1-theme3-discount-badge-bg-color: var(--ebmenu1-primary-color);
    --ebmenu1-crd1-theme3-discount-badge-text-color: #ffffff;
    --ebmenu1-crd1-theme3-discount-badge-font-size: 0.85rem;
    --ebmenu1-crd1-theme3-discount-badge-hole-color: var(--ebmenu1-secondary-color);
    --ebmenu1-crd1-theme3-discount-badge-string-color: rgba(255, 255, 255, 0.55);
    --ebmenu1-crd1-theme3-discount-badge-shadow-color: rgba(43, 30, 24, 0.5);
    --ebmenu1-crd1-theme3-discount-badge-rotate: 6deg;
}

/* =======================================
   Section
========================================= */


.ebmenu1-crd1-section {


    display: flex;


    flex-direction: column;



    width:

        var(--ebmenu1-crd1-theme3-section-width);



    max-width:

        var(--ebmenu1-crd1-theme3-section-max-width);



    margin: 0 auto;



    padding:

        var(--ebmenu1-crd1-theme3-section-padding);



    gap:

        var(--ebmenu1-crd1-theme3-section-gap);



}

/* ============================================================
   Title
============================================================ */


.ebmenu1-crd1-title-container {


    display: flex;


    justify-content: center;



}





.ebmenu1-crd1-title {


    position: relative;



    color:

        var(--ebmenu1-crd1-theme3-title-color);



    font-size:

        var(--ebmenu1-crd1-theme3-title-size);



    font-weight:

        var(--ebmenu1-crd1-theme3-title-weight);

    width: fit-content;
    margin-inline: auto;

}





.ebmenu1-crd1-title::after {


    content: "";


    position: absolute;


    bottom: -10px;


    right: 35%;


    width: 30%;


    height: 3px;


    border-radius: 50px;


    background:

        var(--ebmenu1-crd1-theme3-title-line-color);



}






/* ============================================================
   Container
============================================================ */


.ebmenu1-crd1-container {


    display: flex;


    flex-direction: column;


    width: 100%;



}





/* ============================================================
   Grid
============================================================ */


.ebmenu1-crd1-grid {


    display: grid;


    grid-template-columns: 1fr;


    gap:

        var(--ebmenu1-crd1-theme3-grid-gap);


    margin-inline: auto;

    width: calc(100% - 2em);

    max-width: 1440px;
}





/* ============================================================
   Product Card
============================================================ */


.ebmenu1-crd1-card-container {


    display: flex;


    flex-direction: column;


    align-items: center;



    gap: 20px;



    padding: calc(var(--ebmenu1-crd1-theme3-discount-badge-width) / 2 + 8px) 18px 18px 18px;



    background:

        var(--ebmenu1-crd1-theme3-card-background);



    border:

        1px solid var(--ebmenu1-crd1-theme3-card-border);



    border-radius:

        var(--ebmenu1-crd1-theme3-card-radius);



    box-shadow:

        var(--ebmenu1-crd1-theme3-card-shadow);



    transition:

        var(--ebmenu1-crd1-theme3-card-transition);

    position: relative;

    margin-top: 20px;


}





.ebmenu1-crd1-card-container:hover {


    transform:

        translateY(-6px);



    box-shadow:

        var(--ebmenu1-crd1-theme3-card-hover-shadow);



}

/* ============================================================
   discount 
============================================================ */
.ebmenu1-crd1-discount-badge {
    position: absolute;
    top: 0px;
    left: 50%;
    right: 50%;
    width: var(--ebmenu1-crd1-theme3-discount-badge-width);
    padding: 14px 2px 8px;
    text-align: center;
    line-height: 1.1;
    clip-path: polygon(50% 0%, 100% 22%, 100% 100%, 0 100%, 0 22%);
    background-color: var(--ebmenu1-crd1-theme3-discount-badge-bg-color);
    color: var(--ebmenu1-crd1-theme3-discount-badge-text-color);
    font-size: var(--ebmenu1-crd1-theme3-discount-badge-font-size);
    font-weight: 800;
    box-shadow: 0 10px 16px var(--ebmenu1-crd1-theme3-discount-badge-shadow-color);
    transform: translate(50%, -50%) rotate(var(--ebmenu1-crd1-theme3-discount-badge-rotate));
    z-index: 2;
}

/* ثقب البطاقة (grommet) */
.ebmenu1-crd1-discount-badge::before {
    content: "";
    position: absolute;
    top: 6px;
    right: 50%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--ebmenu1-crd1-theme3-discount-badge-hole-color);
    transform: translateX(50%);
}

/* الخيط اللي معلّقة بيه البطاقة */
.ebmenu1-crd1-discount-badge::after {
    content: "";
    position: absolute;
    top: -13px;
    right: 50%;
    width: 1.5px;
    height: 15px;
    background-color: var(--ebmenu1-crd1-theme3-discount-badge-string-color);
    transform: translateX(50%) rotate(calc(-1 * var(--ebmenu1-crd1-theme3-discount-badge-rotate)));
    transform-origin: bottom;
}

.ebmenu1-crd1-grid:has(> .ebmenu1-crd1-card-container:first-child .ebmenu1-crd1-discount-badge) {
    padding-top: calc(var(--ebmenu1-crd1-theme3-discount-badge-width) / 2 + 8px);
}

/* Fallback when :has() is not available — add `first-has-discount` to the grid */
.ebmenu1-crd1-grid.first-has-discount {
    padding-top: calc(var(--ebmenu1-crd1-theme3-discount-badge-width) / 2 + 8px);
}

/* ============================================================
   Main Card
============================================================ */


.ebmenu1-crd1-card {


    display: flex;


    flex-direction: row;


    width: 100%;


    gap: 18px;



}

/* ============================================================
   Image Side
============================================================ */


.ebmenu1-crd1-media-side {

    display: flex;


    justify-content: center;


    align-items: center;



    /* width: 100%; */


    flex: 0 0 160px;

    padding: 15px;



    background:

        var(--ebmenu1-crd1-theme3-image-container-background);



    border-radius:

        var(--ebmenu1-crd1-theme3-image-container-radius);



    overflow: hidden;



}





.ebmenu1-crd1-image {

    width: 140px;

    aspect-ratio: 1 / 1;

    /* object-fit: cover; */

    border-radius:

        var(--ebmenu1-crd1-theme3-image-radius);



    box-shadow:

        var(--ebmenu1-crd1-theme3-image-shadow);



    transition:

        0.4s ease;



}





.ebmenu1-crd1-card-container:hover .ebmenu1-crd1-image {


    transform:

        scale(1.04);



}







/* ============================================================
   Content
============================================================ */


.ebmenu1-crd1-content-side {


    display: flex;


    flex-direction: column;


    align-items: flex-start;


    width: 100%;


    gap: 10px;



}






/* ============================================================
   Product Title
============================================================ */


.ebmenu1-crd1-card-title {


    margin: 0;



    color:

        var(--ebmenu1-crd1-theme3-product-title-color);



    font-size:

        var(--ebmenu1-crd1-theme3-product-title-size);



    font-weight:

        var(--ebmenu1-crd1-theme3-product-title-weight);



}







/* ============================================================
   Price
============================================================ */


.ebmenu1-crd1-price {


    color:

        var(--ebmenu1-crd1-theme3-price-color);



    font-size:

        var(--ebmenu1-crd1-theme3-price-size);



    font-weight:

        var(--ebmenu1-crd1-theme3-price-weight);



}








/* ============================================================
   Best Seller Badge
============================================================ */


.ebmenu1-crd1-best-seller {


    display: flex;


    align-items: center;


    justify-content: center;



    padding:

        5px 14px;



    background:

        var(--ebmenu1-crd1-theme3-best-seller-background);



    color:

        var(--ebmenu1-crd1-theme3-best-seller-color);



    font-size:

        var(--ebmenu1-crd1-theme3-best-seller-size);



    border-radius:

        var(--ebmenu1-crd1-theme3-best-seller-radius);



    font-weight: 700;



    position: absolute;
    top: 0;
    left: 5%;
    transform: translate(5%, -50%);
    z-index: 2;
}

/* ============================================================
   Description
============================================================ */


.ebmenu1-crd1-description-container {


    display: flex;


    flex-direction: column;


    gap: 5px;


    width: 100%;



}





.ebmenu1-crd1-description {


    margin: 0;



    color:

        var(--ebmenu1-crd1-theme3-description-color);



    font-size:

        var(--ebmenu1-crd1-theme3-description-size);



    line-height: 1.7;



    display: -webkit-box;


    -webkit-line-clamp: 2;

    line-clamp: 2;

    -webkit-box-orient: vertical;


    overflow: hidden;

}


.ebmenu1-crd1-description-toggle {
    display: none;
    align-self: flex-start;
    background: none;
    border: none;
    color: #555;
    cursor: pointer;
}

/* expanded */

.ebmenu1-crd1-description.expanded {

    display: block;

    overflow: visible;
}



/* ============================================================
   Action Area
============================================================ */


.ebmenu1-crd1-action-container {


    display: flex;


    flex-direction: row;

    align-items: center;

    justify-content: center;

    width: 100%;


    gap: 12px;


margin-top: auto;
}






/* ============================================================
   Quantity
============================================================ */


.ebmenu1-crd1-qty-controls {


    display: flex;


    align-items: center;


    justify-content: center;


    width: fit-content;



    height: 40px;



    /* margin: 0 auto; */



    overflow: hidden;



    direction: ltr;



    background: #ffffff;



    border:

        1px solid var(--ebmenu1-primary-color);



    border-radius:

        50px;



}





.ebmenu1-crd1-qty-btn {


    width: 40px;


    height: 100%;


    display: flex;


    align-items: center;


    justify-content: center;



    color:

        var(--ebmenu1-secondary-color);



}





.ebmenu1-crd1-qty-value-box {


    display: flex;


    align-items: center;


    justify-content: center;



    min-width: 45px;



    height: 100%;



    color: #111;



    border-left:

        1px solid var(--ebmenu1-primary-color);



    border-right:

        1px solid var(--ebmenu1-primary-color);



}







/* ============================================================
   Buttons
============================================================ */


.ebmenu1-crd1-add-btn,


.ebmenu1-crd1-details-btn {


    width: fit-content;



    display: flex;


    justify-content: center;


    align-items: center;



    padding:

        10px;



    border-radius:

        var(--ebmenu1-crd1-theme3-button-radius);



    font-size:

        0.95rem;



    font-weight: 700;



    transition:

        0.3s ease;



}





.ebmenu1-crd1-add-btn {


    background:

        var(--ebmenu1-crd1-theme3-add-button-background);



    color:

        var(--ebmenu1-crd1-theme3-add-button-color);



}





.ebmenu1-crd1-details-btn {


    background:

        var(--ebmenu1-crd1-theme3-details-button-background);



    color:

        var(--ebmenu1-crd1-theme3-details-button-color);



    border:

        1px solid var(--ebmenu1-secondary-color);



}







.ebmenu1-crd1-add-btn:hover,


.ebmenu1-crd1-details-btn:hover {


    transform:

        translateY(-3px);



}







/* ============================================================
   Desktop
============================================================ */


@media (min-width:768px) {


    .ebmenu1-crd1-grid {


        grid-template-columns:

            repeat(3, 1fr);



    }


}

@media (max-width:960px) {


    .ebmenu1-crd1-grid {


        grid-template-columns: repeat(2, 1fr);

    }



}

@media (max-width:767px) {


    .ebmenu1-crd1-grid {


        grid-template-columns:

            1fr;



    }



}
/* ============================================================
   EDITABLE QUANTITY INPUT  (shares .ebmenu1-crd1-qty-value-box)
============================================================ */
input.ebmenu1-crd1-qty-value-box.usd-qty-input {
    width: 3ch;
    min-width: 0;
    flex: 1;
    background: transparent;
    border: none;
    border-inline: 1px solid var(--ebmenu1-crd1-qty-text-color);
    color: var(--ebmenu1-crd1-qty-text-color);
    font: inherit;
    text-align: center;
    outline: none;
    -moz-appearance: textfield;
    appearance: textfield;
}
input.ebmenu1-crd1-qty-value-box.usd-qty-input::-webkit-outer-spin-button,
input.ebmenu1-crd1-qty-value-box.usd-qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
