novo-elements 13.2.0-next.13 → 13.2.0-next.15

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 (46) hide show
  1. package/elements/agenda/week/AgendaWeekView.scss +1 -1
  2. package/elements/button/styles/button.scss +1 -1
  3. package/elements/card/Card.scss +1 -1
  4. package/elements/chips/Chip.scss +44 -0
  5. package/elements/chips/Chips.scss +9 -0
  6. package/elements/common/typography/text.mixins.scss +1 -1
  7. package/elements/date-picker/DatePickerInput.scss +5 -0
  8. package/elements/field/field.scss +1 -1
  9. package/elements/form/Form.scss +162 -12
  10. package/elements/form/extras/address/Address.scss +77 -0
  11. package/elements/form/fieldset-header.scss +2 -5
  12. package/elements/header/Header.scss +1 -1
  13. package/elements/picker/Picker.scss +26 -5
  14. package/elements/picker/extras/picker-results/PickerResults.scss +2 -1
  15. package/elements/select/Select.scss +0 -1
  16. package/elements/tabs/tab.scss +36 -0
  17. package/elements/time-picker/TimePickerInput.scss +7 -2
  18. package/elements/toolbar/toolbar.component.scss +1 -1
  19. package/fesm2022/novo-elements-elements-agenda.mjs +2 -2
  20. package/fesm2022/novo-elements-elements-button.mjs +2 -2
  21. package/fesm2022/novo-elements-elements-card.mjs +2 -2
  22. package/fesm2022/novo-elements-elements-card.mjs.map +1 -1
  23. package/fesm2022/novo-elements-elements-chips.mjs +6 -6
  24. package/fesm2022/novo-elements-elements-chips.mjs.map +1 -1
  25. package/fesm2022/novo-elements-elements-common.mjs +4 -4
  26. package/fesm2022/novo-elements-elements-date-picker.mjs +2 -2
  27. package/fesm2022/novo-elements-elements-date-picker.mjs.map +1 -1
  28. package/fesm2022/novo-elements-elements-form.mjs +8 -8
  29. package/fesm2022/novo-elements-elements-form.mjs.map +1 -1
  30. package/fesm2022/novo-elements-elements-header.mjs +2 -2
  31. package/fesm2022/novo-elements-elements-header.mjs.map +1 -1
  32. package/fesm2022/novo-elements-elements-multi-picker.mjs +2 -2
  33. package/fesm2022/novo-elements-elements-multi-picker.mjs.map +1 -1
  34. package/fesm2022/novo-elements-elements-picker.mjs +6 -6
  35. package/fesm2022/novo-elements-elements-picker.mjs.map +1 -1
  36. package/fesm2022/novo-elements-elements-select.mjs +2 -2
  37. package/fesm2022/novo-elements-elements-select.mjs.map +1 -1
  38. package/fesm2022/novo-elements-elements-tabs.mjs +4 -4
  39. package/fesm2022/novo-elements-elements-tabs.mjs.map +1 -1
  40. package/fesm2022/novo-elements-elements-time-picker.mjs +2 -2
  41. package/fesm2022/novo-elements-elements-time-picker.mjs.map +1 -1
  42. package/fesm2022/novo-elements-elements-toolbar.mjs +2 -2
  43. package/fesm2022/novo-elements-elements-toolbar.mjs.map +1 -1
  44. package/package.json +1 -1
  45. package/styles/themes/bh2026.scss +2 -2
  46. package/styles/typography.scss +6 -0
@@ -59,7 +59,7 @@
59
59
  text-overflow: ellipsis;
60
60
  }
61
61
  .cal-event-description {
62
- font-size: var(--font-size-xs);
62
+ font-size: var(--font-size-sm);
63
63
  line-height: 13px;
64
64
  padding: 0px 0px 0px 10px;
65
65
  overflow: hidden;
@@ -42,7 +42,7 @@
42
42
 
43
43
  &[size="small"],
44
44
  &[size="sm"] {
45
- font-size: var(--font-size-xs);
45
+ font-size: var(--font-size-sm);
46
46
  padding: 0 var(--spacing-md);
47
47
  height: 2.4rem;
48
48
  gap: var(--spacing-sm);
@@ -124,7 +124,7 @@
124
124
  :host-context([data-theme='bh2026']) {
125
125
  border-radius: var(--border-radius-md);
126
126
  border: 1px solid var(--color-border-default);
127
- box-shadow: 0 1px 2px var(--color-transparency-black-10);
127
+ box-shadow: 0 1px 2px var(--color-transparency-charcoal-08);
128
128
 
129
129
  div.card-loading-container {
130
130
  border-radius: var(--border-radius-md);
@@ -187,3 +187,47 @@ $chip-spacing: (
187
187
  }
188
188
  }
189
189
  }
190
+
191
+ :root[data-theme='bh2026'] {
192
+ .novo-chip {
193
+ background: var(--chip-color-background-default-default);
194
+ border: var(--chip-border-width) solid var(--chip-color-border-default-default);
195
+ border-radius: var(--chip-border-radius);
196
+ color: var(--chip-color-content-default);
197
+ gap: var(--chip-spacing-md-gap);
198
+ padding: var(--chip-spacing-md-padding-vertical) var(--chip-spacing-md-padding-horizontal);
199
+ max-height: var(--chip-spacing-md-max-height);
200
+ font-size: var(--typography-meta-default-font-size);
201
+ font-weight: var(--typography-meta-default-font-weight);
202
+ line-height: var(--typography-meta-default-line-height);
203
+
204
+ &:hover:not(.novo-chip-disabled) {
205
+ background: var(--chip-color-background-default-hover);
206
+ border-color: var(--chip-color-border-default-hover);
207
+ color: var(--chip-color-content-hover);
208
+ }
209
+
210
+ &.novo-chip-selectable:focus {
211
+ outline: none;
212
+ background: var(--chip-color-background-default-focus);
213
+ border-width: var(--chip-border-focus-width);
214
+ border-color: var(--chip-color-border-default-focus);
215
+ color: var(--chip-color-content-focus);
216
+ &::after {
217
+ opacity: 0;
218
+ }
219
+ }
220
+
221
+ &.novo-chip-disabled {
222
+ background: var(--chip-color-background-default-disabled);
223
+ border-color: var(--chip-color-border-default-disabled);
224
+ color: var(--chip-color-content-disabled);
225
+ opacity: 1;
226
+ }
227
+
228
+ .novo-chip-remove,
229
+ .novo-chip-trailing-icon {
230
+ color: inherit;
231
+ }
232
+ }
233
+ }
@@ -68,6 +68,11 @@
68
68
  cursor: pointer;
69
69
  display: flex;
70
70
  align-items: center;
71
+
72
+ [data-theme='bh2026'] & {
73
+ bottom: -27px;
74
+ }
75
+
71
76
  i {
72
77
  font-size: 0.7rem;
73
78
  padding-bottom: 2px;
@@ -80,6 +85,10 @@
80
85
  right: 0;
81
86
  font-size: 1.1em;
82
87
  color: var(--font-color-base);
88
+
89
+ [data-theme='bh2026'] & {
90
+ bottom: 4px;
91
+ }
83
92
  }
84
93
 
85
94
  & + i {
@@ -156,7 +156,7 @@
156
156
  @mixin novo-label-text() {
157
157
  font-weight: 500;
158
158
  // text-transform: uppercase;
159
- word-break: word-break;
159
+ word-break: break-word;
160
160
  overflow-wrap: break-word;
161
161
  line-height: 1.375;
162
162
  color: var(--text-muted);
@@ -42,5 +42,10 @@
42
42
  top: 0px;
43
43
  font-size: var(--font-size-sm);
44
44
  cursor: pointer;
45
+
46
+ [data-theme='bh2026'] & {
47
+ font-size: var(--typography-body-lg-font-size);
48
+ line-height: normal;
49
+ }
45
50
  }
46
51
  }
@@ -109,7 +109,7 @@
109
109
  }
110
110
  }
111
111
 
112
- // bh2026: uppercase label + tighter value typography per Figma "Value - Finalized" spec
112
+ // bh2026: uppercase label + tighter value typography
113
113
  :host-context([data-theme='bh2026']) {
114
114
  .novo-field-label {
115
115
  text-transform: var(--typography-input-label-sm-text-transform);
@@ -801,7 +801,7 @@ control-prompt-modal {
801
801
 
802
802
  .novo-form-control-label {
803
803
  font-weight: 500;
804
- word-break: word-break;
804
+ word-break: break-word;
805
805
  overflow-wrap: break-word;
806
806
  line-height: 1.375;
807
807
  color: var(--text-muted);
@@ -820,24 +820,31 @@ control-prompt-modal {
820
820
  }
821
821
  }
822
822
 
823
- // bh2026: uppercase label + tighter value typography per Figma "Value - Finalized" spec
823
+ // Control types that should not receive the bh2026 bordered-input treatment
824
+ $bh2026-borderless-types: ('quick-note', 'checkbox', 'checklist', 'editor', 'tiles', 'switch', 'file', 'address');
825
+ $bh2026-not-borderless: '';
826
+ @each $type in $bh2026-borderless-types {
827
+ $bh2026-not-borderless: $bh2026-not-borderless + ':not(.#{$type})';
828
+ }
829
+
830
+ // bh2026: uppercase label + tighter value typography
824
831
  // ViewEncapsulation.None: use plain selectors (not :host-context which is Shadow DOM only)
825
832
  :root[data-theme='bh2026'] {
826
833
  label.novo-control-label {
827
834
  &.novo-control-filled,
828
835
  &.novo-control-focused,
829
836
  &.novo-control-always-active {
830
- font-weight: var(--typography-input-label-sm-font-weight) !important;
831
- font-size: var(--typography-input-label-sm-font-size) !important;
832
- letter-spacing: var(--typography-input-label-sm-letter-spacing);
837
+ font-weight: var(--typography-input-label-md-font-weight) !important;
838
+ font-size: var(--typography-input-label-md-font-size) !important;
839
+ letter-spacing: var(--typography-input-label-md-letter-spacing);
833
840
  text-transform: var(--typography-input-label-sm-text-transform);
834
841
  color: var(--color-text-body) !important;
835
842
  }
836
843
  }
837
844
  .novo-form-control-label {
838
- font-weight: var(--typography-input-label-sm-font-weight) !important;
839
- font-size: var(--typography-input-label-sm-font-size) !important;
840
- letter-spacing: var(--typography-input-label-sm-letter-spacing);
845
+ font-weight: var(--typography-input-label-md-font-weight) !important;
846
+ font-size: var(--typography-input-label-md-font-size) !important;
847
+ letter-spacing: var(--typography-input-label-md-letter-spacing);
841
848
  text-transform: var(--typography-input-label-sm-text-transform);
842
849
  color: var(--color-text-body) !important;
843
850
  margin-right: var(--spacing-gap-lg);
@@ -868,17 +875,159 @@ control-prompt-modal {
868
875
  }
869
876
  }
870
877
 
878
+ // Bordered input container (excludes $bh2026-borderless-types)
879
+ .novo-control-input#{$bh2026-not-borderless} {
880
+ border: var(--field-border-width-default) solid var(--field-color-border-default);
881
+ border-radius: var(--field-border-radius-default);
882
+ background: var(--field-color-background-default);
883
+ padding: var(--field-spacing-padding-vertical) var(--field-spacing-padding-horizontal);
884
+ min-height: 4rem;
885
+ box-sizing: border-box;
886
+
887
+ &:hover {
888
+ border-color: var(--field-color-border-hover);
889
+ }
890
+ &:focus-within {
891
+ border-width: var(--field-border-width-focus);
892
+ border-color: var(--field-color-border-focus);
893
+ }
894
+
895
+ // Container owns the border; suppress inner element bottom-borders
896
+ input,
897
+ textarea,
898
+ novo-chips,
899
+ novo-select > .novo-select-trigger {
900
+ border: none !important;
901
+ &:hover,
902
+ &:focus {
903
+ border: none !important;
904
+ }
905
+ }
906
+ div[type="button"] {
907
+ border-bottom: none !important;
908
+ }
909
+
910
+ // Correction for search icon in chips pickers
911
+ novo-chips.with-value > i {
912
+ bottom: 8px;
913
+ }
914
+ }
915
+
916
+ .novo-select-list.active {
917
+ margin-block: 1.4rem !important; // results in 2px difference between border and overlay
918
+ }
919
+
920
+ // Suppress input-level error border-bottom (container handles it)
921
+ input.ng-touched.ng-invalid:not(.ng-pristine):not(.novo-control-container),
922
+ novo-picker.ng-touched.ng-invalid:not(.ng-pristine) input,
923
+ textarea.ng-touched.ng-invalid:not(.ng-pristine):not(.ng-valid) {
924
+ border-bottom: none !important;
925
+ }
926
+
927
+ // Error: move negative border to container
928
+ div.novo-control-input#{$bh2026-not-borderless}:has(input.ng-touched.ng-invalid:not(.ng-pristine)),
929
+ div.novo-control-input#{$bh2026-not-borderless}:has(textarea.ng-touched.ng-invalid:not(.ng-pristine):not(.ng-valid)) {
930
+ border-width: var(--field-border-width-negative);
931
+ border-color: var(--field-color-border-negative);
932
+ &:hover {
933
+ border-color: var(--field-color-border-negative);
934
+ }
935
+ }
936
+
937
+ // Disabled container
938
+ novo-control.disabled .novo-control-input#{$bh2026-not-borderless},
939
+ novo-custom-control-container.disabled .novo-control-input#{$bh2026-not-borderless} {
940
+ border-color: var(--field-color-border-disabled);
941
+ border-style: dashed;
942
+ background: var(--field-color-background-disabled);
943
+
944
+ input,
945
+ textarea {
946
+ border: none !important;
947
+ }
948
+ div[type="button"] {
949
+ border-bottom: none !important;
950
+ }
951
+ }
952
+
953
+ // Suppress all address input borders when in bh2026
954
+ novo-form,
955
+ novo-dynamic-form {
956
+ .novo-form-container form {
957
+ div.novo-form-row,
958
+ div.novo-control-group-control,
959
+ td.novo-form-row {
960
+ novo-control,
961
+ novo-custom-control-container {
962
+ > div.novo-control-container > div.novo-control-outer-container .novo-control-inner-container .novo-control-inner-input-container > div.novo-control-input.address {
963
+ input {
964
+ border: none !important;
965
+ border-bottom: none !important;
966
+ }
967
+ }
968
+ }
969
+ }
970
+ }
971
+ }
972
+
973
+ // Pickers show up with a 2px space between them and the active control
974
+ checklist-picker-results,
975
+ distribution-list-picker-results,
976
+ entity-picker-results,
977
+ grouped-multi-picker-results,
978
+ mixed-multi-picker-results,
979
+ novo-date-picker,
980
+ novo-date-time-picker,
981
+ novo-time-picker,
982
+ picker-results,
983
+ skill-specialty-picker-results {
984
+ margin-block: var(--spacing-12) !important;
985
+ }
986
+
987
+ // Picker overlay styling within forms
988
+ picker-results,
989
+ entity-picker-results {
990
+ border: 1px solid var(--color-border-default);
991
+ background: var(--background-bright);
992
+
993
+ .novo-list,
994
+ novo-list,
995
+ ul {
996
+ border: none;
997
+ box-shadow: none;
998
+ }
999
+
1000
+ picker-error,
1001
+ picker-loader,
1002
+ picker-null-recent-results,
1003
+ picker-null-results,
1004
+ .picker-error,
1005
+ .picker-loader,
1006
+ .picker-null-recent-results,
1007
+ .picker-null-results {
1008
+ border: none;
1009
+ box-shadow: none;
1010
+ padding: var(--spacing-padding-md) var(--spacing-padding-lg);
1011
+ }
1012
+
1013
+ > p {
1014
+ margin: 0;
1015
+ padding: var(--spacing-padding-md) var(--spacing-padding-lg);
1016
+ }
1017
+ }
1018
+
1019
+ // Card styling of fieldsets
871
1020
  .novo-fieldset-container.card-section,
872
1021
  novo-form .novo-form-container.card-section {
873
1022
  border-radius: var(--border-radius-md);
874
1023
  border: 1px solid var(--color-border-default);
875
- box-shadow: 0 4px 8px 0 var(--color-transparency-charcoal-charcoal-08);
1024
+ box-shadow: var(--shadow-2);
876
1025
  background: var(--color-background-default);
877
1026
  padding-bottom: var(--spacing-padding-md);
878
1027
  overflow: hidden;
879
1028
  display: flex;
880
1029
  flex-direction: column;
881
- gap: var(--spacing-gap-md);
1030
+ gap: 0;
882
1031
 
883
1032
  .novo-form-row {
884
1033
  padding-left: var(--spacing-padding-lg);
@@ -895,10 +1044,11 @@ control-prompt-modal {
895
1044
  padding-top: 0;
896
1045
  padding-left: 0;
897
1046
  padding-right: 0;
1047
+ margin-top: var(--spacing-margin);
898
1048
  margin-bottom: 0;
899
1049
 
900
1050
  &:not(:has(> novo-fieldset-header)) {
901
- padding-top: var(--spacing-padding-md);
1051
+ padding-top: var(--spacing-padding-lg);
902
1052
  }
903
1053
  }
904
1054
 
@@ -917,7 +1067,7 @@ control-prompt-modal {
917
1067
  .novo-form-container form {
918
1068
  display: flex;
919
1069
  flex-direction: column;
920
- gap: var(--spacing-gutter);
1070
+ gap: 0;
921
1071
 
922
1072
  novo-fieldset {
923
1073
  margin-top: 0;
@@ -148,3 +148,80 @@
148
148
  }
149
149
  }
150
150
  }
151
+
152
+ :host-context([data-theme='bh2026']) {
153
+ gap: var(--field-spacing-gap);
154
+
155
+ // Take out the space that the overlay template takes up between the fields
156
+ novo-overlay-template {
157
+ display: none;
158
+ }
159
+
160
+ // Each sub-field gets its own bordered input treatment
161
+ .street-address,
162
+ .apt,
163
+ .city,
164
+ .state,
165
+ .zip,
166
+ .country-name {
167
+ border: var(--field-border-width-default) solid var(--field-color-border-default);
168
+ border-radius: var(--field-border-radius-default);
169
+ background: var(--field-color-background-default);
170
+ padding: var(--field-spacing-padding-vertical) var(--field-spacing-padding-horizontal) !important;
171
+ min-height: 4rem;
172
+ box-sizing: border-box;
173
+ gap: var(--field-spacing-gap);
174
+
175
+ &:hover {
176
+ border-color: var(--field-color-border-hover);
177
+ }
178
+ &:focus-within {
179
+ border-width: var(--field-border-width-focus);
180
+ border-color: var(--field-color-border-focus);
181
+ }
182
+
183
+ input,
184
+ novo-picker > ::ng-deep input {
185
+ border: none !important;
186
+ border-bottom: none !important;
187
+ &:hover,
188
+ &:focus {
189
+ border: none !important;
190
+ border-bottom: none !important;
191
+ }
192
+ }
193
+ div[type="button"] {
194
+ border-bottom: none !important;
195
+ padding: 0 !important;
196
+ }
197
+
198
+ &.disabled {
199
+ border-color: var(--field-color-border-disabled);
200
+ border-style: dashed;
201
+ background: var(--field-color-background-disabled);
202
+ }
203
+
204
+ &.invalid {
205
+ border-color: var(--field-color-border-negative);
206
+ }
207
+
208
+ i {
209
+ border-bottom: none !important;
210
+
211
+ &.required-indicator.bhi-circle {
212
+ line-height: 1rem;
213
+ }
214
+ &.required-indicator.bhi-check {
215
+ line-height: 1.8rem;
216
+ }
217
+ }
218
+ }
219
+
220
+ // address1 full width on its own row; address2 full width on the row below
221
+ .street-address {
222
+ flex: 0 0 100%;
223
+ }
224
+ .apt {
225
+ flex: 0 0 100%;
226
+ }
227
+ }
@@ -17,11 +17,8 @@
17
17
  }
18
18
 
19
19
  :host-context([data-theme='bh2026'] .card-section) {
20
- margin-top: 0;
21
- margin-bottom: 0;
22
- margin-left: 0;
23
- margin-right: 0;
24
- padding: var(--spacing-padding-md) var(--spacing-padding-lg);
20
+ padding: var(--card-spacing-header-padding-vertical) var(--card-spacing-header-padding-horizontal);
21
+ margin: 0 0 var(--card-spacing-header-padding-vertical);
25
22
  background: var(--background-bright);
26
23
  border-bottom: 1px solid var(--color-border-default);
27
24
  align-items: center;
@@ -170,7 +170,7 @@
170
170
  &[class*='novo-accent-'] {
171
171
  background: var(--header-background, var(--color-transparency-white-90));
172
172
  backdrop-filter: blur(12px);
173
- box-shadow: 0 1px 2px var(--color-transparency-black-10);
173
+ box-shadow: 0 1px 2px var(--color-transparency-charcoal-08);
174
174
  padding-top: var(--spacing-md);
175
175
  padding-left: var(--spacing-lg);
176
176
  padding-right: var(--spacing-lg);
@@ -6,16 +6,17 @@ novo-picker {
6
6
  align-items: center;
7
7
  flex-wrap: wrap;
8
8
  justify-content: flex-start;
9
- padding-bottom: 5px;
9
+ padding-bottom: 0;
10
10
  transition: all 200ms ease-in-out;
11
11
  position: relative;
12
+
12
13
  &.selected,
13
14
  &.selected:hover {
14
15
  & + i {
15
16
  color: var(--color-positive);
16
17
  }
17
18
  }
18
- padding-bottom: 0;
19
+
19
20
  &.ng-touched.ng-invalid:not(.ng-pristine) {
20
21
  > input,
21
22
  > input:hover,
@@ -23,6 +24,7 @@ novo-picker {
23
24
  border-bottom-color: transparent !important;
24
25
  }
25
26
  }
27
+
26
28
  input {
27
29
  font-size: 1em;
28
30
  background: transparent !important;
@@ -38,26 +40,33 @@ novo-picker {
38
40
  box-sizing: content-box;
39
41
  transition: all 300ms;
40
42
  color: #26282b;
43
+
41
44
  &:hover {
42
45
  border-bottom: 1px solid brightenLive('--color-dark', 15);
43
46
  }
47
+
44
48
  &:focus {
45
49
  border-bottom: 1px solid var(--color-positive);
46
50
  }
51
+
47
52
  &:invalid {
48
53
  border-bottom: 1px solid #da4453;
49
54
  }
55
+
50
56
  &.entity-picker {
51
57
  padding-left: 2em;
52
58
  }
59
+
53
60
  &.entity-selected {
54
61
  padding-left: 2.5em;
55
62
  background: var(--background-main) !important;
56
63
  }
64
+
57
65
  &:disabled {
58
66
  border-bottom: 1px dashed brightenLive('--color-dark', 45) !important;
59
67
  }
60
68
  }
69
+
61
70
  i.bhi-more {
62
71
  position: absolute;
63
72
  left: 0;
@@ -67,6 +76,7 @@ novo-picker {
67
76
  border-radius: var(--border-radius-sm, 3px);
68
77
  padding: 3px;
69
78
  }
79
+
70
80
  i.entity-icon {
71
81
  position: absolute;
72
82
  left: 5px;
@@ -76,28 +86,39 @@ novo-picker {
76
86
  padding: 3px;
77
87
  color: $white;
78
88
 
79
- @include theme-colors() using ($name, $color, $contrast, $tint, $shade, $pale) {
89
+ @include theme-colors() using($name, $color, $contrast, $tint, $shade, $pale) {
80
90
  &.#{$name} {
81
91
  background: getCssVarname($name);
82
92
  }
83
93
  }
84
94
  }
95
+
85
96
  i.bhi-search,
86
97
  i.bhi-times {
87
98
  position: absolute;
88
99
  right: 0;
89
100
  color: var(--font-color-base);
101
+
90
102
  &.entity-selected {
91
103
  right: 5px;
92
104
  }
93
105
  }
106
+
94
107
  i.bhi-search {
95
- top: 0px;
108
+ top: 0;
96
109
  font-size: var(--font-size-sm);
97
110
  }
111
+
98
112
  i.bhi-times {
99
- top: 0px;
113
+ top: 0;
100
114
  cursor: pointer;
101
115
  font-size: var(--font-size-sm);
102
116
  }
117
+
118
+ [data-theme='bh2026'] & {
119
+ i {
120
+ font-size: var(--typography-body-lg-font-size);
121
+ line-height: normal;
122
+ }
123
+ }
103
124
  }
@@ -309,7 +309,8 @@ distribution-list-picker-results {
309
309
  // not on children (where overflow:hidden + border-radius clips the corners)
310
310
  :root[data-theme='bh2026'] {
311
311
  picker-results,
312
- entity-picker-results {
312
+ entity-picker-results,
313
+ skill-specialty-picker-results {
313
314
  border: 1px solid var(--color-border-default);
314
315
  margin-block: var(--spacing-gap-sm);
315
316
  background: var(--background-bright);
@@ -84,7 +84,6 @@
84
84
  z-index: z(overlay);
85
85
  max-height: 219px;
86
86
  min-width: 200px;
87
- width: 100%;
88
87
  max-width: 800px;
89
88
  width: inherit;
90
89
  overflow: auto;
@@ -179,6 +179,7 @@
179
179
  .indicator {
180
180
  background: var(--tab-indicator-color, var(--color-border-utility-positive));
181
181
  border-radius: 999px 999px 0 0;
182
+ height: 2px;
182
183
  }
183
184
  }
184
185
 
@@ -192,6 +193,41 @@
192
193
 
193
194
  :host-context([data-theme='bh2026'] novo-nav[direction=vertical]) {
194
195
  margin-right: 0;
196
+
197
+ &.active,
198
+ &.router-link-active {
199
+ .indicator {
200
+ border-radius: 0 999px 999px 0;
201
+ }
202
+ }
203
+ }
204
+
205
+ :host-context([data-theme='bh2026'] novo-nav[theme="color"]) {
206
+ .novo-tab-link {
207
+ color: var(--color-text-subtle) !important;
208
+ text-transform: none;
209
+ font-weight: var(--typography-tabs-default-font-weight);
210
+ }
211
+
212
+ &.active,
213
+ &.router-link-active {
214
+ .novo-tab-link {
215
+ color: var(--color-text-body) !important;
216
+ font-weight: var(--typography-tabs-active-font-weight);
217
+ }
218
+
219
+ .indicator {
220
+ background: var(--tab-indicator-color, var(--color-border-utility-positive));
221
+ border-radius: 999px 999px 0 0;
222
+ height: 2px;
223
+ }
224
+ }
225
+
226
+ &:hover:not(.active):not(.router-link-active):not(.disabled) {
227
+ .novo-tab-link {
228
+ color: var(--color-text-body) !important;
229
+ }
230
+ }
195
231
  }
196
232
 
197
233
  :host-context(novo-nav[theme="color"]),
@@ -35,10 +35,15 @@
35
35
  > i.bhi-calendar {
36
36
  position: absolute;
37
37
  right: 0;
38
- top: 0px;
38
+ top: 0;
39
39
  font-size: var(--font-size-sm);
40
+
41
+ [data-theme='bh2026'] & {
42
+ font-size: var(--typography-body-lg-font-size);
43
+ line-height: normal;
44
+ }
40
45
  }
41
46
  > i.bhi-times {
42
47
  cursor: pointer;
43
48
  }
44
- }
49
+ }
@@ -67,7 +67,7 @@
67
67
  :root[data-theme='bh2026'] & {
68
68
  background: var(--color-transparency-white-90);
69
69
  backdrop-filter: blur(12px);
70
- box-shadow: 0 1px 2px var(--color-transparency-black-10);
70
+ box-shadow: 0 1px 2px var(--color-transparency-charcoal-08);
71
71
 
72
72
  .novo-toolbar-row {
73
73
  background: transparent;