Created Started Finished
By: Michael Lynch <git@mtlynch.io>
Keep grocery list visibility in sync with its rows Previously, the client duplicated pending-row state in a Set and manually updated empty section and cart-control visibility after checkbox changes. Derive visibility with CSS :has() and keep pending state on the affected row. Fresh server HTML clears that state naturally, while late responses still cannot revive pending rows. Preserve sections containing open edit forms and retain the existing failure recovery and focus behavior. The visibility rules require a browser with CSS :has() support.