@kaizen/components 1.78.1 → 1.79.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/dist/styles.css +10589 -10782
  2. package/package.json +1 -1
  3. package/src/Avatar/Avatar.module.css +137 -135
  4. package/src/AvatarGroup/AvatarGroup.module.css +58 -56
  5. package/src/Badge/Badge.module.css +98 -96
  6. package/src/Brand/Brand.module.css +5 -3
  7. package/src/BrandMoment/BrandMoment.module.css +147 -145
  8. package/src/BrandMoment/_docs/ExampleHeaders.module.scss +68 -66
  9. package/src/Button/Button/Button.module.scss +135 -133
  10. package/src/Button/GenericButton/GenericButton.module.scss +81 -79
  11. package/src/Button/IconButton/IconButton.module.scss +20 -18
  12. package/src/ButtonGroup/ButtonGroup.module.css +38 -36
  13. package/src/ButtonGroup/ButtonGroup.module.scss +41 -39
  14. package/src/Calendar/CalendarPopover/CalendarPopover.module.scss +19 -17
  15. package/src/Calendar/CalendarRange/CalendarRange.module.scss +48 -46
  16. package/src/Calendar/CalendarSingle/CalendarSingle.module.scss +12 -10
  17. package/src/Calendar/LegacyCalendarRange/LegacyCalendarRange.module.scss +20 -18
  18. package/src/Calendar/baseCalendarClassNames.module.scss +148 -146
  19. package/src/Card/Card.module.css +91 -89
  20. package/src/Checkbox/Checkbox/Checkbox.module.scss +89 -87
  21. package/src/Checkbox/CheckboxField/CheckboxField.module.scss +32 -30
  22. package/src/Checkbox/CheckboxGroup/CheckboxGroup.module.scss +11 -9
  23. package/src/ClearButton/ClearButton.module.scss +32 -30
  24. package/src/Collapsible/Collapsible/Collapsible.module.scss +87 -85
  25. package/src/Collapsible/CollapsibleGroup/CollapsibleGroup.module.scss +9 -7
  26. package/src/Collapsible/ExpertAdviceCollapsible/ExpertAdviceCollapsible.module.scss +35 -33
  27. package/src/Container/Container.module.scss +11 -9
  28. package/src/Content/Content.module.scss +10 -8
  29. package/src/DateInput/DateInput/DateInput.module.scss +7 -5
  30. package/src/DateInput/DateInputDescription/DateInputDescription.module.scss +15 -13
  31. package/src/DateInput/DateInputWithIconButton/DateInputWithIconButton.module.scss +32 -30
  32. package/src/DatePicker/DatePicker.module.scss +7 -5
  33. package/src/DatePicker/subcomponents/DateInputField/DateInputField.module.scss +5 -3
  34. package/src/DateRangePicker/DateRangePicker.module.scss +75 -73
  35. package/src/Divider/Divider.module.scss +35 -33
  36. package/src/EmptyState/EmptyState.module.css +95 -93
  37. package/src/ErrorPage/ErrorPage.module.scss +4 -2
  38. package/src/FieldGroup/FieldGroup.module.scss +8 -6
  39. package/src/FieldMessage/FieldMessage.module.scss +53 -51
  40. package/src/Filter/Filter/Filter.module.css +5 -3
  41. package/src/Filter/Filter/subcomponents/FilterContents/FilterContents.module.css +4 -2
  42. package/src/Filter/Filter/subcomponents/FilterPopover/FilterPopover.module.css +8 -6
  43. package/src/Filter/FilterBar/FilterBar.module.css +17 -15
  44. package/src/Filter/FilterBar/subcomponents/ClearAllButton/ClearAllButton.module.css +7 -5
  45. package/src/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.module.css +4 -2
  46. package/src/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.module.css +5 -3
  47. package/src/Filter/FilterButton/FilterButton/FilterButton.module.css +19 -17
  48. package/src/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.module.css +4 -2
  49. package/src/Filter/FilterButton/subcomponents/FilterButtonBase/FilterButtonBase.module.scss +42 -40
  50. package/src/Filter/FilterDatePicker/subcomponents/DateInputField/DateInputField.module.scss +4 -2
  51. package/src/Filter/FilterDatePicker/subcomponents/FilterDatePickerField/FilterDatePickerField.module.scss +6 -4
  52. package/src/Filter/FilterDateRangePicker/FilterDateRangePicker.module.css +7 -5
  53. package/src/Filter/FilterDateRangePicker/subcomponents/DateRangeDisplayLabel/DateRangeDisplayLabel.module.scss +5 -3
  54. package/src/Filter/FilterDateRangePicker/subcomponents/DateRangeInputField/DateRangeInputField.module.scss +36 -34
  55. package/src/Filter/FilterDateRangePicker/subcomponents/DateRangeValidationMessage/DateRangeValidationMessage.module.scss +5 -3
  56. package/src/Filter/FilterDateRangePicker/subcomponents/FilterDateRangePickerField/FilterDateRangePickerField.module.scss +7 -5
  57. package/src/Filter/FilterMultiSelect/subcomponents/ListBox/ListBox.module.scss +19 -17
  58. package/src/Filter/FilterMultiSelect/subcomponents/ListBoxSection/ListBoxSection.module.scss +14 -12
  59. package/src/Filter/FilterMultiSelect/subcomponents/LoadMoreButton/LoadMoreButton.module.scss +4 -2
  60. package/src/Filter/FilterMultiSelect/subcomponents/MenuLayout/MenuFooter/MenuFooter.module.scss +7 -5
  61. package/src/Filter/FilterMultiSelect/subcomponents/MenuLayout/MenuLoadingSkeleton/MenuLoadingSkeleton.module.scss +8 -6
  62. package/src/Filter/FilterMultiSelect/subcomponents/MenuPopup/MenuPopup.module.scss +17 -15
  63. package/src/Filter/FilterMultiSelect/subcomponents/MultiSelectOption/MultiSelectOption.module.scss +90 -88
  64. package/src/Filter/FilterMultiSelect/subcomponents/NoResults/NoResults.module.scss +4 -2
  65. package/src/Filter/FilterMultiSelect/subcomponents/SearchInput/SearchInput.module.scss +5 -3
  66. package/src/Filter/FilterMultiSelect/subcomponents/SectionDivider/SectionDivider.module.scss +4 -2
  67. package/src/Filter/FilterMultiSelect/subcomponents/SelectionControlButton/SelectionControlButton.module.scss +52 -50
  68. package/src/Filter/FilterMultiSelect/subcomponents/Trigger/RemovableFilterTrigger/RemovableFilterTrigger.module.css +4 -2
  69. package/src/Filter/FilterSelect/FilterSelect.module.css +9 -7
  70. package/src/Focusable/Focusable.module.scss +4 -2
  71. package/src/GuidanceBlock/GuidanceBlock.module.css +212 -210
  72. package/src/Heading/Heading.module.scss +87 -85
  73. package/src/Icon/_docs/icon.module.scss +35 -33
  74. package/src/Icon/subcomponents/SVG/SVG.module.scss +26 -24
  75. package/src/Illustration/subcomponents/Base/Base.module.scss +100 -98
  76. package/src/Input/Input/Input.module.scss +217 -215
  77. package/src/Input/InputRange/InputRange.module.scss +138 -136
  78. package/src/Input/InputSearch/InputSearch.module.scss +155 -152
  79. package/src/Label/Label.module.scss +82 -80
  80. package/src/LabelledMessage/LabelledMessage.module.scss +8 -6
  81. package/src/LikertScaleLegacy/LikertScaleLegacy.module.scss +266 -264
  82. package/src/Link/Link.module.css +115 -113
  83. package/src/LinkButton/LinkButton.module.css +5 -3
  84. package/src/Loading/LoadingGraphic/LoadingGraphic.module.scss +12 -10
  85. package/src/Loading/LoadingHeading/LoadingHeading.module.scss +44 -42
  86. package/src/Loading/LoadingInput/LoadingInput.module.scss +11 -9
  87. package/src/Loading/LoadingParagraph/LoadingParagraph.module.scss +47 -45
  88. package/src/Loading/LoadingSpinner/LoadingSpinner.module.css +22 -20
  89. package/src/Loading/_mixins.scss +11 -9
  90. package/src/Menu/subcomponents/MenuDropdown/MenuDropdown.module.scss +18 -16
  91. package/src/Menu/subcomponents/MenuHeading/MenuHeading.module.scss +8 -6
  92. package/src/Menu/subcomponents/MenuItem/MenuItem.module.scss +74 -72
  93. package/src/Menu/subcomponents/MenuList/MenuList.module.scss +14 -12
  94. package/src/Menu/subcomponents/StatelessMenu/StatelessMenu.module.scss +4 -2
  95. package/src/Modal/ConfirmationModal/ConfirmationModal.module.scss +126 -124
  96. package/src/Modal/ContextModal/ContextModal.module.scss +72 -70
  97. package/src/Modal/GenericModal/GenericModal.module.scss +92 -90
  98. package/src/Modal/GenericModal/subcomponents/ModalAccessibleDescription/ModalAccessibleDescription.module.scss +4 -2
  99. package/src/Modal/GenericModal/subcomponents/ModalAccessibleLabel/ModalAccessibleLabel.module.scss +25 -23
  100. package/src/Modal/GenericModal/subcomponents/ModalBody/ModalBody.module.scss +5 -3
  101. package/src/Modal/GenericModal/subcomponents/ModalFooter/ModalFooter.module.scss +55 -53
  102. package/src/Modal/GenericModal/subcomponents/ModalHeader/ModalHeader.module.scss +17 -15
  103. package/src/Modal/InputEditModal/InputEditModal.module.scss +32 -30
  104. package/src/MultiSelect/MultiSelect.module.scss +7 -5
  105. package/src/MultiSelect/subcomponents/Checkbox/Checkbox.module.scss +59 -57
  106. package/src/MultiSelect/subcomponents/MultiSelectOptionField/MultiSelectOptionField.module.scss +55 -53
  107. package/src/MultiSelect/subcomponents/MultiSelectOptions/MultiSelectOptions.module.scss +8 -6
  108. package/src/MultiSelect/subcomponents/MultiSelectToggle/MultiSelectToggle.module.scss +66 -64
  109. package/src/MultiSelect/subcomponents/Popover/Popover.module.scss +15 -13
  110. package/src/Notification/ToastNotification/ToastNotificationsList/ToastNotificationsList.module.scss +21 -19
  111. package/src/Notification/subcomponents/GenericNotification/GenericNotification.module.scss +112 -110
  112. package/src/Notification/subcomponents/GenericNotification/_mixins.scss +278 -276
  113. package/src/Notification/subcomponents/NotificationIcon/NotificationIcon.module.css +4 -2
  114. package/src/Pagination/Pagination.module.scss +39 -37
  115. package/src/Pagination/subcomponents/DirectionalLink/DirectionalLink.module.scss +11 -9
  116. package/src/Pagination/subcomponents/PaginationLink/PaginationLink.module.scss +53 -51
  117. package/src/Pagination/subcomponents/TruncateIndicator/TruncateIndicator.module.css +10 -8
  118. package/src/Popover/Popover.module.scss +187 -185
  119. package/src/ProgressBar/ProgressBar.module.scss +75 -73
  120. package/src/ProgressBar/subcomponents/Label/Label.module.scss +6 -4
  121. package/src/Radio/Radio/Radio.module.scss +60 -58
  122. package/src/Radio/RadioField/RadioField.module.scss +33 -31
  123. package/src/Radio/RadioGroup/RadioGroup.module.scss +18 -16
  124. package/src/RichTextEditor/EditableRichTextContent/EditableRichTextContent.module.scss +32 -30
  125. package/src/RichTextEditor/RichTextContent/RichTextContent.module.scss +4 -2
  126. package/src/RichTextEditor/RichTextEditor/RichTextEditor.module.scss +76 -74
  127. package/src/RichTextEditor/RichTextEditor/subcomponents/ToggleIconButton/ToggleIconButton.module.scss +92 -90
  128. package/src/RichTextEditor/RichTextEditor/subcomponents/Toolbar/Toolbar.module.scss +5 -3
  129. package/src/RichTextEditor/RichTextEditor/subcomponents/ToolbarSection/ToolbarSection.module.scss +12 -10
  130. package/src/RichTextEditor/_mixins.scss +1 -1
  131. package/src/RichTextEditor/utils/plugins/LinkManager/components/LinkModal/LinkModal.module.scss +5 -3
  132. package/src/RichTextEditor/utils/plugins/LinkManager/components/LinkPopover/LinkPopover.module.scss +22 -20
  133. package/src/SearchField/SearchField.module.scss +5 -3
  134. package/src/Select/Select.module.scss +17 -0
  135. package/src/Skirt/Skirt.module.scss +24 -22
  136. package/src/Skirt/subcomponents/SkirtCard/SkirtCard.module.scss +13 -11
  137. package/src/Slider/Slider.module.scss +34 -32
  138. package/src/SplitButton/SplitButton.module.scss +5 -3
  139. package/src/SplitButton/subcomponents/ActionButton/ActionButton.module.scss +7 -5
  140. package/src/SplitButton/subcomponents/BaseButton/BaseButton.module.scss +65 -63
  141. package/src/SplitButton/subcomponents/DropdownButton/DropdownButton.module.scss +19 -17
  142. package/src/Table/Table.module.scss +251 -249
  143. package/src/Tabs/subcomponents/Tab.module.scss +81 -79
  144. package/src/Tabs/subcomponents/TabList.module.scss +8 -6
  145. package/src/Tabs/subcomponents/TabPanel.module.scss +10 -8
  146. package/src/Tag/Tag.module.scss +166 -164
  147. package/src/Tag/subcomponents/LiveIcon/LiveIcon.module.css +42 -40
  148. package/src/Text/Text.module.scss +57 -55
  149. package/src/TextArea/TextArea.module.css +102 -99
  150. package/src/TextAreaField/TextAreaField.module.scss +14 -12
  151. package/src/TextField/TextField.module.scss +16 -14
  152. package/src/Tile/MultiActionTile/MultiActionTile.module.scss +7 -5
  153. package/src/Tile/TileGrid/TileGrid.module.scss +18 -16
  154. package/src/Tile/subcomponents/GenericTile/GenericTile.module.scss +123 -121
  155. package/src/TimeField/TimeField.module.scss +57 -55
  156. package/src/TimeField/subcomponents/TimeSegment/TimeSegment.module.scss +37 -35
  157. package/src/TitleBlockZen/TitleBlockZen.module.scss +507 -505
  158. package/src/TitleBlockZen/subcomponents/MainActions.module.scss +11 -9
  159. package/src/TitleBlockZen/subcomponents/MobileActions.module.scss +146 -144
  160. package/src/TitleBlockZen/subcomponents/NavigationTabs.module.scss +105 -103
  161. package/src/TitleBlockZen/subcomponents/TitleBlockMenuItem.module.scss +74 -72
  162. package/src/TitleBlockZen/subcomponents/Toolbar.module.scss +28 -26
  163. package/src/ToggleSwitch/ToggleSwitch/ToggleSwitch.module.scss +105 -103
  164. package/src/ToggleSwitch/ToggleSwitchField/ToggleSwitchField.module.scss +11 -9
  165. package/src/Tooltip/Tooltip.module.scss +139 -137
  166. package/src/VisuallyHidden/VisuallyHidden.module.scss +10 -8
  167. package/src/Well/Well.module.css +104 -102
  168. package/src/Workflow/subcomponents/Footer/components/FooterActions/FooterActions.module.css +14 -12
  169. package/src/Workflow/subcomponents/Footer/components/ProgressStepper/ProgressStepper.module.css +101 -99
  170. package/src/Workflow/subcomponents/Footer/components/Root/FooterRoot.module.css +19 -17
  171. package/src/Workflow/subcomponents/Header/components/Actions/Actions.module.css +14 -12
  172. package/src/Workflow/subcomponents/Header/components/Branding/Branding.module.css +12 -10
  173. package/src/Workflow/subcomponents/Header/components/Root/Root.module.css +19 -17
  174. package/src/Workflow/subcomponents/Header/components/Titles/Titles.module.css +19 -17
  175. package/src/Workflow/subcomponents/Main/Main.module.css +5 -3
  176. package/src/Workflow/subcomponents/Wrapper/Wrapper.module.css +8 -6
  177. package/src/__next__/Button/Button.module.css +220 -218
  178. package/src/__next__/Button/subcomponents/ButtonContent/ButtonContent.module.css +17 -15
  179. package/src/__next__/Button/subcomponents/PendingContent/PendingContent.module.css +15 -13
  180. package/src/__next__/Icon/Icon.module.css +40 -38
  181. package/src/__next__/Icon/_docs/Icon.docs.module.css +13 -11
  182. package/src/__next__/Menu/Menu.module.css +30 -28
  183. package/src/__next__/Menu/MenuItem.module.css +41 -39
  184. package/src/__next__/Select/Select.module.scss +8 -6
  185. package/src/__next__/Select/subcomponents/ListBox/ListBox.module.scss +12 -10
  186. package/src/__next__/Select/subcomponents/ListBoxSection/ListBoxSection.module.scss +15 -13
  187. package/src/__next__/Select/subcomponents/Option/Option.module.scss +53 -51
  188. package/src/__next__/Select/subcomponents/SectionDivider/SectionDivider.module.scss +8 -6
  189. package/src/__next__/Select/subcomponents/SelectPopoverContents/SelectPopoverContents.module.scss +4 -2
  190. package/src/__next__/Select/subcomponents/SelectToggle/SelectToggle.module.scss +105 -103
  191. package/src/__next__/Tabs/subcomponents/Tab/Tab.module.css +81 -79
  192. package/src/__next__/Tabs/subcomponents/TabList/TabList.module.css +56 -54
  193. package/src/__next__/Tabs/subcomponents/TabPanel/TabPanel.module.css +10 -8
  194. package/src/__next__/Tag/RemovableTag/RemovableTag.module.scss +6 -4
  195. package/src/__next__/Tag/RemovableTag/subcomponents/RemoveButton.module.scss +26 -24
  196. package/src/__next__/Tag/Tag/Tag.module.scss +56 -54
  197. package/src/__next__/Tooltip/OverlayArrow.module.scss +40 -38
  198. package/src/__next__/Tooltip/Tooltip.module.scss +39 -37
  199. package/src/__next__/Tooltip/_docs/ApiSpecification.mdx +2 -2
  200. package/src/__next__/Tooltip/_docs/Tooltip.docs.stories.tsx +15 -30
  201. package/src/__next__/Tooltip/_docs/Tooltip.mdx +1 -1
  202. package/src/__next__/Tooltip/_docs/Tooltip.spec.stories.tsx +21 -58
  203. package/src/__next__/Tooltip/_docs/Tooltip.stories.tsx +2 -2
  204. package/src/utils/AppearanceAnim.module.scss +14 -12
@@ -9,660 +9,663 @@
9
9
  @import './mixins';
10
10
  @import './variables';
11
11
 
12
- $title-block-margin-width-on-medium-and-small: 12px;
13
- $breadcrumb-circle-width: 48px;
14
- $breadcrumb-breakpoint-width: $layout-content-max-width + $layout-content-side-margin * 2 +
15
- $breadcrumb-circle-width * 2.25;
16
- $title-block-separator-height: 0.1875rem;
17
- $tab-container-height-default: $ca-grid * 3;
18
- $tab-container-height-small: $ca-grid * 2.5;
19
- $tab-container-height-default-collapsed: 0;
20
- $tab-container-height-medium-and-small-collapsed: 0;
21
-
22
- /* stylelint-disable no-descending-specificity */
23
- .titleBlock {
24
- position: relative;
25
- -webkit-font-smoothing: antialiased;
26
- -moz-osx-font-smoothing: grayscale;
27
- background-color: $dt-color-background-color-default;
28
- width: 100%;
29
- display: flex;
30
- justify-content: center;
31
- flex-direction: column;
32
-
33
- &.educationVariant {
34
- background-color: $dt-color-background-color-eduction;
35
- }
36
-
37
- &.adminVariant {
38
- background-color: $dt-color-background-color-admin;
39
- }
40
-
41
- @media print {
42
- display: none;
43
- }
44
- }
45
-
46
- .titleRow,
47
- .rowBelowSeparator {
48
- display: flex;
49
- width: 100%;
50
- justify-content: center;
51
- }
12
+ @layer kz-components {
13
+ $title-block-margin-width-on-medium-and-small: 12px;
14
+ $breadcrumb-circle-width: 48px;
15
+ $breadcrumb-breakpoint-width: $layout-content-max-width + $layout-content-side-margin * 2 +
16
+ $breadcrumb-circle-width * 2.25;
17
+ $title-block-separator-height: 0.1875rem;
18
+ $tab-container-height-default: $ca-grid * 3;
19
+ $tab-container-height-small: $ca-grid * 2.5;
20
+ $tab-container-height-default-collapsed: 0;
21
+ $tab-container-height-medium-and-small-collapsed: 0;
22
+
23
+ /* stylelint-disable no-descending-specificity */
24
+ .titleBlock {
25
+ position: relative;
26
+ -webkit-font-smoothing: antialiased;
27
+ -moz-osx-font-smoothing: grayscale;
28
+ background-color: $dt-color-background-color-default;
29
+ width: 100%;
30
+ display: flex;
31
+ justify-content: center;
32
+ flex-direction: column;
52
33
 
53
- .adminVariant .titleRow {
54
- background-color: $color-white;
55
- }
34
+ &.educationVariant {
35
+ background-color: $dt-color-background-color-eduction;
36
+ }
56
37
 
57
- %titleBlockInner {
58
- max-width: $layout-content-max-width;
59
- margin: 0 $layout-content-side-margin;
60
- display: flex;
61
- flex-direction: column;
62
- width: 100%;
63
- min-width: 0; // this is an important trick to prevent flexbox items from overflowing
38
+ &.adminVariant {
39
+ background-color: $dt-color-background-color-admin;
40
+ }
64
41
 
65
- @include title-block-medium-and-small {
66
- margin: 0 $title-block-margin-width-on-medium-and-small;
42
+ @media print {
43
+ display: none;
44
+ }
67
45
  }
68
- }
69
46
 
70
- .titleRowInner {
71
- @extend %titleBlockInner;
72
- }
47
+ .titleRow,
48
+ .rowBelowSeparator {
49
+ display: flex;
50
+ width: 100%;
51
+ justify-content: center;
52
+ }
73
53
 
74
- .rowBelowSeparatorInner {
75
- @extend %titleBlockInner;
76
- }
54
+ .adminVariant .titleRow {
55
+ background-color: $color-white;
56
+ }
77
57
 
78
- .titleRowInnerContent {
79
- position: relative;
80
- display: flex;
81
- width: 100%;
82
- align-items: center;
83
- min-height: $ca-grid * 3.5;
84
- justify-content: space-between;
85
- border-bottom: $title-block-separator-height solid rgba($color-white-rgb, 0.1);
58
+ %titleBlockInner {
59
+ max-width: $layout-content-max-width;
60
+ margin: 0 $layout-content-side-margin;
61
+ display: flex;
62
+ flex-direction: column;
63
+ width: 100%;
64
+ min-width: 0; // this is an important trick to prevent flexbox items from overflowing
86
65
 
87
- .educationVariant & {
88
- border-bottom-color: rgba($color-purple-700-rgb, 0.2);
66
+ @include title-block-medium-and-small {
67
+ margin: 0 $title-block-margin-width-on-medium-and-small;
68
+ }
89
69
  }
90
70
 
91
- .adminVariant &,
92
- .collapseNavigationArea & {
93
- border-bottom-color: transparent;
71
+ .titleRowInner {
72
+ @extend %titleBlockInner;
94
73
  }
95
74
 
96
- @include title-block-medium-and-small {
97
- border-bottom: none;
75
+ .rowBelowSeparatorInner {
76
+ @extend %titleBlockInner;
98
77
  }
99
- }
100
78
 
101
- .title {
102
- display: flex;
103
- align-items: center;
104
- min-width: 0; // this is an important trick to prevent flexbox items from overflowing
105
-
106
- // Applying width 100% when the title is *not* long and is followed by a subtitle
107
- // causes misalignment of both.
108
- @include title-block-under-1366 {
79
+ .titleRowInnerContent {
80
+ position: relative;
81
+ display: flex;
109
82
  width: 100%;
110
- }
111
- }
83
+ align-items: center;
84
+ min-height: $ca-grid * 3.5;
85
+ justify-content: space-between;
86
+ border-bottom: $title-block-separator-height solid rgba($color-white-rgb, 0.1);
112
87
 
113
- .titleAndSubtitle {
114
- display: flex;
115
- align-items: center;
116
- min-width: 0; // this is an important trick to prevent flexbox items from overflowing
117
- transform: translateY(-0.0833em);
88
+ .educationVariant & {
89
+ border-bottom-color: rgba($color-purple-700-rgb, 0.2);
90
+ }
118
91
 
119
- .hasSubtitle & {
120
- @include title-block-under-1366 {
121
- transform: translateY(-0.3833em);
92
+ .adminVariant &,
93
+ .collapseNavigationArea & {
94
+ border-bottom-color: transparent;
122
95
  }
123
- }
124
- }
125
96
 
126
- .titleAndSubtitleInner {
127
- display: flex;
128
- min-width: 0; // this is an important trick to prevent flexbox items from overflowing
97
+ @include title-block-medium-and-small {
98
+ border-bottom: none;
99
+ }
100
+ }
129
101
 
130
- // TODO: removing .hasLongTitle here fixes the alignment on Performance story, but we should be able to not wrap subtitle.
131
- .hasSubtitle.hasLongTitle.hasLongSubtitle & {
102
+ .title {
103
+ display: flex;
132
104
  align-items: center;
105
+ min-width: 0; // this is an important trick to prevent flexbox items from overflowing
133
106
 
107
+ // Applying width 100% when the title is *not* long and is followed by a subtitle
108
+ // causes misalignment of both.
134
109
  @include title-block-under-1366 {
135
- align-items: baseline;
110
+ width: 100%;
136
111
  }
137
112
  }
138
113
 
139
- .hasPageSwitcherSelect & {
140
- @include title-block-medium-and-small {
141
- align-items: normal;
142
- flex-direction: column;
143
- justify-content: space-between;
144
- transform: translateY(calc(#{$ca-grid} / 3));
114
+ .titleAndSubtitle {
115
+ display: flex;
116
+ align-items: center;
117
+ min-width: 0; // this is an important trick to prevent flexbox items from overflowing
118
+ transform: translateY(-0.0833em);
119
+
120
+ .hasSubtitle & {
121
+ @include title-block-under-1366 {
122
+ transform: translateY(-0.3833em);
123
+ }
145
124
  }
146
125
  }
147
126
 
148
- .hasSubtitle & {
149
- align-items: baseline;
150
- overflow: hidden;
127
+ .titleAndSubtitleInner {
128
+ display: flex;
129
+ min-width: 0; // this is an important trick to prevent flexbox items from overflowing
151
130
 
152
- @include title-block-under-1366 {
153
- align-items: normal;
154
- flex-direction: column;
155
- justify-content: space-between;
156
- transform: translateY(calc(#{$ca-grid} / 3));
131
+ // TODO: removing .hasLongTitle here fixes the alignment on Performance story, but we should be able to not wrap subtitle.
132
+ .hasSubtitle.hasLongTitle.hasLongSubtitle & {
133
+ align-items: center;
157
134
 
158
- .hasLongTitle.hasLongSubtitle & {
135
+ @include title-block-under-1366 {
159
136
  align-items: baseline;
160
137
  }
161
138
  }
162
139
 
163
- @include title-block-medium-and-small {
164
- transform: translateY(calc(#{$ca-grid} / 2));
140
+ .hasPageSwitcherSelect & {
141
+ @include title-block-medium-and-small {
142
+ align-items: normal;
143
+ flex-direction: column;
144
+ justify-content: space-between;
145
+ transform: translateY(calc(#{$ca-grid} / 3));
146
+ }
165
147
  }
166
- }
167
- }
168
148
 
169
- .titleTextOverride.titleTextOverride {
170
- padding: 4px 0;
149
+ .hasSubtitle & {
150
+ align-items: baseline;
151
+ overflow: hidden;
171
152
 
172
- @include title-block-under-1366 {
173
- font-size: $typography-heading-2-font-size;
174
- line-height: $typography-heading-2-line-height;
175
- letter-spacing: $typography-heading-2-letter-spacing;
176
- padding: 2px 0;
153
+ @include title-block-under-1366 {
154
+ align-items: normal;
155
+ flex-direction: column;
156
+ justify-content: space-between;
157
+ transform: translateY(calc(#{$ca-grid} / 3));
158
+
159
+ .hasLongTitle.hasLongSubtitle & {
160
+ align-items: baseline;
161
+ }
162
+ }
163
+
164
+ @include title-block-medium-and-small {
165
+ transform: translateY(calc(#{$ca-grid} / 2));
166
+ }
167
+ }
177
168
  }
178
169
 
179
- .hasLongTitle & {
170
+ .titleTextOverride.titleTextOverride {
171
+ padding: 4px 0;
172
+
180
173
  @include title-block-under-1366 {
181
- font-size: $typography-heading-3-font-size;
182
- line-height: $typography-heading-3-line-height;
183
- letter-spacing: $typography-heading-3-letter-spacing;
174
+ font-size: $typography-heading-2-font-size;
175
+ line-height: $typography-heading-2-line-height;
176
+ letter-spacing: $typography-heading-2-letter-spacing;
184
177
  padding: 2px 0;
185
178
  }
186
- }
187
179
 
188
- @include title-block-medium-and-small {
189
- font-size: $typography-heading-4-font-size;
190
- line-height: $typography-heading-4-line-height;
191
- letter-spacing: $typography-heading-4-letter-spacing;
192
- padding: 0;
180
+ .hasLongTitle & {
181
+ @include title-block-under-1366 {
182
+ font-size: $typography-heading-3-font-size;
183
+ line-height: $typography-heading-3-line-height;
184
+ letter-spacing: $typography-heading-3-letter-spacing;
185
+ padding: 2px 0;
186
+ }
187
+ }
188
+
189
+ @include title-block-medium-and-small {
190
+ font-size: $typography-heading-4-font-size;
191
+ line-height: $typography-heading-4-line-height;
192
+ letter-spacing: $typography-heading-4-letter-spacing;
193
+ padding: 0;
194
+ }
193
195
  }
194
- }
195
196
 
196
- .avatar {
197
- display: none;
198
- box-sizing: border-box;
199
- overflow: hidden;
200
- height: $ca-grid * 2;
201
- width: $ca-grid * 2;
197
+ .avatar {
198
+ display: none;
199
+ box-sizing: border-box;
200
+ overflow: hidden;
201
+ height: $ca-grid * 2;
202
+ width: $ca-grid * 2;
202
203
 
203
- @include ca-margin($end: calc(#{$ca-grid} / 2));
204
+ @include ca-margin($end: calc(#{$ca-grid} / 2));
204
205
 
205
- > * {
206
- max-width: 100%;
207
- }
206
+ > * {
207
+ max-width: 100%;
208
+ }
208
209
 
209
- @media (min-width: $layout-breakpoints-large) {
210
- display: block;
211
- }
210
+ @media (min-width: $layout-breakpoints-large) {
211
+ display: block;
212
+ }
212
213
 
213
- &.withBorder {
214
- border: 3px solid $color-white;
215
- border-radius: 50%;
214
+ &.withBorder {
215
+ border: 3px solid $color-white;
216
+ border-radius: 50%;
217
+ }
218
+
219
+ .hasLongTitle & {
220
+ display: none;
221
+ }
216
222
  }
217
223
 
218
- .hasLongTitle & {
224
+ .hamburger {
219
225
  display: none;
220
- }
221
- }
222
226
 
223
- .hamburger {
224
- display: none;
227
+ @include ca-margin($end: $spacing-xs);
225
228
 
226
- @include ca-margin($end: $spacing-xs);
229
+ @include title-block-medium-and-small {
230
+ display: flex;
231
+ align-items: center;
232
+ }
233
+ }
227
234
 
228
- @include title-block-medium-and-small {
235
+ .subtitle {
229
236
  display: flex;
230
237
  align-items: center;
231
- }
232
- }
233
-
234
- .subtitle {
235
- display: flex;
236
- align-items: center;
237
- color: $color-white;
238
- font-family: $typography-paragraph-small-font-family;
239
- font-weight: $typography-paragraph-small-font-weight;
240
- font-size: $typography-paragraph-small-font-size;
241
- line-height: $typography-paragraph-small-line-height;
242
- letter-spacing: $typography-paragraph-small-letter-spacing;
243
- max-width: 230px;
244
- margin-inline: var(--spacing-12) 0;
238
+ color: $color-white;
239
+ font-family: $typography-paragraph-small-font-family;
240
+ font-weight: $typography-paragraph-small-font-weight;
241
+ font-size: $typography-paragraph-small-font-size;
242
+ line-height: $typography-paragraph-small-line-height;
243
+ letter-spacing: $typography-paragraph-small-letter-spacing;
244
+ max-width: 230px;
245
+ margin-inline: var(--spacing-12) 0;
246
+
247
+ .adminVariant & {
248
+ color: $color-purple-800;
249
+ }
245
250
 
246
- .adminVariant & {
247
- color: $color-purple-800;
251
+ @include title-block-under-1366 {
252
+ white-space: nowrap;
253
+ text-overflow: ellipsis;
254
+ overflow: hidden;
255
+ max-width: none;
256
+ margin: calc(#{$ca-grid} / 5) 0;
257
+ }
248
258
  }
249
259
 
250
- @include title-block-under-1366 {
251
- white-space: nowrap;
252
- text-overflow: ellipsis;
253
- overflow: hidden;
254
- max-width: none;
255
- margin: calc(#{$ca-grid} / 5) 0;
260
+ .subtitleText {
261
+ @include title-block-under-1366 {
262
+ max-width: 42vw;
263
+ white-space: nowrap;
264
+ text-overflow: ellipsis;
265
+ overflow: hidden;
266
+ }
267
+
268
+ @include title-block-small {
269
+ max-width: 88vw;
270
+ }
256
271
  }
257
- }
258
272
 
259
- .subtitleText {
260
- @include title-block-under-1366 {
261
- max-width: 42vw;
262
- white-space: nowrap;
263
- text-overflow: ellipsis;
264
- overflow: hidden;
273
+ .sectionTitleContainer {
274
+ display: flex;
275
+ align-items: center;
276
+ padding: calc(#{$ca-grid} * 3 / 4) 0;
265
277
  }
266
278
 
267
- @include title-block-small {
268
- max-width: 88vw;
279
+ .sectionTitleInner {
280
+ display: flex;
281
+ flex-direction: column;
269
282
  }
270
- }
271
283
 
272
- .sectionTitleContainer {
273
- display: flex;
274
- align-items: center;
275
- padding: calc(#{$ca-grid} * 3 / 4) 0;
276
- }
284
+ .sectionTitleOverride.sectionTitleOverride {
285
+ white-space: nowrap;
286
+ margin-inline: 0 var(--spacing-24);
287
+ font-family: $typography-heading-2-font-family;
288
+ font-weight: $typography-heading-2-font-weight;
289
+ font-size: $typography-heading-2-font-size;
290
+ line-height: $typography-heading-2-line-height;
291
+ letter-spacing: $typography-heading-2-letter-spacing;
277
292
 
278
- .sectionTitleInner {
279
- display: flex;
280
- flex-direction: column;
281
- }
293
+ @include title-block-under-1645 {
294
+ font-family: $typography-heading-3-font-family;
295
+ font-weight: $typography-heading-3-font-weight;
296
+ font-size: $typography-heading-3-font-size;
297
+ line-height: $typography-heading-3-line-height;
298
+ letter-spacing: $typography-heading-3-letter-spacing;
299
+ }
282
300
 
283
- .sectionTitleOverride.sectionTitleOverride {
284
- white-space: nowrap;
285
- margin-inline: 0 var(--spacing-24);
286
- font-family: $typography-heading-2-font-family;
287
- font-weight: $typography-heading-2-font-weight;
288
- font-size: $typography-heading-2-font-size;
289
- line-height: $typography-heading-2-line-height;
290
- letter-spacing: $typography-heading-2-letter-spacing;
291
-
292
- @include title-block-under-1645 {
293
- font-family: $typography-heading-3-font-family;
294
- font-weight: $typography-heading-3-font-weight;
295
- font-size: $typography-heading-3-font-size;
296
- line-height: $typography-heading-3-line-height;
297
- letter-spacing: $typography-heading-3-letter-spacing;
298
- }
299
-
300
- @include title-block-medium-and-small {
301
- font-family: $typography-heading-4-font-family;
302
- font-weight: $typography-heading-4-font-weight;
303
- font-size: $typography-heading-4-font-size;
304
- line-height: $typography-heading-4-line-height;
305
- letter-spacing: $typography-heading-4-letter-spacing;
301
+ @include title-block-medium-and-small {
302
+ font-family: $typography-heading-4-font-family;
303
+ font-weight: $typography-heading-4-font-weight;
304
+ font-size: $typography-heading-4-font-size;
305
+ line-height: $typography-heading-4-line-height;
306
+ letter-spacing: $typography-heading-4-letter-spacing;
307
+ }
306
308
  }
307
- }
308
309
 
309
- .sectionTitle {
310
- display: block;
311
- }
310
+ .sectionTitle {
311
+ display: block;
312
+ }
312
313
 
313
- .sectionTitleDescription {
314
- color: $color-white;
315
- max-width: 780px;
316
- font-family: $typography-paragraph-small-font-family;
317
- font-weight: $typography-paragraph-small-font-weight;
318
- font-size: $typography-paragraph-small-font-size;
319
- line-height: $typography-paragraph-small-line-height;
320
- letter-spacing: $typography-paragraph-small-letter-spacing;
314
+ .sectionTitleDescription {
315
+ color: $color-white;
316
+ max-width: 780px;
317
+ font-family: $typography-paragraph-small-font-family;
318
+ font-weight: $typography-paragraph-small-font-weight;
319
+ font-size: $typography-paragraph-small-font-size;
320
+ line-height: $typography-paragraph-small-line-height;
321
+ letter-spacing: $typography-paragraph-small-letter-spacing;
322
+
323
+ .sectionTitle + & {
324
+ margin-top: var(--spacing-6);
325
+ }
321
326
 
322
- .sectionTitle + & {
323
- margin-top: var(--spacing-6);
327
+ &.dark {
328
+ color: rgba($color-purple-800-rgb, 0.7);
329
+ }
324
330
  }
325
331
 
326
- &.dark {
327
- color: rgba($color-purple-800-rgb, 0.7);
332
+ .rowBelowSeparatorInnerContent {
333
+ display: flex;
334
+ width: 100%;
335
+ margin-top: -$title-block-separator-height;
336
+ justify-content: space-between;
328
337
  }
329
- }
330
-
331
- .rowBelowSeparatorInnerContent {
332
- display: flex;
333
- width: 100%;
334
- margin-top: -$title-block-separator-height;
335
- justify-content: space-between;
336
- }
337
338
 
338
- .titleAndAdjacent {
339
- display: flex;
340
- min-width: 0; // this is an important trick to prevent flexbox items from overflowing
341
- }
339
+ .titleAndAdjacent {
340
+ display: flex;
341
+ min-width: 0; // this is an important trick to prevent flexbox items from overflowing
342
+ }
342
343
 
343
- .titleAndAdjacentNotBreadcrumb {
344
- display: flex;
345
- transition: opacity 0.3s ease;
346
- min-width: 0; // this is an important trick to prevent flexbox items from overflowing
347
- align-items: center;
344
+ .titleAndAdjacentNotBreadcrumb {
345
+ display: flex;
346
+ transition: opacity 0.3s ease;
347
+ min-width: 0; // this is an important trick to prevent flexbox items from overflowing
348
+ align-items: center;
348
349
 
349
- .breadcrumb:hover ~ &,
350
- .breadcrumb:focus ~ &,
351
- .breadcrumbTextLink:hover ~ &,
352
- .breadcrumbTextLink:focus ~ & {
353
- opacity: 0%;
350
+ .breadcrumb:hover ~ &,
351
+ .breadcrumb:focus ~ &,
352
+ .breadcrumbTextLink:hover ~ &,
353
+ .breadcrumbTextLink:focus ~ & {
354
+ opacity: 0%;
355
+ }
354
356
  }
355
- }
356
357
 
357
- .tag {
358
- display: flex;
359
- align-items: center;
360
- margin-inline: var(--spacing-12) 0;
358
+ .tag {
359
+ display: flex;
360
+ align-items: center;
361
+ margin-inline: var(--spacing-12) 0;
361
362
 
362
- @include title-block-medium-and-small {
363
- display: none;
364
- }
363
+ @include title-block-medium-and-small {
364
+ display: none;
365
+ }
365
366
 
366
- + .pageSwitcherSelectNextToTitle {
367
- margin-inline-start: 0;
367
+ + .pageSwitcherSelectNextToTitle {
368
+ margin-inline-start: 0;
369
+ }
368
370
  }
369
- }
370
371
 
371
- .pageSwitcherSelectNextToTitle {
372
- flex-shrink: 0;
373
- width: var(--spacing-240);
374
- margin-inline: var(--spacing-12) 0;
375
- }
372
+ .pageSwitcherSelectNextToTitle {
373
+ flex-shrink: 0;
374
+ width: var(--spacing-240);
375
+ margin-inline: var(--spacing-12) 0;
376
+ }
376
377
 
377
- .pageSwitcherSelectUnderneathTitle {
378
- flex-shrink: 0;
379
- max-width: var(--spacing-240);
380
- }
378
+ .pageSwitcherSelectUnderneathTitle {
379
+ flex-shrink: 0;
380
+ max-width: var(--spacing-240);
381
+ }
381
382
 
382
- .navigationTabsContainer {
383
- height: $tab-container-height-default;
383
+ .navigationTabsContainer {
384
+ height: $tab-container-height-default;
384
385
 
385
- @include title-block-small {
386
- height: $tab-container-height-small;
386
+ @include title-block-small {
387
+ height: $tab-container-height-small;
388
+ }
387
389
  }
388
- }
389
390
 
390
- .navigationTabsContainerCollapsed {
391
- height: $tab-container-height-default-collapsed;
391
+ .navigationTabsContainerCollapsed {
392
+ height: $tab-container-height-default-collapsed;
392
393
 
393
- @include title-block-medium-and-small {
394
- height: $tab-container-height-medium-and-small-collapsed;
394
+ @include title-block-medium-and-small {
395
+ height: $tab-container-height-medium-and-small-collapsed;
396
+ }
395
397
  }
396
- }
397
398
 
398
- .navigationTabScrollerContainer {
399
- .hasNavigationTabs & {
400
- @include title-block-small {
401
- display: block;
402
- overflow-x: scroll;
403
- scrollbar-width: none;
404
- width: 100vw;
399
+ .navigationTabScrollerContainer {
400
+ .hasNavigationTabs & {
401
+ @include title-block-small {
402
+ display: block;
403
+ overflow-x: scroll;
404
+ scrollbar-width: none;
405
+ width: 100vw;
405
406
 
406
- &::-webkit-scrollbar {
407
- display: none;
407
+ &::-webkit-scrollbar {
408
+ display: none;
409
+ }
408
410
  }
409
411
  }
410
412
  }
411
- }
412
-
413
- .navigationTabsNav {
414
- height: 100%;
415
- }
416
-
417
- .navigationTabsList {
418
- list-style: none;
419
- padding: 0;
420
- margin: 0;
421
- display: flex;
422
- height: 100%;
423
- }
424
413
 
425
- %navigationTabEdgeShadow {
426
- display: none;
427
- pointer-events: none;
414
+ .navigationTabsNav {
415
+ height: 100%;
416
+ }
428
417
 
429
- @include title-block-small {
430
- display: block;
431
- position: absolute;
432
- top: $tab-container-height-small - $title-block-separator-height;
433
- width: $tab-container-height-small;
434
- height: $tab-container-height-small;
435
- background: linear-gradient(0deg, $color-purple-600, rgba($color-purple-600-rgb, 0));
436
- z-index: 1;
418
+ .navigationTabsList {
419
+ list-style: none;
420
+ padding: 0;
421
+ margin: 0;
422
+ display: flex;
423
+ height: 100%;
437
424
  }
438
425
 
439
- .adminVariant & {
426
+ %navigationTabEdgeShadow {
427
+ display: none;
428
+ pointer-events: none;
429
+
440
430
  @include title-block-small {
441
- background: linear-gradient(0deg, $color-gray-100, rgba($color-gray-100-rgb, 0));
431
+ display: block;
432
+ position: absolute;
433
+ top: $tab-container-height-small - $title-block-separator-height;
434
+ width: $tab-container-height-small;
435
+ height: $tab-container-height-small;
436
+ background: linear-gradient(0deg, $color-purple-600, rgba($color-purple-600-rgb, 0));
437
+ z-index: 1;
442
438
  }
443
- }
444
439
 
445
- .educationVariant & {
446
- @include title-block-small {
447
- background: linear-gradient(0deg, $color-blue-200, rgba($color-blue-200-rgb, 0));
440
+ .adminVariant & {
441
+ @include title-block-small {
442
+ background: linear-gradient(0deg, $color-gray-100, rgba($color-gray-100-rgb, 0));
443
+ }
444
+ }
445
+
446
+ .educationVariant & {
447
+ @include title-block-small {
448
+ background: linear-gradient(0deg, $color-blue-200, rgba($color-blue-200-rgb, 0));
449
+ }
448
450
  }
449
451
  }
450
- }
451
452
 
452
- .navigationTabEdgeShadowLeft {
453
- @extend %navigationTabEdgeShadow;
453
+ .navigationTabEdgeShadowLeft {
454
+ @extend %navigationTabEdgeShadow;
454
455
 
455
- transform: rotate(90deg);
456
- left: 0;
457
- top: calc(100% - #{$tab-container-height-default});
456
+ transform: rotate(90deg);
457
+ left: 0;
458
+ top: calc(100% - #{$tab-container-height-default});
458
459
 
459
- @include title-block-small {
460
- top: calc(100% - #{$tab-container-height-small});
460
+ @include title-block-small {
461
+ top: calc(100% - #{$tab-container-height-small});
462
+ }
461
463
  }
462
- }
463
464
 
464
- .navigationTabEdgeShadowRight {
465
- @extend %navigationTabEdgeShadow;
465
+ .navigationTabEdgeShadowRight {
466
+ @extend %navigationTabEdgeShadow;
466
467
 
467
- transform: rotate(-90deg);
468
- right: 0;
469
- top: calc(100% - #{$tab-container-height-default});
468
+ transform: rotate(-90deg);
469
+ right: 0;
470
+ top: calc(100% - #{$tab-container-height-default});
470
471
 
471
- @include title-block-small {
472
- top: calc(100% - #{$tab-container-height-small});
472
+ @include title-block-small {
473
+ top: calc(100% - #{$tab-container-height-small});
474
+ }
473
475
  }
474
- }
475
-
476
- // This should be in SecondaryAction.module.scss,
477
- // but the variants prevent us from breaking this out.
478
- .secondaryActionsContainer {
479
- display: flex;
480
- align-items: flex-start;
481
- justify-content: flex-end;
482
- padding: (calc(#{$ca-grid} / 2)) 0;
483
476
 
484
- @include ca-margin($start: $ca-grid * 1.5);
477
+ // This should be in SecondaryAction.module.scss,
478
+ // but the variants prevent us from breaking this out.
479
+ .secondaryActionsContainer {
480
+ display: flex;
481
+ align-items: flex-start;
482
+ justify-content: flex-end;
483
+ padding: (calc(#{$ca-grid} / 2)) 0;
484
+
485
+ @include ca-margin($start: $ca-grid * 1.5);
486
+
487
+ // To be removed eventually – the Dropdown does not
488
+ // currently set its own color, and we want it
489
+ // to be Cluny like the default secondary buttons
490
+ .educationVariant &,
491
+ .adminVariant & {
492
+ color: $color-blue-500;
493
+ }
485
494
 
486
- // To be removed eventually – the Dropdown does not
487
- // currently set its own color, and we want it
488
- // to be Cluny like the default secondary buttons
489
- .educationVariant &,
490
- .adminVariant & {
491
- color: $color-blue-500;
495
+ @include title-block-medium-and-small {
496
+ display: none;
497
+ }
492
498
  }
493
499
 
494
- @include title-block-medium-and-small {
495
- display: none;
496
- }
497
- }
500
+ .breadcrumb {
501
+ @include button-reset;
498
502
 
499
- .breadcrumb {
500
- @include button-reset;
503
+ cursor: pointer;
504
+ display: flex;
505
+ position: absolute;
506
+ align-items: center;
507
+ top: 50%;
508
+ transform: translateY(-50%);
509
+ text-decoration: none;
501
510
 
502
- cursor: pointer;
503
- display: flex;
504
- position: absolute;
505
- align-items: center;
506
- top: 50%;
507
- transform: translateY(-50%);
508
- text-decoration: none;
511
+ @include ca-position($start: calc(-#{$breadcrumb-circle-width} - #{$ca-grid}));
509
512
 
510
- @include ca-position($start: calc(-#{$breadcrumb-circle-width} - #{$ca-grid}));
513
+ align-self: normal;
511
514
 
512
- align-self: normal;
515
+ &:hover .breadcrumbTextLink {
516
+ text-decoration: underline;
517
+ }
513
518
 
514
- &:hover .breadcrumbTextLink {
515
- text-decoration: underline;
516
- }
519
+ &:focus {
520
+ outline: none;
521
+
522
+ &::after {
523
+ $focus-ring-offset: calc(
524
+ (-2 * #{$border-focus-ring-border-width}) - #{$border-focus-ring-border-width}
525
+ );
526
+
527
+ content: '';
528
+ position: absolute;
529
+ background: transparent;
530
+ border-color: $color-blue-200;
531
+ border-radius: 50%;
532
+ border-width: $border-focus-ring-border-width;
533
+ border-style: $border-focus-ring-border-style;
534
+ inset: $focus-ring-offset;
535
+ }
536
+ }
517
537
 
518
- &:focus {
519
- outline: none;
538
+ @media only screen and (max-width: $breadcrumb-breakpoint-width) {
539
+ position: relative;
540
+ transform: translateY(0);
541
+ margin-inline: 0 var(--spacing-12);
520
542
 
521
- &::after {
522
- $focus-ring-offset: calc(
523
- (-2 * #{$border-focus-ring-border-width}) - #{$border-focus-ring-border-width}
524
- );
543
+ @include ca-position($start: 0);
544
+ }
525
545
 
526
- content: '';
527
- position: absolute;
528
- background: transparent;
529
- border-color: $color-blue-200;
530
- border-radius: 50%;
531
- border-width: $border-focus-ring-border-width;
532
- border-style: $border-focus-ring-border-style;
533
- inset: $focus-ring-offset;
546
+ @include title-block-medium-and-small {
547
+ display: none;
534
548
  }
535
549
  }
536
550
 
537
- @media only screen and (max-width: $breadcrumb-breakpoint-width) {
538
- position: relative;
539
- transform: translateY(0);
540
- margin-inline: 0 var(--spacing-12);
541
-
542
- @include ca-position($start: 0);
551
+ @mixin visually-hidden {
552
+ clip: rect(0 0 0 0);
553
+ clip-path: inset(50%);
554
+ height: 1px;
555
+ overflow: hidden;
556
+ position: absolute;
557
+ white-space: nowrap;
558
+ width: 1px;
543
559
  }
544
560
 
545
- @include title-block-medium-and-small {
546
- display: none;
561
+ @mixin visually-hidden-reset {
562
+ clip: initial;
563
+ clip-path: initial;
564
+ height: initial;
565
+ overflow: initial;
566
+ position: initial;
567
+ white-space: initial;
568
+ width: initial;
547
569
  }
548
- }
549
570
 
550
- @mixin visually-hidden {
551
- clip: rect(0 0 0 0);
552
- clip-path: inset(50%);
553
- height: 1px;
554
- overflow: hidden;
555
- position: absolute;
556
- white-space: nowrap;
557
- width: 1px;
558
- }
571
+ .breadcrumbTextLink {
572
+ // We are using visually hidden here instead of display:none so that a screen reader
573
+ // navigating via 'read mode' (which doesn't trigger hover/focus) will still hear this link name
574
+ @include visually-hidden;
575
+ @include ca-position($start: -2 * $ca-grid);
559
576
 
560
- @mixin visually-hidden-reset {
561
- clip: initial;
562
- clip-path: initial;
563
- height: initial;
564
- overflow: initial;
565
- position: initial;
566
- white-space: initial;
567
- width: initial;
568
- }
577
+ position: absolute;
569
578
 
570
- .breadcrumbTextLink {
571
- // We are using visually hidden here instead of display:none so that a screen reader
572
- // navigating via 'read mode' (which doesn't trigger hover/focus) will still hear this link name
573
- @include visually-hidden;
574
- @include ca-position($start: -2 * $ca-grid);
579
+ @include title-block-under-1645 {
580
+ @include ca-position($start: $ca-grid);
581
+ }
575
582
 
576
- position: absolute;
583
+ @media only screen and (min-width: $breadcrumb-breakpoint-width) {
584
+ @include ca-position($start: calc(#{$breadcrumb-circle-width} - #{$ca-grid}));
585
+ }
577
586
 
578
- @include title-block-under-1645 {
579
- @include ca-position($start: $ca-grid);
587
+ &:hover,
588
+ &:focus,
589
+ .breadcrumb:hover &,
590
+ .breadcrumb:focus & {
591
+ @include visually-hidden-reset;
592
+ // ^be careful of this mixin unsetting values you need
593
+ // e.g. I needed to set position:absolute again below
594
+ position: absolute;
595
+ display: block;
596
+ animation: slide-fade 0.4s;
597
+
598
+ [dir='rtl'] & {
599
+ animation: reverse-slide-fade 0.4s;
600
+ }
601
+ }
580
602
  }
581
603
 
582
- @media only screen and (min-width: $breadcrumb-breakpoint-width) {
583
- @include ca-position($start: calc(#{$breadcrumb-circle-width} - #{$ca-grid}));
604
+ .breadcrumbText {
605
+ margin-inline-start: $spacing-xl;
606
+ white-space: nowrap;
607
+ font-family: $typography-heading-5-font-family;
608
+ font-weight: $typography-heading-5-font-weight;
609
+ font-size: $typography-heading-5-font-size;
610
+ line-height: $typography-heading-5-line-height;
611
+ letter-spacing: $typography-heading-5-letter-spacing;
584
612
  }
585
613
 
586
- &:hover,
587
- &:focus,
588
- .breadcrumb:hover &,
589
- .breadcrumb:focus & {
590
- @include visually-hidden-reset;
591
- // ^be careful of this mixin unsetting values you need
592
- // e.g. I needed to set position:absolute again below
593
- position: absolute;
594
- display: block;
595
- animation: slide-fade 0.4s;
614
+ .breadcrumb,
615
+ .breadcrumb:hover,
616
+ .breadcrumbText {
617
+ color: $color-white;
596
618
 
597
- [dir='rtl'] & {
598
- animation: reverse-slide-fade 0.4s;
619
+ .educationVariant &,
620
+ .adminVariant & {
621
+ color: $color-purple-800;
599
622
  }
600
623
  }
601
- }
602
-
603
- .breadcrumbText {
604
- margin-inline-start: $spacing-xl;
605
- white-space: nowrap;
606
- font-family: $typography-heading-5-font-family;
607
- font-weight: $typography-heading-5-font-weight;
608
- font-size: $typography-heading-5-font-size;
609
- line-height: $typography-heading-5-line-height;
610
- letter-spacing: $typography-heading-5-letter-spacing;
611
- }
612
624
 
613
- .breadcrumb,
614
- .breadcrumb:hover,
615
- .breadcrumbText {
616
- color: $color-white;
625
+ .circle {
626
+ $border-width: 3px;
617
627
 
618
- .educationVariant &,
619
- .adminVariant & {
620
- color: $color-purple-800;
621
- }
622
- }
623
-
624
- .circle {
625
- $border-width: 3px;
626
-
627
- flex: 0 0 $breadcrumb-circle-width;
628
- box-sizing: border-box;
629
- width: $breadcrumb-circle-width;
630
- height: $breadcrumb-circle-width;
631
- color: $color-white;
632
- border-color: rgba($color-white-rgb, 0.5);
633
- border-width: 2px;
634
- border-radius: 50%;
635
- border-style: solid;
636
- display: flex;
637
- align-items: center;
638
- justify-content: center;
639
- transition:
640
- background-color 0.3s ease,
641
- transform 0.3s ease;
642
-
643
- .breadcrumb:hover &,
644
- .breadcrumb:focus & {
645
- transform: scale(1.1);
646
- border-color: $color-white;
628
+ flex: 0 0 $breadcrumb-circle-width;
629
+ box-sizing: border-box;
630
+ width: $breadcrumb-circle-width;
631
+ height: $breadcrumb-circle-width;
647
632
  color: $color-white;
648
- background-color: rgba($color-white-rgb, 0.1);
649
- }
633
+ border-color: rgba($color-white-rgb, 0.5);
634
+ border-width: 2px;
635
+ border-radius: 50%;
636
+ border-style: solid;
637
+ display: flex;
638
+ align-items: center;
639
+ justify-content: center;
640
+ transition:
641
+ background-color 0.3s ease,
642
+ transform 0.3s ease;
643
+
644
+ .breadcrumb:hover &,
645
+ .breadcrumb:focus & {
646
+ transform: scale(1.1);
647
+ border-color: $color-white;
648
+ color: $color-white;
649
+ background-color: rgba($color-white-rgb, 0.1);
650
+ }
650
651
 
651
- .educationVariant &,
652
- .adminVariant & {
653
- color: $color-blue-500;
654
- border-color: $color-blue-300;
655
- border-width: $border-width;
656
- }
652
+ .educationVariant &,
653
+ .adminVariant & {
654
+ color: $color-blue-500;
655
+ border-color: $color-blue-300;
656
+ border-width: $border-width;
657
+ }
657
658
 
658
- .educationVariant .breadcrumb:hover &,
659
- .educationVariant .breadcrumb:focus &,
660
- .adminVariant .breadcrumb:hover &,
661
- .adminVariant .breadcrumb:focus & {
662
- border-color: $color-blue-500;
663
- color: $color-blue-500;
664
- background-color: rgba($color-blue-500-rgb, 0.1);
659
+ .educationVariant .breadcrumb:hover &,
660
+ .educationVariant .breadcrumb:focus &,
661
+ .adminVariant .breadcrumb:hover &,
662
+ .adminVariant .breadcrumb:focus & {
663
+ border-color: $color-blue-500;
664
+ color: $color-blue-500;
665
+ background-color: rgba($color-blue-500-rgb, 0.1);
666
+ }
665
667
  }
668
+ /* stylelint-enable no-descending-specificity */
666
669
  }
667
670
 
668
671
  @keyframes slide-fade {
@@ -700,4 +703,3 @@ $tab-container-height-medium-and-small-collapsed: 0;
700
703
  transform: translateX(0);
701
704
  }
702
705
  }
703
- /* stylelint-enable no-descending-specificity */