/* Custom-only mouse presentation; the runtime restores native text and fallback states. */
.cf-cursor {
  position: fixed;
  inset: 0 auto auto 0;
  z-index: 10000;
  width: 18px;
  height: 18px;
  box-sizing: border-box;
  border: 1px solid #062822;
  border-radius: 32%;
  outline: 1px solid #fff7eb;
  outline-offset: 0;
  background: linear-gradient(90deg, #ff862e, #ff6257);
  pointer-events: none;
  user-select: none;
  contain: layout paint style;
  opacity: 0;
  transform-origin: center;
}

.cf-cursor[data-visible] {
  opacity: .92;
  will-change: transform;
}

/* Set only after the custom pointer is successfully drawn. Without JavaScript,
   outside ordinary mouse use, or inside a native input zone, this never applies. */
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) and (forced-colors: none) {
  html[data-cf-cursor-active],
  html[data-cf-cursor-active] * { cursor: none !important; }
}

/* A stylesheet fallback also protects a runtime preference/device change. */
@media (prefers-reduced-motion: reduce), (hover: none), (pointer: coarse), (forced-colors: active) {
  .cf-cursor { display: none; }
}

@media print {
  .cf-cursor { display: none; }
}
