/**
 * Cart page critical overrides — loaded on checkout cart only via layout
 * Backup when CSS merge cache is stale; beats theme cart-summary rules
 */

.checkout-cart-index.fpp-cart-page .cart-container {
    align-items: start !important;
    display: grid !important;
    gap: 24px !important;
    grid-template-columns: minmax(0, 1fr) 360px !important;
    padding: 0 !important;
}

.checkout-cart-index.fpp-cart-page .fpp-cart-main-row {
    display: contents !important;
}

.checkout-cart-index.fpp-cart-page .cart.table-wrapper .cart.items > thead > tr > th.col span,
.checkout-cart-index.fpp-cart-page #shopping-cart-table > thead > tr > th span {
    color: #ffffff !important;
}

.checkout-cart-index.fpp-cart-page .fpp-cart-image-wrap .product-image-photo {
    display: block !important;
    height: 100px !important;
    object-fit: cover !important;
    opacity: 1 !important;
    position: static !important;
    visibility: visible !important;
    width: 100px !important;
}

.checkout-cart-index.fpp-cart-page .fpp-cart-image-wrap .product-image-wrapper {
    height: 100px !important;
    padding-bottom: 0 !important;
}

/* Product column + wider name, white rows, horizontal action icons */
.checkout-cart-index.fpp-cart-page #shopping-cart-table col.fpp-col-item {
    width: 52% !important;
}

.checkout-cart-index.fpp-cart-page #shopping-cart-table thead th.col.item,
.checkout-cart-index.fpp-cart-page #shopping-cart-table tbody td.col.item {
    min-width: 300px !important;
    width: 52% !important;
}

.checkout-cart-index.fpp-cart-page #shopping-cart-table .cart.item > tr.item-info > td {
    background: #fff !important;
    border-left: none !important;
    border-right: none !important;
}

.checkout-cart-index.fpp-cart-page #shopping-cart-table .col.action .actions-toolbar,
.checkout-cart-index.fpp-cart-page #shopping-cart-table .col.actions .actions-toolbar {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
}

.checkout-cart-index.fpp-cart-page #shopping-cart-table .col.action .actions-toolbar a,
.checkout-cart-index.fpp-cart-page #shopping-cart-table .col.actions .actions-toolbar a {
    display: inline-flex !important;
    float: none !important;
}

.checkout-cart-index.fpp-cart-page #shopping-cart-table .fpp-cart-item-inner {
    display: flex !important;
    flex-direction: row !important;
}

.checkout-cart-index.fpp-cart-page #shopping-cart-table .product-item-details,
.checkout-cart-index.fpp-cart-page #shopping-cart-table .fpp-cart-item-details {
    display: block !important;
    float: none !important;
    min-width: 140px !important;
    width: auto !important;
}

.checkout-cart-index.fpp-cart-page #shopping-cart-table .product-item-name a {
    color: #2a7d2e !important;
    display: block !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    white-space: normal !important;
}

.checkout-cart-index.fpp-cart-page .cart.table-wrapper .cart.items .col,
.checkout-cart-index.fpp-cart-page .cart.table-wrapper .cart.items td.col {
    padding: 16px 18px !important;
    vertical-align: middle !important;
}

/* Summary — override theme center alignment & negative margins */
.checkout-cart-index.fpp-cart-page .cart-summary {
    background: #fff !important;
    border: 1px solid #084A84 !important;
    border-radius: 8px !important;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    width: 100% !important;
}

.checkout-cart-index.fpp-cart-page .cart-summary .block > .title {
    margin: 0 !important;
    padding: 14px 44px 14px 20px !important;
    text-align: left !important;
}

.checkout-cart-index.fpp-cart-page .cart-summary .block > .title::after {
    right: 20px !important;
    top: 50% !important;
    transform: translateY(-50%);
}

.checkout-cart-index.fpp-cart-page .cart-summary .block > .title strong,
.checkout-cart-index.fpp-cart-page .cart-summary .block > .title #block-shipping-heading,
.checkout-cart-index.fpp-cart-page .cart-summary .block > .title #block-discount-heading {
    padding-left: 0 !important;
    text-align: left !important;
}

.checkout-cart-index.fpp-cart-page .cart-summary #co-shipping-method-form .item-options .radio {
    float: none !important;
    margin: 0 !important;
}

.checkout-cart-index.fpp-cart-page .cart-summary #co-shipping-method-form .item-options label.label {
    float: none !important;
    text-align: left !important;
}

.checkout-cart-index.fpp-cart-page .cart-summary #co-shipping-method-form .item-options label.label .price {
    float: none !important;
}

@media (min-width: 769px) {
    .checkout-cart-index.fpp-cart-page .cart-summary {
        width: 100% !important;
    }
}

@media (max-width: 991px) {
    .checkout-cart-index.fpp-cart-page .cart-container {
        grid-template-columns: 1fr !important;
    }
}

/* Remove-item modal buttons — beat theme buttonMixin */
.fpp-cart-confirm-overlay button.fpp-cart-btn-cancel,
.fpp-cart-confirm-overlay button.fpp-cart-btn-delete {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    height: 44px !important;
    line-height: 1 !important;
    padding: 0 24px !important;
    text-transform: none !important;
    font-weight: 700 !important;
}

.fpp-cart-confirm-overlay button.fpp-cart-btn-cancel span,
.fpp-cart-confirm-overlay button.fpp-cart-btn-delete span {
    display: block !important;
    line-height: 1.2 !important;
    text-align: center !important;
    width: 100% !important;
}
