@db-ux/core-components 1.0.0-test-13b991d

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 (167) hide show
  1. package/README.md +107 -0
  2. package/build/assets/fonts/OFL.txt +93 -0
  3. package/build/assets/fonts/OpenSans-Bold-EU.woff2 +0 -0
  4. package/build/assets/fonts/OpenSans-Bold.ttf +0 -0
  5. package/build/assets/fonts/OpenSans-ExtraBold-EU.woff2 +0 -0
  6. package/build/assets/fonts/OpenSans-ExtraBold.ttf +0 -0
  7. package/build/assets/fonts/OpenSans-Light-EU.woff2 +0 -0
  8. package/build/assets/fonts/OpenSans-Light.ttf +0 -0
  9. package/build/assets/fonts/OpenSans-Medium-EU.woff2 +0 -0
  10. package/build/assets/fonts/OpenSans-Medium.ttf +0 -0
  11. package/build/assets/fonts/OpenSans-Regular-EU.woff2 +0 -0
  12. package/build/assets/fonts/OpenSans-Regular.ttf +0 -0
  13. package/build/assets/fonts/OpenSans-SemiBold-EU.woff2 +0 -0
  14. package/build/assets/fonts/OpenSans-SemiBold.ttf +0 -0
  15. package/build/assets/fonts/README.md +23 -0
  16. package/build/assets/fonts/generate-eu-fonts.ts +46 -0
  17. package/build/assets/fonts/unicode-eu.txt +14 -0
  18. package/build/assets/icons/DB_LICENSE +253 -0
  19. package/build/assets/icons/LICENCES.json +153 -0
  20. package/build/assets/icons/arrow_down.svg +1 -0
  21. package/build/assets/icons/arrow_left.svg +1 -0
  22. package/build/assets/icons/arrow_right.svg +1 -0
  23. package/build/assets/icons/arrow_up.svg +1 -0
  24. package/build/assets/icons/arrow_up_right.svg +1 -0
  25. package/build/assets/icons/brand.svg +1 -0
  26. package/build/assets/icons/calendar.svg +5 -0
  27. package/build/assets/icons/check-circle.svg +1 -0
  28. package/build/assets/icons/check.svg +1 -0
  29. package/build/assets/icons/check_circle.svg +1 -0
  30. package/build/assets/icons/chevron_down.svg +1 -0
  31. package/build/assets/icons/chevron_left.svg +1 -0
  32. package/build/assets/icons/chevron_right.svg +1 -0
  33. package/build/assets/icons/chevron_up.svg +1 -0
  34. package/build/assets/icons/circle.svg +1 -0
  35. package/build/assets/icons/clock.svg +1 -0
  36. package/build/assets/icons/cross.svg +1 -0
  37. package/build/assets/icons/cross_circle.svg +1 -0
  38. package/build/assets/icons/exclamation_mark_circle.svg +1 -0
  39. package/build/assets/icons/exclamation_mark_triangle.svg +1 -0
  40. package/build/assets/icons/fonts/all/db-ux.woff2 +0 -0
  41. package/build/assets/icons/fonts/default/db-ux.woff2 +0 -0
  42. package/build/assets/icons/fonts/default_12/db-ux.woff2 +0 -0
  43. package/build/assets/icons/fonts/default_14/db-ux.woff2 +0 -0
  44. package/build/assets/icons/fonts/default_16/db-ux.woff2 +0 -0
  45. package/build/assets/icons/fonts/default_20/db-ux.woff2 +0 -0
  46. package/build/assets/icons/fonts/default_24/db-ux.woff2 +0 -0
  47. package/build/assets/icons/fonts/default_28/db-ux.woff2 +0 -0
  48. package/build/assets/icons/fonts/default_32/db-ux.woff2 +0 -0
  49. package/build/assets/icons/fonts/default_48/db-ux.woff2 +0 -0
  50. package/build/assets/icons/fonts/default_64/db-ux.woff2 +0 -0
  51. package/build/assets/icons/fonts/filled/db-ux.woff2 +0 -0
  52. package/build/assets/icons/fonts/filled_12/db-ux.woff2 +0 -0
  53. package/build/assets/icons/fonts/filled_14/db-ux.woff2 +0 -0
  54. package/build/assets/icons/fonts/filled_16/db-ux.woff2 +0 -0
  55. package/build/assets/icons/fonts/filled_20/db-ux.woff2 +0 -0
  56. package/build/assets/icons/fonts/filled_24/db-ux.woff2 +0 -0
  57. package/build/assets/icons/fonts/filled_28/db-ux.woff2 +0 -0
  58. package/build/assets/icons/fonts/filled_32/db-ux.woff2 +0 -0
  59. package/build/assets/icons/fonts/filled_48/db-ux.woff2 +0 -0
  60. package/build/assets/icons/fonts/filled_64/db-ux.woff2 +0 -0
  61. package/build/assets/icons/information_circle.svg +1 -0
  62. package/build/assets/icons/magnifying_glass.svg +1 -0
  63. package/build/assets/icons/menu.svg +1 -0
  64. package/build/assets/icons/minus.svg +1 -0
  65. package/build/assets/icons/plus.svg +1 -0
  66. package/build/assets/icons/resize_handle_corner.svg +1 -0
  67. package/build/assets/icons/x_placeholder.svg +1 -0
  68. package/build/components/accordion/accordion.css +78 -0
  69. package/build/components/accordion/accordion.scss +62 -0
  70. package/build/components/accordion-item/accordion-item.css +239 -0
  71. package/build/components/accordion-item/accordion-item.scss +73 -0
  72. package/build/components/badge/badge.css +253 -0
  73. package/build/components/badge/badge.scss +107 -0
  74. package/build/components/brand/brand.css +42 -0
  75. package/build/components/brand/brand.scss +32 -0
  76. package/build/components/button/button.css +165 -0
  77. package/build/components/button/button.scss +123 -0
  78. package/build/components/card/card.css +115 -0
  79. package/build/components/card/card.scss +56 -0
  80. package/build/components/checkbox/checkbox.css +476 -0
  81. package/build/components/checkbox/checkbox.scss +80 -0
  82. package/build/components/divider/divider.css +84 -0
  83. package/build/components/divider/divider.scss +56 -0
  84. package/build/components/drawer/drawer.css +303 -0
  85. package/build/components/drawer/drawer.scss +228 -0
  86. package/build/components/header/header.css +697 -0
  87. package/build/components/header/header.scss +246 -0
  88. package/build/components/icon/icon.css +24 -0
  89. package/build/components/icon/icon.scss +14 -0
  90. package/build/components/infotext/infotext.css +152 -0
  91. package/build/components/infotext/infotext.scss +54 -0
  92. package/build/components/input/input.css +712 -0
  93. package/build/components/input/input.scss +147 -0
  94. package/build/components/link/link.css +257 -0
  95. package/build/components/link/link.scss +60 -0
  96. package/build/components/navigation/navigation.css +218 -0
  97. package/build/components/navigation/navigation.scss +117 -0
  98. package/build/components/navigation-item/navigation-item.css +482 -0
  99. package/build/components/navigation-item/navigation-item.scss +310 -0
  100. package/build/components/notification/notification-grid-default.css +1 -0
  101. package/build/components/notification/notification-grid-default.scss +52 -0
  102. package/build/components/notification/notification-grid-non-overlay.css +1 -0
  103. package/build/components/notification/notification-grid-non-overlay.scss +66 -0
  104. package/build/components/notification/notification-grid-overlay.css +1 -0
  105. package/build/components/notification/notification-grid-overlay.scss +55 -0
  106. package/build/components/notification/notification.css +1173 -0
  107. package/build/components/notification/notification.scss +216 -0
  108. package/build/components/page/page.css +49 -0
  109. package/build/components/page/page.scss +52 -0
  110. package/build/components/popover/popover.css +291 -0
  111. package/build/components/popover/popover.scss +26 -0
  112. package/build/components/radio/radio.css +390 -0
  113. package/build/components/radio/radio.scss +49 -0
  114. package/build/components/section/section.css +38 -0
  115. package/build/components/section/section.scss +51 -0
  116. package/build/components/select/select.css +651 -0
  117. package/build/components/select/select.scss +83 -0
  118. package/build/components/stack/stack-web-component.css +93 -0
  119. package/build/components/stack/stack-web-component.scss +1 -0
  120. package/build/components/stack/stack.css +93 -0
  121. package/build/components/stack/stack.scss +5 -0
  122. package/build/components/switch/switch.css +901 -0
  123. package/build/components/switch/switch.scss +233 -0
  124. package/build/components/tab-item/tab-item.css +160 -0
  125. package/build/components/tab-item/tab-item.scss +135 -0
  126. package/build/components/tab-list/tab-list.css +202 -0
  127. package/build/components/tab-list/tab-list.scss +18 -0
  128. package/build/components/tab-panel/tab-panel.css +10 -0
  129. package/build/components/tab-panel/tab-panel.scss +5 -0
  130. package/build/components/tabs/tabs.css +358 -0
  131. package/build/components/tabs/tabs.scss +361 -0
  132. package/build/components/tag/tag.css +1544 -0
  133. package/build/components/tag/tag.scss +236 -0
  134. package/build/components/textarea/textarea.css +546 -0
  135. package/build/components/textarea/textarea.scss +86 -0
  136. package/build/components/tooltip/tooltip.css +346 -0
  137. package/build/components/tooltip/tooltip.scss +137 -0
  138. package/build/styles/absolute.css +1559 -0
  139. package/build/styles/absolute.scss +5 -0
  140. package/build/styles/component-animations.css +1 -0
  141. package/build/styles/component-animations.scss +17 -0
  142. package/build/styles/dialog-init.css +1 -0
  143. package/build/styles/dialog-init.scss +57 -0
  144. package/build/styles/index.css +615 -0
  145. package/build/styles/index.scss +32 -0
  146. package/build/styles/internal/_button-components.scss +8 -0
  147. package/build/styles/internal/_component.scss +79 -0
  148. package/build/styles/internal/_custom-elements.scss +7 -0
  149. package/build/styles/internal/_db-puls.scss +83 -0
  150. package/build/styles/internal/_form-components.scss +516 -0
  151. package/build/styles/internal/_icon-passing.scss +26 -0
  152. package/build/styles/internal/_link-components.scss +62 -0
  153. package/build/styles/internal/_popover-component.scss +213 -0
  154. package/build/styles/internal/_scrollbar.scss +93 -0
  155. package/build/styles/internal/_stack-components.scss +104 -0
  156. package/build/styles/internal/_tag-components.scss +234 -0
  157. package/build/styles/relative.css +1559 -0
  158. package/build/styles/relative.scss +15 -0
  159. package/build/styles/rollup.css +1559 -0
  160. package/build/styles/rollup.scss +5 -0
  161. package/build/styles/visually-hidden.css +1 -0
  162. package/build/styles/visually-hidden.scss +6 -0
  163. package/build/styles/wc-workarounds.css +1 -0
  164. package/build/styles/wc-workarounds.scss +12 -0
  165. package/build/styles/webpack.css +1559 -0
  166. package/build/styles/webpack.scss +5 -0
  167. package/package.json +62 -0
@@ -0,0 +1,476 @@
1
+ /* Use sizing's for fixed heights/widths e.g. the db-button has always a fixed height */
2
+ /* Use fixed spacings for all kind of distances (margin, padding, ...) */
3
+ /* The primary use-case for responsive spacings are
4
+ paddings/gaps in an application e.g. the <main> should have a responsive padding. */
5
+ /* Elevation */
6
+ /* Border */
7
+ /* Transitions */
8
+ .db-visually-hidden,
9
+ [data-visually-hidden=true] {
10
+ clip: rect(0, 0, 0, 0) !important;
11
+ overflow: hidden !important;
12
+ white-space: nowrap !important;
13
+ font-size: 0 !important;
14
+ all: initial;
15
+ inset-block-start: 0 !important;
16
+ block-size: 1px !important;
17
+ position: absolute !important;
18
+ inline-size: 1px !important;
19
+ border-width: 0 !important;
20
+ border-style: initial !important;
21
+ border-color: initial !important;
22
+ border-image: initial !important;
23
+ padding: 0 !important;
24
+ pointer-events: none !important;
25
+ }
26
+
27
+ /* Variants for adaptive components like input, select, notification, ... */
28
+ .db-checkbox input:checked:not([data-hide-icon-before=true])::before, .db-checkbox input:indeterminate:not([data-hide-icon-before=true])::before {
29
+ content: var(--db-icon, attr(data-icon));
30
+ content: var(--db-icon, attr(data-icon))/"";
31
+ -webkit-alt: "";
32
+ alt: "";
33
+ color: var(--db-icon-color, inherit);
34
+ display: inline-block;
35
+ /*** icon - placeholder ***/
36
+ font-family: var(--db-icon-font-family, var(--db-icon-default-font-family, "db-ux-default")) !important;
37
+ font-size: var(--db-icon-font-size, 1.5rem);
38
+ -webkit-font-smoothing: antialiased;
39
+ -moz-osx-font-smoothing: grayscale;
40
+ font-style: normal;
41
+ font-variant: normal;
42
+ font-weight: var(--db-icon-font-weight, normal);
43
+ line-height: 1;
44
+ /* stylelint-disable-next-line declaration-property-value-no-unknown */
45
+ speak: none;
46
+ /* stylelint-disable-next-line declaration-property-value-no-unknown */
47
+ speak: never;
48
+ text-transform: none;
49
+ vertical-align: middle;
50
+ block-size: var(--db-icon-font-size, 1.5rem);
51
+ inline-size: var(--db-icon-font-size, 1.5rem);
52
+ }
53
+ @media aural {
54
+ .db-checkbox input:checked:not([data-hide-icon-before=true])::before, .db-checkbox input:indeterminate:not([data-hide-icon-before=true])::before {
55
+ content: none;
56
+ }
57
+ }
58
+ @media speech {
59
+ .db-checkbox input:checked:not([data-hide-icon-before=true])::before, .db-checkbox input:indeterminate:not([data-hide-icon-before=true])::before {
60
+ content: none;
61
+ }
62
+ }
63
+
64
+ /**
65
+ Generates 3 types of placeholders, e.g:
66
+ - %db-component-variables-md
67
+ - %db-font-size-md
68
+ - %db-overwrite-font-size-md
69
+ */
70
+ .db-checkbox {
71
+ /* Those variables are only for components to calculate heights and change icons */
72
+ --db-icon-font-weight: var(--db-base-body-icon-weight-md);
73
+ --db-icon-font-size: var(--db-base-body-icon-font-size-md);
74
+ --db-base-line-height: var(--db-type-body-line-height-md);
75
+ --db-base-font-size: var(--db-type-body-font-size-md);
76
+ line-height: var(--db-type-body-line-height-md);
77
+ font-size: var(--db-type-body-font-size-md);
78
+ }
79
+
80
+ .db-checkbox[data-size=small] {
81
+ /* Those variables are only for components to calculate heights and change icons */
82
+ --db-icon-font-weight: var(--db-base-body-icon-weight-sm);
83
+ --db-icon-font-size: var(--db-base-body-icon-font-size-sm);
84
+ --db-base-line-height: var(--db-type-body-line-height-sm);
85
+ --db-base-font-size: var(--db-type-body-font-size-sm);
86
+ line-height: var(--db-type-body-line-height-sm);
87
+ font-size: var(--db-type-body-font-size-sm);
88
+ }
89
+
90
+ .db-checkbox .db-infotext {
91
+ margin-block-start: var(--db-spacing-fixed-2xs);
92
+ }
93
+ .db-checkbox .db-infotext[data-semantic] {
94
+ display: none;
95
+ }
96
+
97
+ .db-checkbox input:indeterminate::before, .db-checkbox input:checked::before {
98
+ --db-icon-margin-end: 0;
99
+ display: inline-flex;
100
+ align-items: center;
101
+ justify-content: center;
102
+ block-size: calc(calc(var(--db-base-font-size) * var(--db-base-line-height)) - 2 * var(--db-border-height-3xs));
103
+ inline-size: calc(calc(var(--db-base-font-size) * var(--db-base-line-height)) - 2 * var(--db-border-height-3xs));
104
+ }
105
+
106
+ .db-checkbox {
107
+ /* stylelint-disable-next-line at-rule-empty-line-before */
108
+ /* stylelint-disable-next-line at-rule-empty-line-before */
109
+ }
110
+ .db-checkbox:has(input:required):is(label)::after,
111
+ .db-checkbox:has(input:required) label::after {
112
+ content: "*";
113
+ content: "*"/"";
114
+ /* stylelint-disable-next-line db-ux/use-spacings */
115
+ padding-inline-start: 1px;
116
+ }
117
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) .db-infotext {
118
+ /* stylelint-disable-next-line at-rule-empty-line-before */
119
+ }
120
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) .db-infotext[data-semantic=successful] {
121
+ display: flex;
122
+ }
123
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) .db-infotext:not([data-semantic]) {
124
+ display: none;
125
+ }
126
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input {
127
+ --db-adaptive-bg-basic-transparent-semi: var(
128
+ --db-successful-bg-basic-transparent-semi-default
129
+ );
130
+ --db-adaptive-bg-basic-transparent-hovered: var(
131
+ --db-successful-bg-basic-transparent-hovered
132
+ );
133
+ --db-adaptive-bg-basic-transparent-pressed: var(
134
+ --db-successful-bg-basic-transparent-pressed
135
+ );
136
+ }
137
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not(:checked), .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:is([type=radio]) {
138
+ --db-check-element-border-color: var(
139
+ --db-successful-on-bg-basic-emphasis-70-default
140
+ );
141
+ }
142
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked {
143
+ background-color: var(--db-successful-bg-inverted-contrast-high-default);
144
+ color: var(--db-successful-on-bg-inverted-default);
145
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
146
+ }
147
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked::before, .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked::after {
148
+ --db-icon-color: var(--db-successful-on-bg-inverted-default);
149
+ }
150
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]) {
151
+ cursor: pointer;
152
+ background-color: var(--db-successful-bg-inverted-contrast-high-hovered);
153
+ }
154
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input) {
155
+ cursor: initial;
156
+ }
157
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
158
+ cursor: pointer;
159
+ }
160
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]) {
161
+ cursor: pointer;
162
+ background-color: var(--db-successful-bg-inverted-contrast-high-pressed);
163
+ }
164
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input) {
165
+ cursor: initial;
166
+ }
167
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
168
+ cursor: pointer;
169
+ }
170
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid):is(label),
171
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-valid) label {
172
+ color: var(--db-successful-on-bg-basic-emphasis-80-default);
173
+ }
174
+ .db-checkbox:has(input[data-custom-validity=valid]) .db-infotext {
175
+ /* stylelint-disable-next-line at-rule-empty-line-before */
176
+ }
177
+ .db-checkbox:has(input[data-custom-validity=valid]) .db-infotext[data-semantic=successful] {
178
+ display: flex;
179
+ }
180
+ .db-checkbox:has(input[data-custom-validity=valid]) .db-infotext:not([data-semantic]) {
181
+ display: none;
182
+ }
183
+ .db-checkbox:has(input[data-custom-validity=valid]) input {
184
+ --db-adaptive-bg-basic-transparent-semi: var(
185
+ --db-successful-bg-basic-transparent-semi-default
186
+ );
187
+ --db-adaptive-bg-basic-transparent-hovered: var(
188
+ --db-successful-bg-basic-transparent-hovered
189
+ );
190
+ --db-adaptive-bg-basic-transparent-pressed: var(
191
+ --db-successful-bg-basic-transparent-pressed
192
+ );
193
+ }
194
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not(:checked), .db-checkbox:has(input[data-custom-validity=valid]) input:is([type=radio]) {
195
+ --db-check-element-border-color: var(
196
+ --db-successful-on-bg-basic-emphasis-70-default
197
+ );
198
+ }
199
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked {
200
+ background-color: var(--db-successful-bg-inverted-contrast-high-default);
201
+ color: var(--db-successful-on-bg-inverted-default);
202
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
203
+ }
204
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked::before, .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked::after {
205
+ --db-icon-color: var(--db-successful-on-bg-inverted-default);
206
+ }
207
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]) {
208
+ cursor: pointer;
209
+ background-color: var(--db-successful-bg-inverted-contrast-high-hovered);
210
+ }
211
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input) {
212
+ cursor: initial;
213
+ }
214
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
215
+ cursor: pointer;
216
+ }
217
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]) {
218
+ cursor: pointer;
219
+ background-color: var(--db-successful-bg-inverted-contrast-high-pressed);
220
+ }
221
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input) {
222
+ cursor: initial;
223
+ }
224
+ .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:has(input[data-custom-validity=valid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
225
+ cursor: pointer;
226
+ }
227
+ .db-checkbox:has(input[data-custom-validity=valid]):is(label),
228
+ .db-checkbox:has(input[data-custom-validity=valid]) label {
229
+ color: var(--db-successful-on-bg-basic-emphasis-80-default);
230
+ }
231
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) .db-infotext[data-semantic=critical] {
232
+ display: flex;
233
+ }
234
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) .db-infotext:not([data-semantic]) {
235
+ display: none;
236
+ }
237
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input {
238
+ --db-adaptive-bg-basic-transparent-semi: var(
239
+ --db-critical-bg-basic-transparent-semi-default
240
+ );
241
+ --db-adaptive-bg-basic-transparent-hovered: var(
242
+ --db-critical-bg-basic-transparent-hovered
243
+ );
244
+ --db-adaptive-bg-basic-transparent-pressed: var(
245
+ --db-critical-bg-basic-transparent-pressed
246
+ );
247
+ }
248
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not(:checked), .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:is([type=radio]) {
249
+ --db-check-element-border-color: var(
250
+ --db-critical-on-bg-basic-emphasis-70-default
251
+ );
252
+ }
253
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked {
254
+ background-color: var(--db-successful-bg-inverted-contrast-high-default);
255
+ color: var(--db-successful-on-bg-inverted-default);
256
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
257
+ }
258
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked::before, .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked::after {
259
+ --db-icon-color: var(--db-successful-on-bg-inverted-default);
260
+ }
261
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]) {
262
+ cursor: pointer;
263
+ background-color: var(--db-successful-bg-inverted-contrast-high-hovered);
264
+ }
265
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input) {
266
+ cursor: initial;
267
+ }
268
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
269
+ cursor: pointer;
270
+ }
271
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]) {
272
+ cursor: pointer;
273
+ background-color: var(--db-successful-bg-inverted-contrast-high-pressed);
274
+ }
275
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input) {
276
+ cursor: initial;
277
+ }
278
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
279
+ cursor: pointer;
280
+ }
281
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid):is(label),
282
+ .db-checkbox:has(input:not([data-custom-validity]):required:user-invalid) label {
283
+ color: var(--db-critical-on-bg-basic-emphasis-80-default);
284
+ }
285
+ .db-checkbox:has(input[data-custom-validity=invalid]) .db-infotext[data-semantic=critical] {
286
+ display: flex;
287
+ }
288
+ .db-checkbox:has(input[data-custom-validity=invalid]) .db-infotext:not([data-semantic]) {
289
+ display: none;
290
+ }
291
+ .db-checkbox:has(input[data-custom-validity=invalid]) input {
292
+ --db-adaptive-bg-basic-transparent-semi: var(
293
+ --db-critical-bg-basic-transparent-semi-default
294
+ );
295
+ --db-adaptive-bg-basic-transparent-hovered: var(
296
+ --db-critical-bg-basic-transparent-hovered
297
+ );
298
+ --db-adaptive-bg-basic-transparent-pressed: var(
299
+ --db-critical-bg-basic-transparent-pressed
300
+ );
301
+ }
302
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not(:checked), .db-checkbox:has(input[data-custom-validity=invalid]) input:is([type=radio]) {
303
+ --db-check-element-border-color: var(
304
+ --db-critical-on-bg-basic-emphasis-70-default
305
+ );
306
+ }
307
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked {
308
+ background-color: var(--db-successful-bg-inverted-contrast-high-default);
309
+ color: var(--db-successful-on-bg-inverted-default);
310
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
311
+ }
312
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked::before, .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked::after {
313
+ --db-icon-color: var(--db-successful-on-bg-inverted-default);
314
+ }
315
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]) {
316
+ cursor: pointer;
317
+ background-color: var(--db-successful-bg-inverted-contrast-high-hovered);
318
+ }
319
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input) {
320
+ cursor: initial;
321
+ }
322
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
323
+ cursor: pointer;
324
+ }
325
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]) {
326
+ cursor: pointer;
327
+ background-color: var(--db-successful-bg-inverted-contrast-high-pressed);
328
+ }
329
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input) {
330
+ cursor: initial;
331
+ }
332
+ .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:has(input[data-custom-validity=invalid]) input:not([type=radio]):checked:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
333
+ cursor: pointer;
334
+ }
335
+ .db-checkbox:has(input[data-custom-validity=invalid]):is(label),
336
+ .db-checkbox:has(input[data-custom-validity=invalid]) label {
337
+ color: var(--db-critical-on-bg-basic-emphasis-80-default);
338
+ }
339
+ .db-checkbox:has(input:disabled) {
340
+ opacity: 0.4;
341
+ }
342
+ .db-checkbox:is(label),
343
+ .db-checkbox label {
344
+ display: flex;
345
+ align-items: flex-start;
346
+ position: relative;
347
+ gap: var(--db-spacing-fixed-xs);
348
+ }
349
+ .db-checkbox:is(label):not(:has(input:disabled)),
350
+ .db-checkbox label:not(:has(input:disabled)) {
351
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
352
+ }
353
+ .db-checkbox:is(label):not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]),
354
+ .db-checkbox label:not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]) {
355
+ cursor: pointer;
356
+ }
357
+ .db-checkbox:is(label):not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:is(label):not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]):is(input),
358
+ .db-checkbox label:not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]):is(textarea),
359
+ .db-checkbox label:not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]):is(input) {
360
+ cursor: initial;
361
+ }
362
+ .db-checkbox:is(label):not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:is(label):not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)),
363
+ .db-checkbox label:not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]),
364
+ .db-checkbox label:not(:has(input:disabled)):hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
365
+ cursor: pointer;
366
+ }
367
+ .db-checkbox:is(label):not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]),
368
+ .db-checkbox label:not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]) {
369
+ cursor: pointer;
370
+ }
371
+ .db-checkbox:is(label):not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox:is(label):not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]):is(input),
372
+ .db-checkbox label:not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]):is(textarea),
373
+ .db-checkbox label:not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]):is(input) {
374
+ cursor: initial;
375
+ }
376
+ .db-checkbox:is(label):not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox:is(label):not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)),
377
+ .db-checkbox label:not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]),
378
+ .db-checkbox label:not(:has(input:disabled)):active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
379
+ cursor: pointer;
380
+ }
381
+ .db-checkbox input {
382
+ background-color: var(--db-adaptive-bg-basic-transparent-full-default);
383
+ place-content: center center;
384
+ appearance: none;
385
+ aspect-ratio: 1;
386
+ /* stylelint-disable-next-line db-ux/use-border-height */
387
+ border: min(var(--db-border-height-2xs), 2px) solid var(--db-check-element-border-color, var(--db-adaptive-on-bg-basic-emphasis-100-default));
388
+ block-size: calc(var(--db-base-font-size) * var(--db-base-line-height));
389
+ inline-size: calc(var(--db-base-font-size) * var(--db-base-line-height));
390
+ padding: 0;
391
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
392
+ }
393
+ .db-checkbox input:hover:not(:disabled, [aria-disabled=true]) {
394
+ cursor: pointer;
395
+ background-color: var(--db-adaptive-bg-basic-transparent-hovered);
396
+ }
397
+ .db-checkbox input:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox input:hover:not(:disabled, [aria-disabled=true]):is(input) {
398
+ cursor: initial;
399
+ }
400
+ .db-checkbox input:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox input:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
401
+ cursor: pointer;
402
+ }
403
+ .db-checkbox input:active:not(:disabled, [aria-disabled=true]) {
404
+ cursor: pointer;
405
+ background-color: var(--db-adaptive-bg-basic-transparent-pressed);
406
+ }
407
+ .db-checkbox input:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox input:active:not(:disabled, [aria-disabled=true]):is(input) {
408
+ cursor: initial;
409
+ }
410
+ .db-checkbox input:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox input:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
411
+ cursor: pointer;
412
+ }
413
+ .db-checkbox[data-size=small] input {
414
+ margin-inline-end: var(--db-spacing-fixed-2xs);
415
+ }
416
+ .db-checkbox[data-hide-label=true] {
417
+ font-size: 0;
418
+ }
419
+ .db-checkbox[data-hide-label=true] input {
420
+ margin-inline-end: 0;
421
+ }
422
+ .db-checkbox input {
423
+ display: flex;
424
+ border-radius: var(--db-border-radius-2xs);
425
+ align-items: center;
426
+ justify-content: center;
427
+ }
428
+ .db-checkbox input:checked {
429
+ --db-check-element-border-color: var(--db-adaptive-on-bg-basic-emphasis-70-default);
430
+ background-color: var(--db-adaptive-bg-inverted-contrast-max-default);
431
+ color: var(--db-adaptive-on-bg-inverted-default);
432
+ /* stylelint-disable-next-line a11y/selector-pseudo-class-focus */
433
+ border-width: 0;
434
+ }
435
+ .db-checkbox input:checked:not([data-hide-icon-before=true])::before {
436
+ --db-icon: "check";
437
+ margin-inline-end: var(--db-icon-margin-end, var(--db-spacing-fixed-xs));
438
+ }
439
+ .db-checkbox input:checked::before, .db-checkbox input:checked::after {
440
+ --db-icon-color: var(--db-adaptive-on-bg-inverted-default);
441
+ }
442
+ .db-checkbox input:checked:hover:not(:disabled, [aria-disabled=true]) {
443
+ cursor: pointer;
444
+ background-color: var(--db-adaptive-bg-inverted-contrast-max-hovered);
445
+ }
446
+ .db-checkbox input:checked:hover:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox input:checked:hover:not(:disabled, [aria-disabled=true]):is(input) {
447
+ cursor: initial;
448
+ }
449
+ .db-checkbox input:checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox input:checked:hover:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
450
+ cursor: pointer;
451
+ }
452
+ .db-checkbox input:checked:active:not(:disabled, [aria-disabled=true]) {
453
+ cursor: pointer;
454
+ background-color: var(--db-adaptive-bg-inverted-contrast-max-pressed);
455
+ }
456
+ .db-checkbox input:checked:active:not(:disabled, [aria-disabled=true]):is(textarea), .db-checkbox input:checked:active:not(:disabled, [aria-disabled=true]):is(input) {
457
+ cursor: initial;
458
+ }
459
+ .db-checkbox input:checked:active:not(:disabled, [aria-disabled=true]):is(input[type=checkbox]), .db-checkbox input:checked:active:not(:disabled, [aria-disabled=true]):is(input[type=radio]:not(:checked)) {
460
+ cursor: pointer;
461
+ }
462
+ .db-checkbox input:indeterminate:not([data-hide-icon-before=true])::before {
463
+ --db-icon: "minus";
464
+ margin-inline-end: var(--db-icon-margin-end, var(--db-spacing-fixed-xs));
465
+ }
466
+ @media (forced-colors: active) {
467
+ .db-checkbox input:indeterminate, .db-checkbox input:checked {
468
+ --db-check-element-border-color: var(--db-adaptive-on-bg-basic-emphasis-100-default);
469
+ border-width: min(var(--db-border-height-2xs), 2px);
470
+ }
471
+ .db-checkbox input:indeterminate:not([data-hide-icon-before=true])::before, .db-checkbox input:checked:not([data-hide-icon-before=true])::before {
472
+ align-content: center;
473
+ font-size: calc(var(--db-icon-font-size) - 2 * min(var(--db-border-height-2xs), 2px));
474
+ padding: min(var(--db-border-height-2xs), 2px);
475
+ }
476
+ }
@@ -0,0 +1,80 @@
1
+ @use "@db-ux/core-foundations/build/styles/variables";
2
+ @use "@db-ux/core-foundations/build/styles/icons";
3
+ @use "@db-ux/core-foundations/build/styles/fonts";
4
+ @use "@db-ux/core-foundations/build/styles/colors";
5
+ @use "@db-ux/core-foundations/build/styles/helpers";
6
+ @use "../../styles/internal/component";
7
+ @use "../../styles/internal/form-components";
8
+
9
+ %center-icon {
10
+ &::before {
11
+ --db-icon-margin-end: 0;
12
+
13
+ display: inline-flex;
14
+ align-items: center;
15
+ justify-content: center;
16
+ block-size: calc(
17
+ #{form-components.$font-size-height} - 2 *
18
+ #{variables.$db-border-height-3xs}
19
+ );
20
+ inline-size: calc(
21
+ #{form-components.$font-size-height} - 2 *
22
+ #{variables.$db-border-height-3xs}
23
+ );
24
+ }
25
+ }
26
+
27
+ .db-checkbox {
28
+ @extend %helper-message;
29
+
30
+ @include form-components.set-default-check-element(check);
31
+
32
+ input {
33
+ display: flex;
34
+ border-radius: variables.$db-border-radius-2xs;
35
+ align-items: center;
36
+ justify-content: center;
37
+
38
+ &:checked {
39
+ --db-check-element-border-color: #{colors.$db-adaptive-on-bg-basic-emphasis-70-default};
40
+
41
+ @extend %center-icon;
42
+
43
+ // Check icon
44
+ @include icons.set-icon("check");
45
+ @include colors.set-current-colors(
46
+ colors.$db-adaptive-bg-inverted-contrast-max-default,
47
+ colors.$db-adaptive-on-bg-inverted-default,
48
+ colors.$db-adaptive-bg-inverted-contrast-max-hovered,
49
+ colors.$db-adaptive-bg-inverted-contrast-max-pressed
50
+ );
51
+
52
+ // The icon within the checkbox has the same dimensions as the checkbox itself and that for there can't be any border
53
+ border-width: 0;
54
+ }
55
+
56
+ &:indeterminate {
57
+ @extend %center-icon;
58
+
59
+ @include icons.set-icon("minus");
60
+ }
61
+
62
+ @media (forced-colors: active) {
63
+ &:indeterminate,
64
+ &:checked {
65
+ --db-check-element-border-color: #{colors.$db-adaptive-on-bg-basic-emphasis-100-default};
66
+
67
+ border-width: form-components.$check-border-size;
68
+
69
+ &:not([data-hide-icon-before="true"])::before {
70
+ align-content: center;
71
+ font-size: calc(
72
+ var(--db-icon-font-size) - 2 *
73
+ #{form-components.$check-border-size}
74
+ );
75
+ padding: #{form-components.$check-border-size};
76
+ }
77
+ }
78
+ }
79
+ }
80
+ }
@@ -0,0 +1,84 @@
1
+ /* Use sizing's for fixed heights/widths e.g. the db-button has always a fixed height */
2
+ /* Use fixed spacings for all kind of distances (margin, padding, ...) */
3
+ /* The primary use-case for responsive spacings are
4
+ paddings/gaps in an application e.g. the <main> should have a responsive padding. */
5
+ /* Elevation */
6
+ /* Border */
7
+ /* Transitions */
8
+ /* Variants for adaptive components like input, select, notification, ... */
9
+ .db-divider:is(:not([data-margin]), [data-margin=small]) {
10
+ margin: var(--db-spacing-fixed-sm) 0;
11
+ }
12
+ .db-divider[data-margin=medium] {
13
+ margin: var(--db-spacing-fixed-md) 0;
14
+ }
15
+ .db-divider[data-margin=large] {
16
+ margin: var(--db-spacing-fixed-lg) 0;
17
+ }
18
+ .db-divider[data-margin=none] {
19
+ margin: 0;
20
+ }
21
+ .db-divider:not([data-variant=vertical]) {
22
+ --db-divider-bg-color: var(--db-adaptive-on-bg-basic-emphasis-60-default);
23
+ position: relative;
24
+ block-size: var(--db-border-height-3xs);
25
+ }
26
+ .db-divider:not([data-variant=vertical])[data-emphasis=strong] {
27
+ --db-divider-bg-color: var(--db-adaptive-on-bg-basic-emphasis-70-default);
28
+ }
29
+ .db-divider:not([data-variant=vertical])::before {
30
+ content: "";
31
+ background-color: var(--db-divider-bg-color);
32
+ position: absolute;
33
+ block-size: var(--db-border-height-3xs);
34
+ inset-block-start: 0;
35
+ inset-inline: 0;
36
+ /* stylelint-disable-next-line at-rule-empty-line-before */
37
+ }
38
+ @media (forced-colors: active) {
39
+ .db-divider:not([data-variant=vertical]) {
40
+ /* stylelint-disable-next-line db-ux/use-border-color */
41
+ border: var(--db-border-height-3xs) solid var(--db-divider-bg-color);
42
+ }
43
+ }
44
+ .db-divider:not([data-variant=vertical])[data-width=full] {
45
+ inline-size: 100%;
46
+ }
47
+ .db-divider[data-variant=vertical] {
48
+ --db-divider-bg-color: var(--db-adaptive-on-bg-basic-emphasis-60-default);
49
+ position: relative;
50
+ inline-size: var(--db-border-height-3xs);
51
+ }
52
+ .db-divider[data-variant=vertical][data-emphasis=strong] {
53
+ --db-divider-bg-color: var(--db-adaptive-on-bg-basic-emphasis-70-default);
54
+ }
55
+ .db-divider[data-variant=vertical]::before {
56
+ content: "";
57
+ background-color: var(--db-divider-bg-color);
58
+ position: absolute;
59
+ inline-size: var(--db-border-height-3xs);
60
+ inset-inline-start: 0;
61
+ inset-block: 0;
62
+ /* stylelint-disable-next-line at-rule-empty-line-before */
63
+ }
64
+ @media (forced-colors: active) {
65
+ .db-divider[data-variant=vertical] {
66
+ /* stylelint-disable-next-line db-ux/use-border-color */
67
+ border: var(--db-border-height-3xs) solid var(--db-divider-bg-color);
68
+ }
69
+ }
70
+ .db-divider[data-variant=vertical]:is(:not([data-margin]), [data-margin=small]) {
71
+ margin: 0 var(--db-spacing-fixed-sm);
72
+ }
73
+ .db-divider[data-variant=vertical][data-margin=medium] {
74
+ margin: 0 var(--db-spacing-fixed-md);
75
+ }
76
+ .db-divider[data-variant=vertical][data-margin=large] {
77
+ margin: 0 var(--db-spacing-fixed-lg);
78
+ }
79
+ .db-divider[data-variant=vertical][data-margin=none] {
80
+ margin: 0;
81
+ }
82
+ .db-divider[data-variant=vertical][data-width=full] {
83
+ block-size: 100%;
84
+ }