@import url("./styles/tokens.css?v=39");
@import url("./styles/common.css?v=39");
@import url("./styles/storefront.css?v=39");
@import url("./styles/catalog.css?v=39");
@import url("./styles/checkout.css?v=39");
@import url("./styles/profile.css?v=39");
@import url("./styles/showcase.css?v=1");
@import url("./styles/tracking.css?v=39");
@import url("./styles/business.css?v=39");
@import url("./styles/rider.css?v=39");
@import url("./styles/responsive.css?v=39");
/* Después de responsive.css a propósito: la superficie de marca de la home es
   la última palabra sobre esa vista (incluido el fondo claro que responsive
   fija por debajo de 820px). Antes de motion.css, que sigue cerrando. */
@import url("./styles/brand-home.css?v=1");
@import url("./styles/motion.css?v=1");

/* Sandbox local: mapa y controles de prueba, aislados por data attributes. */
.sandbox-tools-panel { position: fixed; z-index: var(--z-sheet); right: 16px; bottom: 16px; width: min(420px, calc(100vw - 32px)); max-height: min(82vh, 620px); overflow: auto; padding: 16px; border: 1px solid rgba(31,35,40,.16); border-radius: 18px; background: rgba(255,255,255,.97); box-shadow: 0 18px 50px rgba(20,25,30,.22); }
.sandbox-route-panel { margin-top: 14px; }
.sandbox-route-panel .sandbox-route-meta { display: grid; grid-template-columns: 1.2fr .8fr .8fr; gap: 10px; margin-top: 12px; }
.sandbox-route-panel .sandbox-route-meta span { display: grid; gap: 3px; }
.sandbox-route-panel .sandbox-route-meta small,
.sandbox-map-stats small { color: #6b7078; font-size: .72rem; }
.sandbox-route-panel .sandbox-route-meta strong,
.sandbox-map-stats strong { font-size: .86rem; }
.sandbox-gps-status { margin: 10px 0 0; color: #575d65; font-size: .82rem; }
.sandbox-map-stats { position: absolute; z-index: 500; right: 14px; bottom: 14px; display: flex; gap: 8px; pointer-events: none; }
.sandbox-map-stats span { display: grid; min-width: 76px; gap: 3px; padding: 7px 9px; border: 1px solid rgb(255 255 255 / 78%); border-radius: 12px; background: rgb(255 255 255 / 94%); box-shadow: var(--shadow-sm); }
.sandbox-tools-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.sandbox-tools-head h2 { margin: 2px 0 0; font-size: 1.1rem; }
.sandbox-tools-badge { border-radius:999px; padding:5px 9px; background:#fbe9eb; color:#a7192a; font-size:.72rem; font-weight:700; }
.sandbox-tools-copy { margin: 10px 0; color:#5d626a; font-size:.82rem; }
.sandbox-tools-actions { display:flex; flex-wrap:wrap; gap:7px; }
.sandbox-tools-links { display:flex; gap:12px; flex-wrap:wrap; margin-top:13px; border-top:1px solid #eceeef; padding-top:12px; }
.sandbox-tools-links a { color:#a7192a; font-size:.8rem; font-weight:700; }
.sandbox-tools-status { margin:12px 0 0; color:#5d626a; font-size:.78rem; }
@media (max-width: 600px) { .sandbox-tools-panel { right: 8px; bottom: 8px; width: calc(100vw - 16px); } }

@media (hover: none), (pointer: coarse) {
  input,
  select,
  textarea {
    font-size: 16px;
  }

  button,
  a,
  [role="button"],
  [role="link"],
  [data-nav-view],
  [data-category-id],
  [data-product-detail],
  [data-favorite-toggle],
  [data-add-product],
  [data-cart-inc],
  [data-cart-dec],
  [data-cart-remove],
  [data-clear-cart],
  [data-open-cart],
  [data-close-modal],
  [data-checkout-suggestions-dismiss],
  [data-map-recenter],
  [data-repeat-order],
  [data-repeat-confirm],
  [data-repeat-dismiss],
  .product-card,
  .home-catalog-card,
  .offer-card,
  .recommendation-card,
  .product-media,
  .offer-card-media,
  .home-catalog-media,
  .recommendation-media,
  .product-favorite,
  .home-favorite-button,
  .quantity-control,
  .qty-stepper,
  .modal-close,
  .active-order-banner,
  .mobile-nav,
  [data-floating-cart],
  .floating-cart,
  .floating-cart-cta,
  .tracking-menu-button,
  .tracking-map-recenter,
  .modal-quantity-field,
  [role="button"][tabindex] {
    touch-action: manipulation;
  }
}
