# CURSOR_INTERACTIONS.md ## Verdict: near-zero custom cursor work — by design Custom cursors (dot followers, magnetic buttons, cursor-morphing) were evaluated and **rejected** for this site. Reasons, documented so the decision survives future redesign itch: 1. **Audience mismatch.** P1 recruiters on trackpads/mobile never see it; P2 engineering managers disproportionately *dislike* cursor gimmicks (input latency, hijacked expectations). 2. **Brand mismatch.** "Kontrollrom" promises precision and restraint; a floating blob promises an agency reel. 3. **Cost.** Pointer-following JS is the classic source of main-thread jank — the exact failure mode this site must never exhibit. ## What ships instead (native cursor semantics, used *correctly*) | Context | Cursor | Note | |---|---|---| | Links, buttons, cards, TOC | `pointer` | Whole project card = pointer (it's one link) | | Fact chips (non-interactive) | `default` | Honest affordance — no fake clickability | | Text/prose | `text` | Never suppressed | | Screenshot in lightbox (zoomable) | `zoom-in` / `zoom-out` | The one "delight" allowed | | Click-to-copy e-mail | `copy` | Native, semantically perfect, zero JS cost | | Diagram nodes with hover-highlight | `default` + visual highlight | Hover is enhancement, not interaction — pointer would over-promise | | Disabled controls | `not-allowed` | | ## The single permitted flourish On the hero, the status dot at the end of the trace shows a `crosshair`-style precision hover halo (pure CSS, 160ms) revealing a mono tooltip: `status: open to work` / `status: åpen for muligheter`. Desktop-only easter egg; invisible to touch, absent under reduced motion, no positional JS. If it ever measures as jank — cut it without debate.