@amsterdam/design-system-css 3.1.0 → 3.2.1

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 (112) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/accordion/accordion.css +1 -1
  3. package/dist/accordion/accordion.css.map +1 -1
  4. package/dist/blockquote/blockquote.css +1 -1
  5. package/dist/blockquote/blockquote.css.map +1 -1
  6. package/dist/breadcrumb/breadcrumb.css +1 -1
  7. package/dist/breadcrumb/breadcrumb.css.map +1 -1
  8. package/dist/button/button.css +1 -1
  9. package/dist/button/button.css.map +1 -1
  10. package/dist/date-input/date-input.css +1 -1
  11. package/dist/date-input/date-input.css.map +1 -1
  12. package/dist/description-list/description-list.css +1 -1
  13. package/dist/description-list/description-list.css.map +1 -1
  14. package/dist/dialog/dialog.css +1 -1
  15. package/dist/dialog/dialog.css.map +1 -1
  16. package/dist/document/document.css.map +1 -1
  17. package/dist/error-message/error-message.css +1 -1
  18. package/dist/error-message/error-message.css.map +1 -1
  19. package/dist/field-set/field-set.css +1 -1
  20. package/dist/field-set/field-set.css.map +1 -1
  21. package/dist/figure/figure.css +1 -1
  22. package/dist/figure/figure.css.map +1 -1
  23. package/dist/file-input/file-input.css +1 -1
  24. package/dist/file-input/file-input.css.map +1 -1
  25. package/dist/file-list/file-list.css +1 -1
  26. package/dist/file-list/file-list.css.map +1 -1
  27. package/dist/heading/heading.css +1 -1
  28. package/dist/heading/heading.css.map +1 -1
  29. package/dist/icon-button/icon-button.css +1 -1
  30. package/dist/icon-button/icon-button.css.map +1 -1
  31. package/dist/image-slider/image-slider.css +1 -1
  32. package/dist/image-slider/image-slider.css.map +1 -1
  33. package/dist/index.css +1 -1
  34. package/dist/index.css.map +1 -1
  35. package/dist/link-list/link-list.css +1 -1
  36. package/dist/link-list/link-list.css.map +1 -1
  37. package/dist/menu/menu.css +1 -1
  38. package/dist/menu/menu.css.map +1 -1
  39. package/dist/ordered-list/ordered-list.css +1 -1
  40. package/dist/ordered-list/ordered-list.css.map +1 -1
  41. package/dist/page-footer/page-footer.css +1 -1
  42. package/dist/page-footer/page-footer.css.map +1 -1
  43. package/dist/page-header/page-header.css +1 -1
  44. package/dist/page-header/page-header.css.map +1 -1
  45. package/dist/page-heading/page-heading.deprecated.css +1 -1
  46. package/dist/page-heading/page-heading.deprecated.css.map +1 -1
  47. package/dist/pagination/pagination.css +1 -1
  48. package/dist/pagination/pagination.css.map +1 -1
  49. package/dist/paragraph/paragraph.css +1 -1
  50. package/dist/paragraph/paragraph.css.map +1 -1
  51. package/dist/password-input/password-input.css +1 -1
  52. package/dist/password-input/password-input.css.map +1 -1
  53. package/dist/progress-list/progress-list.css +1 -1
  54. package/dist/progress-list/progress-list.css.map +1 -1
  55. package/dist/search-field/search-field.css +1 -1
  56. package/dist/search-field/search-field.css.map +1 -1
  57. package/dist/select/select.css +1 -1
  58. package/dist/select/select.css.map +1 -1
  59. package/dist/table-of-contents/table-of-contents.css +1 -1
  60. package/dist/table-of-contents/table-of-contents.css.map +1 -1
  61. package/dist/tabs/tabs.css +1 -1
  62. package/dist/tabs/tabs.css.map +1 -1
  63. package/dist/text-area/text-area.css +1 -1
  64. package/dist/text-area/text-area.css.map +1 -1
  65. package/dist/text-input/text-input.css +1 -1
  66. package/dist/text-input/text-input.css.map +1 -1
  67. package/dist/time-input/time-input.css +1 -1
  68. package/dist/time-input/time-input.css.map +1 -1
  69. package/dist/unordered-list/unordered-list.css +1 -1
  70. package/dist/unordered-list/unordered-list.css.map +1 -1
  71. package/documentation/coding-conventions.md +6 -3
  72. package/package.json +4 -4
  73. package/src/common/resets.scss +106 -0
  74. package/src/components/accordion/accordion.scss +3 -10
  75. package/src/components/aspect-ratio/README.md +10 -8
  76. package/src/components/blockquote/blockquote.scss +3 -6
  77. package/src/components/breadcrumb/breadcrumb.scss +3 -6
  78. package/src/components/button/button.scss +3 -8
  79. package/src/components/date-input/date-input.scss +18 -22
  80. package/src/components/description-list/README.md +1 -1
  81. package/src/components/description-list/description-list.scss +54 -23
  82. package/src/components/dialog/dialog.scss +5 -8
  83. package/src/components/document/document.scss +1 -4
  84. package/src/components/error-message/error-message.scss +3 -5
  85. package/src/components/field-set/field-set.scss +14 -34
  86. package/src/components/figure/figure.scss +3 -7
  87. package/src/components/file-input/file-input.scss +4 -2
  88. package/src/components/file-list/file-list.scss +3 -7
  89. package/src/components/heading/heading.scss +3 -5
  90. package/src/components/icon-button/icon-button.scss +3 -11
  91. package/src/components/image-slider/image-slider.scss +8 -9
  92. package/src/components/link-list/link-list.scss +3 -7
  93. package/src/components/logo/README.md +0 -2
  94. package/src/components/menu/menu.scss +3 -7
  95. package/src/components/ordered-list/ordered-list.scss +4 -8
  96. package/src/components/page-footer/page-footer.scss +3 -7
  97. package/src/components/page-header/README.md +2 -1
  98. package/src/components/page-header/page-header.scss +30 -38
  99. package/src/components/page-heading/page-heading.deprecated.scss +3 -5
  100. package/src/components/pagination/pagination.scss +3 -8
  101. package/src/components/paragraph/paragraph.scss +4 -6
  102. package/src/components/password-input/password-input.scss +5 -14
  103. package/src/components/progress-list/progress-list.scss +11 -16
  104. package/src/components/search-field/search-field.scss +5 -12
  105. package/src/components/select/select.scss +3 -6
  106. package/src/components/spotlight/README.md +7 -3
  107. package/src/components/table-of-contents/table-of-contents.scss +3 -7
  108. package/src/components/tabs/tabs.scss +4 -11
  109. package/src/components/text-area/text-area.scss +5 -14
  110. package/src/components/text-input/text-input.scss +5 -14
  111. package/src/components/time-input/time-input.scss +17 -19
  112. package/src/components/unordered-list/unordered-list.scss +3 -7
@@ -4,13 +4,12 @@
4
4
  */
5
5
 
6
6
  @use "../../common/hyphenation" as *;
7
+ @use "../../common/resets" as *;
7
8
  @use "../../common/text-rendering" as *;
8
9
 
9
- @mixin reset-hx {
10
- margin-block: 0;
11
- }
12
-
13
10
  .ams-heading {
11
+ @include reset-hx;
12
+
14
13
  box-sizing: border-box;
15
14
 
16
15
  /*
@@ -33,7 +32,6 @@
33
32
 
34
33
  @include hyphenation;
35
34
  @include text-rendering;
36
- @include reset-hx;
37
35
  }
38
36
 
39
37
  .ams-heading--1 {
@@ -3,17 +3,11 @@
3
3
  * Copyright Gemeente Amsterdam
4
4
  */
5
5
 
6
- @mixin reset-button {
7
- border: none;
8
- margin-block: 0; // [1]
9
- margin-inline: 0; // [1]
10
- padding-block: 0;
11
- padding-inline: 0;
12
-
13
- // [1] Remove the margin in older Safari.
14
- }
6
+ @use "../../common/resets" as *;
15
7
 
16
8
  .ams-icon-button {
9
+ @include reset-button;
10
+
17
11
  background-color: transparent;
18
12
  color: var(--ams-icon-button-color);
19
13
  cursor: var(--ams-icon-button-cursor);
@@ -21,8 +15,6 @@
21
15
  outline-offset: var(--ams-icon-button-outline-offset);
22
16
  touch-action: manipulation;
23
17
 
24
- @include reset-button;
25
-
26
18
  &:hover {
27
19
  background-color: var(--ams-icon-button-hover-background-color);
28
20
  color: var(--ams-icon-button-hover-color);
@@ -4,13 +4,14 @@
4
4
  */
5
5
 
6
6
  @use "../../common/breakpoint" as *;
7
+ @use "../../common/resets" as *;
7
8
 
8
9
  .ams-image-slider {
9
10
  display: grid;
10
11
  gap: var(--ams-image-slider-gap);
11
12
  }
12
13
 
13
- .ams-image-slider__item {
14
+ .ams-image-slider__slide {
14
15
  scroll-snap-align: center;
15
16
  scroll-snap-stop: always;
16
17
  }
@@ -72,13 +73,9 @@
72
73
  grid-template-columns: repeat(5, 1fr);
73
74
  }
74
75
 
75
- @mixin reset-button {
76
- border: none;
77
- padding-block: 0;
78
- padding-inline: 0;
79
- }
80
-
81
76
  .ams-image-slider__thumbnail {
77
+ @include reset-button;
78
+
82
79
  aspect-ratio: var(--ams-image-aspect-ratio); // Use the same default aspect ratio as the Image component
83
80
  background-color: var(--ams-image-slider-thumbnails-thumbnail-background-color);
84
81
  background-position: center;
@@ -87,8 +84,6 @@
87
84
  opacity: var(--ams-image-slider-thumbnails-thumbnail-opacity);
88
85
  outline-offset: var(--ams-button-outline-offset);
89
86
 
90
- @include reset-button;
91
-
92
87
  &:hover {
93
88
  opacity: var(--ams-image-slider-thumbnails-thumbnail-hover-opacity);
94
89
  }
@@ -97,3 +92,7 @@
97
92
  .ams-image-slider__thumbnail--in-view {
98
93
  opacity: var(--ams-image-slider-thumbnails-thumbnail-in-view-opacity);
99
94
  }
95
+
96
+ .ams-image-slider__figure {
97
+ margin-block-end: var(--ams-image-slider-figure-margin-block-end);
98
+ }
@@ -4,22 +4,18 @@
4
4
  */
5
5
 
6
6
  @use "../../common/hyphenation" as *;
7
+ @use "../../common/resets" as *;
7
8
  @use "../../common/text-rendering" as *;
8
9
 
9
- @mixin reset-ul {
10
- list-style: none;
11
- margin-block: 0;
12
- padding-inline-start: 0;
13
- }
14
-
15
10
  .ams-link-list {
11
+ @include reset-ul;
12
+
16
13
  box-sizing: border-box;
17
14
  display: grid;
18
15
  gap: var(--ams-link-list-gap);
19
16
 
20
17
  @include hyphenation;
21
18
  @include text-rendering;
22
- @include reset-ul;
23
19
  }
24
20
 
25
21
  .ams-link-list__link {
@@ -11,8 +11,6 @@ The design system provides the correct logo for online use.
11
11
  Other logo variations exist, but they cannot be used on our websites.
12
12
  The Dutch logo is for websites in the Dutch language and any language other than English.
13
13
  The English logo is used for websites in the English language.
14
- (We will add this logo to the design system later.)
15
- In the meantime, you can download an image of this logo from [Stijlweb](https://amsterdam.nl/stijlweb/basiselementen/logo-gemeente-amsterdam/#hba498e5c-2388-464f-b769-7622a5d32bd1).
16
14
 
17
15
  ## Exception
18
16
 
@@ -5,14 +5,9 @@
5
5
 
6
6
  @use "../../common/breakpoint" as *;
7
7
  @use "../../common/hyphenation" as *;
8
+ @use "../../common/resets" as *;
8
9
  @use "../../common/text-rendering" as *;
9
10
 
10
- @mixin reset-ul {
11
- list-style: none;
12
- margin-block: 0;
13
- padding-inline-start: 0;
14
- }
15
-
16
11
  .ams-menu {
17
12
  background-color: var(--ams-menu-background-color);
18
13
  font-family: var(--ams-menu-font-family);
@@ -51,11 +46,12 @@
51
46
  }
52
47
 
53
48
  .ams-menu__list {
49
+ @include reset-ul;
50
+
54
51
  display: grid;
55
52
 
56
53
  @include hyphenation;
57
54
  @include text-rendering;
58
- @include reset-ul;
59
55
 
60
56
  @media screen and (min-width: $ams-breakpoint-wide) {
61
57
  gap: var(--ams-menu-list-gap);
@@ -4,22 +4,18 @@
4
4
  */
5
5
 
6
6
  @use "../../common/hyphenation" as *;
7
+ @use "../../common/resets" as *;
7
8
  @use "../../common/text-rendering" as *;
8
9
 
9
- @mixin reset-ol {
10
- list-style-type: none;
11
- margin-block: 0;
12
- padding-inline-start: 0;
13
- }
14
-
15
10
  .ams-ordered-list {
11
+ @include reset-ol;
12
+
16
13
  box-sizing: border-box;
17
14
  display: grid;
18
15
  gap: var(--ams-ordered-list-gap);
19
16
 
20
- @include text-rendering;
21
17
  @include hyphenation;
22
- @include reset-ol;
18
+ @include text-rendering;
23
19
  }
24
20
 
25
21
  .ams-ordered-list:not(.ams-ordered-list--no-markers) {
@@ -5,18 +5,16 @@
5
5
 
6
6
  @use "../../common/breakpoint" as *;
7
7
  @use "../../common/hyphenation" as *;
8
+ @use "../../common/resets" as *;
8
9
  @use "../../common/text-rendering" as *;
9
10
 
10
- @mixin reset-ul {
11
- list-style: none;
12
- margin-block: 0;
13
- }
14
-
15
11
  .ams-page-footer__spotlight {
16
12
  background-color: var(--ams-page-footer-spotlight-background-color);
17
13
  }
18
14
 
19
15
  .ams-page-footer__menu {
16
+ @include reset-ul;
17
+
20
18
  column-gap: var(--ams-page-footer-menu-column-gap);
21
19
  display: flex;
22
20
  flex-wrap: wrap;
@@ -24,8 +22,6 @@
24
22
  padding-inline: var(--ams-page-footer-menu-padding-inline);
25
23
  row-gap: var(--ams-page-footer-menu-row-gap);
26
24
 
27
- @include reset-ul;
28
-
29
25
  @media screen and (min-width: $ams-breakpoint-medium) {
30
26
  padding-inline: var(--ams-page-footer-menu-medium-padding-inline);
31
27
  }
@@ -19,7 +19,8 @@ Includes the name of the website if it is not the general one.
19
19
  - On narrow windows, links can move from the inline menu to the collapsible one.
20
20
  - Labels should be short to help the inline menu fit on a single line whenever possible.
21
21
  - An icon can be added to the end of a link to make its destination easier to guess.
22
- - For websites with a brand name that feature the standard Amsterdam logo, only the emblem is shown on narrow screens.
22
+ - For websites with a brand name that feature the standard Amsterdam logo, only the emblem is shown in narrow windows.
23
+ - An abbreviated brand name can be shown in narrow or medium-wide windows if the full name does not fit.
23
24
  - If the collapsible menu contains [Headings](https://designsystem.amsterdam/?path=/docs/components-text-heading--docs), give them level 2 and a size of ‘level-3’.
24
25
  - There’s no need to add whitespace to the Grid in the collapsible menu.
25
26
  Its container already does this.
@@ -4,6 +4,7 @@
4
4
  */
5
5
 
6
6
  @use "../../common/breakpoint" as *;
7
+ @use "../../common/resets" as *;
7
8
  @use "../../common/text-rendering" as *;
8
9
 
9
10
  .ams-page-header {
@@ -64,7 +65,8 @@
64
65
  }
65
66
  }
66
67
 
67
- .ams-page-header__brand-name {
68
+ .ams-page-header__brand-name,
69
+ .ams-page-header__brand-name-short {
68
70
  color: var(--ams-page-header-brand-name-color);
69
71
  font-size: var(--ams-page-header-brand-name-font-size);
70
72
  font-weight: var(--ams-page-header-brand-name-font-weight);
@@ -78,6 +80,20 @@
78
80
  text-wrap: var(--ams-page-header-brand-name-text-wrap);
79
81
  }
80
82
 
83
+ .ams-page-header__brand-name-short {
84
+ @media screen and (min-width: $ams-breakpoint-wide) {
85
+ display: none;
86
+ }
87
+
88
+ & + .ams-page-header__brand-name {
89
+ display: none;
90
+
91
+ @media screen and (min-width: $ams-breakpoint-wide) {
92
+ display: initial;
93
+ }
94
+ }
95
+ }
96
+
81
97
  .ams-page-header__navigation {
82
98
  column-gap: var(--ams-page-header-navigation-column-gap);
83
99
  display: flex;
@@ -89,13 +105,9 @@
89
105
  row-gap: var(--ams-page-header-navigation-row-gap);
90
106
  }
91
107
 
92
- @mixin reset-list {
93
- list-style: none;
94
- margin-block: 0;
95
- padding-inline-start: 0;
96
- }
97
-
98
108
  .ams-page-header__menu {
109
+ @include reset-ul;
110
+
99
111
  align-items: center;
100
112
  column-gap: var(--ams-page-header-menu-column-gap);
101
113
  display: flex;
@@ -104,8 +116,6 @@
104
116
  margin-inline-start: auto;
105
117
  pointer-events: auto; // Set pointer events back to auto to allow the menu to be activated
106
118
  row-gap: var(--ams-page-header-menu-row-gap);
107
-
108
- @include reset-list;
109
119
  }
110
120
 
111
121
  // Do not show menu items below the wide breakpoint...
@@ -121,7 +131,6 @@
121
131
  }
122
132
 
123
133
  @mixin page-header-menu-action {
124
- color: var(--ams-page-header-menu-item-color);
125
134
  font-size: var(--ams-page-header-menu-item-font-size);
126
135
  font-weight: var(--ams-page-header-menu-item-font-weight);
127
136
  line-height: var(--ams-page-header-menu-item-line-height);
@@ -138,6 +147,7 @@
138
147
  }
139
148
 
140
149
  .ams-page-header__menu-link {
150
+ color: var(--ams-page-header-menu-link-color);
141
151
  display: inline-flex;
142
152
  gap: var(--ams-page-header-menu-link-gap);
143
153
  text-decoration-line: var(--ams-page-header-menu-link-text-decoration-line);
@@ -161,47 +171,29 @@
161
171
  }
162
172
  }
163
173
 
164
- @mixin reset-button {
165
- background: none;
166
- border: none;
167
- margin-block: 0; // [1]
168
- margin-inline: 0; // [1]
169
- padding-inline: 0;
170
-
171
- // [1] Remove the margin in older Safari.
172
- }
173
-
174
174
  .ams-page-header__mega-menu-button {
175
+ @include reset-button;
176
+
177
+ background-color: var(--ams-page-header-mega-menu-button-background-color);
178
+ color: var(--ams-page-header-mega-menu-button-color);
175
179
  column-gap: var(--ams-page-header-menu-item-column-gap);
176
180
  cursor: var(--ams-page-header-mega-menu-button-cursor);
177
181
  display: grid;
178
182
  font-family: inherit;
179
183
  grid-auto-flow: column;
184
+ padding-inline: var(--ams-page-header-mega-menu-button-padding-inline);
180
185
 
181
186
  @include page-header-menu-action;
182
- @include reset-button;
183
- }
184
187
 
185
- .ams-page-header__mega-menu-button[aria-expanded="true"] {
186
- font-weight: var(--ams-page-header-mega-menu-button-label-open-font-weight);
188
+ &:hover {
189
+ background-color: var(--ams-page-header-mega-menu-button-hover-background-color);
190
+ color: var(--ams-page-header-mega-menu-button-hover-color);
191
+ }
187
192
  }
188
193
 
189
194
  .ams-page-header__mega-menu-button-label,
190
195
  .ams-page-header__mega-menu-button-hidden-label {
191
- grid-area: 1 / 1; // To allow the label and the hidden label to overlap
192
- }
193
-
194
- // This hidden label is used to prevent a layout shift when the mega menu is opened
195
- // and the button text becomes bold.
196
- .ams-page-header__mega-menu-button-hidden-label {
197
- font-weight: var(--ams-page-header-mega-menu-button-label-open-font-weight);
198
- pointer-events: none;
199
- -webkit-user-select: none;
200
-
201
- /* Safari support is added with the prefixed property. */
202
- /* stylelint-disable-next-line plugin/use-baseline */
203
- user-select: none;
204
- visibility: hidden;
196
+ /* @deprecated These class names will be removed in 6.0.0. */
205
197
  }
206
198
 
207
199
  .ams-page-header__menu-icon-top,
@@ -4,14 +4,13 @@
4
4
  */
5
5
 
6
6
  @use "../../common/hyphenation" as *;
7
+ @use "../../common/resets" as *;
7
8
  @use "../../common/text-rendering" as *;
8
9
 
9
- @mixin reset-h1 {
10
- margin-block: 0;
11
- }
12
-
13
10
  /* @deprecated We no longer use this size of headings. Use `.ams-heading.ams-heading--1` instead. */
14
11
  .ams-page-heading {
12
+ @include reset-hx;
13
+
15
14
  box-sizing: border-box;
16
15
  /* stylelint-disable-next-line plugin/use-baseline */
17
16
  break-after: avoid;
@@ -26,7 +25,6 @@
26
25
 
27
26
  @include hyphenation;
28
27
  @include text-rendering;
29
- @include reset-h1;
30
28
  }
31
29
 
32
30
  .ams-page-heading--inverse {
@@ -3,6 +3,7 @@
3
3
  * Copyright Gemeente Amsterdam
4
4
  */
5
5
 
6
+ @use "../../common/resets" as *;
6
7
  @use "../../common/text-rendering" as *;
7
8
 
8
9
  .ams-pagination {
@@ -15,17 +16,11 @@
15
16
  line-height: var(--ams-pagination-line-height);
16
17
  }
17
18
 
18
- @mixin reset-ol {
19
- list-style-type: none;
20
- margin-block: 0;
21
- padding-inline-start: 0;
22
- }
23
-
24
19
  .ams-pagination__list {
20
+ @include reset-ol;
21
+
25
22
  display: flex;
26
23
  flex-wrap: wrap;
27
-
28
- @include reset-ol;
29
24
  }
30
25
 
31
26
  .ams-pagination__link {
@@ -4,13 +4,12 @@
4
4
  */
5
5
 
6
6
  @use "../../common/hyphenation" as *;
7
+ @use "../../common/resets" as *;
7
8
  @use "../../common/text-rendering" as *;
8
9
 
9
- @mixin reset-p {
10
- margin-block: 0;
11
- }
12
-
13
10
  .ams-paragraph {
11
+ @include reset-p;
12
+
14
13
  box-sizing: border-box;
15
14
  color: var(--ams-paragraph-color);
16
15
  font-family: var(--ams-paragraph-font-family);
@@ -18,9 +17,8 @@
18
17
  font-weight: var(--ams-paragraph-font-weight);
19
18
  line-height: var(--ams-paragraph-line-height);
20
19
 
21
- @include text-rendering;
22
20
  @include hyphenation;
23
- @include reset-p;
21
+ @include text-rendering;
24
22
  }
25
23
 
26
24
  .ams-paragraph--large {
@@ -3,16 +3,12 @@
3
3
  * Copyright Gemeente Amsterdam
4
4
  */
5
5
 
6
+ @use "../../common/resets" as *;
6
7
  @use "../../common/text-rendering" as *;
7
8
 
8
- @mixin reset-input {
9
- -webkit-appearance: none; // Reset appearance for Safari < 15.4
10
- appearance: none; // Reset native appearance, this causes issues on iOS and Android devices
11
- border-radius: 0; // Reset rounded borders on iOS devices
12
- margin-block: 0;
13
- }
14
-
15
9
  .ams-password-input {
10
+ @include reset-input;
11
+
16
12
  background-color: var(--ams-password-input-background-color);
17
13
  border-color: var(--ams-password-input-border-color);
18
14
  border-style: var(--ams-password-input-border-style);
@@ -30,21 +26,16 @@
30
26
  touch-action: manipulation;
31
27
 
32
28
  @include text-rendering;
33
- @include reset-input;
34
29
  }
35
30
 
36
31
  .ams-password-input:not([size]) {
37
32
  inline-size: 100%;
38
33
  }
39
34
 
40
- @mixin reset-placeholder {
41
- opacity: 100%; // Reset lower opacity set by Firefox
42
- }
43
-
44
35
  .ams-password-input::placeholder {
45
- color: var(--ams-password-input-placeholder-color);
46
-
47
36
  @include reset-placeholder;
37
+
38
+ color: var(--ams-password-input-placeholder-color);
48
39
  }
49
40
 
50
41
  .ams-password-input:disabled {
@@ -4,12 +4,7 @@
4
4
  */
5
5
 
6
6
  @use "../../common/breakpoint" as *;
7
-
8
- @mixin reset-ol {
9
- list-style: none;
10
- margin-block: 0;
11
- padding-inline-start: 0;
12
- }
7
+ @use "../../common/resets" as *;
13
8
 
14
9
  @mixin indicator {
15
10
  display: grid;
@@ -75,8 +70,6 @@
75
70
  /* Shape: visual circle in marker */
76
71
 
77
72
  .ams-progress-list__marker-shape {
78
- @include marker-shape;
79
-
80
73
  background-color: var(--ams-progress-list-step-marker-shape-background-color);
81
74
  block-size: var(--ams-progress-list-step-marker-shape-block-size);
82
75
  border: var(--ams-progress-list-step-marker-shape-border-width)
@@ -86,6 +79,8 @@
86
79
  outline: var(--ams-progress-list-step-marker-shape-outline-width)
87
80
  var(--ams-progress-list-step-marker-shape-outline-style) var(--ams-progress-list-step-marker-shape-outline-color);
88
81
 
82
+ @include marker-shape;
83
+
89
84
  .ams-progress-list__step--completed & {
90
85
  background-color: var(--ams-progress-list-step-completed-marker-shape-background-color);
91
86
  border-color: var(--ams-progress-list-step-completed-marker-shape-border-color);
@@ -100,12 +95,12 @@
100
95
  /* Connector */
101
96
 
102
97
  .ams-progress-list__connector {
103
- @include connector;
104
-
105
98
  border-inline: var(--ams-progress-list-step-connector-border-inline-width)
106
99
  var(--ams-progress-list-step-connector-border-inline-style)
107
100
  var(--ams-progress-list-step-connector-border-inline-color);
108
101
 
102
+ @include connector;
103
+
109
104
  .ams-progress-list--heading-2 & {
110
105
  margin-block-start: var(--ams-progress-list-heading-2-step-marker-margin-block-start);
111
106
  }
@@ -168,13 +163,13 @@
168
163
  }
169
164
 
170
165
  .ams-progress-list-substeps__indicator {
171
- @include indicator;
172
-
173
166
  margin-inline-end: var(--ams-progress-list-substeps-step-indicator-margin-inline-end);
174
167
  margin-inline-start: calc(
175
168
  -1 * var(--ams-progress-list-step-gap) - var(--ams-progress-list-step-marker-shape-block-size)
176
169
  );
177
170
 
171
+ @include indicator;
172
+
178
173
  @media screen and (min-width: $ams-breakpoint-medium) {
179
174
  margin-inline-end: var(--ams-progress-list-substeps-step-indicator-medium-margin-inline-end);
180
175
  margin-inline-start: calc(
@@ -192,8 +187,6 @@
192
187
  }
193
188
 
194
189
  .ams-progress-list-substeps__marker-shape {
195
- @include marker-shape;
196
-
197
190
  background-color: var(--ams-progress-list-substeps-step-marker-shape-background-color);
198
191
  block-size: var(--ams-progress-list-substeps-step-marker-shape-block-size);
199
192
  border: var(--ams-progress-list-substeps-step-marker-shape-border-width)
@@ -205,6 +198,8 @@
205
198
  var(--ams-progress-list-substeps-step-marker-shape-outline-style)
206
199
  var(--ams-progress-list-substeps-step-marker-shape-outline-color);
207
200
 
201
+ @include marker-shape;
202
+
208
203
  .ams-progress-list-substeps__step--completed & {
209
204
  background-color: var(--ams-progress-list-substeps-step-completed-marker-shape-background-color);
210
205
  border-color: var(--ams-progress-list-substeps-step-completed-marker-shape-border-color);
@@ -217,8 +212,6 @@
217
212
  }
218
213
 
219
214
  .ams-progress-list-substeps__connector {
220
- @include connector;
221
-
222
215
  /* Cover underlying connector of parent step to prevent it from shining through. Our value for this token is white. */
223
216
  background-color: var(--ams-progress-list-substeps-step-connector-background-color);
224
217
  border: var(--ams-progress-list-substeps-step-connector-border-inline-width)
@@ -226,6 +219,8 @@
226
219
  var(--ams-progress-list-substeps-step-connector-border-inline-color);
227
220
  margin-block-start: var(--ams-progress-list-substeps-step-connector-margin-block-start);
228
221
 
222
+ @include connector;
223
+
229
224
  .ams-progress-list-substeps__step--completed & {
230
225
  border-inline-color: var(--ams-progress-list-substeps-step-completed-connector-border-inline-color);
231
226
  border-inline-style: var(--ams-progress-list-substeps-step-completed-connector-border-inline-style);
@@ -3,6 +3,7 @@
3
3
  * Copyright Gemeente Amsterdam
4
4
  */
5
5
 
6
+ @use "../../common/resets" as *;
6
7
  @use "../../common/text-rendering" as *;
7
8
 
8
9
  .ams-search-field {
@@ -10,14 +11,9 @@
10
11
  isolation: isolate; // create new stacking context, so the input’s z-index doesn’t escape the component
11
12
  }
12
13
 
13
- @mixin reset-input {
14
- -webkit-appearance: none; // Reset appearance for Safari < 15.4
15
- appearance: none; // Reset native appearance, this causes issues on iOS and Android devices
16
- border-radius: 0; // Reset rounded borders on iOS devices
17
- margin-block: 0;
18
- }
19
-
20
14
  .ams-search-field__input {
15
+ @include reset-input;
16
+
21
17
  background-color: var(--ams-search-field-input-background-color);
22
18
  border-color: var(--ams-search-field-input-border-color);
23
19
  border-style: var(--ams-search-field-input-border-style);
@@ -35,18 +31,15 @@
35
31
  touch-action: manipulation;
36
32
 
37
33
  @include text-rendering;
38
- @include reset-input;
39
34
 
40
35
  &:focus {
41
36
  z-index: 1; // Make sure the focus outline isn’t cut off by the adjacent button
42
37
  }
43
38
  }
44
39
 
45
- @mixin reset-placeholder {
46
- opacity: 100%; // Reset lower opacity set by Firefox
47
- }
48
-
49
40
  .ams-search-field__input::placeholder {
41
+ @include reset-placeholder;
42
+
50
43
  color: var(--ams-search-field-input-placeholder-color);
51
44
  }
52
45
 
@@ -3,12 +3,11 @@
3
3
  * Copyright Gemeente Amsterdam
4
4
  */
5
5
 
6
- @mixin reset-select {
7
- appearance: none; // Reset native appearance to hide default chevron
8
- border-radius: 0; // Reset rounded borders for Safari on MacOS
9
- }
6
+ @use "../../common/resets" as *;
10
7
 
11
8
  .ams-select {
9
+ @include reset-select;
10
+
12
11
  background-color: var(--ams-select-background-color);
13
12
  border-color: var(--ams-select-border-color);
14
13
  border-style: var(--ams-select-border-style);
@@ -24,8 +23,6 @@
24
23
  padding-inline: var(--ams-select-padding-inline);
25
24
  touch-action: manipulation;
26
25
 
27
- @include reset-select;
28
-
29
26
  &:not([multiple]) {
30
27
  background-image: var(--ams-select-background-image);
31
28
  background-position: var(--ams-select-background-position);
@@ -6,12 +6,16 @@ Emphasizes a section on a page through a distinctive background colour.
6
6
 
7
7
  ## Guidelines
8
8
 
9
- - Display the Spotlight at the entire width of the [Page](/docs/components-containers-page--docs) container; do not position it on the [Grid](/docs/components-layout-grid--docs).
10
- - Add a Grid with medium vertical padding inside the Spotlight to add whitespace around the content, even for a single element.
9
+ - Use the entire width of the [Page](/docs/components-containers-page--docs) container.
10
+ Do not position a Spotlight on the [Grid](/docs/components-layout-grid--docs).
11
+ Wrap its content in a Grid with extra large vertical padding.
11
12
  - Use any of the [highlight colours](/docs/brand-design-tokens-colour--docs) for the background.
12
13
  The design system does not prescribe a meaning to any of these colours.
13
14
  The default is purple.
14
- - Select [the correct colour](?path=/docs/brand-design-tokens-colour--docs#pairing-foreground-with-background-colours) for text and links against the background you choose.
15
+ Select [the correct colour](?path=/docs/brand-design-tokens-colour--docs#pairing-foreground-with-background-colours) for text and links against the background you choose.
16
+ - Find a fitting setup for the [amount and width of columns](/docs/pages-public-introduction--docs#how-to-size-the-grid-cells).
17
+ - By default, a Spotlight renders a `<div>` element in HTML.
18
+ Use the `as` prop to make your markup more semantic.
15
19
 
16
20
  ## Relevant WCAG requirements
17
21