/* Cursores custom OutlierLabs
   - Puntero: flecha morada con borde blanco
   - Mano: sobre elementos interactivos
   - SVG inline en data URI: no requiere archivos externos
   - Hotspot (x y tras la URL) = punto activo del click
*/

html, body {
  cursor: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'><path d='M4 3 L4 22 L10 17 L13.5 24.5 L17 23 L13.5 15.5 L21 15 Z' fill='%23a445ff' stroke='white' stroke-width='1.6' stroke-linejoin='round'/></svg>") 4 3, auto;
}

a,
button:not(:disabled),
[role="button"],
.clickable,
input[type="submit"],
input[type="button"],
input[type="reset"],
label[for],
select,
summary {
  cursor: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='24' viewBox='0 0 22 24'><path d='M8 10 L8 3.5 C8 2.3 9 1.5 10 1.5 C11 1.5 12 2.3 12 3.5 L12 11 L12 8 C12 7 13 6.3 14 6.3 C15 6.3 16 7 16 8 L16 12 L16 9.5 C16 8.5 17 7.8 18 7.8 C19 7.8 20 8.5 20 9.5 L20 16 C20 20 17 22.5 13.5 22.5 L11 22.5 C8.5 22.5 6.5 20.8 5.5 18.5 L3 12.5 C2.5 11.3 3.3 10.3 4.3 10.3 C5 10.3 5.5 10.6 5.8 11.1 L8 14 Z' fill='%23a445ff' stroke='white' stroke-width='1.2' stroke-linejoin='round'/></svg>") 6 1, pointer;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="tel"],
input[type="number"],
textarea,
[contenteditable="true"] {
  cursor: text;
}

button:disabled,
[aria-disabled="true"],
.disabled {
  cursor: not-allowed;
}

/* Mano cerrada / agarrando - activa durante el click */
body.is-grabbing,
body.is-grabbing a,
body.is-grabbing button:not(:disabled),
body.is-grabbing [role="button"],
body.is-grabbing .clickable,
body.is-grabbing input[type="submit"],
body.is-grabbing input[type="button"],
body.is-grabbing input[type="reset"],
body.is-grabbing label[for],
body.is-grabbing select,
body.is-grabbing summary {
  cursor: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 32 32'><path d='M8 20 L8 10 C8 8.5 9 7.5 10.5 7.5 C12 7.5 13 8.5 13 10 L13 16 L13 7 C13 5.5 14 4.5 15.5 4.5 C17 4.5 18 5.5 18 7 L18 16 L18 6 C18 4.5 19 3.5 20.5 3.5 C22 3.5 23 4.5 23 6 L23 16 L23 9 C23 7.5 24 6.5 25.5 6.5 C27 6.5 28 7.5 28 9 L28 20 C28 25 25 28 20 28 L16 28 C12.5 28 10 26 9 23 L7 17 C6.5 15.5 7.2 14.5 8.3 14.5 C8.9 14.5 9.4 14.8 9.7 15.3 Z' fill='%23a445ff' stroke='white' stroke-width='1.4' stroke-linejoin='round'/></svg>") 14 14, grabbing !important;
}
