/* Apply only to fine pointers. Native fallbacks stay usable when an asset fails. */
@media (hover: hover) and (pointer: fine) {
  [data-cursor="auto"] { cursor: url("./default.png") 5 5, default; }
  [data-cursor="default"] { cursor: url("./default.png") 5 5, default; }
  [data-cursor="pointer"] { cursor: url("./pointer.png") 18 4, pointer; }
  [data-cursor="text"] { cursor: url("./text.png") 20 20, text; }
  [data-cursor="vertical-text"] { cursor: url("./vertical-text.png") 20 20, vertical-text; }
  [data-cursor="grab"] { cursor: url("./grab.png") 20 20, grab; }
  [data-cursor="grabbing"] { cursor: url("./grabbing.png") 20 20, grabbing; }
  [data-cursor="move"] { cursor: url("./move.png") 20 20, move; }
  [data-cursor="all-scroll"] { cursor: url("./move.png") 20 20, all-scroll; }
  [data-cursor="crosshair"] { cursor: url("./crosshair.png") 20 20, crosshair; }
  [data-cursor="cell"] { cursor: url("./cell.png") 20 20, cell; }
  [data-cursor="wait"] { cursor: url("./wait.png") 20 20, wait; }
  [data-cursor="progress"] { cursor: url("./progress.png") 5 5, progress; }
  [data-cursor="not-allowed"] { cursor: url("./not-allowed.png") 20 20, not-allowed; }
  [data-cursor="no-drop"] { cursor: url("./no-drop.png") 20 20, no-drop; }
  [data-cursor="help"] { cursor: url("./help.png") 20 20, help; }
  [data-cursor="copy"] { cursor: url("./copy.png") 12 12, copy; }
  [data-cursor="alias"] { cursor: url("./alias.png") 36 14, alias; }
  [data-cursor="context-menu"] { cursor: url("./context-menu.png") 10 8, context-menu; }
  [data-cursor="ew-resize"] { cursor: url("./ew-resize.png") 20 20, ew-resize; }
  [data-cursor="e-resize"] { cursor: url("./ew-resize.png") 20 20, e-resize; }
  [data-cursor="w-resize"] { cursor: url("./ew-resize.png") 20 20, w-resize; }
  [data-cursor="ns-resize"] { cursor: url("./ns-resize.png") 20 20, ns-resize; }
  [data-cursor="n-resize"] { cursor: url("./ns-resize.png") 20 20, n-resize; }
  [data-cursor="s-resize"] { cursor: url("./ns-resize.png") 20 20, s-resize; }
  [data-cursor="nwse-resize"] { cursor: url("./nwse-resize.png") 20 20, nwse-resize; }
  [data-cursor="nw-resize"] { cursor: url("./nwse-resize.png") 20 20, nw-resize; }
  [data-cursor="se-resize"] { cursor: url("./nwse-resize.png") 20 20, se-resize; }
  [data-cursor="nesw-resize"] { cursor: url("./nesw-resize.png") 20 20, nesw-resize; }
  [data-cursor="ne-resize"] { cursor: url("./nesw-resize.png") 20 20, ne-resize; }
  [data-cursor="sw-resize"] { cursor: url("./nesw-resize.png") 20 20, sw-resize; }
  [data-cursor="col-resize"] { cursor: url("./col-resize.png") 20 20, col-resize; }
  [data-cursor="row-resize"] { cursor: url("./row-resize.png") 20 20, row-resize; }
  [data-cursor="zoom-in"] { cursor: url("./zoom-in.png") 16 16, zoom-in; }
  [data-cursor="zoom-out"] { cursor: url("./zoom-out.png") 16 16, zoom-out; }
  [data-tom-cursors] { cursor: url("./default.png") 5 5, default; }
  [data-tom-cursors] :is(a[href], button, summary, [role="button"]) { cursor: url("./pointer.png") 18 4, pointer; }
  [data-tom-cursors] :is(input:not([type="checkbox"]):not([type="radio"]), textarea, [contenteditable="true"]) { cursor: url("./text.png") 20 20, text; }
  [data-tom-cursors] :is(:disabled,[aria-disabled="true"]) { cursor: url("./not-allowed.png") 20 20, not-allowed; }
  [data-tom-cursors] [data-interest] { cursor: url("./default.png") 5 5, default; }
}
