Per-cashbook modules — prototype variants
One prototype per genuine state. Start with the Owner variant — it carries the primary flow (dashboard matrix → confirm modals → padlocked nav → enable → register).
Dashboard with module columns + cost footer; enable / turn off / undo (all modal-confirmed, incl. a fail-closed Stripe error); padlocked nav → locked page → enable → Fixed Assets.
Standard dashboard (no module columns); padlocked nav routes to the member locked page ("ask your organisation owner", no CTA).
Straight into Tui Bakery (module off): open Accounting in the top nav → padlocked Fixed Assets → locked page → Enable → register. Same place the Owner flow reaches via the dashboard — the nav item only appears inside a cashbook.
Member view (no enable CTA): member.html#padlocked-nav
Whole table free until 1 Aug; "Free until" badges; post-trial estimate footer; trial enable/turn-off copy.
What a bookmark / stale tab hits when the module is off — lapsed cashbook with data kept; enable restores the register.
Member view: locked-page-member.html
Billing tab with the stored-CSV behaviour: direct Report CSV + Invoice PDF download per row, live-generation fallback for pre-feature invoices.
The monthly report's column layout with sample rows reconciling to the $163.65 invoice — what the Report CSV download contains. Shows the three explored variants; V1 flat is the decided format.
Design record: DESIGN.md · scope: SCOPE.md · concepts: board · CSV format: V1 flat (chosen)