/* NEXORIAMU – Christmas Gauntlet Cursor (2026)
   Local PNG assets; no external dependencies. */
@media (hover: hover) and (pointer: fine) {
  html, body, body * {
    cursor: url('images/nx-cursor-normal.png') 4 4, auto !important;
  }
  body a, body button, body [role="button"], body [onclick],
  body .gift, body .cell, body .magic-box, body .page-btn,
  body .nav-links a, body .btn-back, body .btn-back-top,
  body input[type="button"], body input[type="submit"],
  body input[type="reset"], body input[type="checkbox"],
  body input[type="radio"], body select,
  body .clickable-name, body .drop-slot {
    cursor: url('images/nx-cursor-hover.png') 4 4, pointer !important;
  }
  body input:not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="checkbox"]):not([type="radio"]),
  body textarea, body [contenteditable="true"], body [role="textbox"] {
    cursor: text !important;
  }
  body .deco-item { cursor: grab !important; }
  body .deco-item:active { cursor: grabbing !important; }
  body button:disabled, body input:disabled, body [aria-disabled="true"] {
    cursor: not-allowed !important;
  }
}
.nx-cursor-flake {
  position: fixed;
  z-index: 2147483640;
  top: 0;
  left: 0;
  width: 5px;
  height: 5px;
  border: 1px solid rgba(222,240,250,.9);
  background: rgba(173,213,235,.42);
  border-radius: 50%;
  box-shadow: 0 0 3px rgba(171,212,236,.27);
  pointer-events: none;
  transform: translate(-50%, -50%);
  animation: nx-cursor-melt .54s ease-out forwards;
}
@keyframes nx-cursor-melt {
  0% { opacity: .8; transform: translate(-50%, -50%) scale(1); }
  100% { opacity: 0; transform: translate(calc(-50% + var(--nx-dx)), calc(-50% + var(--nx-dy))) scale(.3); }
}
@media (prefers-reduced-motion: reduce) {
 .nx-cursor-flake { animation: none; display: none; }
}
