/* Local 32px cursor assets; keep native editing, disabled and drag affordances. */
@media (hover: hover) and (pointer: fine) {
    body.xx-site-design {
        --cursor-default: url('../cursors/normal.cur') 3 2, default;
        --cursor-pointer: url('../cursors/pointer.cur') 10 2, pointer;
        --cursor-hover: var(--cursor-pointer);
        --cursor-text: text;
        --cursor-wait: wait;
        --cursor-move: move;
        --cursor-help: help;
        cursor: var(--cursor-default) !important;
    }

    body.xx-site-design :is(a[href], button, [role='button'], .pointer, input[type='button'], input[type='submit'], input[type='reset'], input[type='checkbox'], input[type='radio'], select, summary, label[for]) {
        cursor: var(--cursor-pointer) !important;
    }

    body.xx-site-design :is(textarea, input:not([type]), input[type='text'], input[type='search'], input[type='email'], input[type='url'], input[type='tel'], input[type='password'], input[type='number'], [contenteditable='true'], [role='textbox']) {
        cursor: text !important;
    }

    /* Match the element/attribute specificity of the interactive rules above. */
    html body.xx-site-design :is(:disabled, .disabled, [aria-disabled='true']),
    html body.xx-site-design :is(:disabled, .disabled, [aria-disabled='true']) * {
        cursor: not-allowed !important;
    }

    body.xx-site-design .xiaoxin-dearlicy-pane--cards {
        cursor: grab !important;
    }

    body.xx-site-design .xiaoxin-dearlicy-pane--cards.is-dragging,
    body.xx-site-design .xiaoxin-dearlicy-pane--cards.is-dragging * {
        cursor: grabbing !important;
    }
}
