From 50d56059d2f734d3e54d661b2fa2d2e509d85e95 Mon Sep 17 00:00:00 2001 From: dev Date: Sun, 21 Jun 2026 14:36:49 +0200 Subject: [PATCH] fix(card): motion prop (state-domain pilot) + nested-interactive guard MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - `motion` prop: the Card is the state-domain pilot. Becoming `selected` plays the preset once via `data-motion-state` (mount-guarded — animates on the transition, not on mount/deselect). `card-emerge` yields to the motion system when `motion` is set (otherwise toggling `data-motion-state` re-triggers the mount fade). - Nested-interactive guard: clicking a control inside an interactive Card (a Footer button, a link) must not select the Card. `handleActivate`/`handleKeydown` bail when the event originates from an interactive descendant, and the `:active` press-scale is suppressed via `:not(:has(button:active, …))` — the press cascade reaches the ancestor ` + {/each} + +