Kartonath native Rust client - 20260930-251000

The character roster now offers Delete with an explicit confirmation naming
the selected character. Cancel, Escape and Enter dismiss it without a request.
Background actions and duplicate requests are blocked. The request follows
the original Titanium opcode26c9 and selected name plus NUL. The server's
refreshed roster is authoritative: the UI never removes a character early or
claims success on a timeout. A lost result requires reconnecting.

543 library / 572 all-target tests pass;
80 tests are opt-in. Seven roster/modal window sizes,
local reliable-packet/roster/timeout tests and nine installer checks passed.
Native Linux and Windows under Wine passed live cancel-only checks, world
entry and camp. No existing characters were deleted. Successful live deletion
and full creation lifecycle remain unaccepted. All 110023 assets unchanged.

This is not full Titanium parity. Tutorial/home, all-race previews, exact
camera/lighting and the other acceptance layers remain open.
https://eq.kaptohmat.com/client-modernization.html

LINUX
Extract into a NEW folder and run ./run-kartonath.sh. Modern Ubuntu uses
libasound2t64 via the dependency helper. Patch requires unmodified
20260930-250000. Close the client and run as your normal user:
  ./apply-update.sh /path/to/eq-client
Settings and recovery copies are preserved. Keep backups. Detected failures
attempt rollback; abrupt power loss can require manual recovery.
