/* Checkout 189: one purchase page, full-width secure fields on phones. */
body.kohudis-unified-cart .kohudis-refill-disclosure { margin: 0 0 16px; color: #57534e; font-size: 14px; }
body.kohudis-unified-cart .kohudis-payable-total { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; margin-block: 16px; font-size: 18px; }
body.kohudis-unified-cart .kohudis-optional-field { clear: both; margin-block: 12px; }
body.kohudis-unified-cart .kohudis-optional-field summary { cursor: pointer; padding-block: 10px; font-weight: 600; }
body.kohudis-unified-cart .kohudis-optional-field[open] summary { margin-bottom: 8px; }
body.kohudis-unified-cart .cart_totals { padding: 24px !important; background: #fff !important; }
body.kohudis-unified-cart .cart_totals th,
body.kohudis-unified-cart .cart_totals td { padding-block: 14px !important; }
body.kohudis-unified-cart .cart_totals .wc-proceed-to-checkout:empty { display: none !important; }
body.kohudis-unified-cart #place_order { background: #191919 !important; color: #fff !important; border-color: #191919 !important; min-height: 48px; }
body.kohudis-unified-cart #place_order:hover { background: #333 !important; }
body.kohudis-unified-cart #place_order:focus-visible,
body.kohudis-unified-cart .kohudis-optional-field summary:focus-visible { outline: 3px solid #12100c !important; outline-offset: 3px; }
body.kohudis-unified-cart #kohudis-different-billing { width: 18px; height: 18px; }
body.kohudis-unified-cart .woocommerce-shipping-calculator { display: none !important; }
body.kohudis-unified-cart .cart-collaterals { margin-top: 20px !important; }
body.kohudis-unified-cart .cart-collaterals,
body.kohudis-unified-cart .cart_totals { display: block !important; width: 100% !important; float: none !important; }
body.kohudis-unified-cart #kohudis-checkout { clear: both; width: 100%; margin-top: 28px; scroll-margin-top: 100px; }
body.kohudis-unified-cart #kohudis-checkout > .woocommerce { display: block !important; }
body.kohudis-unified-cart.kohudis-has-cart-totals #order_review_heading,
body.kohudis-unified-cart.kohudis-has-cart-totals .woocommerce-checkout-review-order-table { display: none !important; }
body.kohudis-unified-cart form.checkout[hidden],
body.kohudis-unified-cart #kohudis-inline-payment[hidden] { display: none !important; }
body.kohudis-unified-cart #kohudis-inline-payment { width: 100%; max-width: 760px; margin-inline: auto; padding: 20px; box-sizing: border-box; background: #fff; border-radius: 16px; scroll-margin-top: 100px; }
body.kohudis-unified-cart #kohudis-airwallex-drop-in { width: 100%; min-width: 0; }
body.kohudis-address-checkout #customer_details { display: block !important; width: 100% !important; }
body.kohudis-address-checkout #customer_details > .col-1 { float: none !important; width: 100% !important; }
body.kohudis-address-checkout #customer_details > .col-2 { display: none !important; }
body.kohudis-address-checkout #kohudis-billing-address[hidden] { display: none !important; }
body.kohudis-address-checkout #ship-to-different-address-checkbox { display: none !important; }
body.kohudis-address-checkout .kohudis-billing-choice { clear: both; padding-block: 16px; }
body.kohudis-address-checkout .kohudis-billing-choice label { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; }
body.kohudis-address-checkout .kohudis-billing-choice small { display: block; margin-top: 6px; color: #57534e; }
body.kohudis-address-checkout .kohudis-billing-choice input { flex: 0 0 auto; margin-top: 3px; }
body.kohudis-address-checkout #payment { box-sizing: border-box; width: 100%; min-width: 0; }
body.kohudis-address-checkout #payment .payment_methods { padding: 0 !important; }
body.kohudis-address-checkout #payment .payment_box { margin-inline: 0 !important; width: 100% !important; box-sizing: border-box; }
body.kohudis-address-checkout #payment .wc_payment_method > label { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; max-width: calc(100% - 32px); vertical-align: top; }
body.kohudis-address-checkout #payment .wc_payment_method > label img { position: static !important; float: none !important; max-height: 24px; width: auto; max-width: 100%; margin: 0 !important; }
body.kohudis-address-checkout section.koh-help-cta { display: flex !important; clear: both; margin-top: 24px !important; }
body.kohudis-address-checkout #awx-express-checkout-button { display: flex; flex-wrap: wrap; gap: 12px; }
body.kohudis-address-checkout .awx-ec-button { flex: 1 1 240px; min-width: 0; max-width: 100%; }
@media (max-width: 760px) {
    body.kohudis-address-checkout section.koh-help-cta { flex-direction: column !important; align-items: stretch !important; gap: 12px !important; }
    body.kohudis-address-checkout section.koh-help-cta > * { min-width: 0; max-width: 100%; }
    body.kohudis-address-checkout #main .entry-content { padding-inline: 12px !important; }
    body.kohudis-address-checkout form.checkout { display: block !important; padding: 0 !important; }
    body.kohudis-address-checkout #customer_details,
    body.kohudis-address-checkout #customer_details > .col-1,
    body.kohudis-address-checkout #order_review { padding: 12px !important; margin-inline: 0 !important; width: 100% !important; min-width: 0 !important; box-sizing: border-box; }
    body.kohudis-address-checkout #customer_details > .col-1 { padding: 0 !important; }
    body.kohudis-address-checkout #order_review { border-radius: 14px !important; }
    body.kohudis-address-checkout #payment .payment_box { padding: 8px !important; }
    body.kohudis-address-checkout #payment .wc_payment_method { padding: 12px 0 !important; }
    body.kohudis-address-checkout #payment .place-order { padding-inline: 0 !important; }
    body.kohudis-address-checkout #payment iframe { max-width: 100% !important; }
    body.kohudis-address-checkout #airwallex-card { padding-inline: 8px !important; }
    body.kohudis-address-checkout #order_review_heading { margin-top: 24px !important; padding-inline: 0 !important; }
    body.kohudis-address-checkout #place_order { width: 100%; min-height: 48px; white-space: normal; }
}

/* Neutral checkout palette; preserve payment brands and validation colors. */
body.kohudis-unified-cart #main { background: #f7f7f5 !important; }
body.kohudis-unified-cart #kohudis-checkout {
    --theme-palette-color-1: #191919;
    --theme-palette-color-2: #333333;
    --theme-link-initial-color: #333333;
    --theme-link-hover-color: #111111;
    --theme-form-selection-initial-color: #191919;
    --theme-form-selection-background-color: #191919;
    color: #202020;
}
body.kohudis-unified-cart #kohudis-checkout #customer_details,
body.kohudis-unified-cart #kohudis-checkout #order_review,
body.kohudis-unified-cart #kohudis-checkout #payment,
body.kohudis-unified-cart #kohudis-checkout .payment_methods,
body.kohudis-unified-cart #kohudis-checkout .payment_box {
    background: #fff !important;
    border-color: #e5e5e3 !important;
    box-shadow: none !important;
}
body.kohudis-unified-cart #kohudis-checkout #payment a { color: #333 !important; text-decoration: underline; text-underline-offset: 3px; }
body.kohudis-unified-cart #kohudis-checkout input[type="checkbox"],
body.kohudis-unified-cart #kohudis-checkout input[type="radio"] { accent-color: #191919; border-color: #a3a3a3 !important; }
body.kohudis-unified-cart #kohudis-checkout input[type="checkbox"]:checked,
body.kohudis-unified-cart #kohudis-checkout input[type="radio"]:checked { background-color: #191919 !important; border-color: #191919 !important; }
body.kohudis-unified-cart #kohudis-checkout .woocommerce-privacy-policy-text { color: #626262; font-size: 14px; line-height: 1.65; }
body.kohudis-unified-cart #kohudis-checkout .kohudis-payable-total { color: #202020; border-top: 1px solid #e5e5e3; padding-top: 20px; }

body.kohudis-unified-cart #payment .wc_payment_method > label::before { border-color: #191919 !important; }

body.kohudis-unified-cart .kohudis-pay-later { border: 0; padding: 0; }
body.kohudis-unified-cart .kohudis-pay-later label { display: flex; align-items: center; gap: 10px; padding: 12px; margin-top: 8px; border: 1px solid #e5e5e3; border-radius: 8px; }
body.kohudis-unified-cart #airwallex-card { min-height: 48px; width: 100%; box-sizing: border-box; }
body.kohudis-unified-cart #awx-express-checkout-wrapper { margin-bottom: 24px; }


/* Wallet hosts must not inherit a 240px column flex-basis. */
body.kohudis-unified-cart #awx-express-checkout-button { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
body.kohudis-unified-cart .awx-ec-button { flex: none !important; min-height: 48px; height: 48px; width: 100%; }
@media (max-width: 760px) {
 body.kohudis-unified-cart #awx-express-checkout-button { grid-template-columns: minmax(0, 1fr); }
 body.kohudis-unified-cart #kohudis-checkout #payment { padding: 0 !important; }
 body.kohudis-unified-cart #airwallex-card { padding-inline: 0 !important; }
}

/* Use the cart width instead of nesting theme review-card gutters. */
body.kohudis-unified-cart #kohudis-checkout .ct-order-review { padding: 0 !important; border: 0 !important; background: #fff !important; }
body.kohudis-unified-cart #kohudis-checkout #payment { margin: 0 !important; }
body.kohudis-unified-cart #payment .kohudis-pay-later-logos { display: inline-flex; gap: 6px; align-items: center; margin-left: auto; flex-shrink: 0; }
body.kohudis-unified-cart #payment .kohudis-pay-later-logos img { width: 40px !important; height: 24px !important; object-fit: contain; }
body.kohudis-unified-cart #payment .payment_method_airwallex_main > label { display: inline-flex; flex-wrap: nowrap; width: calc(100% - 32px); }
@media (max-width: 760px) {
 body.kohudis-unified-cart #kohudis-checkout #order_review { padding: 0 !important; }
 body.kohudis-unified-cart #payment .place-order { padding: 16px 12px !important; }
}

/* Desktop cart overview: products left, total right; mobile stays stacked. */
@media (min-width: 1024px) {
 body.kohudis-unified-cart .ct-woocommerce-cart-form { display: grid !important; grid-template-columns: minmax(0, 1.6fr) minmax(320px, 1fr) !important; gap: 24px !important; align-items: start !important; }
 body.kohudis-unified-cart .ct-woocommerce-cart-form > .woocommerce-cart-form,
 body.kohudis-unified-cart .ct-woocommerce-cart-form > .cart_totals { width: 100% !important; min-width: 0; margin: 0 !important; float: none !important; box-sizing: border-box; }
 body.kohudis-unified-cart .ct-woocommerce-cart-form > .woocommerce-cart-form { padding: 24px !important; }
}

/* Keep all card brands on their own single row, in provider order. */
body.kohudis-unified-cart #payment .payment_method_airwallex_card > label { width: calc(100% - 32px); }
body.kohudis-unified-cart #payment .kohudis-card-logos { display: flex; flex: 0 0 100%; flex-wrap: nowrap; gap: 6px; align-items: center; min-width: 0; margin-top: 4px; }
body.kohudis-unified-cart #payment .kohudis-card-logos img { flex: 0 1 36px; width: 36px !important; max-width: calc((100% - 30px) / 6) !important; height: 24px !important; object-fit: contain; }

/* Align all summary amounts on the same right edge. */
body.kohudis-unified-cart .cart_totals .cart-subtotal td,
body.kohudis-unified-cart .cart_totals .order-total td,
body.kohudis-unified-cart .woocommerce-cart-form td.product-subtotal { text-align: right !important; }
body.kohudis-unified-cart .cart_totals #shipping_method { width: 100%; }
body.kohudis-unified-cart .cart_totals #shipping_method label { display: flex !important; flex: 1; align-items: baseline; justify-content: space-between; gap: 12px; text-align: left; }
body.kohudis-unified-cart .cart_totals #shipping_method label .amount { margin-left: auto; flex-shrink: 0; white-space: nowrap; text-align: right; }

/* Keep standard payment choices immediately beneath express wallets. */
body.kohudis-unified-cart #kohudis-checkout form.checkout { display: block !important; }
body.kohudis-unified-cart #kohudis-checkout .ct-customer-details { width: 100% !important; min-width: 0; }
body.kohudis-unified-cart #kohudis-checkout .ct-order-review { width: 100% !important; margin: 0 0 24px !important; }
body.kohudis-unified-cart .kohudis-payment-reminder { margin: 0; padding: 14px 16px; background: #f7f7f5; color: #555; font-size: 14px; line-height: 1.6; border: 1px solid #e5e5e3; }

/* A relocated payment block must not retain Blocksy's sticky sidebar. */
body.kohudis-unified-cart #kohudis-checkout .ct-order-review { position: static !important; top: auto !important; bottom: auto !important; transform: none !important; align-self: auto !important; }
body.kohudis-unified-cart .kohudis-payment-divider { display: flex; align-items: center; gap: 16px; padding: 8px 0 20px; color: #777; font-size: 13px; font-weight: 600; text-align: center; }
body.kohudis-unified-cart .kohudis-payment-divider::before,
body.kohudis-unified-cart .kohudis-payment-divider::after { content: ''; flex: 1; height: 1px; background: #dededb; }

body.kohudis-unified-cart #payment #customer_details { clear: both; padding: 24px 16px !important; margin: 0 !important; border-top: 1px solid #e5e5e3; }

/* 1.1: one neutral palette and two immediately visible method selectors. */
body.kohudis-unified-cart #main { background: #FAF9F6 !important; }
body.kohudis-unified-cart #main .ct-woocommerce-cart-form > .woocommerce-cart-form,
body.kohudis-unified-cart #main .ct-woocommerce-cart-form > .cart_totals { background: #fff !important; border-color: #e5e5e3 !important; box-shadow: none !important; }
body.kohudis-unified-cart #kohudis-checkout { max-width: 760px; margin-inline: auto; }
body.kohudis-unified-cart #kohudis-checkout #payment .payment_methods { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0; }
body.kohudis-unified-cart #payment li.payment_method_airwallex_card,
body.kohudis-unified-cart #payment li.payment_method_airwallex_main { display: contents !important; }
body.kohudis-unified-cart #payment li.payment_method_airwallex_card > input,
body.kohudis-unified-cart #payment li.payment_method_airwallex_main > input { position: absolute; width: 1px; height: 1px; opacity: 0; }
body.kohudis-unified-cart #payment .payment_method_airwallex_card > label,
body.kohudis-unified-cart #payment .payment_method_airwallex_main > label { grid-row: 1; display: flex; flex-wrap: wrap; align-content: center; align-items: center; justify-content: flex-start; width: 100%; max-width: none; min-height: 106px; padding: 14px 12px 14px 34px; margin: 0; box-sizing: border-box; font-size: 14px; line-height: 1.4; border: 1px solid #e5e5e3; background: #faf9f6; gap: 6px; }
body.kohudis-unified-cart #payment .payment_method_airwallex_card > label { grid-column: 1; }
body.kohudis-unified-cart #payment .payment_method_airwallex_main > label { grid-column: 2; }
body.kohudis-unified-cart #payment .wc_payment_method > input:checked + label { background: #fff; border-color: #191919; }
body.kohudis-unified-cart #payment .wc_payment_method > input:focus-visible + label { outline: 2px solid #191919; outline-offset: -3px; }
body.kohudis-unified-cart #payment .payment_box.payment_method_airwallex_card,
body.kohudis-unified-cart #payment .payment_box.payment_method_airwallex_main { grid-row: 2; grid-column: 1 / -1; }
body.kohudis-unified-cart #payment .kohudis-pay-later-logos { flex: 0 0 100%; margin: 4px 0 0; gap: 4px; }
body.kohudis-unified-cart #payment .kohudis-pay-later-logos img { width: 34px !important; }
body.kohudis-unified-cart #payment .kohudis-card-logos { gap: 3px; }
body.kohudis-unified-cart #payment .kohudis-card-logos img { max-width: calc((100% - 15px) / 6) !important; }
body.kohudis-unified-cart #payment #customer_details { padding: 16px 8px !important; }
body.kohudis-unified-cart #payment #customer_details .form-row { margin-bottom: 14px; }
body.kohudis-unified-cart #place_order { min-height: 48px !important; }
@media (max-width: 380px) {
 body.kohudis-unified-cart #payment .payment_method_airwallex_card > label,
 body.kohudis-unified-cart #payment .payment_method_airwallex_main > label { padding-left: 28px; padding-right: 8px; font-size: 13px; }
 body.kohudis-unified-cart #payment .kohudis-pay-later-logos img { width: 29px !important; }
}

/* Keep focus targets beside their labels and align both selector rows. */
body.kohudis-unified-cart #payment .payment_methods { position: relative; overflow-anchor: none; }
body.kohudis-unified-cart #payment li.payment_method_airwallex_card > input,
body.kohudis-unified-cart #payment li.payment_method_airwallex_main > input { top: 18px !important; left: 14px !important; width: 20px !important; height: 20px !important; margin: 0 !important; }
body.kohudis-unified-cart #payment li.payment_method_airwallex_main > input { left: calc(50% + 14px) !important; }
body.kohudis-unified-cart #payment .payment_method_airwallex_card > label,
body.kohudis-unified-cart #payment .payment_method_airwallex_main > label { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: 24px 24px; align-content: center; gap: 10px; padding: 16px 12px 16px 42px; min-height: 94px; white-space: nowrap; font-size: 14px; }
body.kohudis-unified-cart #payment .wc_payment_method > label::before { content: ''; position: absolute; top: 22px; left: 14px; width: 18px; height: 18px; margin: 0; border: 1.5px solid #aaa !important; border-radius: 50%; background: #fff; box-sizing: border-box; }
body.kohudis-unified-cart #payment .wc_payment_method > input:checked + label::before { border: 5px solid #191919 !important; background: #fff; }
body.kohudis-unified-cart #payment .kohudis-card-logos,
body.kohudis-unified-cart #payment .kohudis-pay-later-logos { grid-row: 2; margin: 0; height: 24px; align-items: center; }
@media (max-width: 380px) {
 body.kohudis-unified-cart #payment .payment_method_airwallex_card > label,
 body.kohudis-unified-cart #payment .payment_method_airwallex_main > label { font-size: 12px; padding-left: 28px; padding-right: 6px; }
 body.kohudis-unified-cart #payment .wc_payment_method > label::before { left: 7px; width: 16px; height: 16px; }
}

/* Override the shared theme's important flex and padding declarations. */
body.kohudis-unified-cart #kohudis-checkout #payment .payment_method_airwallex_card > label,
body.kohudis-unified-cart #kohudis-checkout #payment .payment_method_airwallex_main > label { display: grid !important; padding: 16px 12px 16px 42px !important; gap: 10px !important; }
body.kohudis-unified-cart #kohudis-checkout #payment .kohudis-card-logos,
body.kohudis-unified-cart #kohudis-checkout #payment .kohudis-pay-later-logos { justify-content: flex-start !important; margin: 0 !important; width: 100%; }
@media (max-width: 380px) {
 body.kohudis-unified-cart #kohudis-checkout #payment .payment_method_airwallex_card > label,
 body.kohudis-unified-cart #kohudis-checkout #payment .payment_method_airwallex_main > label { padding-left: 28px !important; padding-right: 6px !important; }
}

/* Selected payment tile uses the brand border, without a visual radio dot. */
body.kohudis-unified-cart #kohudis-checkout #payment .wc_payment_method > label::before,
body.kohudis-unified-cart #kohudis-checkout #payment .wc_payment_method > label::after { display: none !important; }
body.kohudis-unified-cart #kohudis-checkout #payment .payment_method_airwallex_card > label,
body.kohudis-unified-cart #kohudis-checkout #payment .payment_method_airwallex_main > label { padding: 16px 14px !important; border: 1px solid #e5e5e3 !important; }
body.kohudis-unified-cart #kohudis-checkout #payment .wc_payment_method > input:checked + label { border-color: #1a1a1a !important; box-shadow: inset 0 0 0 1px #1a1a1a !important; background: #fff !important; }
body.kohudis-unified-cart #kohudis-checkout #payment .wc_payment_method > input:focus-visible + label { outline: 2px solid #191919; outline-offset: 2px; }

/* Center the payment titles and each brand row within its selector tile. */
body.kohudis-unified-cart #kohudis-checkout #payment .payment_method_airwallex_card > label,
body.kohudis-unified-cart #kohudis-checkout #payment .payment_method_airwallex_main > label { text-align: center !important; justify-items: center; }
body.kohudis-unified-cart #kohudis-checkout #payment .kohudis-card-logos,
body.kohudis-unified-cart #kohudis-checkout #payment .kohudis-pay-later-logos { justify-content: center !important; }
body.kohudis-unified-cart #kohudis-checkout #payment .kohudis-card-logos img,
body.kohudis-unified-cart #kohudis-checkout #payment .kohudis-pay-later-logos img { float: none !important; margin: 0 !important; }

/* Express checkout follows the cart overview without an extra section title. */
body.kohudis-unified-cart #kohudis-checkout { margin-top: 16px !important; }
body.kohudis-unified-cart #kohudis-checkout form.checkout { margin-top: 0 !important; }

/* Compact the optional details and consent area without shrinking controls. */
body.kohudis-unified-cart #kohudis-checkout #payment #customer_details { padding-bottom: 4px !important; }
body.kohudis-unified-cart #kohudis-checkout .kohudis-billing-choice { padding-block: 8px !important; margin-bottom: 8px !important; }
body.kohudis-unified-cart #kohudis-checkout .woocommerce-additional-fields .kohudis-optional-field { margin-block: 4px !important; }
body.kohudis-unified-cart #kohudis-checkout .woocommerce-additional-fields summary { padding-block: 8px !important; }
body.kohudis-unified-cart #kohudis-checkout #payment .place-order { margin-top: 8px !important; padding-top: 8px !important; }
body.kohudis-unified-cart #kohudis-checkout .woocommerce-privacy-policy-text p { margin: 0 0 12px !important; font-size: 13px; line-height: 1.55; }
body.kohudis-unified-cart #kohudis-checkout .woocommerce-terms-and-conditions-wrapper { margin-bottom: 12px !important; }
body.kohudis-unified-cart #kohudis-checkout .woocommerce-terms-and-conditions-wrapper .form-row { margin-bottom: 0 !important; }
body.kohudis-unified-cart #kohudis-checkout .kohudis-payable-total { margin-block: 12px !important; padding-top: 12px !important; }

/* Compact cart-to-payment rhythm and a right-aligned delivery estimate. */
body.kohudis-unified-cart #main .cart_totals { padding: 20px !important; }
body.kohudis-unified-cart #main .cart_totals h2 { margin-bottom: 12px !important; }
body.kohudis-unified-cart #main .cart_totals table { margin-bottom: 0 !important; }
body.kohudis-unified-cart #main .cart_totals th,
body.kohudis-unified-cart #main .cart_totals td { padding-block: 10px !important; }
body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row td { text-align: right !important; }
body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row small { display: block; white-space: nowrap; text-align: right; font-size: 11px; line-height: 1.4; margin-top: 4px; }
body.kohudis-unified-cart #kohudis-checkout { margin-top: 12px !important; }
body.kohudis-unified-cart #awx-express-checkout-wrapper { padding-top: 8px !important; margin-bottom: 12px !important; }
body.kohudis-unified-cart .kohudis-payment-divider { padding-block: 4px 12px !important; }
@media (max-width: 1023px) {
 body.kohudis-unified-cart #main .ct-woocommerce-cart-form { gap: 16px !important; row-gap: 16px !important; }
 body.kohudis-unified-cart #main .ct-woocommerce-cart-form > .cart_totals { margin-top: 16px !important; margin-bottom: 0 !important; }
 body.kohudis-unified-cart #main .ct-woocommerce-cart-form > .woocommerce-cart-form { margin-bottom: 0 !important; padding-bottom: 16px !important; }
 body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row td { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; column-gap: 8px; }
 body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row td::before { text-align: left; }
 body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row td strong { text-align: right; white-space: nowrap; }
 body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row small { grid-column: 1 / -1; }
}

@media (max-width: 1023px) {
 body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row { display: block !important; width: 100% !important; }
 body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row td { width: 100% !important; box-sizing: border-box; }
}

/* Remove redundant delivery copy and legacy checkout spacing. */
body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row small { display: none !important; }
body.kohudis-unified-cart #main .cart_totals .order-total th,
body.kohudis-unified-cart #main .cart_totals .order-total td { border-bottom: 0 !important; }
body.kohudis-unified-cart #main .cart_totals .wc-proceed-to-checkout { margin: 0 !important; padding: 0 !important; }
body.kohudis-unified-cart #main .cart_totals { padding-bottom: 10px !important; }
body.kohudis-unified-cart #kohudis-checkout { margin-top: 0 !important; }
body.kohudis-unified-cart #awx-express-checkout-wrapper { padding-top: 0 !important; }
body.kohudis-unified-cart #main .woocommerce-cart-form .product-name .amount,
body.kohudis-unified-cart #main .woocommerce-cart-form .product-name .price,
body.kohudis-unified-cart #main .cart_totals .cart-subtotal,
body.kohudis-unified-cart #main .cart_totals #shipping_method label,
body.kohudis-unified-cart #main .cart_totals #shipping_method .amount { color: #111 !important; font-weight: 700 !important; }
@media (max-width: 1023px) {
 body.kohudis-unified-cart #main .ct-woocommerce-cart-form { gap: 6px !important; row-gap: 6px !important; }
 body.kohudis-unified-cart #main .ct-woocommerce-cart-form > .cart_totals { margin-top: 0 !important; }
}

body.kohudis-unified-cart #main .entry-content > .woocommerce:has(+ #kohudis-checkout) { margin-bottom: 6px !important; }

/* Equal-height desktop overview; spread summary rows without fixed heights. */
@media (min-width: 1024px) {
 body.kohudis-unified-cart #main .ct-woocommerce-cart-form { align-items: stretch !important; }
 body.kohudis-unified-cart #main .ct-woocommerce-cart-form > .cart_totals { align-self: stretch !important; display: flex !important; flex-direction: column; padding: 24px !important; }
 body.kohudis-unified-cart #main .cart_totals h2 { margin-bottom: 20px !important; }
 body.kohudis-unified-cart #main .cart_totals table { display: flex; flex-direction: column; flex: 1; width: 100%; }
 body.kohudis-unified-cart #main .cart_totals table tbody { display: flex; flex-direction: column; flex: 1; }
 body.kohudis-unified-cart #main .cart_totals table tr { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; }
 body.kohudis-unified-cart #main .cart_totals table th { flex: 1; text-align: left; }
 body.kohudis-unified-cart #main .cart_totals table td { flex: 1; text-align: right; }
 body.kohudis-unified-cart #main .cart_totals .woocommerce-shipping-totals { display: block; }
 body.kohudis-unified-cart #main .cart_totals .woocommerce-shipping-totals th,
 body.kohudis-unified-cart #main .cart_totals .woocommerce-shipping-totals td { display: block; width: 100%; }
 body.kohudis-unified-cart #main .cart_totals .order-total { margin-top: auto; padding-top: 20px; border-top: 1px solid #e5e5e3; font-size: 20px; }
}

/* Quiet support/footer palette, scoped to this cart experience. */
body.kohudis-unified-cart #main .woocommerce-cart-form td.actions { border-bottom: 0 !important; }
body.kohudis-unified-cart #main .cart_totals .order-total { border-top: 0 !important; }
body.kohudis-unified-cart #main .koh-help-cta { background: #fff !important; border: 1px solid #e5e5e3 !important; box-shadow: none !important; }
body.kohudis-unified-cart #main .koh-help-cta__copy { color: #555 !important; }
body.kohudis-unified-cart #main .koh-help-cta__copy strong { color: #191919 !important; }
body.kohudis-unified-cart #main .koh-help-cta__button { background: #191919 !important; color: #fff !important; border-color: #191919 !important; box-shadow: none !important; }
body.kohudis-unified-cart #main .koh-help-cta__link { background: #fff !important; color: #191919 !important; border-color: #d5d5d2 !important; box-shadow: none !important; }
body.kohudis-unified-cart #footer,
body.kohudis-unified-cart #footer > [data-row] { background: #f3f3ef !important; color: #555 !important; --theme-text-color: #555; --theme-heading-color: #191919; --theme-link-initial-color: #191919; --theme-link-hover-color: #555; }
body.kohudis-unified-cart #footer .kohudis-footer-contact,
body.kohudis-unified-cart #footer .kohudis-footer-offices { color: #555 !important; }
body.kohudis-unified-cart #footer :is(h2,h3,strong,a) { color: #191919 !important; }
body.kohudis-unified-cart #footer .kohudis-footer-contact__quote { background: #191919 !important; color: #fff !important; border-color: #191919 !important; box-shadow: none !important; }
body.kohudis-unified-cart #footer .kohudis-footer-policies { border-color: #d5d5d2 !important; }
body.kohudis-unified-cart #footer [data-row="bottom"] { border-color: #dededb !important; }

body.kohudis-unified-cart #main .koh-help-cta { margin-top: 12px !important; margin-bottom: 0 !important; padding: 16px !important; }
body.kohudis-unified-cart #main .ct-container,
body.kohudis-unified-cart #main .ct-container-full { padding-bottom: 16px !important; }
body.kohudis-unified-cart #main .entry-content { margin-bottom: 0 !important; padding-bottom: 0 !important; }
body.kohudis-unified-cart #footer [data-row="middle"] > div { padding-top: 24px !important; padding-bottom: 24px !important; }

body.kohudis-unified-cart .kohudis-field-error { display: block; color: #b42318; font-size: 13px; line-height: 1.4; margin-top: 5px; }
@media (min-width: 1024px) {
 body.kohudis-unified-cart #main .cart_totals .woocommerce-shipping-totals td,
 body.kohudis-unified-cart #main .cart_totals .woocommerce-shipping-totals td::before { text-align: left !important; }
}

/* Checkout footer: remove distractions and override legacy pale text explicitly. */
body.kohudis-unified-cart .ct-trending-block { display: none !important; }
body.kohudis-unified-cart #footer .kohudis-footer-contact p,
body.kohudis-unified-cart #footer .kohudis-footer-contact address p span,
body.kohudis-unified-cart #footer .ct-footer-copyright,
body.kohudis-unified-cart #footer .ct-footer-copyright * { color: #555 !important; }
body.kohudis-unified-cart #footer .kohudis-footer-contact p a,
body.kohudis-unified-cart #footer .kohudis-footer-contact .kohudis-footer-policies a { color: #191919 !important; text-decoration-color: #777 !important; }
body.kohudis-unified-cart #footer .kohudis-footer-contact { max-width: 1132px; width: 100%; margin-inline: auto; }
body.kohudis-unified-cart #footer .kohudis-footer-contact h3 { font-size: 20px; margin-bottom: 14px; }
body.kohudis-unified-cart #footer .kohudis-footer-contact > p { margin-bottom: 8px; }
body.kohudis-unified-cart #footer .kohudis-footer-offices { margin-block: 20px; }
@media (min-width: 1024px) {
 body.kohudis-unified-cart #footer .kohudis-footer-offices { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
 body.kohudis-unified-cart #footer .kohudis-footer-offices p { display: block !important; margin: 0 !important; }
 body.kohudis-unified-cart #footer .kohudis-footer-offices strong { display: block; margin-bottom: 6px; }
}

body.kohudis-unified-cart .kohudis-wallet-status { padding: 12px 16px; margin: 0 0 12px; background: #f3f3ef; border: 1px solid #e5e5e3; border-radius: 8px; color: #555; font-size: 13px; line-height: 1.5; }
body.kohudis-unified-cart .kohudis-wallet-status[hidden] { display: none !important; }

/* 1.2.8/1.2.9 — larger cart quantity stepper (44px touch targets) and pending feedback */
body .woocommerce-cart-form .quantity[data-type="type-2"] {
    --quantity-height: 44px;
    --quantity-width: 136px;
    width: 136px !important;
    height: 44px !important;
}
body .woocommerce-cart-form .quantity[data-type="type-2"] input.qty {
    width: 136px !important;
    height: 44px !important;
    padding: 0 44px !important;
    font-size: 17px !important;
    font-weight: 600;
    color: #111 !important;
    border: 1px solid #c9c5bd !important;
    border-radius: 22px !important;
    text-align: center;
    -moz-appearance: textfield;
}
body .woocommerce-cart-form .quantity[data-type="type-2"] input.qty::-webkit-outer-spin-button,
body .woocommerce-cart-form .quantity[data-type="type-2"] input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase,
body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease {
    top: 0 !important;
    bottom: auto !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 22px !important;
    color: #111 !important;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
    -webkit-user-select: none;
    z-index: 1;
}
body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease { left: 0 !important; right: auto !important; inset-inline-start: 0 !important; inset-inline-end: auto !important; }
body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase { right: 0 !important; left: auto !important; inset-inline-end: 0 !important; inset-inline-start: auto !important; }
body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase::before,
body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease::before {
    font-size: 13px !important;
    width: auto !important;
    height: auto !important;
    color: #111 !important;
}


body .woocommerce-cart-form .koh-qty-pending .product-subtotal,
body .woocommerce-cart-form .koh-qty-pending .kohudis-mini-cart-line-price,
body.koh-qty-updating .cart_totals .order-total,
body.koh-qty-updating .cart_totals .cart-subtotal {
    opacity: 0.45;
    transition: opacity 0.12s ease;
}

/* 1.2.11 — single Shipment · USPS row in cart totals */
body.kohudis-unified-cart #main .cart_totals .woocommerce-shipping-totals .ct-shipping-heading { display: none !important; }
body.kohudis-unified-cart #main .cart_totals #shipping_method label .kohudis-ship-name { font-weight: 400; color: #111; }
body.kohudis-unified-cart #main .cart_totals #shipping_method label { font-weight: 400 !important; }
body.kohudis-unified-cart #main .cart_totals #shipping_method label .amount { font-weight: 700 !important; }
body.kohudis-unified-cart #main .cart_totals #shipping_method label { gap: 0 !important; }
body.kohudis-unified-cart #main .cart_totals #shipping_method label .amount { padding-left: 12px; }
/* 1.2.14 — totals labels share one bold black style (Subtotal / Shipment · USPS / Total) */
body.kohudis-unified-cart #main .cart_totals .cart-subtotal th,
body.kohudis-unified-cart #main .cart_totals .order-total th,
body.kohudis-unified-cart #main .cart_totals #shipping_method label,
body.kohudis-unified-cart #main .cart_totals #shipping_method label .kohudis-ship-name { font-weight: 700 !important; color: #111 !important; }

/* 1.2.16 — stepper press/hover uses KOHUDIS orange (was theme brown); phone total labels bold */
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase:hover,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease:hover,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase:focus,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease:focus,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase:active,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease:active {
    background: #1a1a1a !important;
    background-color: #1a1a1a !important;
    color: #fff !important;
    outline: none;
}
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase:hover::before,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease:hover::before,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase:focus::before,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease:focus::before,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-increase:active::before,
html body .woocommerce-cart-form .quantity[data-type="type-2"] .ct-decrease:active::before { color: #fff !important; }
body.kohudis-unified-cart #main .cart_totals .cart-subtotal td::before,
body.kohudis-unified-cart #main .cart_totals .order-total td::before { font-weight: 700 !important; color: #111 !important; }

/* 1.2.17 — one label style for Subtotal / Shipment · USPS / Shipping to / Estimated delivery / Total
   (desktop th labels and phone td::before labels) */
html body.kohudis-unified-cart #main .cart_totals .cart-subtotal th,
html body.kohudis-unified-cart #main .cart_totals .order-total th,
html body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row th,
html body.kohudis-unified-cart #main .cart_totals .cart-subtotal td::before,
html body.kohudis-unified-cart #main .cart_totals .order-total td::before,
html body.kohudis-unified-cart #main .cart_totals .kohudis-delivery-estimate-row td::before,
html body.kohudis-unified-cart #main .cart_totals .woocommerce-shipping-destination,
html body.kohudis-unified-cart #main .cart_totals #shipping_method label,
html body.kohudis-unified-cart #main .cart_totals #shipping_method label .kohudis-ship-name {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #111 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
html body.kohudis-unified-cart #main .cart_totals .order-total { font-size: 16px !important; }
/* Total amount in KOHUDIS orange */
html body.kohudis-unified-cart #main .cart_totals .order-total .amount,
html body.kohudis-unified-cart #main .cart_totals .order-total .amount bdi,
html body.kohudis-unified-cart #main .cart_totals .order-total .amount .woocommerce-Price-currencySymbol { color: #1a1a1a !important; font-weight: 700 !important; }

/* 1.2.18 — desktop cart polish (breakpoint matches the 1.0.209+ two-column layout at 761px) */
@media (min-width: 761px) {
    body.kohudis-unified-cart article .entry-content > .kohudis-checkout-head { grid-column: 1 / -1 !important; grid-row: 1 !important; margin: 0 0 8px !important; }
    body.kohudis-unified-cart article .entry-content > .woocommerce,
    body.kohudis-unified-cart article .entry-content > #kohudis-checkout { grid-row: 2 !important; }
    body.kohudis-unified-cart article .entry-content > .woocommerce.kohudis-cart-sticky { position: sticky; top: 24px; align-self: start; }
    body.admin-bar.kohudis-unified-cart article .entry-content > .woocommerce.kohudis-cart-sticky { top: 56px; }
    body.kohudis-unified-cart article .entry-content > .woocommerce > .kohudis-help-final { margin-top: 16px !important; }
}
body.kohudis-unified-cart .kohudis-checkout-head h1 { margin: 0 0 4px !important; font-size: 34px !important; font-weight: 800 !important; color: #111 !important; }
body.kohudis-unified-cart .kohudis-checkout-head p { margin: 0 !important; font-size: 15px !important; color: #4a4a4a !important; }
/* Single total: hide the duplicate "Total to pay" line (the Pay button carries the amount) */
body.kohudis-unified-cart #kohudis-checkout .kohudis-payable-total { display: none !important; }
/* Primary action in brand orange; coupon becomes a secondary outline button */
html body.kohudis-unified-cart #place_order { background: #1a1a1a !important; border-color: #1a1a1a !important; color: #fff !important; font-size: 17px !important; font-weight: 800 !important; min-height: 54px !important; border-radius: 999px !important; }
html body.kohudis-unified-cart #place_order:hover { background: #000000 !important; border-color: #000000 !important; }
html body.kohudis-unified-cart .woocommerce-cart-form button[name="apply_coupon"] { background: #fff !important; color: #111 !important; border: 1.5px solid #111 !important; font-weight: 700 !important; }
html body.kohudis-unified-cart .woocommerce-cart-form button[name="apply_coupon"]:hover { background: #111 !important; color: #fff !important; }
/* Express checkout loading: quiet skeleton instead of a grey notice (text kept for screen readers) */
body.kohudis-unified-cart .kohudis-wallet-status.kohudis-wallet-status--loading { position: relative; height: 48px; padding: 0 !important; overflow: hidden; color: transparent !important; border: 0 !important; border-radius: 8px; background: linear-gradient(90deg, #efede8 0%, #f7f6f2 50%, #efede8 100%) !important; background-size: 200% 100% !important; animation: kohudisWalletShimmer 1.4s ease-in-out infinite; }
@keyframes kohudisWalletShimmer { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } }
@media (prefers-reduced-motion: reduce) { body.kohudis-unified-cart .kohudis-wallet-status--loading { animation: none; } }
/* One type family across the cart page */
body.kohudis-unified-cart #main, body.kohudis-unified-cart #main input, body.kohudis-unified-cart #main select,
body.kohudis-unified-cart #main button, body.kohudis-unified-cart #main label, body.kohudis-unified-cart #main textarea { font-family: "Open Sans", -apple-system, "Segoe UI", sans-serif !important; }

/* 1.2.21 — express checkout: Google Pay was clipped at the right edge (fieldset min-width:min-content
   swallowed its right padding). Stack Apple Pay / Google Pay full-width in the payment column. */
@media (min-width: 761px) {
    body.kohudis-unified-cart #awx-express-checkout-button.awx-express-checkout-button-set {
        min-width: 0 !important;
        box-sizing: border-box !important;
        width: 100% !important;
        padding: 12px 16px 16px !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
    }
    body.kohudis-unified-cart #awx-express-checkout-button .awx-ec-button { width: 100% !important; min-width: 0 !important; margin: 0 !important; }
    body.kohudis-unified-cart #awx-express-checkout-button .awx-ec-button iframe { width: 100% !important; }
}
