diff --git a/resources/css/components/navigation.css b/resources/css/components/navigation.css index 6d2d9ba1..4ea61e18 100644 --- a/resources/css/components/navigation.css +++ b/resources/css/components/navigation.css @@ -160,14 +160,16 @@ min-width: max-content; } + /* The label stays label-medium: NavigationBarTokens.LabelTextFont is the bar's only label + token, and Compose's ShortNavigationBarItem passes it for both icon positions. (The + *rail's* horizontal item is label-large — NavigationRailHorizontalItemTokens — which is + a different component.) */ [data-navigation-bar-item] [data-navigation-pill] { position: relative; isolation: isolate; flex-direction: row; height: 2.5rem; padding-inline: 1rem; - font: var(--md-sys-typescale-label-lg); - letter-spacing: var(--md-sys-typescale-label-lg-tracking); } [data-navigation-bar-item] [data-navigation-label] { @@ -538,6 +540,14 @@ transition: opacity var(--md-sys-motion-effects-fast-duration) var(--md-sys-motion-effects-fast); } + /* A navigation item's state layer is on-secondary-container, active or not: the only + state-layer tokens M3 states for one are NavigationRailColorTokens', which give that colour + to all six. The rail follows them two blocks below; the bar follows them here, over its + secondary-container pill. */ + [data-navigation-bar-item] :is([data-navigation-indicator], [data-navigation-pill])::before { + background-color: var(--md-sys-color-on-secondary-container); + } + @container (width < 37.5rem) { [data-navigation-bar-item] [data-navigation-pill]::before { display: none; diff --git a/tests/Feature/Components/NavigationBarTest.php b/tests/Feature/Components/NavigationBarTest.php index 25a05cad..f79b2b4e 100644 --- a/tests/Feature/Components/NavigationBarTest.php +++ b/tests/Feature/Components/NavigationBarTest.php @@ -1,5 +1,7 @@ blade('')) ->toContain('