=== Cursora – Custom Cursor for Any Theme & Page Builder ===
Contributors: webhoch
Tags: custom cursor, animated cursor, mouse cursor, divi, elementor
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Turn your logo or any image into a custom mouse cursor – native and lag-free, or as a smooth animated follower. Touch-safe and accessible.

== Description ==

**Cursora** turns your logo, an icon or another image into a custom cursor for your WordPress website – as a lag-free native cursor, or as an animated cursor with a smooth cursor effect. It works with Divi, Elementor, the block editor and any theme.

= Two modes =

* **Native mode** – a real browser cursor. No JavaScript, no delay. Cursora automatically turns your PNG, JPG, GIF or WebP image into a correctly sized PNG cursor (with a sharp Retina version where possible), so browsers never silently ignore an image that is too large.
* **Effect mode** – the image follows the mouse with optional smooth trailing. Sizes up to 256 px, animated GIF, WebP and SVG, and a small click animation – in a small, dependency-free script.

= Built for real websites =

* **Hover image for links and buttons.** Without one, visitors see the normal hand pointer, so clickable elements stay recognizable.
* **Designed to never show two cursors.** Text fields keep the normal text cursor, theme cursors (like the grab hand on sliders) are respected, and embedded content such as YouTube videos shows the normal pointer. In Effect mode, modal dialogs, popovers and fullscreen content show the normal pointer too.
* **Per-page switch** in the sidebar of the WordPress editor (block and classic editor) to turn the cursor off on individual pages, posts or products.
* **Click point (hotspot)** with live preview – set exactly where the image clicks.
* **Touch-safe:** phones and tablets are left alone automatically.
* **Accessible:** respects "reduce motion", never hides the pointer if something fails to load and switches itself off in forced-colors mode (such as the Windows contrast themes), so these visitors keep their own, often enlarged, system pointer.
* **Page builder aware:** stays out of the way in the Divi Visual Builder, Elementor, Beaver Builder, Bricks and Oxygen Classic editors.
* **Private by design:** no tracking, no external requests, no admin notices or nag screens.

= Cursora Pro =

The optional Pro add-on adds multiple cursors with rules (per page, post type, category, CSS class, Divi & Elementor module), hover labels such as "View" or "Play", click effects such as ripples and bursts, cursor trails and a seasonal schedule. [Learn more about Cursora Pro](https://cursora.webhoch.com/pro/).

Cursora is a webhoch.com product, made by [webhoch](https://www.webhoch.com/), a web agency from Austria. It is available only here on WordPress.org.

= Credits =

The settings page uses the Anton font (SIL Open Font License 1.1), bundled with the plugin. Divi is a trademark of Elegant Themes, Inc. Elementor is a trademark of Elementor Ltd. Cursora is not affiliated with or endorsed by either.

== Installation ==

1. Install Cursora from *Plugins → Add New Plugin* or upload the ZIP file.
2. Activate the plugin.
3. Open *Cursora* in the admin menu, choose your cursor image and save.
4. Optional: choose a hover image, adjust size and click point, or switch to Effect mode.

== Frequently Asked Questions ==

= How do I change the mouse cursor on my WordPress site? =

Install Cursora, open *Cursora* in the admin menu, pick an image from your media library and save. The new cursor appears on your website immediately (clear your page cache if you use one).

= Which mode should I choose? =

Native mode for small icons that should feel exactly like a normal mouse pointer (recommended size: 32 px). Effect mode for larger or animated images and smooth trailing.

= Which image formats can I use? =

In Native mode: PNG, JPG, GIF or WebP (WebP if your server supports it). Cursora converts the image into a PNG cursor, so animated GIFs become still images; SVG is not supported. In Effect mode: any image your visitors' browsers can display, including animated GIF, WebP and SVG (WordPress only accepts SVG uploads with an extra plugin).

= Why is my native cursor limited to 128 px? =

Browsers ignore image cursors larger than 128 × 128 px. Chrome, Edge and other Chromium-based browsers also replace native cursors larger than 32 px with the standard arrow near the edge of the window. Use Effect mode for bigger images.

= Why does my native cursor look blurry on high-resolution screens? =

Cursora adds a sharp Retina (2x) version when the cursor is 64 px or smaller, the source image is at least twice that size and the click point is in the top-left corner. Browsers handle the click point of Retina cursors inconsistently, so for any other click point Cursora prefers an exact click point over extra sharpness.

= Does Cursora work with Divi and Elementor? =

Yes. The cursor works with any theme and page builder. Cursora switches itself off inside the Divi, Elementor, Beaver Builder, Bricks and Oxygen Classic editors. Divi toggles, tabs, slider arrows and the mobile menu button count as clickable, and so do Elementor video overlays, Swiper carousel arrows and dots, Kadence tabs, Slick slider dots and WooCommerce gallery thumbnails, so they get your hover image or the hand pointer.

= Why do I see the normal arrow or another cursor in some areas? =

Cursora respects cursors that your theme or a plugin sets on purpose, for example the grab hand on sliders and maps. If a theme sets `cursor: default` on a whole area, that area keeps the default arrow. Links and buttons – including linked gallery images and the text and icons inside them – show your hover image or the hand pointer. Disabled buttons and form fields inside them keep their own cursor, for example the "not allowed" sign.

= The cursor does not show up. What can I check? =

Clear your page and optimization cache first. Then check that Cursora is switched on, an image is chosen and no error is shown under the image, and that the per-page switch in the editor sidebar is not set for this page. Cursora also stays off on touch devices, inside page builder editors and in forced-colors mode.

= Will Cursora slow down my website? =

No. Native mode adds a few lines of CSS and no JavaScript. Effect mode adds one small stylesheet and one small, deferred script without dependencies such as jQuery. Nothing is loaded from other servers.

= Will visitors on phones see the cursor? =

No. Touch devices have no mouse pointer, so Cursora does nothing there.

= Is Cursora accessible? =

Cursora keeps the normal text cursor in form fields, shows the hand pointer over links unless you choose a hover image, turns off animation for visitors who prefer reduced motion and never hides the pointer if the script or image fails to load. When the visitor uses a forced-colors mode (for example the Windows contrast themes), Cursora switches itself off in Native and Effect mode, so visitors keep their own system pointer, which is often enlarged or high-contrast.

= Does Cursora collect data or load external files? =

No. Everything is served from your own website.

= What happens when I delete Cursora? =

Deactivating Cursora keeps your settings. Deleting the plugin (not just deactivating it) removes its settings, the cursor images it generated in `uploads/cursora` and the per-page switch setting of your pages. The images in your media library are not touched. On a multisite network, deleting the plugin removes only the data of the main site; other sites of the network keep theirs.

== Screenshots ==

1. Settings page: mode, images, size and click point.
2. Native mode on a website.
3. Effect mode with hover image over a button.

== Changelog ==

= 1.0.0 =
* First release: native and effect mode, hover image, click point, smooth trailing, per-page switch.
