/* ============================================
   Premium Cart & Checkout — Resha Rugs
   PURE CSS — No JS for cart (zero FOUC)
   Colors: #0d0625 (navy), #e1bc92 (gold)
   v4.0.0
   ============================================ */

/* ═══════════════════════════════════════════════
   PROGRESS BAR
   ═══════════════════════════════════════════════ */
.resha-checkout-progress {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 20px 0 24px;
    max-width: 480px;
    margin: 0 auto;
}
.resha-progress-step {
    display: flex; align-items: center; gap: 8px;
    font-size: 13px; font-weight: 600; color: #b5b0c3;
    white-space: nowrap; text-decoration: none; transition: color 0.2s;
}
.resha-progress-step.active { color: #0d0625; }
.resha-progress-step.completed { color: #e1bc92; }
.resha-progress-step .step-num {
    width: 30px; height: 30px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 12px; font-weight: 700;
    border: 2px solid #e8e5ef; background: #fff;
    transition: all 0.3s; flex-shrink: 0;
}
.resha-progress-step.active .step-num {
    background: linear-gradient(135deg, #0d0625, #1a103d);
    color: #e1bc92; border-color: #0d0625;
    box-shadow: 0 4px 12px rgba(13, 6, 37, 0.2);
}
.resha-progress-line {
    width: 48px; height: 2px; background: #e8e5ef;
    margin: 0 10px; border-radius: 2px;
}

/* ═══════════════════════════════════════════════
   CART PAGE — Two-Column Layout (Pure CSS)
   Targets Woodmart's existing HTML structure directly.
   ═══════════════════════════════════════════════ */

/* --- Two-column layout via Elementor containers --- */
/* The cart page is built with Woodmart Theme Builder (Elementor).
   Cart form and totals are in separate e-con.e-child containers
   inside the parent container .elementor-element-c70bd0b */

/* Make the parent inner container use horizontal flex */
.woocommerce-cart .elementor-element-c70bd0b > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 32px !important;
    align-items: flex-start !important;
}

/* Cart form container = left column */
.woocommerce-cart .elementor-element-e31b5b9 {
    flex: 1 1 0% !important;
    min-width: 0 !important;
    max-width: none !important;
    width: auto !important;
}

/* Cart totals container = right column */
.woocommerce-cart .elementor-element-7297cca {
    flex: 0 0 360px !important;
    max-width: 360px !important;
    min-width: 0 !important;
    width: auto !important;
}

/* --- Cart Table → Card-like rows --- */
.woocommerce-cart table.shop_table {
    border: none !important;
    border-collapse: separate !important;
    border-spacing: 0 12px !important;
    background: transparent !important;
}

/* Hide table header */
.woocommerce-cart table.shop_table thead {
    display: none !important;
}

/* Each row = a card */
.woocommerce-cart table.shop_table tbody tr.cart_item,
.woocommerce-cart table.shop_table tbody tr.woocommerce-cart-form__cart-item {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 12px !important;
    background: #fff !important;
    border: 1.5px solid #e8e5ef !important;
    border-radius: 14px !important;
    padding: 16px !important;
    transition: all 0.25s ease !important;
    margin-bottom: 0 !important;
}
.woocommerce-cart table.shop_table tbody tr.cart_item:hover {
    border-color: #e1bc92 !important;
    box-shadow: 0 4px 20px rgba(225, 188, 146, 0.12) !important;
}

/* All cells reset */
.woocommerce-cart table.shop_table tbody tr.cart_item td {
    display: block !important;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
    vertical-align: middle !important;
}

/* Remove button — hide Woodmart's duplicate × and keep only one */
.woocommerce-cart td.product-remove {
    order: 10 !important;
    position: absolute !important;
    right: 16px !important;
    top: 16px !important;
}
.woocommerce-cart table.shop_table tbody tr.cart_item {
    position: relative !important;
}
.woocommerce-cart td.product-remove a.remove {
    width: 30px !important; height: 30px !important;
    border-radius: 8px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    background: rgba(13, 6, 37, 0.03) !important;
    color: #ccc !important;
    font-size: 18px !important;
    text-decoration: none !important;
    transition: all 0.2s !important;
    line-height: 1 !important;
}
.woocommerce-cart td.product-remove a.remove:hover {
    background: #fef2f2 !important;
    color: #b91c1c !important;
}
/* Hide any extra remove icons Woodmart adds */
.woocommerce-cart td.product-remove .remove-icon,
.woocommerce-cart td.product-remove svg {
    display: none !important;
}

/* Thumbnail */
.woocommerce-cart td.product-thumbnail {
    order: 1 !important;
    flex-shrink: 0 !important;
    width: 90px !important;
}
.woocommerce-cart td.product-thumbnail a {
    display: block !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    border: 1px solid #e8e5ef !important;
}
.woocommerce-cart td.product-thumbnail img {
    width: 90px !important;
    height: 90px !important;
    object-fit: cover !important;
    display: block !important;
    border-radius: 10px !important;
}

/* Product name */
.woocommerce-cart td.product-name {
    order: 2 !important;
    flex: 1 1 200px !important;
    min-width: 0 !important;
    padding-right: 30px !important;
}
.woocommerce-cart td.product-name a {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #0d0625 !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
}
.woocommerce-cart td.product-name a:hover { color: #e1bc92 !important; }
.woocommerce-cart td.product-name dl.variation {
    margin-top: 4px !important;
}
.woocommerce-cart td.product-name dl.variation dt,
.woocommerce-cart td.product-name dl.variation dd {
    font-size: 12px !important; color: #999 !important;
    display: inline !important; margin: 0 !important;
}

/* Price */
.woocommerce-cart td.product-price {
    order: 3 !important;
    font-size: 14px !important;
    color: #777 !important;
    flex-shrink: 0 !important;
}

/* Quantity */
.woocommerce-cart td.product-quantity {
    order: 4 !important;
    flex-shrink: 0 !important;
}
.woocommerce-cart .quantity input.qty {
    width: 50px !important; height: 38px !important;
    border: 2px solid #e8e5ef !important;
    border-radius: 8px !important;
    text-align: center !important;
    font-size: 14px !important; font-weight: 600 !important;
    color: #0d0625 !important; background: #fafafe !important;
    outline: none !important; transition: all 0.25s !important;
}
.woocommerce-cart .quantity input.qty:focus {
    border-color: #e1bc92 !important;
    box-shadow: 0 0 0 3px rgba(225, 188, 146, 0.12) !important;
}
.woocommerce-cart .wd-quantity .plus,
.woocommerce-cart .wd-quantity .minus {
    width: 32px !important; height: 38px !important;
    border: 2px solid #e8e5ef !important;
    background: #fafafe !important; color: #0d0625 !important;
    border-radius: 8px !important; cursor: pointer !important;
    transition: all 0.2s !important;
}
.woocommerce-cart .wd-quantity .plus:hover,
.woocommerce-cart .wd-quantity .minus:hover {
    border-color: #e1bc92 !important;
    background: rgba(225, 188, 146, 0.08) !important;
}

/* Subtotal */
.woocommerce-cart td.product-subtotal {
    order: 5 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #e1bc92 !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
}

/* --- Action row (coupon + update cart) --- */
.woocommerce-cart table.shop_table tbody tr.actions td,
.woocommerce-cart table.shop_table .actions,
.woocommerce-cart .wd-cart-action-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
    border: none !important;
    padding: 8px 0 !important;
    background: transparent !important;
}
.woocommerce-cart .coupon {
    display: flex !important;
    gap: 0 !important;
    flex: 1 1 300px !important;
    border: 2px solid #e8e5ef !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #fafafe !important;
    transition: border-color 0.25s !important;
}
.woocommerce-cart .coupon:focus-within {
    border-color: #e1bc92 !important;
    box-shadow: 0 0 0 4px rgba(225, 188, 146, 0.12) !important;
}
.woocommerce-cart .coupon #coupon_code {
    flex: 1 !important;
    border: none !important; background: transparent !important;
    padding: 12px 14px !important; font-size: 14px !important;
    color: #0d0625 !important; outline: none !important;
    box-shadow: none !important;
}
.woocommerce-cart .coupon #coupon_code::placeholder { color: #b5b0c3 !important; }
.woocommerce-cart .coupon button,
.woocommerce-cart .coupon [name="apply_coupon"] {
    flex-shrink: 0 !important;
    padding: 12px 18px !important;
    background: linear-gradient(135deg, #0d0625, #1a103d) !important;
    color: #e1bc92 !important; border: none !important;
    font-size: 13px !important; font-weight: 600 !important;
    cursor: pointer !important; transition: all 0.25s !important;
    text-transform: none !important; border-radius: 0 !important;
}
.woocommerce-cart .coupon button:hover {
    background: linear-gradient(135deg, #1a103d, #251a50) !important;
}
/* Hide update cart button (Woodmart auto-updates) */
.woocommerce-cart button[name="update_cart"] {
    display: none !important;
}

/* --- Cart Totals (right column) --- */
.woocommerce-cart .cart_totals {
    background: #fff !important;
    border: 1.5px solid #e8e5ef !important;
    border-radius: 16px !important;
    padding: 28px !important;
    box-shadow: 0 8px 30px rgba(13, 6, 37, 0.06) !important;
    position: sticky !important;
    top: 100px !important;
}
.woocommerce-cart .cart_totals > h2 {
    font-size: 18px !important; font-weight: 700 !important;
    color: #0d0625 !important; margin: 0 0 20px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #e8e5ef !important;
    text-transform: none !important; letter-spacing: -0.2px !important;
}
.woocommerce-cart .cart_totals table { border: none !important; }
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
    border: none !important; padding: 10px 0 !important;
    font-size: 14px !important; border-top: none !important;
}
.woocommerce-cart .cart_totals table th {
    font-weight: 500 !important; color: #777 !important;
    text-transform: none !important;
}
.woocommerce-cart .cart_totals table td {
    text-align: right !important; font-weight: 600 !important;
    color: #0d0625 !important;
}
.woocommerce-cart .cart_totals tr.order-total th {
    font-weight: 700 !important; color: #0d0625 !important;
    font-size: 16px !important; padding-top: 16px !important;
    border-top: 2px solid #e8e5ef !important;
}
.woocommerce-cart .cart_totals tr.order-total td {
    font-weight: 700 !important; color: #e1bc92 !important;
    font-size: 22px !important; padding-top: 16px !important;
    border-top: 2px solid #e8e5ef !important;
}

/* Checkout button */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    background: linear-gradient(135deg, #0d0625, #1a103d) !important;
    color: #e1bc92 !important; border: none !important;
    border-radius: 10px !important; padding: 16px 24px !important;
    font-size: 15px !important; font-weight: 600 !important;
    text-transform: none !important; letter-spacing: 0.3px !important;
    transition: all 0.3s ease !important;
    display: block !important; text-align: center !important;
    width: 100% !important; margin-top: 20px !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 24px rgba(13, 6, 37, 0.3) !important;
}

/* Trust Badges */
.resha-cart-trust {
    margin-top: 20px;
    display: flex; flex-wrap: wrap; gap: 8px;
    justify-content: center;
}
.resha-trust-item {
    display: flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 500; color: #999;
    background: #fafafe; border: 1px solid #e8e5ef;
    border-radius: 8px; padding: 8px 12px;
}
.resha-trust-item svg {
    width: 16px; height: 16px;
    stroke: #e1bc92; fill: none; stroke-width: 1.5;
    flex-shrink: 0;
}

/* Empty Cart */
.woocommerce-cart .cart-empty {
    text-align: center !important;
    padding: 60px 20px !important;
    font-size: 16px !important; color: #777 !important;
}
.woocommerce-cart .return-to-shop a {
    background: linear-gradient(135deg, #0d0625, #1a103d) !important;
    color: #e1bc92 !important; border: none !important;
    border-radius: 10px !important; padding: 14px 32px !important;
    font-size: 14px !important; font-weight: 600 !important;
    display: inline-block !important; transition: all 0.3s ease !important;
    text-transform: none !important; text-decoration: none !important;
}

/* WooCommerce notices */
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-checkout .woocommerce-message {
    border-top-color: #e1bc92 !important;
    background: rgba(225, 188, 146, 0.06) !important;
    border-radius: 10px !important;
    border: 1px solid rgba(225, 188, 146, 0.2) !important;
    border-top: 3px solid #e1bc92 !important;
    color: #0d0625 !important;
}

/* ═══════════════════════════════════════════════
   CHECKOUT PAGE — Multi-Step
   ═══════════════════════════════════════════════ */

/* Wrapper */
.resha-checkout-wrapper {
    max-width: 780px;
    margin: 0 auto;
    padding: 0 20px 60px;
}
/* When injected by JS (Elementor mode), just style the nav */
.resha-checkout-wrapper.resha-checkout-injected {
    padding: 0 20px 20px;
}

/* Injected step actions */
.resha-injected-actions {
    max-width: 640px;
    margin: 16px auto 40px;
    padding: 0;
}

/* Constrain ALL checkout content to centered column */
.woocommerce-checkout .elementor-widget-wd_checkout_billing_details_form .elementor-widget-container,
.woocommerce-checkout .elementor-widget-wd_checkout_shipping_details_form .elementor-widget-container {
    max-width: 640px !important;
    margin: 0 auto !important;
    background: #fff !important;
    border: 1.5px solid #e8e5ef !important;
    border-radius: 12px !important;
    padding: 24px !important;
    box-shadow: 0 2px 12px rgba(13, 6, 37, 0.04) !important;
}
.woocommerce-checkout .elementor-widget-wd_checkout_payment_methods .elementor-widget-container,
.woocommerce-checkout .elementor-widget-wd_checkout_order_review .elementor-widget-container {
    max-width: 640px !important;
    margin: 0 auto 16px !important;
    background: #fff !important;
    border: 1.5px solid #e8e5ef !important;
    border-radius: 12px !important;
    padding: 24px !important;
    box-shadow: 0 2px 12px rgba(13, 6, 37, 0.04) !important;
}

/* Center headings and containers inside step 2 */
body.resha-step-2 .woocommerce-checkout [data-resha-step="2"] {
    max-width: 640px !important;
    margin: 0 auto !important;
    width: 100% !important;
}
body.resha-step-2 .woocommerce-checkout .e-con.e-parent > .e-con-inner,
body.resha-step-2 .woocommerce-checkout .e-con.e-parent {
    justify-content: center !important;
    align-items: center !important;
    flex-direction: column !important;
}

/* Style Step 2 Headings (Your Order, Payment Information) */
body.resha-step-2 .woocommerce-checkout .elementor-widget-heading .elementor-heading-title {
    font-size: 15px !important; font-weight: 700 !important;
    color: #0d0625 !important; margin: 0 0 14px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #e8e5ef !important;
    text-align: left !important;
    width: 100% !important;
}
body.resha-step-2 .woocommerce-checkout .elementor-widget-heading {
    max-width: 640px !important;
    margin: 0 auto !important;
    width: 100% !important;
}

/* Hide the standalone Billing Details heading */
.woocommerce-checkout .woocommerce-billing-fields > h3 {
    display: none !important;
}
.woocommerce-checkout h3#ship-to-different-address {
    display: none !important;
}

/* Order notes — constrain to card width */
.woocommerce-checkout .woocommerce-additional-fields {
    max-width: 640px !important;
    margin: 16px auto 0 !important;
    background: #fff !important;
    border: 1.5px solid #e8e5ef !important;
    border-radius: 12px !important;
    padding: 20px 24px !important;
    box-shadow: 0 2px 12px rgba(13, 6, 37, 0.04) !important;
}
.woocommerce-checkout .woocommerce-additional-fields h3 {
    font-size: 13px !important; font-weight: 600 !important;
    color: #0d0625 !important; margin: 0 0 10px !important;
    text-transform: uppercase !important; letter-spacing: 0.5px !important;
}
.woocommerce-checkout .woocommerce-additional-fields textarea {
    min-height: 60px !important; resize: vertical !important;
}

/* Reduce Elementor section gaps on checkout */
.woocommerce-checkout .e-con.e-child {
    padding-top: 0 !important;
    padding-bottom: 8px !important;
}
.woocommerce-checkout .e-con.e-parent > .e-con-inner {
    gap: 0 !important;
}

/* Coupon toggle — constrain to column */
.woocommerce-checkout .woocommerce-form-coupon-toggle {
    max-width: 640px !important;
    margin: 0 auto 12px !important;
}
.woocommerce-checkout .checkout_coupon {
    max-width: 640px !important;
    margin: 0 auto 12px !important;
}

/* Step nav tighter margin */
.resha-checkout-wrapper.resha-checkout-injected {
    padding: 0 20px 12px;
}

/* Elementor step transitions */
body.resha-step-2 [data-resha-step="2"] {
    animation: reshStepIn 0.35s ease;
}

/* Step Navigation Tabs */
.resha-step-nav {
    display: flex; align-items: center;
    justify-content: center; gap: 0;
    margin-bottom: 32px;
}
.resha-step-tab {
    display: flex; align-items: center; gap: 10px;
    padding: 10px 16px;
    border: 1.5px solid #e8e5ef; border-radius: 10px;
    background: #fff; cursor: pointer;
    transition: all 0.3s ease; outline: none; flex-shrink: 0;
}
.resha-step-tab:hover { border-color: #d0ccd9; }
.resha-step-tab.active {
    border-color: #0d0625;
    box-shadow: 0 2px 10px rgba(13, 6, 37, 0.1);
}
.resha-step-tab.completed {
    border-color: #e1bc92;
    background: rgba(225, 188, 146, 0.04);
}
.resha-step-tab .step-num {
    width: 28px; height: 28px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 12px; font-weight: 700;
    background: #f5f3fa; color: #b5b0c3;
    transition: all 0.3s; flex-shrink: 0;
}
.resha-step-tab.active .step-num {
    background: linear-gradient(135deg, #0d0625, #1a103d);
    color: #e1bc92;
    box-shadow: 0 4px 10px rgba(13, 6, 37, 0.2);
}
.resha-step-tab.completed .step-num {
    background: #e1bc92; color: #0d0625;
}
.resha-step-tab .step-info {
    display: flex; flex-direction: column; text-align: left;
}
.resha-step-tab .step-title {
    font-size: 13px; font-weight: 600; color: #0d0625; line-height: 1.2;
}
.resha-step-tab .step-desc {
    font-size: 10px; color: #b5b0c3; margin-top: 1px;
}

/* Connector */
.resha-step-connector {
    width: 48px; height: 2px; background: #e8e5ef;
    margin: 0 12px; border-radius: 2px; overflow: hidden; flex-shrink: 0;
}
.resha-step-connector .connector-fill {
    width: 0; height: 100%; background: #e1bc92;
    transition: width 0.4s ease;
}

/* Step Panels */
.resha-step { display: none; }
.resha-step.active {
    display: block;
    animation: reshStepIn 0.35s ease;
}
@keyframes reshStepIn {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Checkout form override for multi-step */
.resha-checkout-form.woocommerce-checkout {
    display: block !important; max-width: 100% !important;
}

/* Details card */
.resha-details-card {
    background: #fff; border: 1.5px solid #e8e5ef;
    border-radius: 16px; padding: 32px;
    box-shadow: 0 4px 20px rgba(13, 6, 37, 0.04);
}
.resha-details-card .resha-card-icon {
    width: 44px; height: 44px;
    background: linear-gradient(135deg, #0d0625, #1a103d);
    border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 18px;
    box-shadow: 0 6px 16px rgba(13, 6, 37, 0.15);
}
.resha-details-card .resha-card-icon svg { width: 22px; height: 22px; }

/* Order summary card */
.resha-order-summary-card {
    background: #fff; border: 1.5px solid #e8e5ef;
    border-radius: 16px; padding: 28px;
    box-shadow: 0 4px 20px rgba(13, 6, 37, 0.04);
}
.resha-order-summary-card #order_review_heading {
    font-size: 18px !important; font-weight: 700 !important;
    color: #0d0625 !important; margin-bottom: 20px !important;
    padding-bottom: 14px !important; border-bottom: 1px solid #e8e5ef !important;
}

/* Step Action Buttons */
.resha-step-actions {
    display: flex; align-items: center;
    justify-content: space-between;
    margin-top: 24px; gap: 12px;
}
.resha-btn-back {
    display: flex; align-items: center; gap: 6px;
    padding: 10px 16px; border: 1.5px solid #e8e5ef;
    border-radius: 8px; background: #fff; color: #777;
    font-size: 13px; font-weight: 500; cursor: pointer;
    transition: all 0.25s; text-decoration: none;
}
.resha-btn-back:hover { border-color: #d0ccd9; color: #0d0625; }
.resha-btn-back svg { width: 14px; height: 14px; }
.resha-btn-next {
    display: flex; align-items: center; gap: 6px;
    padding: 12px 22px;
    background: linear-gradient(135deg, #0d0625, #1a103d);
    color: #e1bc92; border: none; border-radius: 10px;
    font-size: 15px; font-weight: 600; cursor: pointer;
    transition: all 0.3s ease; margin-left: auto;
}
.resha-btn-next:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 24px rgba(13, 6, 37, 0.3);
}
.resha-btn-next svg { width: 16px; height: 16px; }

/* Override old checkout-order-review in multi-step */
.resha-checkout-wrapper .checkout-order-review {
    background: transparent !important; border: none !important;
    padding: 0 !important; box-shadow: none !important; position: static !important;
}

/* Checkout form inputs — compact */
.woocommerce-checkout label {
    font-size: 11px !important; font-weight: 600 !important;
    color: #0d0625 !important; text-transform: uppercase !important;
    letter-spacing: 0.5px !important; margin-bottom: 4px !important;
}
.woocommerce-checkout label .required { color: #e1bc92 !important; }
.woocommerce-checkout .form-row { margin-bottom: 12px !important; }
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-checkout .select2-container .select2-selection--single {
    border: 1.5px solid #e8e5ef !important; border-radius: 8px !important;
    padding: 10px 12px !important; font-size: 13px !important;
    color: #0d0625 !important; background: #fafafe !important;
    transition: all 0.25s ease !important; outline: none !important;
}
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout textarea:focus {
    border-color: #e1bc92 !important; background: #fff !important;
    box-shadow: 0 0 0 3px rgba(225, 188, 146, 0.12) !important;
}

/* Select2 */
.woocommerce-checkout .select2-container--default .select2-selection--single {
    height: auto !important; min-height: 40px !important;
    display: flex !important; align-items: center !important;
}

/* Order review table */
.woocommerce-checkout .woocommerce-checkout-review-order-table { border: none !important; }
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    border: none !important; padding: 10px 0 !important; font-size: 14px !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item td.product-total {
    font-weight: 600 !important; text-align: right !important; color: #e1bc92 !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total th {
    font-weight: 700 !important; color: #0d0625 !important; font-size: 16px !important;
    padding-top: 14px !important; border-top: 2px solid #e8e5ef !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td {
    font-weight: 700 !important; color: #e1bc92 !important; font-size: 22px !important;
    padding-top: 14px !important; border-top: 2px solid #e8e5ef !important;
}

/* Payment methods */
.woocommerce-checkout #payment {
    background: transparent !important; border: none !important;
}
.woocommerce-checkout #payment ul.payment_methods {
    border: 1.5px solid #e8e5ef !important; border-radius: 12px !important;
    padding: 0 !important; margin-bottom: 20px !important;
    overflow: hidden !important; background: #fafafe !important;
}
.woocommerce-checkout #payment ul.payment_methods li {
    border-bottom: 1px solid #e8e5ef !important;
    padding: 16px !important; margin: 0 !important;
}
.woocommerce-checkout #payment ul.payment_methods li:last-child { border-bottom: none !important; }
.woocommerce-checkout #payment ul.payment_methods li label {
    font-weight: 600 !important; color: #0d0625 !important;
    font-size: 14px !important; text-transform: none !important;
    cursor: pointer !important;
}
.woocommerce-checkout #payment .payment_box {
    background: rgba(225, 188, 146, 0.06) !important;
    border-radius: 8px !important; padding: 14px !important;
    margin-top: 10px !important; color: #555 !important;
}

/* Place Order */
.woocommerce-checkout #place_order {
    background: linear-gradient(135deg, #0d0625, #1a103d) !important;
    color: #e1bc92 !important; border: none !important;
    border-radius: 10px !important; padding: 16px 24px !important;
    font-size: 16px !important; font-weight: 600 !important;
    width: 100% !important; cursor: pointer !important;
    transition: all 0.3s ease !important; text-transform: none !important;
}
.woocommerce-checkout #place_order:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 24px rgba(13, 6, 37, 0.3) !important;
}

/* Checkout trust badges */
.resha-checkout-trust {
    margin-top: 20px; padding-top: 16px;
    border-top: 1px solid #e8e5ef;
    display: flex; flex-direction: column; gap: 10px;
}
.resha-checkout-trust-row {
    display: flex; align-items: center; gap: 8px;
    font-size: 12px; color: #999;
}
.resha-checkout-trust-row svg {
    width: 18px; height: 18px;
    stroke: #e1bc92; fill: none; stroke-width: 1.5; flex-shrink: 0;
}
.resha-checkout-trust-row strong { color: #0d0625; font-weight: 600; }

/* Login toggle */
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
    border-top-color: #e1bc92 !important;
    background: rgba(225, 188, 146, 0.06) !important;
    border-radius: 10px !important;
}
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a {
    color: #e1bc92 !important; font-weight: 600 !important;
}

/* ═══════════════════════════════════════════════
   MOBILE RESPONSIVE
   ═══════════════════════════════════════════════ */
@media (max-width: 900px) {
    .woocommerce-cart .cart_totals {
        position: static !important;
    }
    .resha-step-tab .step-info { display: none; }
    .resha-step-tab { padding: 10px 14px; }
}
@media (max-width: 640px) {
    .resha-checkout-progress { padding: 12px 10px 16px; }
    .resha-progress-step .step-label { display: none; }
    .resha-progress-line { width: 24px; margin: 0 6px; }

    .woocommerce-cart table.shop_table tbody tr.cart_item {
        gap: 8px !important; padding: 12px !important;
    }
    .woocommerce-cart td.product-thumbnail img {
        width: 70px !important; height: 70px !important;
    }
    .woocommerce-cart td.product-thumbnail { width: 70px !important; }
    .woocommerce-cart td.product-name { padding-right: 24px !important; }
    .woocommerce-cart td.product-price { display: none !important; }

    .resha-details-card { padding: 20px; }
    .resha-order-summary-card { padding: 20px; }
}
