Skip to content

[6.x] UI tweaks: Craft 5 colors and tidier chrome - #20612

Merged
brandonkelly merged 27 commits into
6.xfrom
ui-tweaks
Nov 12, 2026
Merged

brandonkelly merged 27 commits into
6.xfrom
ui-tweaks

Conversation

@brandonkelly

@brandonkelly brandonkelly commented Nov 12, 2026 •

Copy link
Copy Markdown
Member

Description

Brings back Craft 5's colors and tightens up the chrome around the content.

 /* color-definitions.js */
-slate: v6 slate keys          blue: ~226° keys
+slate: Craft 5 gray-050…900   blue: 221° (Craft 5's link blue)

 /* tokens.css */
+--c-surface-page:    base-200 (Craft 5 gray-100)   html, body, .cp
+--c-surface-details: base-100 + 40% white          details pane, dashboard widgets

 /* cp.css */
+--cp-chrome-icon-size:  12px                       nav, header, breadcrumb,
+--cp-chrome-icon-color: slate-700                  details rail, content tab icons
  • Global header: no dark theme, fill, shadow or borders (a bottom border on mobile only); its row is centered in the space down to the body panel; the system info matches the nav items' width, truncates long names, and keeps its name when the sidebar is collapsed; the avatar centers over the details rail, and the last icon ends where the details pane does.
  • Details pane: its own surface, shared with the Activity and Ask AI composer fades via --cp-details-bg, and a subtle inset shadow on its leading edge. Ask AI's input is transparent, like the comment box.
  • Nav: icons stay put when the sidebar collapses, and a nav item stays hovered while its flyout is open.
  • Buttons: menu and popover invokers stay hovered while open; icon button rows in the header and cards are tighter.
  • Breadcrumbs: lighter separators, even spacing around folder breadcrumbs' separators, and no trail at all when it would only be the current page (Dashboard, Settings, Releases).
  • Fields: action menus sit right after the label and its required/translatable indicators, evenly spaced, with the menu flush. The translation indicator is now a craft-info-icon, so its description opens on press (and on touch) rather than hover.

Evidence

All in light mode, on an entry page.

Full screen

Before:
An entry page before: a dark global header and v6 colors

After:
An entry page after: a light, borderless global header and Craft 5 colors

Sidebar collapsed

Before:
The entry page with the sidebar collapsed, before

After:
The entry page with the sidebar collapsed, after: the system name stays beside its icon

Mobile

The entry page at phone width, before
Before
The entry page at phone width, after
After

🤖 Generated with Claude Code

https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg

brandonkelly and others added 15 commits November 11, 2026 16:32
Slate’s color keys are now Craft 5’s gray-050 through gray-900, so base,
which shares them, and the surfaces built on it, take Craft 5’s blue-gray.
base-200’s ratio drops to 1.1 to land on Craft 5’s gray-100.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
The accent blue (Save, selected states, lightswitches, links) matches
Craft 5’s link blue. Leonardo keeps each stop’s contrast.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Adds --c-surface-page (Craft 5’s gray-100) and --c-surface-details (a
lighter gray-050), and a --cp-details-bg variable the details pane, its
overlay panels, and the Activity and Ask AI composer fades share.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Drawn by an overlay on the pane, so the composers’ fades can’t cover it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
craft-breadcrumbs now spaces its separators evenly, so the end margin these
added doubled the gap after each one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Expanded rows with an icon now pad by the border less, so their icons sit
where collapsed rows center them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Applies to buttons slotted as an action menu’s or popover’s invoker.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
The header drops its dark theme, fill, shadow, and borders (keeping a
bottom border on mobile), takes in the space above the body panel, lines
the system info up with the nav items (truncating long names, and keeping
the name when collapsed), and centers the avatar on the details rail with
the last icon ending where the details pane does.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Adds --cp-chrome-icon-size (12px) and --cp-chrome-icon-color (slate-700),
shared by the global nav, header, breadcrumb, details rail, and content tab
icons.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Also moves #20599's entry up with the other control panel changes.

[ci skip]

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
@github-actions

github-actions Bot commented Nov 12, 2026 •

Copy link
Copy Markdown

brandonkelly and others added 7 commits November 11, 2026 16:46
Over a cover image the buttons have a backing of their own, so they keep
the gap that plain ones dropped.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
A tooltip's fill is always black, but what it holds took the page's theme,
so in the light theme the key caps in the header's Search and Ask AI
tooltips were pale on pale. The dark header used to cover for this.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
Beside a visible label, a field's actions now follow the label and its
required and translatable indicators rather than sitting at the far end of
the heading. The translation button and the field's action menu are flush,
so the label text, indicators and buttons all sit the same distance apart.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
brandonkelly and others added 4 commits November 12, 2026 09:54
So its description opens on a press, including on touch screens, rather
than on hover.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
A lone crumb with no switcher just repeats the page’s heading.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
[ci skip]

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
# Conflicts:
#	CHANGELOG.md
#	packages/craftcms-ui/src/components/nav-item/nav-item.styles.ts
…wn tests

The tooltip checklist cited the field's translation test, which now covers
an info icon instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V33uARgrvVtiFqtAthPJbg
@brandonkelly
brandonkelly merged commit 01f9c5a into 6.x Nov 12, 2026
22 checks passed
@brandonkelly
brandonkelly deleted the ui-tweaks branch November 12, 2026 18:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants