/**
 * COCIDITOS 2.0.27 · Cart Clarity.
 * Menos altura y menos repetición sin alterar Cart Blocks ni sus cálculos.
 */
body.woocommerce-cart {
  --coci-cart-gap: 16px;
}

/* El cotizador reemplaza a la nota genérica de Cart Rewards en esta superficie. */
body.woocommerce-cart .coci-shipping-note { display: none !important; }

body.woocommerce-cart .entry-header {
  width: min(1180px, calc(100% - 28px)) !important;
  margin: 14px auto 16px !important;
  padding: 24px clamp(20px, 3vw, 34px) 26px !important;
  border-radius: 24px !important;
  box-shadow: 0 10px 28px rgb(31 69 51 / .055) !important;
}
body.woocommerce-cart .entry-title {
  max-width: none !important;
  font-size: clamp(2.35rem, 5vw, 4rem) !important;
  line-height: .94 !important;
}
body.woocommerce-cart .entry-header::after {
  content: "Revisá tu pedido." !important;
  max-width: none !important;
  margin-top: 7px !important;
  font-size: .95rem !important;
  line-height: 1.35 !important;
}
body.woocommerce-cart .wp-block-woocommerce-cart {
  padding-bottom: 24px !important;
}
body.woocommerce-cart .wc-block-cart {
  gap: var(--coci-cart-gap) !important;
}
body.woocommerce-cart .wc-block-cart-items,
body.woocommerce-cart .wc-block-cart__sidebar {
  border-radius: 22px !important;
  box-shadow: 0 10px 30px rgb(55 75 55 / .065) !important;
}
body.woocommerce-cart .wc-block-cart-items {
  padding: 10px 14px !important;
}
body.woocommerce-cart .wc-block-cart-items__row {
  padding: 14px 0 !important;
}
body.woocommerce-cart .wc-block-cart-item__wrap {
  padding-top: 0 !important;
}
body.woocommerce-cart .wc-block-components-product-name {
  font-size: 1.02rem !important;
  line-height: 1.2 !important;
}
body.woocommerce-cart :is(
  .wc-block-components-product-metadata,
  .wc-block-components-product-details
) {
  margin-top: 4px !important;
  font-size: .80rem !important;
  line-height: 1.35 !important;
}
body.woocommerce-cart .wc-block-cart-item__image img {
  border-radius: 14px !important;
  box-shadow: none !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector {
  min-height: 34px !important;
  border-radius: 13px !important;
}
body.woocommerce-cart .wc-block-components-quantity-selector :is(button, input) {
  min-height: 32px !important;
  height: 32px !important;
}
body.woocommerce-cart .wc-block-cart-item__remove-link {
  font-size: .78rem !important;
}
body.woocommerce-cart .wc-block-cart__sidebar {
  padding: 14px 15px 16px !important;
}
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper {
  padding-block: 0 !important;
}
body.woocommerce-cart .wc-block-components-totals-item {
  padding: 8px 0 !important;
}
body.woocommerce-cart .wc-block-components-totals-footer-item {
  margin-top: 5px !important;
  padding-top: 12px !important;
}
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
  font-size: clamp(1.85rem, 3.6vw, 2.6rem) !important;
}
body.woocommerce-cart :is(
  .wc-block-components-totals-coupon,
  .wc-block-components-panel
) {
  margin-block: 0 !important;
}
body.woocommerce-cart .wc-block-components-panel__button {
  min-height: 44px !important;
  padding-block: 9px !important;
}
body.woocommerce-cart .coci-cart-note {
  margin: 8px 0 !important;
  padding: 9px 11px !important;
  border-radius: 14px !important;
  font-size: .80rem !important;
  line-height: 1.35 !important;
  box-shadow: none !important;
}
body.woocommerce-cart .wc-block-cart__submit-button {
  min-height: 52px !important;
  margin-top: 10px !important;
  border-radius: 15px !important;
  box-shadow: 0 10px 24px rgb(31 107 72 / .14) !important;
}

@media (max-width: 782px) {
  body.woocommerce-cart {
    --coci-cart-gap: 10px;
  }
  body.woocommerce-cart .entry-header {
    width: calc(100% - 20px) !important;
    margin: 9px auto 11px !important;
    padding: 17px 17px 18px !important;
    border-radius: 20px !important;
    box-shadow: none !important;
  }
  body.woocommerce-cart .entry-title {
    font-size: clamp(2.05rem, 10.5vw, 2.75rem) !important;
  }
  body.woocommerce-cart .entry-header::after {
    margin-top: 5px !important;
    font-size: .86rem !important;
  }
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wc-block-cart {
    padding-inline: 5px !important;
  }
  body.woocommerce-cart .wc-block-cart-items,
  body.woocommerce-cart .wc-block-cart__sidebar {
    border-radius: 19px !important;
    box-shadow: none !important;
  }
  body.woocommerce-cart .wc-block-cart-items {
    padding: 7px 10px !important;
  }
  body.woocommerce-cart .wc-block-cart-items__row {
    padding: 11px 0 !important;
  }
  body.woocommerce-cart .wc-block-cart-item__image {
    padding-right: 10px !important;
  }
  body.woocommerce-cart .wc-block-cart-item__image img {
    padding: 3px !important;
    border-radius: 12px !important;
  }
  body.woocommerce-cart .wc-block-components-product-name {
    font-size: .98rem !important;
  }
  body.woocommerce-cart .wc-block-cart__sidebar {
    padding: 11px 12px 13px !important;
  }
  body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
    font-size: 1.95rem !important;
  }
  body.woocommerce-cart .wc-block-cart__submit-button {
    min-height: 50px !important;
    margin-top: 8px !important;
    font-size: .98rem !important;
  }
}

/* 2.0.27 · Desktop task layout.
 * El estimador es un tercer hijo directo del Filled Cart; lo ubicamos de forma
 * explícita para conservar la grilla WooCommerce: contenido + resumen.
 */
@media (min-width: 783px) {
  body.woocommerce-cart .wc-block-cart {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(330px, 370px) !important;
    grid-template-rows: auto auto !important;
    column-gap: 22px !important;
    row-gap: 14px !important;
    align-items: start !important;
  }

  body.woocommerce-cart .wc-block-cart > .wc-block-cart__main {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart > .coci-cart-ship-quote {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart > .wc-block-cart__sidebar {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    align-self: start !important;
    margin: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 12px !important;
    align-items: end !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
    font-size: 1.08rem !important;
    line-height: 1.1 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
    font-size: clamp(1.7rem, 2.2vw, 2.15rem) !important;
  }
}

/* 2.0.27 · Título de tarea, no hero de campaña. */
body.woocommerce-cart .entry-header {
  width: min(1180px, calc(100% - 28px)) !important;
  margin: 10px auto 16px !important;
  padding: 16px 22px 17px !important;
  border-radius: 18px !important;
  min-height: 0 !important;
  text-align: left !important;
  box-shadow: none !important;
}
body.woocommerce-cart .entry-title {
  max-width: none !important;
  font-size: clamp(1.85rem, 3.2vw, 2.55rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.04em !important;
  font-weight: 800 !important;
}
body.woocommerce-cart .entry-header::after {
  content: "Revisá tu pedido." !important;
  display: block !important;
  margin: 3px 0 0 !important;
  font-size: .84rem !important;
  line-height: 1.35 !important;
}

@media (max-width: 782px) {
  body.woocommerce-cart .entry-header {
    width: calc(100% - 20px) !important;
    margin: 8px auto 10px !important;
    padding: 13px 15px 14px !important;
    border-radius: 16px !important;
  }
  body.woocommerce-cart .entry-title {
    font-size: clamp(1.72rem, 8.4vw, 2.05rem) !important;
  }
  body.woocommerce-cart .entry-header::after {
    margin-top: 2px !important;
    font-size: .80rem !important;
  }
}
