/* A real browser cursor: no following DOM element or animation loop. */
@media (hover: hover) and (pointer: fine) and (forced-colors: none) {
  html {
    --blog-cursor: url("./assets/qingzhu-sword-cursor.svg") 4 4,
      url("./assets/qingzhu-sword-cursor.png") 4 4, auto;
  }

  /* Local components also set cursor, so this shared rule takes precedence. */
  html, body, body * {
    cursor: var(--blog-cursor) !important;
  }

  :is(a[href], button:not(:disabled), summary, label, select, input[type="checkbox"], input[type="radio"], input[type="range"]:not(:disabled), [role="button"]):not([aria-disabled="true"]) {
    --blog-cursor: url("./assets/qingzhu-sword-cursor-active.svg") 4 4,
      url("./assets/qingzhu-sword-cursor-active.png") 4 4, pointer;
  }

  :is(button, input, select, textarea):disabled,
  :is(button, input, select, textarea):disabled *,
  [aria-disabled="true"], [aria-disabled="true"] * {
    cursor: not-allowed !important;
  }
}
