/**
 * ═══════════════════════════════════════════════════════════════════
 *  NhaBex App v3 — Hardening táctil para interface pública
 *  app/assets/css/web-hardening.css
 *
 *  Protecções para ambiente de uso público com interacção táctil:
 *   6.1 — Sem selecção de texto, sem drag, sem menu de contexto
 *   6.2 — Sem zoom (complemento ao viewport meta)
 *   6.3 — Feedback visual :active em botões e cartões
 *   6.4 — touch-action: manipulation (elimina atraso 300ms)
 * ═══════════════════════════════════════════════════════════════════
 */

/* ── 6.1 Prevenção de selecção e arrastamento ── */
html {
  -webkit-touch-callout: none;
}

body,
button,
a,
div,
span,
p,
label,
h1, h2, h3, h4, h5, h6,
svg,
img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

/* Manter selecção em campos de input (o utilizador precisa editar texto) */
input,
textarea,
[contenteditable="true"] {
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

img,
svg,
a,
button {
  -webkit-user-drag: none;
  user-drag: none;
}

/* ── 6.2 Prevenção de zoom (complemento CSS ao viewport meta) ── */
html {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

/* ── 6.3 Feedback visual ao toque ── */
/* Botões genéricos: scale 0.93 */
button:active,
.md3-btn:active,
[role="button"]:active {
  transform: scale(0.93);
  transition: transform 0.1s ease;
}

/* Cartões/items maiores: scale 0.985 (feedback subtil) */
.web-cascade-card:active,
.web-service-card:active {
  transform: scale(0.985);
  transition: transform 0.1s ease;
}

/* ── 6.4 Optimização de resposta ── */
button,
a,
[role="button"],
.md3-btn,
input[type="button"],
input[type="submit"],
.web-cascade-card,
.web-service-card {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}
