0a1b7c31e2
Main.jsx now parses readings through the selected protocol rather than an inline regex, shows one Measure button instead of separate tare and gross, and colours the live weight green when the scale reports stable and red while it moves. A reading with no stability marker counts as unstable, so an unrecognised format fails safe. While only one weighing exists it appears as "First weighing" rather than filling in the Tare card, because a lighter second reading can still move it to gross and a value visibly jumping between cards would read as a bug. Header gains admin links to the scale monitor and licence screens. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>