# Water Sort Puzzle by Sazooka — upstream notice

Integrated on 2026-09-14 from the author's complete existing browser game.

- Author: Sazooka.
- Original repository: https://github.com/Sazooka/water_sort
- Fixed source revision: `7292863eed745fdad255200cdbdd572a68c94be6`.
- Original license: MIT, copyright (c) 2026 Sazooka. `LICENSE` is preserved verbatim.
- Pinned source: https://github.com/Sazooka/water_sort/blob/7292863eed745fdad255200cdbdd572a68c94be6/index.html
- Pinned license: https://github.com/Sazooka/water_sort/blob/7292863eed745fdad255200cdbdd572a68c94be6/LICENSE

## What is included

The original single HTML document contains all game logic, CSS tube artwork, color layers and confetti. It contains no image files, prerecorded audio, third-party JavaScript library, advertising SDK, account, backend or storage. The original repository also has a README; no separate asset license or conflicting restriction was found.

This is Sazooka's independent **Water Sort Puzzle** implementation. It is not represented as the official game of any mobile-game publisher. The generic title describes the actual sorting gameplay.

## Integration changes

- Add the local Playlane bridge and a noindex directive to the isolated playable document.
- Replace remote Google Fonts with system fonts, so the runtime makes no external font request.
- Fit the existing tube grid to narrow screen widths and rerender on resize. This only changes layout; tube capacity, colors and generation are unchanged.
- Lock reset, undo, new-game, hints and difficulty changes while a pour animation is running, so they cannot race with the pending move.
- Refresh move/stuck state after a pour and show the existing win overlay without a stale delayed callback.
- Keep the original three difficulties, same-color pouring, undo, reset, new game, hint, stuck notice and win animation.

## Known gameplay limitation

The original generator randomly shuffles the color pool and does **not** prove each puzzle is solvable. The upstream README explicitly warns of this. A hint identifies a valid immediate move, not a guaranteed solution. Undo, Reset and New Game remain available after an animation ends. No guaranteed-solvability, handcrafted-level or official-edition claim is made.

Playlane's integration modifications are distributed under the same MIT terms. Preserve the original license when copying this package.
