/* ============================================================
   CART & CHECKOUT — LUXURY STYLES (CLASSIC TEMPLATES)
   ============================================================ */

/* Page background */
body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main {
    background: #F6F1E8 !important;
    padding: 3rem 1.5rem 5rem !important;
}

/* Titles */
.ab-cart-title,
.ab-checkout-title {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: clamp(2.5rem, 5vw, 3.5rem) !important;
    font-weight: 400 !important;
    color: #2A1F14 !important;
    margin: 0 0 3rem 0 !important;
    letter-spacing: -0.01em !important;
}

/* ============================================================
   CART PAGE
   ============================================================ */
.ab-cart-layout {
    display: grid !important;
    grid-template-columns: 1fr 420px !important;
    gap: 3rem !important;
    align-items: start !important;
    max-width: 1300px;
    margin: 0 auto;
}

/* Items header */
.ab-cart-header {
    display: flex !important;
    justify-content: space-between !important;
    padding-bottom: 1rem !important;
    border-bottom: 1px solid #E5DCC9 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    color: #8B7B6B !important;
    margin-bottom: 0.5rem;
}

/* Item row */
.ab-cart-item {
    display: grid !important;
    grid-template-columns: 100px 1fr auto !important;
    gap: 1.5rem !important;
    padding: 1.75rem 0 !important;
    border-bottom: 1px solid #E5DCC9 !important;
    align-items: start !important;
}

.ab-cart-item-img img {
    width: 100px !important;
    height: 100px !important;
    object-fit: cover !important;
    border-radius: 4px !important;
    display: block !important;
}

.ab-cart-item-name {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
    margin: 0 0 0.35rem !important;
    line-height: 1.3 !important;
}

.ab-cart-item-name a { color: inherit !important; text-decoration: none !important; }

.ab-cart-item-details .variation,
.ab-cart-item-details dl.variation {
    font-size: 0.8rem !important;
    color: #8B7B6B !important;
    margin: 0 0 0.5rem !important;
}

.ab-cart-item-price {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.85rem !important;
    color: #B8935E !important;
    font-weight: 500 !important;
    margin: 0.25rem 0;
}

/* Quantity */
.ab-cart-item-qty { margin-top: 1rem; }

.ab-cart-item-qty .quantity {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid #E5DCC9 !important;
    border-radius: 4px !important;
    background: #FBF7F0 !important;
    height: 44px !important;
    overflow: hidden !important;
}

.ab-cart-item-qty input.qty {
    width: 50px !important;
    height: 100% !important;
    border: none !important;
    background: transparent !important;
    text-align: center !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
    -moz-appearance: textfield !important;
}

.ab-cart-item-qty input.qty::-webkit-outer-spin-button,
.ab-cart-item-qty input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* Remove */
.ab-cart-item-remove a.remove {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    background: #FBF7F0 !important;
    border: 1px solid #E5DCC9 !important;
    border-radius: 50% !important;
    color: #8B7B6B !important;
    text-decoration: none !important;
    font-size: 1.1rem !important;
    margin-top: 0.5rem;
    transition: all 0.2s !important;
}

.ab-cart-item-remove a.remove:hover {
    background: #D92D20 !important;
    color: #FFF !important;
    border-color: #D92D20 !important;
}

.ab-cart-item-total {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
    text-align: right !important;
    align-self: start !important;
}

/* Coupon + Update */
.ab-cart-actions {
    display: flex !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    flex-wrap: wrap !important;
    margin-top: 2rem !important;
}

.coupon {
    display: flex !important;
    gap: 0.5rem !important;
    max-width: 400px !important;
    flex: 1 !important;
}

.coupon input {
    flex: 1 !important;
    padding: 0.75rem 1rem !important;
    border: 1px solid #E5DCC9 !important;
    border-radius: 4px !important;
    background: #FFF !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
}

.ab-update-cart,
.coupon .button {
    background: #B8935E !important;
    color: #FFF !important;
    border: none !important;
    padding: 0.85rem 1.75rem !important;
    border-radius: 4px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

.ab-update-cart:hover, .coupon .button:hover {
    background: #8B6F47 !important;
}

/* ---------- TOTALS SIDEBAR ---------- */
.ab-cart-totals-col .cart_totals {
    background: #FBF7F0 !important;
    border: 1px solid #E5DCC9 !important;
    border-radius: 4px !important;
    padding: 2rem !important;
    position: sticky !important;
    top: 100px !important;
}

.cart_totals h2 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 1.6rem !important;
    color: #2A1F14 !important;
    font-weight: 600 !important;
    margin: 0 0 1.5rem !important;
    padding-bottom: 1rem !important;
    border-bottom: 1px solid #E5DCC9 !important;
}

.cart_totals table { width: 100% !important; border: none !important; border-collapse: collapse !important; }
.cart_totals th, .cart_totals td {
    padding: 0.85rem 0 !important;
    border-bottom: 1px solid #EFE7D8 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
    color: #3A2E20 !important;
    font-weight: 400 !important;
    text-align: left !important;
}
.cart_totals th { text-align: left !important; }
.cart_totals td { text-align: right !important; font-weight: 600 !important; color: #2A1F14 !important; }

.cart_totals tr.order-total th,
.cart_totals tr.order-total td {
    border-top: 2px solid #B8935E !important;
    border-bottom: none !important;
    padding-top: 1.5rem !important;
    font-size: 1.2rem !important;
}

.cart_totals tr.order-total th {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
}
.cart_totals tr.order-total td { color: #B8935E !important; font-size: 1.3rem !important; font-weight: 700 !important; }

.cart_totals ul#shipping_method {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: right !important;
}
.cart_totals ul#shipping_method li {
    font-size: 0.85rem !important;
    color: #3A2E20 !important;
    padding: 0.3rem 0 !important;
}

/* Proceed button */
.wc-proceed-to-checkout a.checkout-button,
.wc-proceed-to-checkout .button {
    display: block !important;
    width: 100% !important;
    background: #B8935E !important;
    color: #FFF !important;
    text-align: center !important;
    padding: 1.15rem !important;
    border-radius: 4px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    margin-top: 1.5rem !important;
    transition: background 0.2s !important;
}
.wc-proceed-to-checkout a.checkout-button:hover,
.wc-proceed-to-checkout .button:hover { background: #8B6F47 !important; }

/* Empty cart */
.cart-empty, .return-to-shop { text-align: center !important; padding: 3rem 0 !important; }
.cart-empty {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 1.75rem !important;
    color: #2A1F14 !important;
}
.return-to-shop .button {
    display: inline-block !important;
    background: #B8935E !important;
    color: #FFF !important;
    padding: 1rem 2rem !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    font-size: 0.75rem !important;
    letter-spacing: 0.15em !important;
}

/* ============================================================
   CHECKOUT PAGE
   ============================================================ */
.ab-checkout-layout {
    display: grid !important;
    grid-template-columns: 1fr 480px !important;
    gap: 3rem !important;
    align-items: start !important;
    max-width: 1300px;
    margin: 0 auto;
}

.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3,
#order_review_heading {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 1.5rem !important;
    color: #2A1F14 !important;
    font-weight: 600 !important;
    margin: 0 0 1.5rem !important;
    padding-bottom: 0.75rem !important;
    border-bottom: 1px solid #E5DCC9 !important;
}

/* Form fields */
.woocommerce form .form-row { margin-bottom: 1.25rem !important; padding: 0 !important; }
.woocommerce form .form-row label {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.72rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    color: #8B7B6B !important;
    margin-bottom: 0.4rem !important;
    display: block !important;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    background: #FBF7F0 !important;
    border: 1px solid #E5DCC9 !important;
    border-radius: 4px !important;
    padding: 0.85rem 1rem !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.95rem !important;
    color: #2A1F14 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
    outline: none !important;
    border-color: #B8935E !important;
    box-shadow: 0 0 0 1px #B8935E !important;
}

/* Order review box */
.ab-order-review {
    background: #FBF7F0 !important;
    border: 1px solid #E5DCC9 !important;
    border-radius: 4px !important;
    padding: 2rem !important;
    position: sticky !important;
    top: 100px !important;
}
.ab-order-review h3 {
    border-bottom: 1px solid #E5DCC9 !important;
    padding-bottom: 1rem !important;
    margin-bottom: 1.5rem !important;
}

.woocommerce-checkout-review-order-table {
    width: 100% !important;
    border: none !important;
    border-collapse: collapse !important;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
    padding: 0.75rem 0 !important;
    border: none !important;
    border-bottom: 1px solid #EFE7D8 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
    color: #3A2E20 !important;
    text-align: left !important;
    font-weight: 400 !important;
}
.woocommerce-checkout-review-order-table thead th {
    font-size: 0.7rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    color: #8B7B6B !important;
    border-bottom: 1px solid #E5DCC9 !important;
}
.woocommerce-checkout-review-order-table .product-name {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 1rem !important;
    color: #2A1F14 !important;
}
.woocommerce-checkout-review-order-table .product-total,
.woocommerce-checkout-review-order-table tfoot td {
    text-align: right !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
}
.woocommerce-checkout-review-order-table tfoot .order-total th,
.woocommerce-checkout-review-order-table tfoot .order-total td {
    border-top: 2px solid #B8935E !important;
    border-bottom: none !important;
    padding-top: 1.25rem !important;
}
.woocommerce-checkout-review-order-table tfoot .order-total th {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 1.2rem !important;
    color: #2A1F14 !important;
}
.woocommerce-checkout-review-order-table tfoot .order-total td {
    color: #B8935E !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
}

/* Payment section */
#payment { background: transparent !important; margin-top: 1.5rem !important; }
#payment ul.payment_methods {
    border: none !important;
    border-bottom: 1px solid #EFE7D8 !important;
    padding: 0 0 1rem !important;
    margin: 0 0 1.5rem !important;
    list-style: none !important;
}
#payment ul.payment_methods li { padding: 0.5rem 0 !important; }
#payment ul.payment_methods li label {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
    color: #3A2E20 !important;
    cursor: pointer !important;
}

#place_order {
    width: 100% !important;
    background: #B8935E !important;
    color: #FFF !important;
    border: none !important;
    padding: 1.25rem !important;
    border-radius: 4px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: background 0.2s !important;
}
#place_order:hover { background: #8B6F47 !important; }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
    background: #FBF7F0 !important;
    border: 1px solid #E5DCC9 !important;
    border-left: 4px solid #B8935E !important;
    border-radius: 4px !important;
    padding: 1rem 1.5rem !important;
    list-style: none !important;
    color: #3A2E20 !important;
    font-size: 0.9rem !important;
    margin-bottom: 2rem !important;
}

/* ============================================================
   MOBILE
   ============================================================ */
@media (max-width: 900px) {
    .ab-cart-layout,
    .ab-checkout-layout {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }
    .ab-cart-totals-col .cart_totals,
    .ab-order-review { position: static !important; }

    .ab-cart-item {
        grid-template-columns: 80px 1fr !important;
        gap: 1rem !important;
    }
    .ab-cart-item-img img { width: 80px !important; height: 80px !important; }
    .ab-cart-item-total {
        grid-column: 2 !important;
        text-align: left !important;
        margin-top: 0.5rem !important;
    }
    .ab-cart-actions { flex-direction: column !important; }
    .coupon { max-width: 100% !important; }
    .ab-update-cart { width: 100% !important; }
}

/* ============================================================
   FIX: Shipping row — hide bullet + clean label
   ============================================================ */

/* 1. Hide the radio/bullet dot in the shipping method list */
.cart_totals tr.shipping .woocommerce-shipping-methods input[type="radio"],
.cart_totals tr.shipping ul#shipping_method input[type="radio"],
.woocommerce-checkout-review-order-table tr.shipping input[type="radio"] {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    opacity: 0 !important;
}

/* 2. Remove the stray bullet that the radio creates */
.cart_totals tr.shipping ul#shipping_method li::before,
.cart_totals tr.shipping ul#shipping_method li::marker,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method li::before {
    content: none !important;
    display: none !important;
}

/* 3. Left side of shipping row: plain "Shipping" label, no currency */
.cart_totals tr.shipping th,
.woocommerce-checkout-review-order-table tr.shipping th {
    font-weight: 500 !important;
    color: #3A2E20 !important;
    text-align: left !important;
}

/* 4. Right side: bold money only */
.cart_totals tr.shipping td,
.woocommerce-checkout-review-order-table tr.shipping td {
    text-align: right !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
}

/* 5. Shipping method list — flatten to just the price */
.cart_totals tr.shipping ul#shipping_method,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    text-align: right !important;
}

.cart_totals tr.shipping ul#shipping_method li,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method li {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: right !important;
    list-style: none !important;
}

/* 6. Hide the label inside the shipping method (the "Shipping: " text) */
.cart_totals tr.shipping ul#shipping_method label,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method label {
    display: inline !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
}

/* 7. Remove the "Shipping: " prefix from the price display */
.cart_totals tr.shipping .amount::before,
.woocommerce-checkout-review-order-table tr.shipping .amount::before {
    content: '' !important;
}

/* 8. Clean the "Shipment" / "Change address" secondary text */
.cart_totals tr.shipping .woocommerce-shipping-destination,
.cart_totals tr.shipping .woocommerce-shipping-calculator {
    font-size: 0.85rem !important;
    color: #8B7B6B !important;
    text-align: right !important;
}

.cart_totals tr.shipping .woocommerce-shipping-calculator a,
.cart_totals tr.shipping a.shipping-calculator-button {
    color: #B8935E !important;
    text-decoration: underline !important;
    font-size: 0.8rem !important;
}


/* ============================================================
   FINAL FIX: Shipping row — clean "Shipping ... AED 15.00"
   ============================================================ */

/* 1. Label on left should just say "Shipping" */
.cart_totals tr.shipping th,
.woocommerce-checkout-review-order-table tr.shipping th {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    color: #3A2E20 !important;
    text-align: left !important;
    vertical-align: top !important;
}

/* 2. Right cell: keep only the price, right-aligned */
.cart_totals tr.shipping td,
.woocommerce-checkout-review-order-table tr.shipping td {
    text-align: right !important;
    vertical-align: top !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
}

/* 3. Hide the "Shipping to test, test." destination text */
.cart_totals tr.shipping .woocommerce-shipping-destination,
.woocommerce-checkout-review-order-table tr.shipping .woocommerce-shipping-destination {
    display: none !important;
}

/* 4. Style "Change address" as small muted link */
.cart_totals tr.shipping a.shipping-calculator-button,
.woocommerce-checkout-review-order-table tr.shipping a.shipping-calculator-button {
    display: block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.75rem !important;
    color: #8B7B6B !important;
    text-decoration: underline !important;
    text-align: right !important;
    margin-top: 0.5rem !important;
    font-weight: 400 !important;
}

/* 5. Hide any radio button inside the shipping methods list */
.cart_totals tr.shipping ul#shipping_method li input[type="radio"],
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method li input[type="radio"] {
    display: none !important;
}

/* 6. Remove list bullet styling */
.cart_totals tr.shipping ul#shipping_method,
.cart_totals tr.shipping ul#shipping_method li,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method li {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: right !important;
}

/* 7. Strip any "Shipping: " prefix text in the label */
.cart_totals tr.shipping ul#shipping_method label,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method label {
    font-weight: 600 !important;
    color: #2A1F14 !important;
    font-size: 0.9rem !important;
}

/* 8. Hide the whole shipping methods list if it only has one rate */
.cart_totals tr.shipping ul#shipping_method.single-rate,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method.single-rate {
    display: inline-block !important;
}


/* ============================================================
   FINAL POLISH: Shipping row — "Shipping | AED 15.00"
   ============================================================ */

/* Left header: clean "Shipping" label */
.cart_totals tr.shipping th,
.woocommerce-checkout-review-order-table tr.shipping th {
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    color: #3A2E20 !important;
    text-align: left !important;
    vertical-align: top !important;
    padding-top: 1rem !important;
}

/* Right cell: right-aligned price only */
.cart_totals tr.shipping td,
.woocommerce-checkout-review-order-table tr.shipping td {
    text-align: right !important;
    vertical-align: top !important;
    padding-top: 1rem !important;
}

/* Shipping methods list: right-aligned price, no bullet, no radio */
.cart_totals tr.shipping ul#shipping_method,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    text-align: right !important;
}

.cart_totals tr.shipping ul#shipping_method li,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method li {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: right !important;
    display: block !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
    font-size: 0.9rem !important;
}

/* Hide radio/checkbox inside shipping */
.cart_totals tr.shipping ul#shipping_method li input,
.woocommerce-checkout-review-order-table tr.shipping ul#shipping_method li input {
    display: none !important;
}

/* Hide the "Shipping to..." destination line */
.cart_totals tr.shipping .woocommerce-shipping-destination,
.woocommerce-checkout-review-order-table tr.shipping .woocommerce-shipping-destination {
    display: none !important;
}

/* Style "Change address" as small muted link */
.cart_totals tr.shipping a.shipping-calculator-button,
.woocommerce-checkout-review-order-table tr.shipping a.shipping-calculator-button {
    display: block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.75rem !important;
    color: #8B7B6B !important;
    text-decoration: underline !important;
    text-align: right !important;
    margin-top: 0.5rem !important;
    font-weight: 400 !important;
}

/* Hide the "Shipment:" prefix text if it still appears */
.cart_totals tr.shipping td .woocommerce-shipping-methods label::before,
.woocommerce-checkout-review-order-table tr.shipping td .woocommerce-shipping-methods label::before {
    content: none !important;
}


/* ============================================================
   CART SUMMARY — ITEM ROW STYLING
   ============================================================ */
.ab-cart-totals-col .cart_totals tr.cart-item-summary th,
.ab-cart-totals-col .cart_totals tr.cart-item-summary td {
    padding: 0.85rem 0 !important;
    border-bottom: 1px solid #EFE7D8 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.9rem !important;
    color: #3A2E20 !important;
    font-weight: 400 !important;
    vertical-align: top !important;
}

.ab-cart-totals-col .cart_totals tr.cart-item-summary th {
    text-align: left !important;
    line-height: 1.4 !important;
}

.ab-cart-totals-col .cart_totals tr.cart-item-summary td {
    text-align: right !important;
    font-weight: 600 !important;
    color: #2A1F14 !important;
    white-space: nowrap !important;
    padding-left: 1rem !important;
}

.ab-cart-totals-col .cart_totals tr.cart-item-summary .item-qty {
    font-size: 0.8rem !important;
    color: #8B7B6B !important;
    margin-left: 0.35rem !important;
}

