/* Favorito Delivery — Build 521
   Base global de interação: cursor correto, toque limpo e arraste horizontal profissional. */
a[href],
area[href],
button:not(:disabled),
input[type="button"]:not(:disabled),
input[type="submit"]:not(:disabled),
input[type="reset"]:not(:disabled),
summary,
[role="button"]:not([aria-disabled="true"]),
[data-clickable="1"]{
  cursor:pointer!important;
}
button:disabled,
input[type="button"]:disabled,
input[type="submit"]:disabled,
input[type="reset"]:disabled,
[aria-disabled="true"]{
  cursor:not-allowed!important;
}

/* Trilhas horizontais recebem a classe por JS somente quando realmente têm rolagem lateral. */
.fd521-drag-scroll{
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:smooth;
  user-select:none;
  -webkit-user-select:none;
  cursor:grab;
}
.fd521-drag-scroll.fd521-is-dragging{
  scroll-behavior:auto!important;
  cursor:grabbing!important;
}
.fd521-drag-scroll img,
.fd521-drag-scroll picture,
.fd521-drag-scroll svg,
.fd521-drag-scroll a,
.fd521-drag-scroll button{
  -webkit-user-drag:none;
  user-drag:none;
  user-select:none;
  -webkit-user-select:none;
}

/* Mobile/PWA: nada de flash azul/cinza nem seleção visual em controles tocáveis. */
@media (hover:none), (pointer:coarse){
  *{
    -webkit-tap-highlight-color:transparent!important;
  }
  a[href],
  button,
  summary,
  [role="button"],
  input[type="button"],
  input[type="submit"],
  input[type="reset"],
  label:has(input[type="checkbox"]),
  label:has(input[type="radio"]){
    -webkit-touch-callout:none;
    user-select:none!important;
    -webkit-user-select:none!important;
    touch-action:manipulation;
  }
  input:not([type="button"]):not([type="submit"]):not([type="reset"]),
  textarea,
  select,
  [contenteditable="true"]{
    user-select:text!important;
    -webkit-user-select:text!important;
    -webkit-touch-callout:default;
  }
  .fd521-drag-scroll{
    cursor:auto;
  }
}
