@microsoft/atlas-css 1.2.0 → 1.3.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 (63) hide show
  1. package/README.md +42 -42
  2. package/dist/index.css +1 -1
  3. package/dist/index.css.map +1 -1
  4. package/package.json +57 -57
  5. package/src/atomics/README.md +54 -54
  6. package/src/atomics/border.scss +56 -56
  7. package/src/atomics/colors.scss +166 -166
  8. package/src/atomics/display.scss +33 -33
  9. package/src/atomics/flex.scss +69 -69
  10. package/src/atomics/index.scss +8 -8
  11. package/src/atomics/position.scss +19 -19
  12. package/src/atomics/shadow.scss +19 -19
  13. package/src/atomics/spacing.scss +73 -73
  14. package/src/atomics/typography.scss +105 -105
  15. package/src/components/README.md +41 -41
  16. package/src/components/button-reset.scss +8 -8
  17. package/src/components/button.scss +245 -243
  18. package/src/components/buttons.scss +86 -87
  19. package/src/components/component.md +6 -6
  20. package/src/components/icon.scss +20 -20
  21. package/src/components/index.scss +7 -7
  22. package/src/components/link-button.scss +30 -30
  23. package/src/components/markdown.scss +156 -156
  24. package/src/components/table.scss +67 -67
  25. package/src/core/animations.scss +8 -8
  26. package/src/core/focus.scss +35 -35
  27. package/src/core/font-stack.scss +28 -28
  28. package/src/core/index.scss +6 -6
  29. package/src/core/themes.scss +86 -86
  30. package/src/index.scss +6 -6
  31. package/src/mixins/center.scss +11 -11
  32. package/src/mixins/code-block.scss +43 -43
  33. package/src/mixins/control.scss +44 -44
  34. package/src/mixins/focus.scss +10 -10
  35. package/src/mixins/font-size.scss +35 -35
  36. package/src/mixins/index.scss +9 -9
  37. package/src/mixins/loader.scss +16 -16
  38. package/src/mixins/media-queries.scss +49 -49
  39. package/src/mixins/transparency.scss +14 -14
  40. package/src/mixins/unselectable.scss +13 -13
  41. package/src/patterns/index.scss +1 -1
  42. package/src/tokens/animation.scss +8 -8
  43. package/src/tokens/border.scss +8 -8
  44. package/src/tokens/breakpoints.scss +11 -11
  45. package/src/tokens/colors.scss +215 -215
  46. package/src/tokens/direction.scss +18 -18
  47. package/src/tokens/display.scss +5 -5
  48. package/src/tokens/focus.scss +9 -9
  49. package/src/tokens/font-stack.scss +10 -10
  50. package/src/tokens/index.scss +18 -18
  51. package/src/tokens/layout.scss +8 -8
  52. package/src/tokens/palette.scss +188 -188
  53. package/src/tokens/position.scss +5 -5
  54. package/src/tokens/radius.scss +9 -9
  55. package/src/tokens/schemes.scss +14 -14
  56. package/src/tokens/shadow.scss +11 -11
  57. package/src/tokens/spacing.scss +25 -25
  58. package/src/tokens/themes.scss +291 -291
  59. package/src/tokens/typography.scss +29 -29
  60. package/src/tokens/z-index.scss +20 -20
  61. package/tokens/README.md +34 -34
  62. package/tokens/index.js +246 -246
  63. package/tokens/types.d.ts +35 -35
package/package.json CHANGED
@@ -1,57 +1,57 @@
1
- {
2
- "name": "@microsoft/atlas-css",
3
- "version": "1.2.0",
4
- "main": "dist/index.css",
5
- "source": "src/index.scss",
6
- "description": "Styles backing the Atlas Design System used by Microsoft's Developer Relations.",
7
- "scripts": {
8
- "test": "echo \"Error: no test specified\" && exit 1",
9
- "lint": "stylelint ./src/**/*.scss",
10
- "lint-fix": "stylelint ./src/**/*.scss --fix",
11
- "start": "parcel watch src/index.scss --no-autoinstall",
12
- "build": "npm run build:css && npm run tokens",
13
- "build:css": "parcel build src/index.scss --no-cache --no-autoinstall",
14
- "tokens": "node ./tokens/index.js",
15
- "prepublishOnly": "npm run lint && npm run build"
16
- },
17
- "homepage": "https://github.com/microsoft/atlas-design",
18
- "repository": {
19
- "type": "git",
20
- "url": "https://github.com/microsoft/atlas-design"
21
- },
22
- "publishConfig": {
23
- "registry": "https://registry.npmjs.org"
24
- },
25
- "files": [
26
- "dist",
27
- "src",
28
- "tokens"
29
- ],
30
- "keywords": [
31
- "microsoft",
32
- "atlas",
33
- "design-system",
34
- "css",
35
- "scss"
36
- ],
37
- "author": "Microsoft Corporation",
38
- "license": "MIT",
39
- "dependencies": {
40
- "minireset.css": "^0.0.7",
41
- "normalize.css": "^8.0.1"
42
- },
43
- "devDependencies": {
44
- "parcel": "2.0.0-beta.3.1",
45
- "@parcel/transformer-sass": "2.0.0-beta.3.1",
46
- "@microsoft/stylelint-config-atlas": "3.0.0",
47
- "prettier": "^2.2.1",
48
- "sass": "^1.32.8",
49
- "stylelint": "^13.11.0",
50
- "stylelint-config-prettier": "^8.0.2",
51
- "eslint-plugin-security": "^1.4.0",
52
- "stylelint-prettier": "^1.1.2",
53
- "fs-extra": "^9.1.0",
54
- "quicktype-core": "^6.0.70",
55
- "sass-export": "^2.1.0"
56
- }
57
- }
1
+ {
2
+ "name": "@microsoft/atlas-css",
3
+ "version": "1.3.0",
4
+ "main": "dist/index.css",
5
+ "source": "src/index.scss",
6
+ "description": "Styles backing the Atlas Design System used by Microsoft's Developer Relations.",
7
+ "scripts": {
8
+ "test": "echo \"Error: no test specified\" && exit 1",
9
+ "lint": "stylelint ./src/**/*.scss",
10
+ "lint-fix": "stylelint ./src/**/*.scss --fix",
11
+ "start": "parcel watch src/index.scss --no-autoinstall",
12
+ "build": "npm run build:css && npm run tokens",
13
+ "build:css": "parcel build src/index.scss --no-cache --no-autoinstall",
14
+ "tokens": "node ./tokens/index.js",
15
+ "prepublishOnly": "npm run lint && npm run build"
16
+ },
17
+ "homepage": "https://github.com/microsoft/atlas-design",
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "https://github.com/microsoft/atlas-design"
21
+ },
22
+ "publishConfig": {
23
+ "registry": "https://registry.npmjs.org"
24
+ },
25
+ "files": [
26
+ "dist",
27
+ "src",
28
+ "tokens"
29
+ ],
30
+ "keywords": [
31
+ "microsoft",
32
+ "atlas",
33
+ "design-system",
34
+ "css",
35
+ "scss"
36
+ ],
37
+ "author": "Microsoft Corporation",
38
+ "license": "MIT",
39
+ "dependencies": {
40
+ "minireset.css": "^0.0.7",
41
+ "normalize.css": "^8.0.1"
42
+ },
43
+ "devDependencies": {
44
+ "parcel": "2.0.0-beta.3.1",
45
+ "@parcel/transformer-sass": "2.0.0-beta.3.1",
46
+ "@microsoft/stylelint-config-atlas": "3.0.0",
47
+ "prettier": "^2.2.1",
48
+ "sass": "^1.32.8",
49
+ "stylelint": "^13.11.0",
50
+ "stylelint-config-prettier": "^8.0.2",
51
+ "eslint-plugin-security": "^1.4.0",
52
+ "stylelint-prettier": "^1.1.2",
53
+ "fs-extra": "^9.1.0",
54
+ "quicktype-core": "^6.0.70",
55
+ "sass-export": "^2.1.0"
56
+ }
57
+ }
@@ -1,54 +1,54 @@
1
- # Atlas Atomics
2
-
3
- Welcome to Atomics ⚛! These are small, single purpose, CSS classes that can be used to compose great things. Visit this article for a [longer definition of Atomic CSS here](https://css-tricks.com/lets-define-exactly-atomic-css/).
4
-
5
- ## Categories of classes
6
-
7
- Most of our classes fall into one of several categories. Those that affect ...
8
-
9
- - display (ex. `.display-inline-flex`)
10
- - spacing (ex. `.margin-inline-l`);
11
- - color (ex. `.color-primary`)
12
- - typography (ex. `.font-size-m`);
13
- - flex properties (ex. `.justify-content-center`)
14
- - and more ...
15
-
16
- ## Naming patterns
17
-
18
- All of our atomic classes try to follow the same pattern.
19
-
20
- ```txt
21
- .<css-property-name>-<value>
22
- // or
23
- .<css-property-name>-<value>-<screensize>
24
- ```
25
-
26
- ## CSS Property Values
27
-
28
- The first part of nearly every Atomic class represent the css property that it will modify. For example, `display` in the class `.display-flex` matches the property value from the corresponding css rule `display: flex;`. We hope this will provide a clear and easily intuited pattern for our Atomics and encourage everyone to learn the fundamentals of CSS.
29
-
30
- ## Values
31
-
32
- While CSS property values are straightfoward (they just match the CSS property), the value property is not always as easy to guess. We have a few rules that help us figure out how to write values in class names.
33
-
34
- 1. When the CSS value is a string (such as `flex-end` in `justify-content: flex-end`, or `grid` in `display: grid;`) then we just use that string directly (meaning these classes become `.justify-content-flex-end` and `.display-grid`).
35
- 2. In some cases, such as themed colors values, values are associated concepts.
36
- - Such as `primary` in the class `.color-primary`. (The `primary` is blue on light theme and yellow on high contrast theme.)
37
- - Such as `semibold` in the class `font-weight-semibold`.
38
- 3. When a number value with a particular unit is involved, that value is typically represented as a t-shirt size.
39
- - Spacing and non-heading typography values follow this convention, as in `xs, s, m, l, xl, xxl` in `margin-top-xl`, and `font-size-m`.
40
- - Within a set of values that require units such as the one above, 0 is represented by the string `none`.
41
- 4. Within a series of values that are all unitless numbers, those numbers are used directly, as in `flex-grow: 1;` being represented by `flex-grow-1`.
42
- 5. When a shorthand property's value is multi-part, we choose a reasonable default and omit the value completely.
43
- - In the case `border: 1px solid $border` the class becomes simply `.border`.
44
- - In this case further modification would still be available.
45
-
46
- ## Screen sizes
47
-
48
- Screen sizes are represented by one of the following strings:
49
-
50
- - `tablet`, representing screens tablet and larger.
51
- - `desktop`, representing screen desktop width and larger.
52
- - `widescreen`, representing very wide screens to inifinity.
53
-
54
- Use a mobile first approach when using Atomics, including the universally applicable class (i.e. the one that does not have a screensize at the end), and when necessary overwrite its values on larger screens.
1
+ # Atlas Atomics
2
+
3
+ Welcome to Atomics ⚛! These are small, single purpose, CSS classes that can be used to compose great things. Visit this article for a [longer definition of Atomic CSS here](https://css-tricks.com/lets-define-exactly-atomic-css/).
4
+
5
+ ## Categories of classes
6
+
7
+ Most of our classes fall into one of several categories. Those that affect ...
8
+
9
+ - display (ex. `.display-inline-flex`)
10
+ - spacing (ex. `.margin-inline-l`);
11
+ - color (ex. `.color-primary`)
12
+ - typography (ex. `.font-size-m`);
13
+ - flex properties (ex. `.justify-content-center`)
14
+ - and more ...
15
+
16
+ ## Naming patterns
17
+
18
+ All of our atomic classes try to follow the same pattern.
19
+
20
+ ```txt
21
+ .<css-property-name>-<value>
22
+ // or
23
+ .<css-property-name>-<value>-<screensize>
24
+ ```
25
+
26
+ ## CSS Property Values
27
+
28
+ The first part of nearly every Atomic class represent the css property that it will modify. For example, `display` in the class `.display-flex` matches the property value from the corresponding css rule `display: flex;`. We hope this will provide a clear and easily intuited pattern for our Atomics and encourage everyone to learn the fundamentals of CSS.
29
+
30
+ ## Values
31
+
32
+ While CSS property values are straightfoward (they just match the CSS property), the value property is not always as easy to guess. We have a few rules that help us figure out how to write values in class names.
33
+
34
+ 1. When the CSS value is a string (such as `flex-end` in `justify-content: flex-end`, or `grid` in `display: grid;`) then we just use that string directly (meaning these classes become `.justify-content-flex-end` and `.display-grid`).
35
+ 2. In some cases, such as themed colors values, values are associated concepts.
36
+ - Such as `primary` in the class `.color-primary`. (The `primary` is blue on light theme and yellow on high contrast theme.)
37
+ - Such as `semibold` in the class `font-weight-semibold`.
38
+ 3. When a number value with a particular unit is involved, that value is typically represented as a t-shirt size.
39
+ - Spacing and non-heading typography values follow this convention, as in `xs, s, m, l, xl, xxl` in `margin-top-xl`, and `font-size-m`.
40
+ - Within a set of values that require units such as the one above, 0 is represented by the string `none`.
41
+ 4. Within a series of values that are all unitless numbers, those numbers are used directly, as in `flex-grow: 1;` being represented by `flex-grow-1`.
42
+ 5. When a shorthand property's value is multi-part, we choose a reasonable default and omit the value completely.
43
+ - In the case `border: 1px solid $border` the class becomes simply `.border`.
44
+ - In this case further modification would still be available.
45
+
46
+ ## Screen sizes
47
+
48
+ Screen sizes are represented by one of the following strings:
49
+
50
+ - `tablet`, representing screens tablet and larger.
51
+ - `desktop`, representing screen desktop width and larger.
52
+ - `widescreen`, representing very wide screens to inifinity.
53
+
54
+ Use a mobile first approach when using Atomics, including the universally applicable class (i.e. the one that does not have a screensize at the end), and when necessary overwrite its values on larger screens.
@@ -1,56 +1,56 @@
1
- .border {
2
- border: $border-width solid $border !important;
3
- }
4
-
5
- .border-none {
6
- border: none !important;
7
- }
8
-
9
- // Rules for each side
10
- @each $border-key, $direction in $directions {
11
- .border-#{$border-key} {
12
- border-#{$direction}: $border-width solid $border !important;
13
- }
14
-
15
- .border-#{$border-key}-none {
16
- border-#{$direction}: 0 !important;
17
- }
18
- }
19
-
20
- @include tablet {
21
- .border-tablet {
22
- border: $border-width solid $border !important;
23
- }
24
-
25
- .border-none-tablet {
26
- border: none !important;
27
- }
28
-
29
- // Rules for each side
30
- @each $border-key, $direction in $directions {
31
- .border-#{$border-key}-tablet {
32
- border-#{$direction}: $border-width solid $border !important;
33
- }
34
-
35
- .border-#{$border-key}-none-tablet {
36
- border-#{$direction}: 0 !important;
37
- }
38
- }
39
- }
40
-
41
- // Modifiers
42
- .border-high-contrast {
43
- border: $border-width solid $border-white-high-contrast !important;
44
-
45
- &-hover:hover {
46
- border: $border-width solid $border-yellow-high-contrast !important;
47
- }
48
- }
49
-
50
- .border-radius {
51
- border-radius: $border-radius !important;
52
- }
53
-
54
- .border-radius-l {
55
- border-radius: $border-radius-large !important;
56
- }
1
+ .border {
2
+ border: $border-width solid $border !important;
3
+ }
4
+
5
+ .border-none {
6
+ border: none !important;
7
+ }
8
+
9
+ // Rules for each side
10
+ @each $border-key, $direction in $directions {
11
+ .border-#{$border-key} {
12
+ border-#{$direction}: $border-width solid $border !important;
13
+ }
14
+
15
+ .border-#{$border-key}-none {
16
+ border-#{$direction}: 0 !important;
17
+ }
18
+ }
19
+
20
+ @include tablet {
21
+ .border-tablet {
22
+ border: $border-width solid $border !important;
23
+ }
24
+
25
+ .border-none-tablet {
26
+ border: none !important;
27
+ }
28
+
29
+ // Rules for each side
30
+ @each $border-key, $direction in $directions {
31
+ .border-#{$border-key}-tablet {
32
+ border-#{$direction}: $border-width solid $border !important;
33
+ }
34
+
35
+ .border-#{$border-key}-none-tablet {
36
+ border-#{$direction}: 0 !important;
37
+ }
38
+ }
39
+ }
40
+
41
+ // Modifiers
42
+ .border-high-contrast {
43
+ border: $border-width solid $border-white-high-contrast !important;
44
+
45
+ &-hover:hover {
46
+ border: $border-width solid $border-yellow-high-contrast !important;
47
+ }
48
+ }
49
+
50
+ .border-radius {
51
+ border-radius: $border-radius !important;
52
+ }
53
+
54
+ .border-radius-l {
55
+ border-radius: $border-radius-large !important;
56
+ }
@@ -1,166 +1,166 @@
1
- // Framework colors
2
-
3
- @each $name, $color-set in $colors {
4
- $base: nth($color-set, $color-index-base);
5
- $background: nth($color-set, $color-index-background);
6
- $dark: nth($color-set, $color-index-dark);
7
- $hover: nth($color-set, $color-index-hover);
8
- $active: nth($color-set, $color-index-active);
9
- $invert: nth($color-set, $color-index-invert);
10
-
11
- .color-#{$name} {
12
- color: $base !important;
13
- }
14
-
15
- a.color-#{$name} {
16
- &:hover,
17
- &.focus-visible {
18
- color: $hover !important;
19
- }
20
-
21
- &:active {
22
- color: $active !important;
23
- }
24
- }
25
-
26
- .color-#{$name}-invert {
27
- color: $invert !important;
28
- }
29
-
30
- .background-color-#{$name} {
31
- outline-color: $invert;
32
- background-color: $base !important;
33
- }
34
-
35
- .background-color-#{$name}-invert {
36
- outline-color: $base;
37
- background-color: $invert !important;
38
- }
39
-
40
- .background-color-#{$name}-light {
41
- outline-color: $dark;
42
- background-color: $background !important;
43
- }
44
-
45
- .background-color-#{$name}-dark {
46
- outline-color: $background;
47
- background-color: $dark !important;
48
- }
49
- }
50
-
51
- @include tablet {
52
- @each $name, $color-set in $colors {
53
- $base: nth($color-set, $color-index-base);
54
- $invert: nth($color-set, $color-index-invert);
55
-
56
- .background-color-#{$name}-tablet {
57
- outline-color: $invert;
58
- background-color: $base !important;
59
- }
60
- }
61
- }
62
-
63
- // Text color
64
-
65
- .color-text {
66
- color: $text !important;
67
- }
68
-
69
- .color-text-subtle {
70
- color: $text-subtle !important;
71
- }
72
-
73
- .color-text-overlay-invert {
74
- color: $overlay-invert;
75
- }
76
-
77
- .color-current-color {
78
- color: currentColor !important;
79
- }
80
-
81
- .fill-current-color {
82
- fill: currentColor !important;
83
- }
84
-
85
- .outline-color-text {
86
- outline-color: $text !important;
87
- }
88
-
89
- .stroke-current-color {
90
- stroke: currentColor !important;
91
- }
92
-
93
- // Background color
94
-
95
- .background-color-body {
96
- outline-color: $text !important;
97
- background-color: $body-background !important;
98
- }
99
-
100
- .background-color-body-medium {
101
- outline-color: $text !important;
102
- background-color: $body-background-medium !important;
103
- }
104
-
105
- .background-color-alternate {
106
- outline-color: $text-invert !important;
107
- background-color: $alternate-background !important;
108
- }
109
-
110
- .background-color-alternate-medium {
111
- outline-color: $text-invert !important;
112
- background-color: $alternate-background-medium !important;
113
- }
114
-
115
- .background-color-overlay {
116
- outline-color: $overlay-invert;
117
- background-color: $overlay !important;
118
- }
119
-
120
- .background-color-alternating-grey {
121
- border-top: 1px solid $border-white-high-contrast;
122
- outline-color: $text !important;
123
-
124
- &:nth-of-type(even) {
125
- outline-color: $text;
126
- background-color: $body-background;
127
- }
128
-
129
- &:nth-of-type(odd) {
130
- outline-color: $text;
131
- background-color: $body-background-medium;
132
- }
133
- }
134
-
135
- .background-color-alternating-grey-reversed {
136
- border-top: 1px solid $border-white-high-contrast;
137
- outline-color: $text !important;
138
-
139
- &:nth-of-type(even) {
140
- outline-color: $text;
141
- background-color: $body-background-medium;
142
- }
143
-
144
- &:nth-of-type(odd) {
145
- outline-color: $text;
146
- background-color: $body-background;
147
- }
148
- }
149
-
150
- // Static colors - do not change with theme
151
-
152
- .color-white-static {
153
- color: $white-static !important;
154
- }
155
-
156
- .color-black-static {
157
- color: $black-static !important;
158
- }
159
-
160
- .background-color-white-static {
161
- background-color: $white-static !important;
162
- }
163
-
164
- .background-color-black-static {
165
- background-color: $black-static !important;
166
- }
1
+ // Framework colors
2
+
3
+ @each $name, $color-set in $colors {
4
+ $base: nth($color-set, $color-index-base);
5
+ $background: nth($color-set, $color-index-background);
6
+ $dark: nth($color-set, $color-index-dark);
7
+ $hover: nth($color-set, $color-index-hover);
8
+ $active: nth($color-set, $color-index-active);
9
+ $invert: nth($color-set, $color-index-invert);
10
+
11
+ .color-#{$name} {
12
+ color: $base !important;
13
+ }
14
+
15
+ a.color-#{$name} {
16
+ &:hover,
17
+ &.focus-visible {
18
+ color: $hover !important;
19
+ }
20
+
21
+ &:active {
22
+ color: $active !important;
23
+ }
24
+ }
25
+
26
+ .color-#{$name}-invert {
27
+ color: $invert !important;
28
+ }
29
+
30
+ .background-color-#{$name} {
31
+ outline-color: $invert;
32
+ background-color: $base !important;
33
+ }
34
+
35
+ .background-color-#{$name}-invert {
36
+ outline-color: $base;
37
+ background-color: $invert !important;
38
+ }
39
+
40
+ .background-color-#{$name}-light {
41
+ outline-color: $dark;
42
+ background-color: $background !important;
43
+ }
44
+
45
+ .background-color-#{$name}-dark {
46
+ outline-color: $background;
47
+ background-color: $dark !important;
48
+ }
49
+ }
50
+
51
+ @include tablet {
52
+ @each $name, $color-set in $colors {
53
+ $base: nth($color-set, $color-index-base);
54
+ $invert: nth($color-set, $color-index-invert);
55
+
56
+ .background-color-#{$name}-tablet {
57
+ outline-color: $invert;
58
+ background-color: $base !important;
59
+ }
60
+ }
61
+ }
62
+
63
+ // Text color
64
+
65
+ .color-text {
66
+ color: $text !important;
67
+ }
68
+
69
+ .color-text-subtle {
70
+ color: $text-subtle !important;
71
+ }
72
+
73
+ .color-text-overlay-invert {
74
+ color: $overlay-invert;
75
+ }
76
+
77
+ .color-current-color {
78
+ color: currentColor !important;
79
+ }
80
+
81
+ .fill-current-color {
82
+ fill: currentColor !important;
83
+ }
84
+
85
+ .outline-color-text {
86
+ outline-color: $text !important;
87
+ }
88
+
89
+ .stroke-current-color {
90
+ stroke: currentColor !important;
91
+ }
92
+
93
+ // Background color
94
+
95
+ .background-color-body {
96
+ outline-color: $text !important;
97
+ background-color: $body-background !important;
98
+ }
99
+
100
+ .background-color-body-medium {
101
+ outline-color: $text !important;
102
+ background-color: $body-background-medium !important;
103
+ }
104
+
105
+ .background-color-alternate {
106
+ outline-color: $text-invert !important;
107
+ background-color: $alternate-background !important;
108
+ }
109
+
110
+ .background-color-alternate-medium {
111
+ outline-color: $text-invert !important;
112
+ background-color: $alternate-background-medium !important;
113
+ }
114
+
115
+ .background-color-overlay {
116
+ outline-color: $overlay-invert;
117
+ background-color: $overlay !important;
118
+ }
119
+
120
+ .background-color-alternating-grey {
121
+ border-top: 1px solid $border-white-high-contrast;
122
+ outline-color: $text !important;
123
+
124
+ &:nth-of-type(even) {
125
+ outline-color: $text;
126
+ background-color: $body-background;
127
+ }
128
+
129
+ &:nth-of-type(odd) {
130
+ outline-color: $text;
131
+ background-color: $body-background-medium;
132
+ }
133
+ }
134
+
135
+ .background-color-alternating-grey-reversed {
136
+ border-top: 1px solid $border-white-high-contrast;
137
+ outline-color: $text !important;
138
+
139
+ &:nth-of-type(even) {
140
+ outline-color: $text;
141
+ background-color: $body-background-medium;
142
+ }
143
+
144
+ &:nth-of-type(odd) {
145
+ outline-color: $text;
146
+ background-color: $body-background;
147
+ }
148
+ }
149
+
150
+ // Static colors - do not change with theme
151
+
152
+ .color-white-static {
153
+ color: $white-static !important;
154
+ }
155
+
156
+ .color-black-static {
157
+ color: $black-static !important;
158
+ }
159
+
160
+ .background-color-white-static {
161
+ background-color: $white-static !important;
162
+ }
163
+
164
+ .background-color-black-static {
165
+ background-color: $black-static !important;
166
+ }