/* ============================================================================
   Espressimo — WooCommerce Cart + Checkout skin (Woo migration 2026-07-07).
   The store uses the WooCommerce Blocks (Gutenberg) Cart & Checkout. Per client:
   keep ALL the block content/layout — only apply the Espressimo FONTS & COLORS.
   Palette: cream #fff9f2 · card #f6ede3 · border #e6dad4 · ink #522c25
            accent #c46500 · brand #8B3A00 · font 'Dialect PM'. RTL.
   ============================================================================ */

:root {
    --esp-cream:#fff9f2; --esp-card:#f6ede3; --esp-bd:#e6dad4;
    --esp-ink:#522c25; --esp-acc:#c46500; --esp-brand:#8B3A00;
}

/* ---- Breathing room top + bottom so the cart/checkout isn't crowded (client 2026-07-07) ---- */
body.woocommerce-cart .page-content,
body.woocommerce-checkout .page-content { padding-top: 48px !important; padding-bottom: 80px !important; }

/* ---- Hide the theme page title ("Checkout") + show breadcrumbs instead (client 2026-07-07) ---- */
body.woocommerce-checkout .page-header,
body.woocommerce-cart .page-header,
body.woocommerce-checkout .entry-title,
body.woocommerce-cart .entry-title { display: none !important; }

.esp-wc-breadcrumb, .woocommerce-breadcrumb {
    font-family: 'Dialect PM', sans-serif;
    color: var(--esp-ink); font-size: 16px; opacity: .85;
    margin: 4px 0 22px; padding: 0;
}
.esp-wc-breadcrumb a, .woocommerce-breadcrumb a { color: var(--esp-brand); text-decoration: none; }
.esp-wc-breadcrumb a:hover, .woocommerce-breadcrumb a:hover { text-decoration: underline; }
.esp-wc-breadcrumb__sep { color: var(--esp-bd); margin: 0 2px; }

/* ---- Fonts: apply the site font across the whole block (content untouched) ---- */
.wc-block-checkout, .wc-block-checkout *,
.wc-block-cart, .wc-block-cart *,
.wp-block-woocommerce-checkout, .wp-block-woocommerce-checkout *,
.wp-block-woocommerce-cart, .wp-block-woocommerce-cart * {
    font-family: 'Dialect PM', sans-serif !important;
}
/* keep the page title in the brand font/colour too */
body.woocommerce-checkout .entry-title,
body.woocommerce-cart .entry-title { font-family: 'Dialect PM', sans-serif; color: var(--esp-ink); }

/* ======================= COLORS ======================= */

/* Section / step titles + order-summary title */
.wc-block-components-title,
.wc-block-components-checkout-step__title,
.wc-block-components-checkout-order-summary__title-text,
.wc-block-components-checkout-order-summary__title-price {
    color: var(--esp-ink) !important;
}

/* Step description text under titles */
.wc-block-components-checkout-step__description { color: var(--esp-ink); opacity: .7; }

/* Inputs + selects → cream fields, branded focus */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-blocks-components-select__select,
.wc-block-components-address-form input,
.wc-block-components-address-form select {
    background: var(--esp-cream) !important;
    border: 1px solid var(--esp-bd) !important;
    border-radius: 8px !important;
    color: var(--esp-ink) !important;
}
.wc-block-components-text-input input:focus,
.wc-block-components-text-input textarea:focus,
.wc-blocks-components-select__select:focus {
    border-color: var(--esp-acc) !important;
    box-shadow: 0 0 0 1px var(--esp-acc) !important;
    outline: none !important;
}
/* floating + static labels */
.wc-block-components-text-input label,
.wc-blocks-components-select__label,
.wc-block-components-checkbox__label,
.wc-block-components-address-card address { color: var(--esp-ink) !important; }
.wc-block-components-text-input.is-active label,
.wc-block-components-text-input input:focus + label { color: var(--esp-acc) !important; }

/* checkbox tick */
.wc-block-components-checkbox__input:checked { background: var(--esp-brand) !important; border-color: var(--esp-brand) !important; }

/* Links: edit address, add coupon, terms, address_2 toggle */
.wc-block-components-address-card__edit,
.wc-block-components-panel__button,
.wc-block-components-address-form__address_2-toggle,
.wc-block-checkout__terms a,
.wc-block-components-order-summary a { color: var(--esp-brand) !important; }

/* Sidebar / order summary → cream card */
.wc-block-checkout__sidebar,
.wc-block-components-order-summary {
    background: var(--esp-card) !important;
    border: 1px solid var(--esp-bd) !important;
    border-radius: 16px !important;
}
.wc-block-checkout__sidebar { padding: 8px 14px !important; }

/* Order summary product names + descriptions */
.wc-block-components-product-name,
.wc-block-components-order-summary-item__description h3 { color: var(--esp-ink) !important; font-weight: 700; }
.wc-block-components-product-metadata__description,
.wc-block-components-product-metadata { color: var(--esp-ink) !important; opacity: .65; }
/* qty bubble on the thumbnail */
.wc-block-components-order-summary-item__quantity span[aria-hidden] {
    background: var(--esp-brand) !important; color: #fff !important;
}
.wc-block-components-order-summary-item__image img { border-radius: 10px; border: 1px solid var(--esp-bd); background: #fff; }

/* Money amounts */
.wc-block-components-formatted-money-amount,
.wc-block-components-totals-item__value,
.wc-block-components-totals-item__label { color: var(--esp-ink) !important; }
/* grand total = brand */
.wc-block-components-totals-footer-item .wc-block-components-formatted-money-amount,
.wc-block-components-checkout-order-summary__title-price { color: var(--esp-brand) !important; }

/* totals divider lines to brand border */
.wc-block-components-totals-item,
.wc-block-components-order-summary,
.wc-block-components-totals-wrapper { border-color: var(--esp-bd) !important; }

/* ---- Place-order (primary) button → brand ---- */
.wc-block-components-checkout-place-order-button,
.wc-block-components-button.contained {
    background: var(--esp-brand) !important;
    color: #fff !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}
.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-button.contained:hover { background: #6f4e37 !important; }
.wc-block-components-checkout-place-order-button__text,
.wc-block-components-button__text { color: #fff !important; }

/* Secondary / outline buttons (e.g. apply coupon) → brand outline */
.wc-block-components-button.outlined {
    color: var(--esp-brand) !important;
    box-shadow: inset 0 0 0 1px var(--esp-brand) !important;
}

/* keep Woo's error/notice red for validation (do not override) — only round it */
.wc-block-components-validation-error { color: #cc1818; }
.wc-block-components-notice-banner { border-radius: 10px; }

/* ======================= CART BLOCK — layout + colors ======================= */
.wc-block-cart { max-width: 1200px; margin: 0 auto; }

/* header row (מוצר / סה"כ) */
.wc-block-cart-items__header,
.wc-block-cart-items__header-product,
.wc-block-cart-items__header-total { color: var(--esp-ink) !important; font-size: 15px; border-bottom: 1px solid var(--esp-bd) !important; }

/* each product row — tidy dividers, aligned cells */
.wc-block-cart-items__row { border-bottom: 1px solid var(--esp-bd) !important; }
.wc-block-cart-items__row td { padding-top: 18px !important; padding-bottom: 18px !important; vertical-align: top; }

/* product thumbnail — clean bordered square, placeholder-friendly for no-image items (ADANIM) */
.wc-block-cart-item__image { width: 96px !important; }
.wc-block-cart-item__image img {
    width: 88px !important; height: 88px !important; object-fit: contain !important;
    border: 1px solid var(--esp-bd); border-radius: 12px; background: #fff; padding: 6px;
    box-sizing: border-box; mix-blend-mode: multiply;
}

/* product name + description */
.wc-block-cart-item__product .wc-block-components-product-name {
    color: var(--esp-ink) !important; font-weight: 700; font-size: 19px; line-height: 1.3; text-decoration: none;
}
.wc-block-cart-item__product .wc-block-components-product-name:hover { color: var(--esp-brand) !important; }
.wc-block-cart-item__product .wc-block-components-product-metadata,
.wc-block-cart-item__product .wc-block-components-product-metadata p { color: var(--esp-ink) !important; opacity: .6; font-size: 14px; margin-top: 4px; }

/* per-unit + line prices */
.wc-block-cart-item__prices .wc-block-components-product-price__value,
.wc-block-cart-item__total .wc-block-components-product-price__value,
.wc-block-cart-item__total .wc-block-components-formatted-money-amount { color: var(--esp-ink) !important; font-weight: 700; }

/* quantity selector → branded rounded stepper */
.wc-block-cart-item__quantity { margin-top: 12px; }
.wc-block-components-quantity-selector {
    border: 1px solid var(--esp-bd) !important; border-radius: 10px !important; overflow: hidden;
    background: var(--esp-cream) !important; max-width: 118px;
}
.wc-block-components-quantity-selector__input { color: var(--esp-ink) !important; font-weight: 700; background: transparent !important; }
.wc-block-components-quantity-selector__button {
    color: var(--esp-ink) !important; background: transparent !important; font-size: 18px; transition: background-color .15s, color .15s;
}
.wc-block-components-quantity-selector__button:hover { background: #ede0d4 !important; color: var(--esp-brand) !important; }

/* remove ("הסרה" / trash) */
.wc-block-cart-item__remove-link {
    color: #a12a2a !important; font-size: 13px !important; text-decoration: none !important; margin-top: 8px !important;
}
.wc-block-cart-item__remove-link:hover { text-decoration: underline !important; }

/* sidebar totals → cream summary card */
.wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.wc-block-cart__sidebar {
    background: var(--esp-card) !important; border-color: var(--esp-bd) !important;
}
.wc-block-cart__sidebar { border: 1px solid var(--esp-bd) !important; border-radius: 16px !important; padding: 6px 14px !important; }
.wc-block-cart .wc-block-components-totals-item__label,
.wc-block-cart .wc-block-components-totals-item__value,
.wc-block-cart .wc-block-cart__totals-title { color: var(--esp-ink) !important; }
.wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-formatted-money-amount { color: var(--esp-brand) !important; font-size: 22px; }
.wc-block-cart .wc-block-components-panel__button,
.wc-block-cart .wc-block-components-totals-coupon a { color: var(--esp-brand) !important; }

/* proceed-to-checkout button → brand */
.wc-block-cart__submit-button,
.wc-block-cart .wc-block-components-button.contained,
.wc-block-cart__submit-container .wc-block-components-button {
    background: var(--esp-brand) !important; color: #fff !important; border-radius: 10px !important;
    box-shadow: none !important; font-weight: 700 !important; padding: 15px !important; font-size: 18px !important;
}
.wc-block-cart__submit-button:hover,
.wc-block-cart .wc-block-components-button.contained:hover { background: #6f4e37 !important; }

/* ======================= CLASSIC CHECKOUT ([woocommerce_checkout]) — skin =======================
   checkout-2 uses the CLASSIC checkout shortcode (the Bold Move iCredit gateway registers in the
   classic checkout, NOT in the block checkout). Keep Woo's content/flow — only apply the
   Espressimo fonts + colors + card styling. Selectors match the live classic markup:
   form.checkout · #customer_details · #order_review · table.shop_table · #payment .wc_payment_methods
   · #place_order · #iframeSamePageIcredit (the iCredit same-page iframe). RTL. (2026-07-08) */

/* fonts across the whole classic checkout (content untouched) */
body.woocommerce-checkout .woocommerce,
body.woocommerce-checkout .woocommerce * { font-family: 'Dialect PM', sans-serif !important; }

/* constrain + center like the block checkout */
body.woocommerce-checkout .woocommerce { max-width: 1200px; margin: 0 auto; }

/* Mobile/tablet (below the 981px 2-col breakpoint): keep the checkout off the screen edges
   — it's full-width there and was sticking to the sides (client 2026-07-08). Desktop unaffected. */
@media (max-width: 980px) {
    body.woocommerce-checkout .woocommerce,
    body.woocommerce-checkout .esp-wc-breadcrumb { padding-left: 16px !important; padding-right: 16px !important; }
}

/* ---- 2-column layout (form | sticky order-summary card), like the block checkout ----
   Classic DOM order is #customer_details → #order_review_heading → #order_review (which
   contains the totals table + #payment + place-order). We grid form.checkout so the
   customer form sits in the wide column and the order review (summary+payment+button)
   becomes a sticky card in the side column. RTL: col 1 = start = right. */
@media (min-width: 981px) {
    body.woocommerce-checkout form.checkout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 600px !important; /* right: form · left: summary (wider) */
        grid-template-rows: auto auto !important;
        column-gap: 40px !important;
        align-items: start !important;
    }
    body.woocommerce-checkout #customer_details { grid-column: 1 !important; grid-row: 1 / span 2 !important; min-width: 0 !important; float: none !important; width: auto !important; }
    body.woocommerce-checkout #order_review_heading { grid-column: 2 !important; grid-row: 1 !important; margin-top: 0 !important; }
    body.woocommerce-checkout #order_review { grid-column: 2 !important; grid-row: 2 !important; position: sticky !important; top: 96px !important; float: none !important; width: auto !important; }
}
/* stack billing + shipping vertically inside the form column (they're side-by-side by default) */
body.woocommerce-checkout #customer_details .col2-set,
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 { width: 100% !important; float: none !important; }
body.woocommerce-checkout #customer_details .col-2 { margin-top: 8px; }

/* coupon toggle notice ("יש לך קופון?") — cream bar, brand accent. Remove Woo's default
   decorative blue ::before info-icon (the "blue box" that overlaps the coupon text). */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    background: var(--esp-card) !important; border: 1px solid var(--esp-bd) !important;
    border-top: 3px solid var(--esp-acc) !important; color: var(--esp-ink) !important;
    border-radius: 10px !important; padding: 14px 18px !important;
}
body.woocommerce-checkout .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none !important; content: none !important; }
body.woocommerce-checkout .woocommerce-info a { color: var(--esp-brand) !important; }
body.woocommerce-checkout .checkout_coupon .input-text {
    background: var(--esp-cream) !important; border: 1px solid var(--esp-bd) !important;
    border-radius: 8px !important; color: var(--esp-ink) !important;
}
body.woocommerce-checkout .checkout_coupon .button {
    background: var(--esp-brand) !important; color: #fff !important; border-radius: 8px !important;
}

/* section headings (פרטי חיוב / משלוח / פרטי ההזמנה) */
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #ship-to-different-address { color: var(--esp-ink) !important; font-weight: 700; }

/* labels + required/optional markers */
body.woocommerce-checkout .form-row label { color: var(--esp-ink) !important; font-size: 15px; }
body.woocommerce-checkout .form-row .required { color: var(--esp-acc) !important; }
body.woocommerce-checkout .form-row .optional { color: var(--esp-ink); opacity: .5; }

/* inputs / selects / textarea → cream fields, brand focus */
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout #billing_country,
body.woocommerce-checkout #shipping_country {
    background: var(--esp-cream) !important; border: 1px solid var(--esp-bd) !important;
    border-radius: 8px !important; color: var(--esp-ink) !important; padding: 12px 14px !important;
}
body.woocommerce-checkout .form-row input.input-text:focus,
body.woocommerce-checkout .form-row textarea:focus,
body.woocommerce-checkout .form-row select:focus {
    border-color: var(--esp-acc) !important; box-shadow: 0 0 0 1px var(--esp-acc) !important; outline: none !important;
}

/* phone input aligns LTR by default (type=tel) → right-align it like the other RTL fields */
body.woocommerce-checkout #billing_phone,
body.woocommerce-checkout #shipping_phone { text-align: right !important; direction: ltr; }

/* order review → cream card */
body.woocommerce-checkout #order_review {
    background: var(--esp-card) !important; border: 1px solid var(--esp-bd) !important;
    border-radius: 16px !important; padding: 18px 20px !important;
}

/* review table */
body.woocommerce-checkout .shop_table { background: transparent !important; border: 0 !important; }
/* breathing room in every review cell so content doesn't hug the column borders */
body.woocommerce-checkout .shop_table th,
body.woocommerce-checkout .shop_table td { padding: 14px 16px !important; }
body.woocommerce-checkout .shop_table thead th { color: var(--esp-ink) !important; border-bottom: 1px solid var(--esp-bd) !important; }
body.woocommerce-checkout .shop_table .cart_item td { color: var(--esp-ink) !important; border-top: 1px solid var(--esp-bd) !important; }
body.woocommerce-checkout .shop_table .product-name { color: var(--esp-ink) !important; font-weight: 600; }
body.woocommerce-checkout .shop_table .product-quantity { color: var(--esp-brand) !important; }
body.woocommerce-checkout .shop_table tfoot th,
body.woocommerce-checkout .shop_table tfoot td { color: var(--esp-ink) !important; border-top: 1px solid var(--esp-bd) !important; }
body.woocommerce-checkout .woocommerce-Price-amount { color: var(--esp-ink) !important; }
body.woocommerce-checkout .order-total .woocommerce-Price-amount { color: var(--esp-brand) !important; font-size: 20px; }

/* shipping methods list */
body.woocommerce-checkout #shipping_method label,
body.woocommerce-checkout .woocommerce-shipping-methods label { color: var(--esp-ink) !important; }
body.woocommerce-checkout #shipping_method input[type=radio]:checked + label { color: var(--esp-brand) !important; }

/* payment methods + iCredit box */
body.woocommerce-checkout #payment { background: transparent !important; }
body.woocommerce-checkout #payment ul.payment_methods {
    background: var(--esp-cream) !important; border: 1px solid var(--esp-bd) !important;
    border-radius: 12px !important; padding: 14px 16px !important;
}
body.woocommerce-checkout #payment .wc_payment_method > label { color: var(--esp-ink) !important; font-weight: 700; }
body.woocommerce-checkout #payment .payment_box { background: var(--esp-card) !important; border-radius: 8px; color: var(--esp-ink) !important; }
body.woocommerce-checkout #payment .payment_box::before { border-bottom-color: var(--esp-card) !important; }

/* place-order (primary) button → brand */
body.woocommerce-checkout #payment #place_order,
body.woocommerce-checkout #place_order {
    background: var(--esp-brand) !important; color: #fff !important; border-radius: 10px !important;
    font-weight: 700 !important; font-size: 18px !important; padding: 15px 22px !important;
    box-shadow: none !important; width: 100%;
}
body.woocommerce-checkout #place_order:hover { background: #6f4e37 !important; }

/* privacy text + links */
body.woocommerce-checkout .woocommerce-privacy-policy-text p { color: var(--esp-ink) !important; opacity: .7; font-size: 13px; }
body.woocommerce-checkout .woocommerce-privacy-policy-link { color: var(--esp-brand) !important; }

/* keep Woo's validation red */
body.woocommerce-checkout .woocommerce-invalid input.input-text,
body.woocommerce-checkout .woocommerce-invalid select { border-color: #cc1818 !important; }

/* iCredit same-page iframe overlay + modal → brand-tinted */
#iframeSamePageIcreditOverlay { background: rgba(40,24,18,.55) !important; }
#iframeSamePageIcredit {
    background: #fff9f2 !important; border: 1px solid var(--esp-bd) !important;
    border-radius: 14px !important; box-shadow: 0 20px 60px rgba(40,24,18,.3) !important;
}
#close_icredit_iframe_checkout { color: var(--esp-ink) !important; }

/* ---- Larger fonts across the classic checkout (client: "resize more", 2026-07-08) ---- */
body.woocommerce-checkout .form-row label { font-size: 20px !important; }
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout #billing_country,
body.woocommerce-checkout #shipping_country { font-size: 20px !important; }
body.woocommerce-checkout .form-row .optional,
body.woocommerce-checkout .woocommerce-input-wrapper input::placeholder,
body.woocommerce-checkout .woocommerce-input-wrapper textarea::placeholder { font-size: 17px !important; }
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #ship-to-different-address { font-size: 30px !important; }
body.woocommerce-checkout .shop_table th,
body.woocommerce-checkout .shop_table td,
body.woocommerce-checkout .shop_table .product-name,
body.woocommerce-checkout .esp-cor__name,
body.woocommerce-checkout .esp-cor__qn,
body.woocommerce-checkout .woocommerce-Price-amount { font-size: 20px !important; }
body.woocommerce-checkout .order-total th,
body.woocommerce-checkout .order-total .woocommerce-Price-amount { font-size: 26px !important; }
body.woocommerce-checkout #shipping_method label,
body.woocommerce-checkout .woocommerce-shipping-methods label { font-size: 18px !important; }
body.woocommerce-checkout #payment .wc_payment_method > label { font-size: 21px !important; }
body.woocommerce-checkout #payment .payment_box,
body.woocommerce-checkout #payment .payment_box p { font-size: 17px !important; }
body.woocommerce-checkout #place_order { font-size: 24px !important; }
body.woocommerce-checkout .woocommerce-privacy-policy-text p { font-size: 15px !important; }

/* ---- Remove bold — use the light Dialect PM weight (matches the side cart) (client 2026-07-08) ---- */
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #ship-to-different-address,
body.woocommerce-checkout .form-row label,
body.woocommerce-checkout .shop_table th,
body.woocommerce-checkout .shop_table td,
body.woocommerce-checkout .shop_table .product-name,
body.woocommerce-checkout .esp-cor__name,
body.woocommerce-checkout .esp-cor__qn,
body.woocommerce-checkout .order-total th,
body.woocommerce-checkout .order-total td,
body.woocommerce-checkout .order-total strong,
body.woocommerce-checkout .woocommerce-Price-amount,
body.woocommerce-checkout #payment .wc_payment_method > label,
body.woocommerce-checkout #place_order { font-weight: 400 !important; }

/* ---- Order-review: featured image + qty stepper (client 2026-07-08) ---- */
body.woocommerce-checkout .shop_table .cart_item .product-name {
    display: flex !important; flex-wrap: wrap; align-items: center; gap: 10px;
}
body.woocommerce-checkout .esp-cor__thumb { flex: 0 0 auto; line-height: 0; }
body.woocommerce-checkout .esp-cor__thumb img,
body.woocommerce-checkout img.esp-cor__img {
    width: 56px !important; height: 56px !important; object-fit: contain;
    background: #fff; border: 1px solid var(--esp-bd); border-radius: 10px;
    padding: 4px; box-sizing: border-box; margin: 0 !important;
}
body.woocommerce-checkout .esp-cor__name { flex: 1 1 130px; min-width: 0; font-weight: 600; }
body.woocommerce-checkout .esp-cor__qty {
    display: inline-flex; align-items: center; gap: 6px; margin-inline-start: auto;
    border: 1px solid var(--esp-bd); border-radius: 10px; background: var(--esp-cream); padding: 2px 4px;
}
body.woocommerce-checkout .esp-cor__qbtn {
    width: 28px; height: 28px; border: 0; background: transparent; color: var(--esp-ink) !important;
    font-size: 18px; line-height: 1; cursor: pointer; border-radius: 6px; box-shadow: none !important;
    transition: background-color .15s, color .15s; padding: 0;
}
body.woocommerce-checkout .esp-cor__qbtn:hover { background: #ede0d4; color: var(--esp-brand) !important; }
body.woocommerce-checkout .esp-cor__qbtn:disabled { opacity: .4; cursor: default; }
body.woocommerce-checkout .esp-cor__qn { min-width: 24px; text-align: center; font-weight: 700; }
/* mobile: stack image · name · qty vertically, all aligned right. (Plain right-aligned block
   instead of flex — an inline-level stepper right-aligns cleanly via text-align, no RTL margin
   ambiguity.) client 2026-07-08 */
@media (max-width: 600px) {
    body.woocommerce-checkout .shop_table .cart_item .product-name {
        display: block !important; text-align: right !important;
    }
    body.woocommerce-checkout .esp-cor__thumb { display: block; margin: 0 0 8px 0; }
    body.woocommerce-checkout .esp-cor__name  { display: block; }
    body.woocommerce-checkout .esp-cor__qty   { display: inline-flex !important; margin: 8px 0 0 0 !important; }
}

/* ── Consent checkboxes before the place-order button (client 2026-07-10) ── */
.esp-co-consent { margin: 6px 0 16px; }
.esp-co-consent .form-row { margin: 0 0 10px !important; padding: 0 !important; }
.esp-co-consent label {
    display: flex !important; align-items: flex-start; gap: 8px;
    font-size: 15px; line-height: 1.45; color: #522c25; cursor: pointer; margin: 0;
}
.esp-co-consent input[type="checkbox"] {
    accent-color: #8B3A00; width: 17px; height: 17px; margin: 2px 0 0 !important; flex: 0 0 auto;
}
.esp-co-consent a { color: #8B3A00 !important; text-decoration: underline; }


/* Empty cart (client 2026-10-13): Hebrew copy + shop button, and no theme alignwide
   negative margins on narrow screens (the block sat 80-90px off to the right). */
@media (max-width: 1200px) {
    .wp-block-woocommerce-cart.alignwide,
    .wp-block-woocommerce-checkout.alignwide { margin-left: 0 !important; margin-right: 0 !important; max-width: 100% !important; }
}
.wp-block-woocommerce-empty-cart-block { padding: 48px 0 64px; display: flex; flex-direction: column; align-items: center; gap: 14px; }
.esp-empty-cart__title { color: var(--esp-ink) !important; font-size: 34px !important; font-weight: 700 !important; margin: 0 !important; }
.esp-empty-cart__text { color: var(--esp-ink); font-size: 19px; margin: 0 !important; }
.esp-empty-cart__btn .wp-block-button__link {
    background: var(--esp-ink) !important; color: #fff !important; border-radius: 9999px !important;
    padding: 14px 34px !important; font-size: 18px !important; font-weight: 700; text-decoration: none !important;
}
.esp-empty-cart__btn .wp-block-button__link:hover { background: var(--esp-brand) !important; }
@media (max-width: 560px) {
    .esp-empty-cart__title { font-size: 26px !important; }
    .esp-empty-cart__text { font-size: 16px; }
}

/* ==== exec-cart 2026-10-19: cart cross-sells, cart gutter, free-shipping subtotal row, checkout shipping labels ==== */
/* Cart cross-sells ("אולי יעניין אותך גם"): site palette, no theme pink links */
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .esp-crosssell__title,
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection > h2 {
    text-align: right !important; font-family: 'Dialect PM', sans-serif; color: var(--esp-ink) !important; font-size: 26px; font-weight: 700;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .wp-block-post-title a {
    color: var(--esp-ink) !important; text-decoration: none !important; font-weight: 700;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .wp-block-post-title a:hover { color: var(--esp-brand) !important; }
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .wc-block-components-product-price { color: var(--esp-ink) !important; font-weight: 700; }
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .wc-block-components-product-button__button,
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .wp-block-button__link {
    background: var(--esp-brand) !important; color: #fff !important; border: 0 !important; border-radius: 10px !important;
    padding: 10px 20px !important; text-decoration: none !important; font-weight: 700;
}
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .wc-block-components-product-button__button:hover,
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .wp-block-button__link:hover { background: #6f4e37 !important; }
.wp-block-woocommerce-cart .wp-block-woocommerce-product-collection .added_to_cart { color: var(--esp-brand) !important; text-decoration: none !important; }

/* Cart on phones: 16px side gutter like the rest of the site (theme gives 10px) */
@media (max-width: 767px) {
    body.woocommerce-cart main.site-main { padding-left: 16px !important; padding-right: 16px !important; }
}

/* Checkout shipping methods: label takes the row, price on the side */
body.woocommerce-checkout #shipping_method li { display: flex; align-items: center; gap: 8px; margin: 0 0 8px; }
body.woocommerce-checkout #shipping_method li input[type=radio] { flex: 0 0 auto; margin: 0 !important; }
body.woocommerce-checkout #shipping_method li label { flex: 1 1 auto; display: flex !important; justify-content: space-between; align-items: baseline; gap: 8px; margin: 0; line-height: 1.4; }
body.woocommerce-checkout #shipping_method li label .woocommerce-Price-amount { white-space: nowrap; }

/* Phones: order-review table rows become flex rows, so the shipping row can use the full width */
@media (max-width: 767px) {
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table,
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table thead,
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody,
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot { display: block; width: 100%; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr {
        display: flex; justify-content: space-between; align-items: center; gap: 12px; border-top: 1px solid var(--esp-bd);
    }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table thead tr { border-top: 0; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table td { display: block; border: 0 !important; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr > :first-child { flex: 1 1 auto; text-align: right; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr > :last-child:not(:first-child) { flex: 0 0 auto; text-align: left; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.cart_item { align-items: stretch; gap: 0; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.cart_item > td.product-total { display: flex; align-items: center; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals { flex-wrap: wrap; gap: 0; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > th { flex: 1 1 100%; padding-bottom: 4px !important; }
    body.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td { flex: 1 1 100% !important; text-align: right !important; padding-top: 4px !important; }
}

/* Cart page, desktop: larger line-item and totals text (client 2026-10-19; was 13px). */
@media (min-width: 768px) {
    .wc-block-cart .wc-block-components-product-name { font-size: 18px !important; line-height: 1.4 !important; }
    .wc-block-cart .wc-block-cart-item__prices,
    .wc-block-cart .wc-block-cart-item__prices .wc-block-components-product-price { font-size: 16px !important; }
    .wc-block-cart .wc-block-cart-item__total,
    .wc-block-cart .wc-block-cart-item__total .wc-block-components-product-price { font-size: 17px !important; font-weight: 700; }
    .wc-block-cart .wc-block-components-product-metadata { font-size: 15px !important; line-height: 1.5 !important; }
    .wc-block-cart .wc-block-components-quantity-selector__input { font-size: 16px !important; }
    .wc-block-cart .wc-block-cart-items__header { font-size: 15px !important; }
    .wc-block-cart .wc-block-components-totals-item__label,
    .wc-block-cart .wc-block-components-totals-item__value,
    .wc-block-cart .wc-block-components-totals-coupon__button,
    .wc-block-cart .wc-block-components-panel__button { font-size: 16px !important; }
    .wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
    .wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 20px !important; }
    .wc-block-cart .wc-block-components-totals-item__description,
    .wc-block-cart .wc-block-components-totals-shipping__via { font-size: 14px !important; }
    .wc-block-cart .wc-block-cart__submit-button { font-size: 18px !important; }
}
/* Item description: was faint; secondary text colour (both views). */
.wc-block-cart .wc-block-components-product-metadata,
.wc-block-cart .wc-block-components-product-metadata__description { color: #75605a !important; opacity: 1 !important; }
@media (min-width: 768px) { .wc-block-cart .wc-block-components-product-metadata__description p, .wc-block-cart .wc-block-components-product-details { font-size: 15px !important; line-height: 1.5 !important; } }
.wc-block-cart .wc-block-components-product-metadata__description p { color: #75605a !important; }
.wc-block-cart .wc-block-components-product-metadata__description p { opacity: 1 !important; }
