/* =========================================
   Cart Page Styles
   ========================================= */

.y-l-cart-main {
    padding-top: var(--y-spacing-40);
    padding-bottom: var(--y-spacing-90);
    min-height: var(--y-height-80vh);
}

/* --- Top Navigation --- */
.y-c-cart-nav {
    display: flex;
    justify-content: flex-start;
    margin-bottom: var(--y-spacing-20);
}

.y-c-back-link {
    color: var(--y-color-secondary-text);
    font-size: var(--y-font-size-16);
    font-weight: var(--y-font-weight-600);
    display: flex;
    align-items: center;
    gap: var(--y-spacing-8);
    transition: var(--y-transition-default);
    text-decoration: none;
}

.y-c-back-link:hover {
    color: var(--y-color-primary);
}

/* --- Page Header --- */
.y-c-page-header {
    text-align: center;
    margin-bottom: var(--y-spacing-50);
}

.y-c-page-title {
    font-family: var(--y-font-family-Cairo);
    font-size: var(--y-font-size-40);
    font-weight: var(--y-font-weight-700);
    color: var(--y-color-secondary-text);
}

/* --- Main Layout Grid --- */
.y-l-cart-grid {
    display: grid;
    grid-template-columns: 1fr var(--y-size-350);
    gap: var(--y-spacing-30);
    align-items: start;
}

.y-l-cart-items-container {
    display: flex;
    flex-direction: column;
    gap: var(--y-spacing-20);
}

/* =========================================
   Updated Cart Item Card
   ========================================= */

.y-c-cart-item {
    background-color: var(--y-color-background-light);
    border: var(--y-border-1) solid var(--y-color-border-blured);
    border-radius: var(--y-radius-16);
    padding: var(--y-spacing-20);
    display: flex;
    flex-direction: column;
    box-shadow: var(--y-shadow-sm);
}

/* --- Top Row: Product Info --- */
.y-c-cart-row-product {
    display: grid;
    grid-template-columns: var(--y-size-120) 1fr 1.5fr 1.5fr;
    /* Image | Info | Qty | Actions */
    gap: var(--y-spacing-20);
    align-items: center;
    margin-bottom: var(--y-spacing-15);
}

/* Image */
.y-c-col-image {
    width: var(--y-size-120);
    height: var(--y-size-120);
    border-radius: var(--y-radius-8);
    overflow: hidden;
}

.y-c-item-img {
    width: var(--y-percent-100);
    height: var(--y-percent-100);
    object-fit: cover;
}

/* Info (Name & Price) */
.y-c-col-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--y-spacing-8);
}

.y-c-item-title {
    font-family: var(--y-font-family-Cairo);
    font-size: var(--y-font-size-20);
    font-weight: var(--y-font-weight-500);
    color: var(--y-color-secondary-text);
    margin: 0;
}

.y-c-item-unit-price {
    font-size: var(--y-font-size-18);
    font-weight: var(--y-font-weight-500);
    color: var(--y-color-secondary-text);
    display: flex;
    align-items: center;
    gap: var(--y-spacing-4);
    direction: ltr;
}

.y-c-coin-sm {
    width: var(--y-size-14);
    height: auto;
    object-fit: contain;
}

/* Qty Selector */
.y-c-col-qty {
    display: flex;
    justify-content: center;
}

/* Actions (Total & Delete) */
.y-c-col-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row-reverse;
}

.y-c-item-total-price {
    display: flex;
    align-items: center;
    gap: var(--y-size-5);
    font-size: var(--y-font-size-16);
    font-weight: var(--y-font-weight-600);
    color: var(--y-color-secondary-text);
}

.y-c-total-label {
    font-weight: var(--y-font-weight-500);
}

.y-c-total-value {
    font-weight: var(--y-font-weight-700);
    direction: ltr;
}

.y-c-delete-btn {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--y-color-error);
    font-size: var(--y-font-size-20);
    transition: transform 0.2s ease;
}

.y-c-delete-btn:hover {
    transform: scale(1.1);
}

/* --- Divider --- */
.y-c-item-divider {
    height: var(--y-border-1);
    background-color: var(--y-color-border-blured);
    width: var(--y-percent-100);
    margin-bottom: var(--y-spacing-15);
}

/* --- Bottom Row: Recipient Info --- */
.y-c-cart-row-recipient {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.y-c-recipient-info {
    display: flex;
    flex-direction: column;
    gap: var(--y-spacing-4);
    text-align: right;
}

.y-c-recipient-heading {
    font-size: var(--y-font-size-16);
    font-weight: var(--y-font-weight-600);
    color: var(--y-color-secondary-text);
    margin-bottom: var(--y-spacing-4);
}

.y-c-recipient-text {
    font-size: var(--y-font-size-14);
    color: var(--y-color-secondary-text);
    opacity: 0.8;
    line-height: 1.5;
}

.y-u-text-dark {
    color: var(--y-color-primary-text-dark);
    font-weight: var(--y-font-weight-700);
    opacity: 1;
}

/* Edit Button */
.y-c-edit-btn {
    background-color: var(--y-color-third);
    color: var(--y-color-secondary-text);
    border: var(--y-border-1) solid var(--y-color-border-blured);
    border-radius: var(--y-radius-8);
    padding: var(--y-spacing-8) var(--y-spacing-20);
    font-family: var(--y-font-family-Cairo);
    font-size: var(--y-font-size-14);
    font-weight: var(--y-font-weight-600);
    cursor: pointer;
    transition: var(--y-transition-default);
}

.y-c-edit-btn:hover {
    background-color: var(--y-color-primary);
    color: var(--y-color-primary-text);
}

/* --- Summary Column (Unchanged mostly) --- */
.y-c-cart-summary {
    background-color: var(--y-color-background-light);
    border: var(--y-border-1) solid var(--y-color-border-blured);
    border-radius: var(--y-radius-16);
    padding: var(--y-spacing-30);
    position: sticky;
    top: var(--y-spacing-30);
    display: flex;
    flex-direction: column;
    gap: var(--y-spacing-20);
}

.y-c-summary-title {
    font-family: var(--y-font-family-Cairo);
    font-size: var(--y-font-size-24);
    font-weight: var(--y-font-weight-700);
    color: var(--y-color-secondary-text);
    text-align: right;
    margin-bottom: var(--y-spacing-10);
}

.y-c-summary-row,
.y-c-summary-total-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: var(--y-font-size-16);
    color: var(--y-color-secondary-text);
}

.y-c-summary-total-row {
    font-size: var(--y-font-size-20);
    font-weight: var(--y-font-weight-500);
    margin-top: var(--y-spacing-10);
}

.y-c-divider {
    height: var(--y-border-1);
    background-color: var(--y-color-border-blured);
    margin: var(--y-spacing-10) 0;
    width: var(--y-percent-100);
}

.y-c-summary-actions {
    display: flex;
    flex-direction: column;
    gap: var(--y-spacing-15);
    margin-top: var(--y-spacing-20);
}

/* Responsive */
@media (max-width: 992px) {
    .y-l-cart-grid {
        grid-template-columns: 1fr;
        margin: 0 var(--y-spacing-10);
    }

    .y-c-cart-summary {
        order: 1;
    }
}

@media (max-width: 768px) {
    .y-c-cart-item {
        position: relative;
    }

    /* Row 1: Image & Info */
    .y-c-cart-row-product {
        grid-template-columns: var(--y-size-200) 1fr;
        grid-template-areas:
            "img info"
            "qty actions";
        gap: var(--y-spacing-15);
        align-items: flex-start;
    }

    .y-c-col-image {
        grid-area: img;
        width: var(--y-size-100);
        height: var(--y-size-100);
    }

    .y-c-col-info {
        grid-area: info;
        padding-top: var(--y-spacing-10);
    }

    /* Row 2: Qty & Total */
    .y-c-col-qty {
        grid-area: qty;
        justify-content: flex-start;
        margin-top: var(--y-spacing-10);
    }

    .y-c-col-actions {
        grid-area: actions;
        width: var(--y-percent-100);
        flex-direction: row;
        justify-content: flex-end;
        align-items: center;
        margin-top: var(--y-spacing-10);
        border: none;
        padding: 0;
    }

    /* Position Delete Button Absolute Top-Left (matches image) */
    .y-c-delete-btn {
        position: absolute;
        top: var(--y-spacing-15);
        left: var(--y-spacing-15);
        color: var(--y-color-error);
        font-size: var(--y-font-size-20);
    }

    /* Recipient Row */
    .y-c-cart-row-recipient {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-end;
    }

    .y-c-recipient-info {
        font-size: var(--y-font-size-12);
    }

    .y-c-edit-btn {
        font-size: var(--y-font-size-12);
        padding: var(--y-spacing-8) var(--y-spacing-15);
    }
}

/* =========================================
   Override WooCommerce Default Styles - COMPLETE OVERRIDE
   ========================================= */

/* Hide ALL WooCommerce default cart elements */
.woocommerce-cart .woocommerce table.cart,
.woocommerce-cart .woocommerce .cart-collaterals,
.woocommerce-cart .woocommerce .cart_totals,
.woocommerce-cart .woocommerce .wc-proceed-to-checkout,
.woocommerce-cart .woocommerce .return-to-shop,
.woocommerce-cart .woocommerce .cart-empty,
.woocommerce-cart .woocommerce .cart-empty-message,
.woocommerce-cart .woocommerce .cart-form,
.woocommerce-cart .woocommerce .shop_table,
.woocommerce-cart .woocommerce .actions,
.woocommerce-cart .woocommerce .coupon,
.woocommerce-cart .woocommerce .cart-subtotal,
.woocommerce-cart .woocommerce .shipping,
.woocommerce-cart .woocommerce .order-total {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
}

/* Override WooCommerce cart page wrapper - Remove all default styles */
.woocommerce-cart .woocommerce,
.woocommerce-cart .woocommerce-page,
body.woocommerce-cart .woocommerce,
body.woocommerce-cart .woocommerce-page {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
}

/* Remove WooCommerce default container styles */
.woocommerce-cart .woocommerce .woocommerce-cart-form,
.woocommerce-cart .woocommerce .cart-collaterals {
    display: none !important;
}

/* Ensure our custom cart layout is visible and properly styled */
.woocommerce-cart .y-l-cart-main,
body.woocommerce-cart .y-l-cart-main {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}

/* Override WooCommerce default cart notices */
.woocommerce-cart .woocommerce-notices-wrapper,
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-error,
.woocommerce-cart .woocommerce-info {
    margin-bottom: var(--y-spacing-30) !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* Remove WooCommerce default cart form styles */
.woocommerce-cart .woocommerce form,
.woocommerce-cart form.woocommerce-cart-form {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* Override ALL WooCommerce default button styles */
.woocommerce-cart .woocommerce .button,
.woocommerce-cart .woocommerce input.button,
.woocommerce-cart .woocommerce button.button,
.woocommerce-cart .woocommerce a.button,
.woocommerce-cart .woocommerce .button.alt,
.woocommerce-cart .woocommerce .button-primary {
    display: none !important;
    visibility: hidden !important;
}

/* Ensure our custom buttons are visible */
.woocommerce-cart .y-c-primary-btn,
.woocommerce-cart .y-c-outline-btn,
.woocommerce-cart .y-c-edit-btn,
.woocommerce-cart .y-c-delete-btn {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Remove WooCommerce default table styles */
.woocommerce-cart table,
.woocommerce-cart table.shop_table,
.woocommerce-cart table.cart {
    display: none !important;
    border: none !important;
    background: transparent !important;
}

/* Remove WooCommerce default input styles */
.woocommerce-cart input[type="text"],
.woocommerce-cart input[type="number"],
.woocommerce-cart input[type="email"],
.woocommerce-cart textarea,
.woocommerce-cart select {
    /* Keep only our custom styles */
    font-family: inherit !important;
}

/* Override WooCommerce default link styles */
.woocommerce-cart a {
    text-decoration: none !important;
}

/* Remove WooCommerce default spacing */
.woocommerce-cart .woocommerce * {
    box-sizing: border-box !important;
}

/* Ensure our custom elements are not affected */
.woocommerce-cart .y-l-cart-main *,
.woocommerce-cart .y-c-cart-item *,
.woocommerce-cart .y-c-cart-summary * {
    box-sizing: border-box !important;
}