/* Fetih custom cursors — site-wide PNG 32 + 64(-2x) via image-set. Never cursor:none. */
/* Reticle set. Every hotspot is the center (16,16). */
/* url() first so browsers that reject image-set keep the 32px PNG. No SVG: Opera drops it. */

html, body, .screen {
  cursor: url("/cursors/arrow.png") 16 16, auto !important;
  cursor: -webkit-image-set(url("/cursors/arrow.png") 1x, url("/cursors/arrow-2x.png") 2x) 16 16, auto !important;
  cursor: image-set(url("/cursors/arrow.png") 1x, url("/cursors/arrow-2x.png") 2x) 16 16, auto !important;
}

#screen-landing, #screen-main, #screen-auth, #screen-play, #screen-lobby, #screen-game,
.hud-top, .hud-left, .players-panel, .dock, .minimap-wrap, .legend-bar {
  cursor: url("/cursors/arrow.png") 16 16, auto !important;
  cursor: -webkit-image-set(url("/cursors/arrow.png") 1x, url("/cursors/arrow-2x.png") 2x) 16 16, auto !important;
  cursor: image-set(url("/cursors/arrow.png") 1x, url("/cursors/arrow-2x.png") 2x) 16 16, auto !important;
}

a, button, [role="button"], .btn, .icon-btn, .seg-b, .room-row, .pcard,
.ctx-item, .fcx-item, .clickable, label[for], select, summary,
.lobby-v3 button, .land-v4 a, .land-v4 button, .v4-burger,
.hud-actions button, .dock-tab, .chat-fab, .toast button,
.fd-btn, .fd-actions button, .ui-dialog button,
#screen-game a, #screen-game button, #screen-game [role="button"] {
  cursor: url("/cursors/pointer.png") 16 16, pointer !important;
  cursor: -webkit-image-set(url("/cursors/pointer.png") 1x, url("/cursors/pointer-2x.png") 2x) 16 16, pointer !important;
  cursor: image-set(url("/cursors/pointer.png") 1x, url("/cursors/pointer-2x.png") 2x) 16 16, pointer !important;
}

button:disabled, .btn:disabled, .ctx-item.disabled, .fcx-item:disabled,
[aria-disabled="true"], .fd-btn:disabled {
  cursor: url("/cursors/not-allowed.png") 16 16, not-allowed !important;
  cursor: -webkit-image-set(url("/cursors/not-allowed.png") 1x, url("/cursors/not-allowed-2x.png") 2x) 16 16, not-allowed !important;
  cursor: image-set(url("/cursors/not-allowed.png") 1x, url("/cursors/not-allowed-2x.png") 2x) 16 16, not-allowed !important;
}

input:not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="checkbox"]):not([type="radio"]),
textarea, [contenteditable="true"], .chat-input, #chat-input {
  cursor: text !important;
}

#map-wrap, #map,
#screen-game #map-wrap, #screen-game #map,
#screen-game.overview-on #map-wrap,
#cells path, #wrap-west path.cell-wrap, #wrap-east path.cell-wrap {
  cursor: url("/cursors/grab.png") 16 16, grab !important;
  cursor: -webkit-image-set(url("/cursors/grab.png") 1x, url("/cursors/grab-2x.png") 2x) 16 16, grab !important;
  cursor: image-set(url("/cursors/grab.png") 1x, url("/cursors/grab-2x.png") 2x) 16 16, grab !important;
}

#map-wrap.dragging, #map-wrap.dragging #map,
#screen-game #map-wrap.dragging, #screen-game.overview-on #map-wrap.dragging {
  cursor: url("/cursors/grabbing.png") 16 16, grabbing !important;
  cursor: -webkit-image-set(url("/cursors/grabbing.png") 1x, url("/cursors/grabbing-2x.png") 2x) 16 16, grabbing !important;
  cursor: image-set(url("/cursors/grabbing.png") 1x, url("/cursors/grabbing-2x.png") 2x) 16 16, grabbing !important;
}

#map-wrap.selecting, #map-wrap.selecting #map,
#screen-game #map-wrap.selecting {
  cursor: url("/cursors/target.png") 16 16, crosshair !important;
  cursor: -webkit-image-set(url("/cursors/target.png") 1x, url("/cursors/target-2x.png") 2x) 16 16, crosshair !important;
  cursor: image-set(url("/cursors/target.png") 1x, url("/cursors/target-2x.png") 2x) 16 16, crosshair !important;
}

#map[data-cursor="pointer"] {
  cursor: url("/cursors/pointer.png") 16 16, pointer !important;
  cursor: -webkit-image-set(url("/cursors/pointer.png") 1x, url("/cursors/pointer-2x.png") 2x) 16 16, pointer !important;
  cursor: image-set(url("/cursors/pointer.png") 1x, url("/cursors/pointer-2x.png") 2x) 16 16, pointer !important;
}
#map[data-cursor="target"] {
  cursor: url("/cursors/target.png") 16 16, crosshair !important;
  cursor: -webkit-image-set(url("/cursors/target.png") 1x, url("/cursors/target-2x.png") 2x) 16 16, crosshair !important;
  cursor: image-set(url("/cursors/target.png") 1x, url("/cursors/target-2x.png") 2x) 16 16, crosshair !important;
}
#map[data-cursor="grab"] {
  cursor: url("/cursors/grab.png") 16 16, grab !important;
  cursor: -webkit-image-set(url("/cursors/grab.png") 1x, url("/cursors/grab-2x.png") 2x) 16 16, grab !important;
  cursor: image-set(url("/cursors/grab.png") 1x, url("/cursors/grab-2x.png") 2x) 16 16, grab !important;
}
#map[data-cursor="grabbing"] {
  cursor: url("/cursors/grabbing.png") 16 16, grabbing !important;
  cursor: -webkit-image-set(url("/cursors/grabbing.png") 1x, url("/cursors/grabbing-2x.png") 2x) 16 16, grabbing !important;
  cursor: image-set(url("/cursors/grabbing.png") 1x, url("/cursors/grabbing-2x.png") 2x) 16 16, grabbing !important;
}
#map[data-cursor="not-allowed"] {
  cursor: url("/cursors/not-allowed.png") 16 16, not-allowed !important;
  cursor: -webkit-image-set(url("/cursors/not-allowed.png") 1x, url("/cursors/not-allowed-2x.png") 2x) 16 16, not-allowed !important;
  cursor: image-set(url("/cursors/not-allowed.png") 1x, url("/cursors/not-allowed-2x.png") 2x) 16 16, not-allowed !important;
}

/* Kill fake landing cursor forever */
#v4-cursor { display: none !important; }
