/* Custom 8-bit Cursors - data-cursor-style attribute on body */

/* --- Default / Removing Custom Cursor --- */
body[data-cursor-style="default"] {
    cursor: auto !important;
}

/* --- Helper Class for Text Input Overrides --- */
/* We apply this to inputs, textareas, and contenteditables below to ensure they show the I-beam */
.cursor-text-override {
    cursor: text !important;
}

/* --- Classic Retro Arrow (White) --- */
body[data-cursor-style="retro"],
body[data-cursor-style="retro"] *:not(input):not(textarea):not([contenteditable]) {
    cursor: url('/cursors/cursor_classic_arrow.png') 0 0, auto !important;
}

/* --- Golden Legend Sword --- */
body[data-cursor-style="sword"],
body[data-cursor-style="sword"] *:not(input):not(textarea):not([contenteditable]) {
    cursor: url('/cursors/cursor_gold_sword.png') 0 0, auto !important;
}

/* --- Magic Crystal Wand --- */
body[data-cursor-style="wand"],
body[data-cursor-style="wand"] *:not(input):not(textarea):not([contenteditable]) {
    cursor: url('/cursors/cursor_wand_crystal.png') 0 0, auto !important;
}

/* --- Knight Gauntlet Hand --- */
body[data-cursor-style="gauntlet"],
body[data-cursor-style="gauntlet"] *:not(input):not(textarea):not([contenteditable]) {
    cursor: url('/cursors/cursor_gauntlet_hand.png') 0 0, auto !important;
}

/* --- Retro Hourglass --- */
body[data-cursor-style="hourglass"],
body[data-cursor-style="hourglass"] *:not(input):not(textarea):not([contenteditable]) {
    cursor: url('/cursors/cursor_hourglass.png') 0 0, wait !important;
}

/* --- Explicit Overrides for Text Inputs --- */
body[data-cursor-style] input,
body[data-cursor-style] textarea,
body[data-cursor-style] [contenteditable] {
    cursor: text !important;
}