#estehkam-cart-marker ~ * {
    --eh-primary: #242f9b;
    --eh-primary-dark: #171f63;
    --eh-accent: #f0bb40;
    --eh-accent-dark: #f43904;
    --eh-ink: #1c1c25;
    --eh-muted: #717171;
    --eh-line: #e9ebef;
    --eh-surface: #f7f8fa;
}

body:has(#estehkam-cart-marker) main#main {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    background: var(--eh-surface, #f7f8fa);
}

.eh-cart__site-header {
    position: relative;
    z-index: 20;
    order: -20;
}

.eh-cart__site-footer {
    order: 100;
    margin-top: auto;
}

/* Bagisto uses a reduced checkout header on this route. The storefront header
   above keeps cart navigation consistent with the rest of SanaBuy. */
#estehkam-cart-marker + .flex.flex-wrap {
    display: none !important;
}

#estehkam-cart-marker {
    order: -10;
}

#estehkam-cart-marker ~ .flex-auto {
    order: 10;
    padding: 22px 0 50px;
}

#estehkam-cart-marker ~ .flex.flex-wrap:first-of-type {
    background: #fff;
    border-bottom: 1px solid var(--eh-line) !important;
}

#estehkam-cart-marker ~ * .container {
    background: transparent;
}

body:has(#estehkam-cart-marker) {
    background: var(--eh-surface);
}

#estehkam-cart-marker ~ * img[height="110"],
#estehkam-cart-marker ~ * img.rounded-xl {
    border-radius: 14px !important;
    background: #fff;
}

#estehkam-cart-marker ~ * .text-navyBlue,
#estehkam-cart-marker ~ * .icon-check-box {
    color: var(--eh-primary) !important;
}

#estehkam-cart-marker ~ * .text-blue-700 {
    color: var(--eh-primary) !important;
}

#estehkam-cart-marker ~ * .w-\[418px\] {
    padding: 22px 24px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 3px 5px rgba(0,0,0,.03);
}

#estehkam-cart-marker ~ * .primary-button,
#estehkam-cart-marker ~ * .secondary-button {
    border-radius: 12px !important;
    font-weight: 700 !important;
}

#estehkam-cart-marker ~ * h1,
#estehkam-cart-marker ~ * p[role="heading"] {
    font-weight: 700 !important;
}

#estehkam-cart-marker ~ .flex-auto > .container {
    width: min(1320px, calc(100% - 48px));
    max-width: none;
    padding: 0 !important;
}

#estehkam-cart-marker ~ .flex-auto .breadcrumb {
    margin: 0 2px 14px;
    color: #858792;
    font-size: 12px;
}

#estehkam-cart-marker ~ .flex-auto v-cart,
#estehkam-cart-marker ~ .flex-auto v-cart + div {
    display: block;
}

#estehkam-cart-marker ~ .flex-auto v-cart > .shimmer,
#estehkam-cart-marker ~ .flex-auto v-cart > div,
#estehkam-cart-marker ~ .flex-auto .container > div:last-child {
    border-radius: 18px;
}

/* Empty cart: the Vue root is the only centered grid under the breadcrumb. */
#estehkam-cart-marker ~ .flex-auto .place-content-center {
    position: relative;
    min-height: 390px;
    padding: 92px 24px 70px !important;
    border: 1px solid #eef0f3;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 5px 20px rgba(25, 35, 80, .035);
}

#estehkam-cart-marker ~ .flex-auto .place-content-center::before {
    position: absolute;
    top: 24px;
    right: 30px;
    content: var(--eh-cart-title);
    color: var(--eh-ink);
    font-size: 20px;
    font-weight: 800;
}

#estehkam-cart-marker ~ .flex-auto .place-content-center img {
    width: 126px;
    height: 126px;
    object-fit: contain;
    opacity: .9;
}

#estehkam-cart-marker ~ .flex-auto .place-content-center p[role="heading"] {
    margin-top: 16px;
    color: var(--eh-ink);
    font-size: 17px !important;
}

#estehkam-cart-marker ~ .flex-auto .place-content-center::after {
    margin-top: 8px;
    content: var(--eh-cart-empty-description);
    color: var(--eh-muted);
    font-size: 13px;
}

@media (max-width: 700px) {
    #estehkam-cart-marker ~ .flex-auto {
        padding: 12px 0 28px;
    }

    #estehkam-cart-marker ~ .flex-auto > .container {
        width: calc(100% - 24px);
    }

    #estehkam-cart-marker ~ .flex-auto .place-content-center {
        min-height: 330px;
        padding: 80px 16px 50px !important;
        border-radius: 14px;
    }

    #estehkam-cart-marker ~ .flex-auto .place-content-center::before {
        top: 20px;
        right: 20px;
        font-size: 17px;
    }

    #estehkam-cart-marker ~ .flex-auto .place-content-center img {
        width: 104px !important;
        height: 104px !important;
    }

    #estehkam-cart-marker ~ .flex-auto .place-content-center p[role="heading"] {
        font-size: 14px !important;
    }
}
