/* =========================================================
   Achar Digital CRO — Empty Cart Experience
   Configured WooCommerce Cart Page
   ========================================================= */

/*
 * This block only activates when WooCommerce cart is empty.
 * Populated cart is NOT modified.
 */


/* ---------------------------------------------------------
   EMPTY STATE WRAPPER
   --------------------------------------------------------- */

body.adcro-cart-page .pds-empty-cart-state {

    width: min(100%, 1000px);

    margin: 8px auto 36px;

    padding: 28px;

    box-sizing: border-box;

    text-align: center;

}


/* ---------------------------------------------------------
   HIDE NATIVE WOODMART EMPTY CART
   --------------------------------------------------------- */

body.adcro-cart-page
.woocommerce
.cart-empty.wc-empty-cart-message,

body.adcro-cart-page
.woocommerce
.wd-empty-block-title,

body.adcro-cart-page
.woocommerce
.wd-empty-block-text,

body.adcro-cart-page
.woocommerce
.return-to-shop {

    display: none !important;
}


/*
 * Empty WooCommerce notices wrapper should not
 * create an empty gap.
 */
body.adcro-cart-page
.woocommerce
.woocommerce-notices-wrapper:empty {

    margin-bottom: 0 !important;

    min-height: 0 !important;

}


/* ---------------------------------------------------------
   MAIN EMPTY CARD
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-main-card {

    width: min(100%, 720px);

    margin: 0 auto;

    padding: 42px 28px 34px;

    box-sizing: border-box;

    background: #fff;

    border: 1px solid #DCE8E1;

    border-radius: 20px;

    box-shadow:
        0 8px 30px
        rgba(6, 95, 70, .06);

}


/* ---------------------------------------------------------
   CART ICON
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-cart-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 74px;

    height: 74px;

    margin: 0 auto 20px;

    border-radius: 22px;

    background: #ECFDF5;

    color: var(--adcro-primary, #065F46);

}


/* SVG */
body.adcro-cart-page
.pds-empty-cart-icon svg {

    width: 34px;

    height: 34px;

    max-width: 34px;

    max-height: 34px;

    display: block;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;

}


/* ---------------------------------------------------------
   TITLE
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-cart-title {

    margin: 0;

    color: #064E3B;

    font-size: 25px;

    font-weight: 900;

    line-height: 1.7;

}


/* ---------------------------------------------------------
   DESCRIPTION
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-cart-description {

    width: min(100%, 540px);

    margin: 12px auto 0;

    color: #53677b;

    font-size: 14px;

    font-weight: 500;

    line-height: 2;

}


/* ---------------------------------------------------------
   MAIN CTA
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-cart-shop-button {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-width: 190px;

    min-height: 50px;

    margin-top: 24px;

    padding: 0 24px;

    box-sizing: border-box;

    border-radius: 11px;

    background: var(--adcro-primary, #065F46);

    color: #fff !important;

    font-size: 14px;

    font-weight: 800;

    line-height: 1;

    text-decoration: none !important;

    box-shadow:
        0 8px 18px
        rgba(6, 95, 70, .20);

    transition:
        transform .18s ease,
        background-color .18s ease,
        box-shadow .18s ease;

}


body.adcro-cart-page
.pds-empty-cart-shop-button:hover {

    background: var(--adcro-primary-dark, #064E3B);

    color: #fff !important;

    text-decoration: none !important;

    transform: translateY(-1px);

    box-shadow:
        0 10px 22px
        rgba(6, 95, 70, .25);

}


body.adcro-cart-page
.pds-empty-cart-shop-button:active {

    transform: scale(.98);

}


/* ---------------------------------------------------------
   QUICK SHOPPING SECTION
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-quick-section {

    width: min(100%, 1000px);

    margin: 26px auto 0;

    padding: 0;

}


body.adcro-cart-page
.pds-empty-section-title {

    margin: 0 0 14px;

    color: #064E3B;

    font-size: 17px;

    font-weight: 800;

    line-height: 1.7;

    text-align: right;

}


/* ---------------------------------------------------------
   CATEGORY GRID
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-category-grid {

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 12px;

}


/* Category Card */
body.adcro-cart-page
.pds-empty-category-card {

    display: flex;

    flex-direction: column;

    justify-content: center;

    min-height: 84px;

    padding: 14px 12px;

    box-sizing: border-box;

    background: #fff;

    border: 1px solid #DCE8E1;

    border-radius: 14px;

    text-align: center;

    text-decoration: none !important;

    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;

}


body.adcro-cart-page
.pds-empty-category-card:hover {

    border-color: #DCE8E1;

    box-shadow:
        0 6px 18px
        rgba(6, 95, 70, .06);

    transform: translateY(-1px);

    text-decoration: none !important;

}


body.adcro-cart-page
.pds-empty-category-name {

    color: #064E3B;

    font-size: 13px;

    font-weight: 800;

    line-height: 1.7;

}


body.adcro-cart-page
.pds-empty-category-meta {

    margin-top: 3px;

    color: #718091;

    font-size: 10px;

    font-weight: 500;

    line-height: 1.5;

}


/* ---------------------------------------------------------
   POPULAR PRODUCTS
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-products-section {

    width: min(100%, 1000px);

    margin: 30px auto 0;

}


body.adcro-cart-page
.pds-empty-products-grid {

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 14px;

}


/* Product Card */
body.adcro-cart-page
.pds-empty-product-card {

    display: flex;

    flex-direction: column;

    min-width: 0;

    background: #fff;

    border: 1px solid #DCE8E1;

    border-radius: 14px;

    overflow: hidden;

    box-sizing: border-box;

    text-decoration: none !important;

    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;

}


body.adcro-cart-page
.pds-empty-product-card:hover {

    border-color: #DCE8E1;

    box-shadow:
        0 8px 22px
        rgba(6, 95, 70, .07);

    transform: translateY(-1px);

    text-decoration: none !important;

}


/* Product image */
body.adcro-cart-page
.pds-empty-product-image {

    position: relative;

    width: 100%;

    aspect-ratio: 1 / 1;

    background: #F6FAF7;

    overflow: hidden;

}


body.adcro-cart-page
.pds-empty-product-image img {

    display: block;

    width: 100%;

    height: 100%;

    object-fit: cover;

    margin: 0;

}


/* Product Content */
body.adcro-cart-page
.pds-empty-product-content {

    display: flex;

    flex-direction: column;

    flex: 1 1 auto;

    padding: 12px;

    text-align: right;

}


body.adcro-cart-page
.pds-empty-product-name {

    display: -webkit-box;

    overflow: hidden;

    -webkit-box-orient: vertical;

    -webkit-line-clamp: 2;

    color: #064E3B;

    font-size: 12px;

    font-weight: 700;

    line-height: 1.8;

}


body.adcro-cart-page
.pds-empty-product-price {

    margin-top: 8px;

    color: #40566c;

    font-size: 11px;

    font-weight: 700;

    line-height: 1.6;

}


/* Product CTA */
body.adcro-cart-page
.pds-empty-product-button {

    display: flex;

    align-items: center;

    justify-content: center;

    min-height: 38px;

    margin-top: 10px;

    padding: 0 8px;

    border-radius: 9px;

    background: #ECFDF5;

    color: var(--adcro-primary, #065F46);

    font-size: 11px;

    font-weight: 800;

    line-height: 1;

}


/* ---------------------------------------------------------
   LOADING
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-loading {

    padding: 18px;

    color: #718091;

    font-size: 12px;

    font-weight: 500;

    text-align: center;

}


/* ---------------------------------------------------------
   EMPTY RESULT
   --------------------------------------------------------- */

body.adcro-cart-page
.pds-empty-hidden {

    display: none !important;

}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 767px) {

    body.adcro-cart-page
    .pds-empty-cart-state {

        width: 100%;

        margin: 0 auto 28px;

        padding: 8px 10px 28px;

    }


    body.adcro-cart-page
    .pds-empty-main-card {

        width: 100%;

        padding:
            32px
            18px
            28px;

        border-radius: 17px;

    }


    body.adcro-cart-page
    .pds-empty-cart-icon {

        width: 64px;

        height: 64px;

        margin-bottom: 16px;

        border-radius: 19px;

    }


    body.adcro-cart-page
    .pds-empty-cart-icon svg {

        width: 30px;

        height: 30px;

    }


    body.adcro-cart-page
    .pds-empty-cart-title {

        font-size: 21px;

        line-height: 1.8;

    }


    body.adcro-cart-page
    .pds-empty-cart-description {

        margin-top: 9px;

        font-size: 12.5px;

        line-height: 2;

    }


    body.adcro-cart-page
    .pds-empty-cart-shop-button {

        width: 100%;

        min-width: 0;

        min-height: 48px;

        margin-top: 20px;

        font-size: 13px;

    }


    body.adcro-cart-page
    .pds-empty-quick-section {

        margin-top: 20px;

    }


    body.adcro-cart-page
    .pds-empty-section-title {

        margin-bottom: 11px;

        font-size: 15px;

    }


    /*
     * Categories become horizontally scrollable.
     */
    body.adcro-cart-page
    .pds-empty-category-grid {

        display: flex;

        gap: 9px;

        overflow-x: auto;

        padding-bottom: 3px;

        scrollbar-width: none;

        -ms-overflow-style: none;

        scroll-snap-type: x proximity;

    }


    body.adcro-cart-page
    .pds-empty-category-grid::-webkit-scrollbar {

        display: none;

    }


    body.adcro-cart-page
    .pds-empty-category-card {

        flex: 0 0 138px;

        min-height: 76px;

        border-radius: 12px;

        scroll-snap-align: start;

    }


    body.adcro-cart-page
    .pds-empty-category-name {

        font-size: 12px;

    }


    /*
     * Two product cards per row on mobile.
     */
    body.adcro-cart-page
    .pds-empty-products-section {

        margin-top: 22px;

    }


    body.adcro-cart-page
    .pds-empty-products-grid {

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 10px;

    }


    body.adcro-cart-page
    .pds-empty-product-content {

        padding: 10px;

    }


    body.adcro-cart-page
    .pds-empty-product-name {

        font-size: 11px;

        line-height: 1.75;

    }


    body.adcro-cart-page
    .pds-empty-product-price {

        font-size: 10px;

        margin-top: 6px;

    }


    body.adcro-cart-page
    .pds-empty-product-button {

        min-height: 35px;

        margin-top: 8px;

        font-size: 10px;

    }

}


/* ---------------------------------------------------------
   VERY SMALL MOBILE
   --------------------------------------------------------- */

@media (max-width: 380px) {

    body.adcro-cart-page
    .pds-empty-main-card {

        padding:
            28px
            14px
            24px;

    }


    body.adcro-cart-page
    .pds-empty-cart-title {

        font-size: 19px;

    }


    body.adcro-cart-page
    .pds-empty-category-card {

        flex-basis: 128px;

    }

}

body.adcro-cart-page .pds-empty-cart-shop-button,
body.adcro-cart-page .pds-empty-product-button { border-color: transparent; }
body.adcro-cart-page .pds-empty-cart-shop-button { background: var(--adcro-primary, #065F46) !important; }
body.adcro-cart-page .pds-empty-cart-shop-button:hover { background: var(--adcro-primary-dark, #064E3B) !important; }
body.adcro-cart-page .pds-empty-cart-icon { background: color-mix(in srgb, var(--adcro-primary, #065F46) 8%, white) !important; color: var(--adcro-primary, #065F46) !important; }


/* ======================================================================
   ACHAR DIGITAL CRO 1.2.2 — EMPTY CART PALETTE ALIGNMENT
   Keep the empty-cart interaction; align its visual system with Checkout.
   ====================================================================== */
body.adcro-cart-page .pds-empty-cart-state {
    color: #064E3B !important;
    font-family: inherit !important;
}
body.adcro-cart-page .pds-empty-main-card,
body.adcro-cart-page .pds-empty-category-card,
body.adcro-cart-page .pds-empty-product-card {
    background: #FFFFFF !important;
    border: 1px solid #DCE8E1 !important;
    border-radius: 14px !important;
    box-shadow: 0 8px 28px rgba(6, 95, 70, .055) !important;
    font-family: inherit !important;
}
body.adcro-cart-page .pds-empty-cart-icon {
    background: #ECFDF5 !important;
    color: var(--adcro-primary, #065F46) !important;
}
body.adcro-cart-page .pds-empty-cart-title,
body.adcro-cart-page .pds-empty-section-title,
body.adcro-cart-page .pds-empty-category-name,
body.adcro-cart-page .pds-empty-product-name {
    color: #064E3B !important;
    font-family: inherit !important;
}
body.adcro-cart-page .pds-empty-cart-description,
body.adcro-cart-page .pds-empty-category-meta,
body.adcro-cart-page .pds-empty-loading {
    color: #53677B !important;
    font-family: inherit !important;
}
body.adcro-cart-page .pds-empty-cart-shop-button {
    background: var(--adcro-primary, #065F46) !important;
    color: #FFFFFF !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 20px rgba(6, 95, 70, .20) !important;
    font-family: inherit !important;
}
body.adcro-cart-page .pds-empty-cart-shop-button:hover {
    background: var(--adcro-primary-dark, #064E3B) !important;
    color: #FFFFFF !important;
}
body.adcro-cart-page .pds-empty-product-button {
    background: #ECFDF5 !important;
    color: #065F46 !important;
    border-radius: 9px !important;
    font-family: inherit !important;
}
body.adcro-cart-page .pds-empty-product-price {
    color: #064E3B !important;
    font-family: inherit !important;
}
@media (max-width: 768px) {
    body.adcro-cart-page .pds-empty-cart-state {
        width: calc(100% - 24px) !important;
        max-width: 1000px !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
        box-sizing: border-box !important;
    }
    body.adcro-cart-page .pds-empty-main-card {
        padding: 28px 16px !important;
        border-radius: 12px !important;
        box-shadow: 0 5px 18px rgba(6, 95, 70, .05) !important;
    }
    body.adcro-cart-page .pds-empty-category-card {
        box-shadow: none !important;
    }
}



/* v1.2.3 — keep the whole Cart page canvas white in both empty/populated states. */
body.adcro-cart-page,
body.adcro-cart-page #main-content,
body.adcro-cart-page.main-page-wrapper,
body.adcro-cart-page .main-page-wrapper,
body.adcro-cart-page .content-layout-wrapper,
body.adcro-cart-page .site-content,
body.adcro-cart-page .wd-content-layout,
body.adcro-cart-page .elementor,
body.adcro-cart-page .woocommerce,
body.adcro-cart-page .cart-content-wrapper,
body.adcro-cart-page .pds-empty-cart-state,
body.adcro-cart-page .pds-empty-quick-section,
body.adcro-cart-page .pds-empty-products-section {
    background-color: #FFFFFF !important;
    background-image: none !important;
}
@media (max-width: 768px) {
    body.adcro-cart-page .woocommerce {
        width: calc(100% - 24px) !important;
        max-width: 1200px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }
    body.adcro-cart-page .pds-empty-cart-state {
        width: 100% !important;
        max-width: 100% !important;
        margin: 8px 0 28px !important;
        box-sizing: border-box !important;
    }
}
