Repository navigation
Rebuild the primary blue ramp on an accessible 500 - #3376
Conversation
#4199fd measured 2.92:1 on white, failing AA both as link text and as a button fill behind white text — the same number either way, since contrast is symmetric. Every admin link, primary button, active tab and settings sidebar heading read at that ratio. The ramp is rebuilt in OKLCh at one hue, lightness stepping evenly in perceived terms and chroma peaking at 500, and now runs 25 to 900 like the grey ramp beside it. 500 is #026ee8 at 4.77:1 and 700 #1256ae at 7.08:1; 500 is the lightest stop that clears 4.5:1, so it is the floor for text and for anything sitting behind white text. Values held outside the ramp came with it: three strays fold into tokens, including an active-tab underline that sat at 2.89:1 against the 3:1 floor for a state indicator, and the blue stops of gradients carrying white text move up to clear 4.5:1 each. --blue-border folds into --primary-200. Front-end and email defaults keep #4199FD — those paint customer forms, not the admin, and are a separate decision. Third-party brand blues are untouched. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Warning Review limit reachedNext included review available in 44 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: ⛔ Files ignored due to path filters (3)
📒 Files selected for processing (26)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe pull request refreshes the primary blue palette and updates admin styles, web-component tokens, floating-link colors, gradients, and device messaging to use the revised values. ChangesPrimary palette refresh
Priority: ➖ Normal Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix Merge Risk: ⚪ Minimal · up to This palette refresh is mergeable with minimal current-head risk; the described changes are limited to visual color tokens and styling. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
master's slider rewrite removed the block holding two of the three literals this branch had moved onto tokens, and had already put the rest of the component on --primary-500. Its version is taken whole, with the one surviving literal converted. Build artifacts are regenerated from the merged source rather than hand-resolved. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
|
Overall Grade |
Security Reliability Complexity Hygiene |
Code Review Summary
| Analyzer | Status | Updated (UTC) | Details |
|---|---|---|---|
| PHP | Sep 18, 2026 1:51p.m. | Review ↗ | |
| JavaScript | Sep 18, 2026 1:51p.m. | Review ↗ |
Important
AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.
|
@Crabcyborg This is one of many addressing the accessibility issues. Let me know your thoughts. Thank you! |
|
Thank you @tuguirazvan! What do you think about using the same colours for our forms list and entries lists? I'm noticing the blues are quite different. They seem different on master too, but probably something that should be more consistent?
|
|
@Crabcyborg Ouh, yes. I told Claude to verify each instance, it turned out it didn't. |
The Forms list wraps its title in <strong>, the Entries list does not, so the two lists resolved to different stops: 700 on Forms, 500 everywhere else. 500 is the ramp's stop for links and 700 is where they go on hover. The resting rule also outranked .frm_wrap a:hover on specificity, so a form name had no hover feedback. The hover pair added here carries the extra pseudo-class and wins. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
@Crabcyborg Made the change myself. |
Crabcyborg
left a comment
There was a problem hiding this comment.
Thanks @tuguirazvan!
I keep running out of AI credits 😂, so I've been using vivi a lot to help wrap things up.
🚀


#4199fdmeasured 2.92:1 on white — failing AA both as link text and as a button fill behind white text. That covered every admin link,.frm-button-primary, the active Inbox tab, the settings sidebar headings, the style selector and the active Add-Ons/Templates category.Rebuilt in OKLCh at one hue; the ramp now runs 25–900 like the grey ramp beside it.
--primary-500is#026ee8(4.77:1),--primary-700#1256ae(7.08:1). 500 is the lightest stop clearing 4.5:1, so it is the floor for text and for anything behind white text.Also folded in: three stray blues — one an active-tab underline at 2.89:1 against the 3:1 floor for a state indicator — plus the blue stops of gradients carrying white text, and
--blue-border→--primary-200.Not changed: front-end and email defaults (
FrmStyle.php,FrmEmailStylesController.php) paint customer forms, not the admin — separate decision. Third-party brand blues untouched.Verified: axe re-run on Forms, Entries, Global Settings and Add-Ons — zero color-contrast on the listed selectors. stylelint, ESLint, PHPCS, PHPStan clean locally.
🤖 Generated with Claude Code
Summary by CodeRabbit