- Shipped
- August 4, 2026 at 3:55 AM UTC
- Author
- kamo
- Commit
- e9a7ced
The details tab was a flat stack of outlined boxes that gave every field the same weight, so nothing signalled which inputs actually change what the customer sees. It now reads as the four decisions a quote is made of — what it is for, what is being sold, how it is adjusted, what the customer reads — each with a one-line reason it matters, and the running total sits in a sticky rail rather than buried at the bottom. Motion carries meaning rather than decoration: sections arrive in sequence, a conditional field expands from the control that revealed it, the pricing area cross-fades when its shape changes, and a total counts to its new value so a mistyped unit price is noticed instead of silently absorbed. All of it respects prefers-reduced-motion. The new Preview action renders the finished document — letterhead, options or table, totals, terms — and prints it on its own. It projects the CURRENT editor state, not the saved record, because the moment you need to see the finished quote is while deciding whether to send it. Branding comes from the server's own resolution so the previewed letterhead is the one the customer gets, and the option arithmetic is imported from the editor rather than reimplemented.