diff --git a/web/app.js b/web/app.js index 95fa04f..4a2cd9b 100644 --- a/web/app.js +++ b/web/app.js @@ -294,8 +294,8 @@ function updateFireVisualization() { const g = document.getElementById('fire-group'); const clipRect = document.getElementById('fire-clip-rect'); if (!g) return; - const fireBase = 256; // y of flame base (all paths end here) - const fireTip = 185; // y of tallest flame tip + const fireBase = 248; // y of flame base (all paths end here) + const fireTip = 177; // y of tallest flame tip const fireH = fireBase - fireTip; // 71px total flame height if (heaterPowerIst <= 0) { g.style.opacity = '0'; @@ -304,7 +304,7 @@ function updateFireVisualization() { const intensity = Math.min(1, heaterPowerIst / heaterMaxPower); // Always show the lower 35% (base), scale upper 65% with intensity const visibleH = (0.35 + 0.65 * intensity) * fireH; - const topBuffer = 10; // headroom for flicker scaleY overshoot + const topBuffer = 20; // headroom for flicker scaleY overshoot (~12% of height) clipRect.setAttribute('y', (fireBase - visibleH - topBuffer).toFixed(1)); clipRect.setAttribute('height', (visibleH + topBuffer + 2).toFixed(1)); g.style.opacity = String((0.6 + 0.4 * intensity).toFixed(2)); diff --git a/web/index.html b/web/index.html index afbfbca..9b13ded 100644 --- a/web/index.html +++ b/web/index.html @@ -47,7 +47,7 @@