/** Shopify CDN: Minification failed

Line 14:44 Unexpected "*"

**/
/* ============================================================
 * Nobre Cosméticos — Carrinho (Fase 9)
 * ------------------------------------------------------------
 * Polish de MARCA sobre o carrinho NATIVO do Horizon (cart drawer
 * + página: cart-items, cart-summary, cart-totals, cart-discount,
 * cart-note, checkout). Asset global (após base.css e nobre-*.css)
 * → sem avisos ValidScopedCSSClass. CSS-only: NÃO altera markup,
 * a Cart API, o Section Rendering, o contador nem o checkout.
 * Sem !important; tokens --nobre-*/--color-*/--style-*.
 *
 * Sumário:
 *   1. Itens do carrinho (título, variante, preço, remover, erro)
 *   2. Quantidade
 *   3. Resumo (subtotal/total, aviso fiscal)
 *   4. Descontos e nota
 *   5. Checkout e estado vazio
 *   6. Gaveta (drawer) — cabeçalho, resumo, safe-area
 *   7. Foco acessível e movimento reduzido
 * ============================================================ */

/* 1. Itens do carrinho -------------------------------------- */
.cart-items__title {
  color: var(--color-foreground-heading);
  overflow-wrap: anywhere;
}

.cart-items__variant,
.cart-items__properties,
.cart-items__price-unit {
  color: var(--color-foreground-muted, rgb(var(--color-foreground-rgb) / 0.6));
  font-size: var(--font-size--sm);
}

.cart-items__remove {
  min-block-size: var(--minimum-touch-target, 44px);
  min-inline-size: var(--minimum-touch-target, 44px);
  transition: color var(--animation-speed) var(--animation-easing);
}

@media (hover: hover) {
  .cart-items__remove:hover {
    color: var(--nobre-brand-dark, var(--color-primary));
  }
}

.cart-item__error,
.cart-item__error-text {
  color: var(--color-error, #8b0000);
  font-size: var(--font-size--sm);
}

/* 2. Quantidade --------------------------------------------- */
.cart-items__quantity-controls {
  border-radius: var(--nobre-radius-pill, 999px);
}

/* 3. Resumo ------------------------------------------------- */
.cart-totals__total-value {
  font-weight: 600;
}

.cart-totals__tax-note,
.cart-totals__tax-note small {
  color: var(--color-foreground-muted, rgb(var(--color-foreground-rgb) / 0.65));
}

.cart-totals__original-value {
  text-decoration: line-through;
  color: var(--color-foreground-muted, rgb(var(--color-foreground-rgb) / 0.55));
}

/* 4. Descontos e nota --------------------------------------- */
.cart-discount__pill {
  border-radius: var(--nobre-radius-pill, 999px);
  background-color: rgb(var(--nobre-success-rgb, 46 125 79) / 0.1);
  color: var(--nobre-success, #2e7d4f);
}

.cart-discount__input:focus-visible,
.cart-note textarea:focus-visible {
  outline: none;
  border-color: var(--nobre-brand, var(--color-primary));
  box-shadow: 0 0 0 3px rgb(var(--nobre-brand-rgb, 176 52 95) / 0.18);
}

.cart-discount__error-text {
  color: var(--color-error, #8b0000);
}

/* 5. Checkout e estado vazio -------------------------------- */
.cart__checkout-button {
  min-block-size: var(--minimum-touch-target, 44px);
}

.cart__checkout-button:focus-visible,
.cart-items__empty-button:focus-visible {
  outline: var(--nobre-focus-width, 2px) solid var(--nobre-brand, var(--color-primary));
  outline-offset: 2px;
}

/* 6. Gaveta (drawer) ---------------------------------------- */
.cart-drawer__heading {
  font-family: var(--font-heading--family);
  color: var(--color-foreground-heading);
}

.cart-drawer__close-button:focus-visible {
  outline: var(--nobre-focus-width, 2px) solid var(--nobre-brand, var(--color-primary));
  outline-offset: 2px;
}

/* Resumo do drawer com safe-area (checkout não cortado no telemóvel) */
@supports (padding: max(0px)) {
  .cart-drawer__summary {
    padding-bottom: max(var(--cart-drawer-summary-padding, var(--padding-lg)), env(safe-area-inset-bottom));
  }
}

/* 7. Foco acessível e movimento reduzido -------------------- */
:is(.cart-items__remove, .cart-items__quantity-controls button):focus-visible {
  outline: var(--nobre-focus-width, 2px) solid var(--nobre-brand, var(--color-primary));
  outline-offset: 2px;
  border-radius: var(--border-radius-sm);
}

@media (prefers-reduced-motion: reduce) {
  .cart-items__remove {
    transition: none;
  }
}
