/* MerchReport order summary: cart and classic WooCommerce checkout only. */
.woocommerce-cart .woocommerce-cart-form .product-name > a { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; color:#222; font-weight:500; line-height:1.5; }
.woocommerce-cart .woocommerce-cart-form .product-thumbnail img { width:80px; border-radius:14px; }
.woocommerce-cart .woocommerce-cart-form .wcpa_cart_meta { margin:8px 0 0; font-size:12px; color:#737373; }
.woocommerce-cart .woocommerce-cart-form .wcpa_cart_meta_item { display:flex; flex-wrap:wrap; gap:4px; margin:0; }
.woocommerce-cart .woocommerce-cart-form .wcpa_cart_meta_item p { margin:0; font-weight:400; }
.woocommerce-cart .woocommerce-cart-form .wcpa_cart_meta_item-value { width:auto !important; }
.woocommerce-cart .woocommerce-cart-form .wcpa_image_preview,
.woocommerce-cart .woocommerce-cart-form .wcpa_color_box { display:none !important; }
.woocommerce-cart .woocommerce-cart-form .wcpa_cart_meta_item:has(.wcpa_cart_meta_item-value > p > .wcpa-block-addon-val:only-child) { display:none; }
.woocommerce-cart .cart_totals,
.woocommerce-checkout #order_review {
    border: 1px solid #d6dce3 !important;
    border-radius: 18px;
    background: #f7f7f7;
    padding: 0 22px 22px !important;
    overflow: hidden;
}
.woocommerce-cart .cart_totals > h2,
.woocommerce-cart .cart_totals > table:not(.shop_table) { display:none; }
.mr-summary-description .wcpa_cart_meta { list-style:none; padding:0; margin:5px 0 0; font-size:12px; line-height:1.5; color:#737373; }
.mr-summary-description .wcpa_cart_meta_item { margin:0; display:flex; flex-wrap:wrap; gap:4px; }
.mr-summary-description .wcpa_cart_meta_item p { margin:0; font-weight:400; }
.mr-summary-description .wcpa_image_preview,
.mr-summary-description .wcpa_color_box { display:none !important; }
.mr-summary-description .wcpa_cart_meta_item:has(.wcpa_cart_meta_item-value > p > .wcpa-block-addon-val:only-child) { display:none; }
.mr-summary-description .wcpa_image_details_inner { display:inline; }
.mr-order-summary { color:#171717; margin:0 -22px 20px; }
.mr-order-summary > summary {
    display:flex; align-items:center; justify-content:space-between; gap:16px;
    padding:24px 22px; border-bottom:1px solid #ddd; cursor:pointer;
    list-style:none; font-size:17px; font-weight:400;
}
.mr-order-summary > summary::-webkit-details-marker { display:none; }
.mr-order-summary > summary:focus-visible { outline:2px solid #1857a4; outline-offset:-4px; }
.mr-summary-label { color:#1857a4; display:flex; align-items:center; gap:12px; }
.mr-summary-chevron { width:7px; height:7px; border:solid currentColor; border-width:0 1.5px 1.5px 0; transform:rotate(45deg); }
.mr-order-summary[open] .mr-summary-chevron { transform:rotate(225deg); }
.mr-summary-total { font-size:23px; font-weight:700; white-space:nowrap; color:#111; }
.mr-summary-items { list-style:none !important; margin:0 !important; padding:22px 22px 4px; }
.mr-summary-item { display:grid; grid-template-columns:74px minmax(0,1fr) auto; align-items:center; gap:16px; margin:0 0 22px !important; }
.mr-summary-image { position:relative; width:74px; height:74px; display:block; background:#fff; border-radius:18px; box-shadow:0 2px 7px #0000000c; }
.mr-summary-image img { width:100%; height:100%; object-fit:contain; border-radius:18px; }
.mr-summary-quantity { position:absolute; right:-6px; top:-7px; min-width:25px; height:25px; padding:0 6px; border-radius:50%; border:2px solid #fff; background:#111; color:#fff; font-size:12px; line-height:21px; text-align:center; font-weight:600; }
.mr-summary-name { font-size:14px; line-height:1.45; color:#171717; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; overflow-wrap:anywhere; }
.mr-summary-name a { color:inherit; }
.mr-summary-description dl.variation { margin:5px 0 0; font-size:12px; line-height:1.5; color:#757575; }
.mr-summary-description dl.variation dt,.mr-summary-description dl.variation dd { margin-bottom:0; }
.mr-summary-description dl.variation p { margin:0; }
.mr-summary-price { font-size:15px; color:#171717; white-space:nowrap; align-self:center; }
.woocommerce-cart .cart_totals table { border-top:none; }
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td,
.woocommerce-checkout #order_review tfoot th,
.woocommerce-checkout #order_review tfoot td { font-size:14px; font-weight:400; color:#222; border-color:#e2e2e2; padding:12px 0; }
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td,
.woocommerce-checkout #order_review .order-total th,
.woocommerce-checkout #order_review .order-total td { font-size:21px; font-weight:700; color:#111; padding-top:18px; }
.woocommerce-cart .cart_totals .checkout-button { border-radius:10px; margin-bottom:0; font-size:14px; letter-spacing:.02em; }
.woocommerce-checkout #order_review .mr-order-summary ~ .woocommerce-checkout-review-order-table > thead,
.woocommerce-checkout #order_review .mr-order-summary ~ .woocommerce-checkout-review-order-table > tbody { display:none; }
.woocommerce-checkout #order_review .woocommerce-checkout-payment { background:transparent; }
.woocommerce-checkout #order_review_heading { display:none; }
.woocommerce-checkout .checkout-sidebar .shop_table { background:transparent; }
.woocommerce-checkout .checkout-sidebar { border:0 !important; padding:0 !important; }
.mr-summary-description .wcpa_cart_meta_item-label { flex:0 0 auto; }
.mr-summary-description .wcpa_cart_meta_item-value { flex:1 1 auto; width:auto !important; }
.mr-summary-description .wcpa_cart_meta_item-value p { display:inline; }
@media(max-width:549px) {
    .woocommerce-cart .cart_totals,.woocommerce-checkout #order_review { padding:0 18px 18px !important; border-radius:16px; }
    .mr-order-summary { margin-left:-18px; margin-right:-18px; }
    .mr-order-summary > summary { padding:22px 18px; font-size:16px; }
    .mr-summary-items { padding:22px 18px 2px; }
    .mr-summary-item { grid-template-columns:68px minmax(0,1fr) auto; gap:12px; }
    .mr-summary-image { width:68px; height:68px; border-radius:16px; }
    .mr-summary-price { font-size:14px; }
    .mr-summary-name { font-size:13px; }
}
