From ff98a9cee22a1ceac3b8ae02265a6761ce28d440 Mon Sep 17 00:00:00 2001 From: Guillem Arias Date: Thu, 14 May 2026 21:51:55 +0200 Subject: [PATCH] fix(goals/stepper): inactive connector line uses border-subdued MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit RUI audit: form-stepper progress line used `border-secondary` for the inactive state — same weight as the active step's border, so the active-step circle didn't visually pop against the line connecting it to the inactive step. Recede passive states. Swap to `border-subdued` (the DS's quieter divider) for the inactive (step 1) line state. The active state stays `border-inverse`. JS toggle in `goal_stepper_controller.js#updateStepperState` follows. --- app/javascript/controllers/goal_stepper_controller.js | 2 +- app/views/goals/_form_stepper.html.erb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/javascript/controllers/goal_stepper_controller.js b/app/javascript/controllers/goal_stepper_controller.js index dc07e7734..e40737676 100644 --- a/app/javascript/controllers/goal_stepper_controller.js +++ b/app/javascript/controllers/goal_stepper_controller.js @@ -186,7 +186,7 @@ export default class extends Controller { } if (this.hasStepperLineTarget) { this.stepperLineTarget.classList.toggle("border-inverse", this.currentStep > 1); - this.stepperLineTarget.classList.toggle("border-secondary", this.currentStep === 1); + this.stepperLineTarget.classList.toggle("border-subdued", this.currentStep === 1); } // Modal subtitle lives in the dialog header, outside this controller's // DOM scope. Locate it by attribute and update directly. diff --git a/app/views/goals/_form_stepper.html.erb b/app/views/goals/_form_stepper.html.erb index 39d6141b2..5314e0b60 100644 --- a/app/views/goals/_form_stepper.html.erb +++ b/app/views/goals/_form_stepper.html.erb @@ -18,7 +18,7 @@ 1 <%= t("goals.form_stepper.step1.label") %> -
+
2 <%= t("goals.form_stepper.step2.label") %>