/* ================================================
   Saifi Cart Page – UI/UX Improvements
   ================================================ */

/* ---- Page heading + item count + step indicator ---- */
.saifi-cart-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.saifi-cart-title {
    margin: 0;
    font-size: 28px;
    font-weight: 700;
    color: #003b5c;
    display: flex;
    align-items: baseline;
    gap: 10px;
    flex-wrap: wrap;
}
.saifi-cart-count {
    font-size: 15px;
    font-weight: 500;
    color: #6b7280;
}

/* ---- Thumbnail: constrain portrait images ---- */
.woocommerce-cart-form .product-thumbnail img,
.tp-acadia-woo-cart .product-thumbnail img {
    width: 72px !important;
    height: 80px !important;
    object-fit: cover !important;
    border-radius: 6px;
    display: block;
}

/* ---- Subtotal column: remove red/amber color ---- */
.woocommerce-cart-form .product-subtotal,
.woocommerce-cart-form .product-subtotal * {
    color: #111 !important;
}

/* ---- Remove button: trash icon, no text ---- */
.saifi-remove-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 6px;
    color: #9ca3af !important;
    background: transparent;
    border: 1px solid transparent;
    transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}
.saifi-remove-btn:hover {
    color: #ef4444 !important;
    background: #fef2f2;
    border-color: #fecaca;
}

/* ---- "Apply" coupon button — brand navy ---- */
.saifi-apply-btn,
.tp-cart-coupon-input .button.saifi-apply-btn {
    background: #003b5c !important;
    border-color: #003b5c !important;
    color: #fff !important;
}
.saifi-apply-btn:hover,
.tp-cart-coupon-input .button.saifi-apply-btn:hover {
    background: #002b44 !important;
    border-color: #002b44 !important;
}

/* ---- "Update cart" — outlined secondary style ---- */
.saifi-update-btn,
.tp-cart-update .button.saifi-update-btn {
    background: transparent !important;
    border: 1px solid #d1d5db !important;
    color: #6b7280 !important;
    box-shadow: none !important;
}
.saifi-update-btn:not([disabled]):hover,
.tp-cart-update .button.saifi-update-btn:not([disabled]):hover {
    border-color: #9ca3af !important;
    color: #374151 !important;
}

/* ---- "Proceed to checkout" — amber CTA ---- */
.wc-proceed-to-checkout .checkout-button,
.tp-cart-checkout-wrapper .checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
    background: #f59e0b !important;
    border-color: #f59e0b !important;
    color: #fff !important;
    font-weight: 600;
}
.wc-proceed-to-checkout .checkout-button:hover,
.tp-cart-checkout-wrapper .checkout-button:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
    background: #d97706 !important;
    border-color: #d97706 !important;
}

/* ---- Cart Totals: stronger Total row ---- */
.cart_totals .order-total th,
.cart_totals .order-total td,
.cart_totals .order-total td * {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #111 !important;
}

/* ---- Sticky sidebar ---- */
.saifi-cart-sidebar {
    position: sticky;
    top: 20px;
}

/* ---- "Continue Shopping" link ---- */
.saifi-continue-shopping {
    margin-top: 16px;
}
.saifi-continue-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 500;
    color: #003b5c !important;
    text-decoration: none !important;
    transition: gap 0.15s ease;
}
.saifi-continue-link:hover {
    gap: 2px;
    text-decoration: underline !important;
}

/* ---- Table header left-align (override theme center) ---- */
.tp-acadia-woo-cart .shop_table thead th {
    text-align: left !important;
}
.tp-acadia-woo-cart .shop_table .product-remove,
.tp-acadia-woo-cart .shop_table thead .product-remove {
    text-align: center !important;
}
.tp-acadia-woo-cart .shop_table .product-subtotal {
    text-align: right !important;
}
.tp-acadia-woo-cart .shop_table thead .product-subtotal {
    text-align: right !important;
}

/* ---- Mobile ---- */
@media (max-width: 991px) {
    .saifi-cart-sidebar {
        position: static;
        margin-top: 24px;
    }
    .woocommerce-cart-form .product-thumbnail img,
    .tp-acadia-woo-cart .product-thumbnail img {
        width: 56px !important;
        height: 64px !important;
    }
}
