One cat per row, one per column, one per colored region. No two cats may touch — not even diagonally.
Once the board has a single solution, a cat can only go where it belongs: placing one on a square that can’t hold it flashes red and settles into a ✕ instead. Switch on ✏️ Test to try a placement the board rules out.
Place the last cat correctly and the board and every cat outline in green, and “Get a hint” switches off — there is nothing left to find.
Double-cat boards (2★ Star Battle style — two cats per row, column and region, still no touching) are supported too: tap the ×2 button beside Size, or just import a screenshot — two cats already sharing a row, column or colour flips the mode automatically.
The hint engine first looks for a forced move: a row, column, or region with only one cell left. If none exists, it tests each empty cell by assuming a cat sits there and following the consequences. If that assumption empties out some region, row, or column, the cell is impossible — and the chain that proves it is what you see drawn on the board.
When that suppose-and-see lookahead is the only move available, the hint is flagged as beyond the human line, along with how many hints in a row stay that way — and you can skip the whole stretch by taking one guaranteed cat placement, or reveal every ✕ in the stretch at once and carry on solving yourself.