/**
 * Zomu's small visual signatures, shared by the drawer and purchase journey.
 * Presentation only: no hidden totals, payment fields, statuses or gateway frames.
 * Brand-specific decoration is opt-in via the Zomu theme's existing body class.
 */
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer {
  border-inline-start-color: rgb(217 230 161 / 24%);
  box-shadow: -16px 0 64px rgb(10 34 54 / 17%);
}
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer .cart-drawer__header {
  isolation: isolate;
  overflow: hidden;
  border-bottom: 3px solid var(--zomu-accent, #d9e6a1);
  background: linear-gradient(110deg, var(--zcu-drawer-navy) 48%, #143b43);
}
/* Empty CSS shapes echo a jar rim; they never intercept a pointer or add speech. */
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer .cart-drawer__header::after {
  position: absolute;
  z-index: -1;
  inset: -62px 63px auto auto;
  width: 148px;
  height: 148px;
  border: 1px solid rgb(217 230 161 / 22%);
  border-radius: 50%;
  box-shadow: 0 0 0 17px rgb(217 230 161 / 4%), 0 0 0 36px rgb(217 230 161 / 3%);
  content: "";
  pointer-events: none;
}
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer .widget_shopping_cart_content {
  background: linear-gradient(155deg, #fafbf6, #fff 32%);
}
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer .woocommerce-mini-cart-item img {
  border-color: #e1e5d8;
  box-shadow: 0 4px 12px rgb(10 34 54 / 4%);
}
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer .woocommerce-mini-cart__total {
  padding-top: 20px;
  border-top-color: #dce3d2;
  background: transparent;
}
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer .woocommerce-mini-cart__total .amount {
  font-family: var(--zomu-sans, sans-serif);
  font-size: 23px;
  font-weight: 650;
  letter-spacing: -.02em;
}
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer .woocommerce-mini-cart__buttons .checkout {
  background: linear-gradient(110deg, var(--zcu-drawer-forest), #23563b);
  box-shadow: 0 5px 16px rgb(23 70 43 / 10%);
}
body.zomu-motion-theme.zcu-drawer-ui #cart-drawer .woocommerce-mini-cart__buttons .checkout:hover {
  background: var(--zcu-drawer-navy);
}

/* Soft paper, not another banner: keep the cart and address forms in focus. */
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) {
  --zcu-journey-shadow: 0 10px 32px rgb(10 34 54 / 5%);
}
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) .page-hero {
  overflow: hidden;
  background: linear-gradient(115deg, #eef2df, var(--zcu-paper) 75%);
}
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) .zcu-progress {
  border-color: #dfe5d5;
  background: linear-gradient(105deg, #f4f7e9, #fff 52%);
  box-shadow: 0 3px 16px rgb(10 34 54 / 2%);
}
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) .wc-block-components-sidebar-layout > .wc-block-components-sidebar,
body.zomu-motion-theme.zomu-commerce-ui--cart .woocommerce .cart-collaterals .cart_totals {
  background: linear-gradient(145deg, #f7f9f0, #fff 150px);
  border-top-width: 3px;
  box-shadow: var(--zcu-journey-shadow);
}
body.zomu-motion-theme.zomu-commerce-ui--cart .wc-block-cart__main table.wc-block-cart-items thead th {
  background: #edf1e6;
}
body.zomu-motion-theme.zomu-commerce-ui--cart .wc-block-cart-item__image img,
body.zomu-motion-theme.zomu-commerce-ui--cart .woocommerce table.cart .product-thumbnail img {
  border: 1px solid #e4e7de;
  box-shadow: 0 3px 10px rgb(10 34 54 / 4%);
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-checkout__main .wc-block-components-checkout-step,
body.zomu-motion-theme.zomu-commerce-ui--checkout .woocommerce form.checkout #customer_details > :is(.col-1, .col-2) {
  border-color: #dfe4d8;
  box-shadow: 0 3px 16px rgb(10 34 54 / 2%);
  transition: border-color .2s ease, box-shadow .2s ease;
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-checkout__main .wc-block-components-checkout-step:focus-within,
body.zomu-motion-theme.zomu-commerce-ui--checkout .woocommerce form.checkout #customer_details > :is(.col-1, .col-2):focus-within {
  border-color: #a8b68e;
  box-shadow: 0 3px 18px rgb(23 70 43 / 6%);
}

/* Native summary used three columns, squeezing long names into a thin strip.
 * Let the description use all space beside the image and put its total below.
 * DOM order, collapse controls, quantities and native product metadata remain. */
body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-components-order-summary .wc-block-components-order-summary-item {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: 8px 14px;
  align-items: start;
  padding-block: 18px;
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__image {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 58px;
  margin: 2px 0 0;
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__description {
  grid-column: 2;
  grid-row: 1;
  width: auto;
  min-width: 0;
  max-width: 100%;
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-checkout__sidebar .wc-block-components-product-name {
  font-size: 13px;
  line-height: 1.55;
  font-weight: 600;
  word-break: normal;
  overflow-wrap: break-word;
  text-wrap: pretty;
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__total-price {
  grid-column: 2;
  grid-row: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 6px 10px;
  width: auto;
  min-width: 0;
  max-width: 100%;
  text-align: start;
  color: var(--zcu-forest);
  font-weight: 650;
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__total-price .wc-block-components-product-badge {
  margin: 0;
}
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) .wc-block-components-totals-footer-item {
  padding-top: 4px;
  color: var(--zcu-forest);
}
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) .wc-block-components-totals-footer-item__value {
  font-weight: 700;
}
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) .woocommerce :is(.checkout-button, #place_order),
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) :is(.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button) {
  box-shadow: 0 5px 15px rgb(23 70 43 / 9%);
  transition: background-color .2s ease, box-shadow .2s ease;
}
body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) :is(.wc-block-components-button, #place_order):is(:disabled, [aria-disabled="true"], .is-loading) {
  box-shadow: none;
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .woocommerce ul.order_details {
  background: linear-gradient(135deg, #f7f9f0, #fff 50%);
  box-shadow: 0 3px 16px rgb(10 34 54 / 2%);
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .zcu-payment-state {
  border-color: #dce2c8;
  border-left-color: var(--zcu-forest);
  background: linear-gradient(120deg, #f0f5de, #fff 76%);
}
body.zomu-motion-theme.zomu-commerce-ui--checkout .zcu-payment-state--failed {
  border-left-color: var(--zcu-plum);
}

@media (max-width: 600px) {
  body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-components-order-summary .wc-block-components-order-summary-item {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 7px 12px;
  }
  body.zomu-motion-theme.zomu-commerce-ui--checkout .wc-block-components-order-summary .wc-block-components-order-summary-item__image { width: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  body.zomu-motion-theme.zcu-drawer-ui #cart-drawer *,
  body.zomu-motion-theme:is(.zomu-commerce-ui--cart, .zomu-commerce-ui--checkout) :is(.wc-block-components-checkout-step, #customer_details > div, .checkout-button, #place_order, .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button) {
    transition: none;
  }
}
body.zomu-motion-theme:is(.zomu-commerce-ui--motion-none, .reduce-theme-motion) :is(.wc-block-components-checkout-step, #customer_details > div, .checkout-button, #place_order, .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button) {
  transition: none;
}
