
/* ===== BundleQuantityBox ===== */
/* PRODUCT register: compact inline qty box for bundle line items.
 * Ink controls, rule border, brass focus rings. The ± buttons are 1.75rem
 * squares with 0.25rem padding context — below 44px; flagged for Phase 3
 * QA. Bundle surfaces are dense; this matches the pilot Button --xs
 * exception pattern. */

.cc_4vBO1nbhag_product_detail_bundle_product .kombos-bundle-qty, .cc_4vBO1nbhag_product_detail_bundle_furniture .kombos-bundle-qty {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  border: 1px solid var(--kombos-rule);
  border-radius: var(--kombos-radius);
  padding: 0.125rem;
  background: var(--kombos-white);
}

.cc_4vBO1nbhag_product_detail_bundle_product .kombos-bundle-qty__btn, .cc_4vBO1nbhag_product_detail_bundle_furniture .kombos-bundle-qty__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--kombos-gray-700);
  font-size: 0.875rem;
  border-radius: var(--kombos-radius-xs);
  transition: background-color var(--kombos-duration-fast) var(--kombos-ease),
    color var(--kombos-duration-fast) var(--kombos-ease);
}

.cc_4vBO1nbhag_product_detail_bundle_product .kombos-bundle-qty__btn:hover:not(:disabled), .cc_4vBO1nbhag_product_detail_bundle_furniture .kombos-bundle-qty__btn:hover:not(:disabled) {
  background-color: var(--kombos-canvas);
  color: var(--kombos-accent);
}

.cc_4vBO1nbhag_product_detail_bundle_product .kombos-bundle-qty__btn:focus-visible, .cc_4vBO1nbhag_product_detail_bundle_furniture .kombos-bundle-qty__btn:focus-visible {
  outline: 2px solid var(--kombos-accent);
  outline-offset: 2px;
}

.cc_4vBO1nbhag_product_detail_bundle_product .kombos-bundle-qty__btn:disabled, .cc_4vBO1nbhag_product_detail_bundle_furniture .kombos-bundle-qty__btn:disabled {
  color: var(--kombos-gray-300);
  cursor: not-allowed;
}

.cc_4vBO1nbhag_product_detail_bundle_product .kombos-bundle-qty__value, .cc_4vBO1nbhag_product_detail_bundle_furniture .kombos-bundle-qty__value {
  min-width: 1.5rem;
  text-align: center;
  color: var(--kombos-gray-900);
  font-family: var(--kombos-font-ui);
  user-select: none;
}

.cc_4vBO1nbhag_product_detail_bundle_product .kombos-bundle-qty__static, .cc_4vBO1nbhag_product_detail_bundle_furniture .kombos-bundle-qty__static {
  color: var(--kombos-gray-600);
  font-family: var(--kombos-font-ui);
}

@media (prefers-reduced-motion: reduce) {
  .cc_4vBO1nbhag_product_detail_bundle_product .kombos-bundle-qty__btn, .cc_4vBO1nbhag_product_detail_bundle_furniture .kombos-bundle-qty__btn {
    transition: none;
  }
}

/* ===== Bundle Media — DanteMarket Studio =====
 * BundleMedia is a pure presentational wrapper: all class names (wrapperClassName,
 * mediaClassName, placeholderClassName) are injected by the parent component.
 * No own kombos-bundle-media__* classes exist; parent components own those styles.
 * This file is intentionally minimal — the build requires its presence. */
