@a-type/ui 6.0.51 → 6.0.53

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 (67) hide show
  1. package/dist/colors.module.css +59 -0
  2. package/dist/components/actions/ActionBar.module.css +34 -0
  3. package/dist/components/actions/ActionButton.module.css +6 -0
  4. package/dist/components/avatar/Avatar.module.css +35 -0
  5. package/dist/components/box/Box.module.css +291 -0
  6. package/dist/components/button/Button.module.css +148 -0
  7. package/dist/components/camera/Camera.module.css +65 -0
  8. package/dist/components/card/Card.module.css +183 -0
  9. package/dist/components/checkbox/Checkbox.module.css +74 -0
  10. package/dist/components/chip/Chip.module.css +32 -0
  11. package/dist/components/collapsible/Collapsible.module.css +36 -0
  12. package/dist/components/combobox/Combobox.module.css +170 -0
  13. package/dist/components/datePicker/Calendar.module.css +167 -0
  14. package/dist/components/datePicker/datePicker.module.css +7 -0
  15. package/dist/components/datePicker/dateRangePicker.module.css +38 -0
  16. package/dist/components/dialog/Dialog.module.css +188 -0
  17. package/dist/components/divider/Divider.module.css +10 -0
  18. package/dist/components/dropdownMenu/DropdownMenu.module.css +3 -0
  19. package/dist/components/editableText/EditableText.module.css +44 -0
  20. package/dist/components/emojiPicker/EmojiPicker.module.css +84 -0
  21. package/dist/components/forms/EmojiField.module.css +8 -0
  22. package/dist/components/forms/Field.module.css +62 -0
  23. package/dist/components/forms/Form.module.css +6 -0
  24. package/dist/components/forms/NumberStepperField.module.css +5 -0
  25. package/dist/components/forms/TextField.module.css +11 -0
  26. package/dist/components/horizontalList/HorizontalList.module.css +50 -0
  27. package/dist/components/icon/Icon.module.css +20 -0
  28. package/dist/components/imageUploader/ImageUploader.module.css +67 -0
  29. package/dist/components/img/Img.module.css +42 -0
  30. package/dist/components/input/Input.module.css +100 -0
  31. package/dist/components/layouts/PageContent.module.css +25 -0
  32. package/dist/components/layouts/PageFixedArea.module.css +11 -0
  33. package/dist/components/layouts/PageNav.module.css +31 -0
  34. package/dist/components/layouts/PageNowPlaying.module.css +46 -0
  35. package/dist/components/layouts/PageRoot.module.css +29 -0
  36. package/dist/components/layouts/PageSection.module.css +19 -0
  37. package/dist/components/lightbox/Lightbox.module.css +104 -0
  38. package/dist/components/lists/lists.module.css +31 -0
  39. package/dist/components/marquee/marquee.module.css +32 -0
  40. package/dist/components/navBar/NavBar.module.css +143 -0
  41. package/dist/components/note/Note.module.css +114 -0
  42. package/dist/components/numberStepper/NumberStepper.module.css +32 -0
  43. package/dist/components/particles/ParticleLayer.module.css +8 -0
  44. package/dist/components/peek/Peek.module.css +96 -0
  45. package/dist/components/popover/Popover.module.css +24 -0
  46. package/dist/components/primitives/menus.module.css +262 -0
  47. package/dist/components/progress/Progress.module.css +54 -0
  48. package/dist/components/pwaInstall/PwaInstall.module.css +23 -0
  49. package/dist/components/quickAction/QuickAction.module.css +59 -0
  50. package/dist/components/richEditor/richEditor.module.css +102 -0
  51. package/dist/components/scrollArea/ScrollArea.module.css +187 -0
  52. package/dist/components/select/Select.module.css +46 -0
  53. package/dist/components/skeletons/skeletons.module.css +33 -0
  54. package/dist/components/slider/Slider.module.css +97 -0
  55. package/dist/components/spinner/Spinner.module.css +54 -0
  56. package/dist/components/splashScreen/SplashScreen.module.css +54 -0
  57. package/dist/components/switch/Switch.module.css +63 -0
  58. package/dist/components/tabs/tabs.module.css +139 -0
  59. package/dist/components/textArea/TextArea.module.css +14 -0
  60. package/dist/components/toasts/toasts.module.css +201 -0
  61. package/dist/components/toggleGroup/toggleGroup.module.css +55 -0
  62. package/dist/components/tooltip/Tooltip.module.css +72 -0
  63. package/dist/components/typography/typography.module.css +74 -0
  64. package/dist/components/viewport/Viewport.module.css +44 -0
  65. package/dist/components/viewport/ViewportContent.module.css +8 -0
  66. package/dist/theme.stories.module.css +13 -0
  67. package/package.json +6 -3
@@ -0,0 +1,183 @@
1
+ .root {
2
+ position: relative;
3
+ height: max-content;
4
+ display: flex;
5
+ flex-direction: column;
6
+ overflow: clip;
7
+
8
+ @apply --mx-shadow(var(--m-shadow-sm));
9
+ border-width: var(--m-lineWidth-sm);
10
+ border-radius: var(--m-surface-radius);
11
+
12
+ font-size: var(--m-prose-secondary-size);
13
+ line-height: var(--m-prose-secondary-lineHeight);
14
+ font-weight: var(--m-prose-secondary-weight);
15
+
16
+ padding: 0;
17
+
18
+ &[data-emphasis='ambient'] {
19
+ @apply --mx-surface-ambient;
20
+ padding: 0;
21
+ @apply --mx-bg(--fn-color-heavier(var(--m-surface-ambient-bg), 0.2));
22
+ @apply --mx-borderColor-faded(50%);
23
+ }
24
+ &[data-emphasis='secondary'] {
25
+ @apply --mx-surface-secondary;
26
+ padding: 0;
27
+ @apply --mx-borderColor-faded(50%);
28
+ }
29
+ &[data-emphasis='primary'] {
30
+ @apply --mx-surface-primary;
31
+ padding: 0;
32
+ @apply --mx-borderColor-faded(50%);
33
+ }
34
+ }
35
+
36
+ .main {
37
+ position: relative;
38
+ z-index: 1;
39
+ min-height: --fn-literal(40px);
40
+ display: flex;
41
+ flex-direction: column;
42
+ flex-grow: 1;
43
+ align-items: start;
44
+ gap: var(--m-space-xs);
45
+
46
+ text-align: start;
47
+ font-size: var(--m-prose-ambient-size);
48
+ line-height: var(--m-prose-ambient-lineHeight);
49
+ font-weight: var(--m-prose-ambient-weight);
50
+
51
+ padding: var(--m-space-md);
52
+ padding-bottom: var(--m-space-xs);
53
+ gap: var(--m-space-sm);
54
+
55
+ transition: all var(--m-duration) var(--m-easing);
56
+
57
+ @apply --mx-shadow;
58
+ /* Purposefully don't use mixin, allow children to inherit from card root */
59
+ background-color: transparent;
60
+
61
+ border-top-left-radius: inherit;
62
+ border-top-right-radius: inherit;
63
+ border-width: 0;
64
+
65
+ &[data-interactive] {
66
+ cursor: pointer;
67
+
68
+ &:hover,
69
+ &:focus-visible,
70
+ &[data-focus-visible] {
71
+ @apply --mx-fg(var(--m-color-neutral-ink));
72
+ background-color: --fn-color-faded(var(--m-color-neutral-ink), 10%);
73
+ }
74
+
75
+ &:focus {
76
+ outline: none;
77
+ }
78
+ &:focus-visible,
79
+ &[data-focus-visible] {
80
+ @apply --mx-ring(inset 0 0 0 2px var(--m-color-neutral-ink));
81
+ }
82
+
83
+ &:disabled,
84
+ &[data-disabled] {
85
+ cursor: default;
86
+ }
87
+ }
88
+ }
89
+
90
+ .title {
91
+ z-index: 1;
92
+ padding: var(--m-space-xs) var(--m-space-md);
93
+
94
+ @apply --mx-prose-primary;
95
+
96
+ text-overflow: ellipsis;
97
+ white-space: nowrap;
98
+ overflow: clip;
99
+ max-width: 100%;
100
+ display: block;
101
+ border-radius: var(--m-radius-md);
102
+
103
+ @apply --mx-bg(inherit);
104
+ }
105
+
106
+ .content {
107
+ z-index: 1;
108
+ display: flex;
109
+ flex-direction: row;
110
+ gap: var(--m-space-sm);
111
+ align-items: center;
112
+ border-radius: var(--m-radius-sm);
113
+
114
+ padding: var(--m-space-sm) var(--m-space-md);
115
+
116
+ font-size: var(--m-prose-ambient-size);
117
+ line-height: 1;
118
+ font-weight: var(--m-prose-ambient-weight);
119
+
120
+ @apply --mx-bg(inherit);
121
+ @apply --mx-bg-faded(70%);
122
+
123
+ &[data-unstyled] {
124
+ background-color: unset;
125
+ padding: 0;
126
+ border-width: 0;
127
+ }
128
+ }
129
+
130
+ .image {
131
+ position: absolute;
132
+ bottom: 0;
133
+ right: 0;
134
+ top: 0;
135
+ z-index: 0;
136
+ height: 100%;
137
+ width: 100%;
138
+
139
+ background-size: cover;
140
+ background-position: center;
141
+ object-fit: cover;
142
+ }
143
+
144
+ .footer {
145
+ position: relative;
146
+ z-index: 1;
147
+ display: flex;
148
+ flex-direction: row;
149
+ flex-shrink: 0;
150
+ padding: var(--m-space-md);
151
+ }
152
+
153
+ .actions {
154
+ display: flex;
155
+ flex-direction: row;
156
+ gap: var(--m-space-sm);
157
+ align-items: center;
158
+
159
+ margin: auto auto auto --fn-literal(0px);
160
+ padding: 0;
161
+
162
+ @apply --mx-bg(--fn-color-faded(var(--m-surface-ambient-bg), 50%));
163
+ /* @apply --mx-borderColor(var(--m-surface-ambient-borderColor));
164
+ border-width: var(--m-lineWidth-sm); */
165
+ border-radius: var(--m-action-radius);
166
+ }
167
+
168
+ .menu {
169
+ margin: auto;
170
+ margin-right: 0;
171
+ padding: 0;
172
+
173
+ display: flex;
174
+ flex-direction: row;
175
+ align-items: center;
176
+
177
+ gap: var(--m-space-xs);
178
+
179
+ @apply --mx-bg(--fn-color-faded(var(--m-surface-ambient-bg), 50%));
180
+ @apply --mx-borderColor(var(--m-surface-ambient-borderColor));
181
+ border-width: var(--m-lineWidth-sm);
182
+ border-radius: var(--m-action-radius);
183
+ }
@@ -0,0 +1,74 @@
1
+ @keyframes checkbox-fade {
2
+ from {
3
+ background-color: var(--mx-bg-ref);
4
+ opacity: 1;
5
+ }
6
+ to {
7
+ background-color: transparent;
8
+ opacity: 0.9;
9
+ border-color: transparent;
10
+ box-shadow: none;
11
+ }
12
+ }
13
+
14
+ .root {
15
+ position: relative;
16
+ display: block;
17
+ flex-shrink: 0;
18
+
19
+ --size: 28px;
20
+ height: var(--size);
21
+ width: var(--size);
22
+
23
+ cursor: pointer;
24
+
25
+ transition: var(--m-duration) var(--m-easing);
26
+
27
+ @apply --mx-shadow;
28
+ @apply --mx-bg(var(--m-control-bg));
29
+ @apply --mx-borderColor(var(--m-control-borderColor));
30
+ border-radius: var(--m-control-radius);
31
+ border-width: var(--m-lineWidth-md);
32
+
33
+ &:focus {
34
+ outline: none;
35
+ }
36
+ &:focus-visible {
37
+ --mx-ring-value: --fn-focus-ring();
38
+ }
39
+
40
+ &:hover:not(:disabled) {
41
+ @apply --mx-bg-lighter(2);
42
+ --mx-ring-value: --fn-ring(var(--mx-bg-ref), 2px);
43
+ }
44
+
45
+ &:active:not(:disabled) {
46
+ @apply --mx-bg-heavier(1);
47
+ --mx-ring-value: --fn-ring(var(--mx-bg-ref), 2px);
48
+ }
49
+
50
+ &:disabled {
51
+ box-shadow: none;
52
+ @apply --mx-bg(transparent);
53
+ @apply --mx-borderColor(var(--m-color-neutral-light));
54
+ }
55
+
56
+ &[data-checked] {
57
+ @apply --mx-bg(var(--m-color-main));
58
+ @apply --mx-borderColor(var(--m-color-main-ink));
59
+
60
+ &[data-checked-mode='faded'] {
61
+ animation-name: checkbox-fade;
62
+ animation-duration: 5s;
63
+ animation-fill-mode: forwards;
64
+ }
65
+ }
66
+ }
67
+
68
+ .indicator {
69
+ position: absolute;
70
+ top: 50%;
71
+ left: 50%;
72
+ transform: translate(-50%, -50%);
73
+ color: var(--m-color-main-ink);
74
+ }
@@ -0,0 +1,32 @@
1
+ .root {
2
+ display: inline-flex;
3
+ align-items: center;
4
+ gap: var(--m-space-md);
5
+ white-space: nowrap;
6
+
7
+ @apply --mx-bg(var(--m-color-neutral-paper));
8
+ @apply --mx-fg(contrast-color(var(--mx-bg-ref)));
9
+ @apply --mx-borderColor(var(--m-color-main-heavy));
10
+
11
+ border-width: var(--m-lineWidth-sm);
12
+ border-radius: var(--m-action-radius);
13
+
14
+ font-size: var(--m-prose-ambient-size);
15
+ line-height: normal;
16
+ font-weight: var(--m-prose-ambient-weight);
17
+ font-family: var(--m-prose-ambient-font);
18
+
19
+ && {
20
+ padding: var(--m-space-sm) var(--m-space-md);
21
+ }
22
+
23
+ &[data-emphasis='primary'] {
24
+ @apply --mx-bg(var(--m-color-main-wash));
25
+ @apply --mx-borderColor(var(--m-color-main-heavy));
26
+ }
27
+ &[data-emphasis='ambient'] {
28
+ @apply --mx-bg(transparent);
29
+ @apply --mx-borderColor(transparent);
30
+ @apply --mx-fg(var(--m-color-neutral-ink));
31
+ }
32
+ }
@@ -0,0 +1,36 @@
1
+ .root {
2
+ overflow: clip;
3
+ transition: all var(--m-duration) var(--m-easing);
4
+
5
+ &[data-horizontal],
6
+ &[data-both] {
7
+ width: var(--collapsible-panel-width);
8
+ }
9
+ &[data-vertical],
10
+ &[data-both] {
11
+ height: var(--collapsible-panel-height);
12
+ }
13
+
14
+ &[data-starting-style],
15
+ &[data-ending-style] {
16
+ &[data-vertical],
17
+ &[data-both] {
18
+ height: 0;
19
+ }
20
+ &[data-horizontal],
21
+ &[data-both] {
22
+ width: 0;
23
+ }
24
+ }
25
+
26
+ &[data-hidden]:not([hidden='until-found']) {
27
+ display: none;
28
+ }
29
+ }
30
+
31
+ .icon {
32
+ transition: transform var(--m-duration) var(--m-easing);
33
+ [data-panel-open] & {
34
+ transform: rotate(180deg);
35
+ }
36
+ }
@@ -0,0 +1,170 @@
1
+ .backdrop {
2
+ position: fixed;
3
+ inset: 0;
4
+ }
5
+
6
+ .empty:not(:empty) {
7
+ @apply --mx-fg(var(--m-color-neutral-heavy));
8
+ padding: var(--m-space-sm);
9
+ font-size: var(--m-prose-ambient-size);
10
+ line-height: var(--m-prose-ambient-lineHeight);
11
+ font-weight: var(--m-prose-ambient-weight);
12
+ }
13
+
14
+ .group {
15
+ display: flex;
16
+ flex-direction: column;
17
+ overflow: clip;
18
+ padding: var(--m-space-md);
19
+ gap: var(--m-space-xs);
20
+ }
21
+
22
+ .groupItem {
23
+ @apply --mx-ring;
24
+ &[data-highlighted] {
25
+ @apply --mx-ring(--fn-ring(var(--m-color-main-mid), 2px));
26
+ }
27
+ }
28
+
29
+ .groupItemList {
30
+ display: flex;
31
+ flex-direction: row;
32
+ flex-wrap: wrap;
33
+ gap: var(--m-space-xs);
34
+ }
35
+
36
+ .groupLabel {
37
+ text-transform: uppercase;
38
+ width: 100%;
39
+ @apply --mx-fg(var(--m-color-neutral-heavy));
40
+ padding-inline: var(--m-space-xs);
41
+ font-size: var(--m-prose-ambient-size);
42
+ line-height: var(--m-prose-ambient-lineHeight);
43
+ font-weight: var(--m-prose-ambient-weight);
44
+ }
45
+
46
+ .icon {
47
+ display: flex;
48
+ align-items: center;
49
+ justify-content: center;
50
+ flex-shrink: 0;
51
+ transition: transform var(--m-duration) var(--m-easing);
52
+
53
+ &[data-open] {
54
+ transform: rotate(180deg);
55
+ }
56
+ }
57
+
58
+ .chips {
59
+ display: flex;
60
+ flex-direction: row;
61
+ flex-wrap: wrap;
62
+ align-items: center;
63
+ gap: var(--m-space-xs);
64
+ padding-inline-start: var(--m-space-md);
65
+ }
66
+
67
+ .chipsList {
68
+ display: flex;
69
+ flex-direction: row;
70
+ flex-wrap: wrap;
71
+ gap: var(--m-space-xs);
72
+ padding-inline: var(--m-space-sm);
73
+ margin-inline-start: calc(-1 * var(--m-space-md));
74
+
75
+ &:empty {
76
+ display: none;
77
+ }
78
+ }
79
+
80
+ .chipInput {
81
+ min-width: 3ch;
82
+ flex-grow: 1;
83
+ padding-inline-start: 0px;
84
+ }
85
+
86
+ .chipInputWrapper {
87
+ max-width: 100%;
88
+ min-width: 12ch;
89
+ display: flex;
90
+ flex-direction: row;
91
+ flex-grow: 1;
92
+ align-items: center;
93
+ gap: var(--m-space-xs);
94
+ }
95
+
96
+ .chip {
97
+ margin-block: auto;
98
+ display: flex;
99
+ flex-direction: row;
100
+ align-items: center;
101
+ padding-inline: var(--m-space-sm);
102
+ gap: var(--m-space-xs);
103
+ }
104
+
105
+ .chipRemove {
106
+ min-height: 0;
107
+ min-width: 0;
108
+ padding: 0;
109
+ line-height: 1;
110
+ margin-block: calc(-1 * var(--m-space-xs));
111
+ margin-inline-end: calc(-1 * var(--m-space-sm));
112
+ }
113
+
114
+ .item[data-selected] {
115
+ @apply --mx-fg(var(--m-color-main-ink));
116
+ @apply --mx-bg-heavier(1);
117
+ }
118
+
119
+ .itemIndicator {
120
+ margin-inline-start: auto;
121
+ height: --fn-literal(10px);
122
+ width: --fn-literal(10px);
123
+ stroke-width: var(--m-lineWidth-lg);
124
+ }
125
+
126
+ .list {
127
+ display: flex;
128
+ flex-direction: column;
129
+ outline: none;
130
+ overscroll-behavior: contain;
131
+ overflow-y: auto;
132
+ overflow-x: clip;
133
+
134
+ &:empty {
135
+ padding: 0;
136
+ }
137
+ }
138
+
139
+ .popup {
140
+ width: var(--anchor-width);
141
+ display: flex;
142
+ flex-direction: column;
143
+ }
144
+
145
+ .row {
146
+ display: flex;
147
+ align-items: center;
148
+ gap: var(--m-space-xs);
149
+ }
150
+
151
+ .multiValue {
152
+ max-width: 100%;
153
+ display: flex;
154
+ flex-direction: row;
155
+ flex-wrap: wrap;
156
+ gap: var(--m-space-xs);
157
+ }
158
+
159
+ .clearAndCaret {
160
+ display: flex;
161
+ flex-shrink: 0;
162
+ align-items: center;
163
+ margin-right: calc(-1 * var(--m-control-padding-inline));
164
+ }
165
+
166
+ .details {
167
+ @apply --mx-prose-ambient;
168
+ @apply --mx-fg(var(--m-color-neutral-heavy));
169
+ padding: var(--m-space-md);
170
+ }
@@ -0,0 +1,167 @@
1
+ .monthRow {
2
+ width: 100%;
3
+ display: flex;
4
+ flex-direction: row;
5
+ align-items: center;
6
+ justify-content: space-between;
7
+ }
8
+
9
+ .monthLabel {
10
+ min-width: 0;
11
+ align-self: center;
12
+ overflow: hidden;
13
+ white-space: nowrap;
14
+ text-overflow: ellipsis;
15
+ text-align: center;
16
+ font-size: var(--m-prose-ambient-size);
17
+ font-weight: bold;
18
+ }
19
+
20
+ .monthButton {
21
+ align-self: center;
22
+ }
23
+
24
+ .calendarGridRoot {
25
+ display: grid;
26
+ grid-template-columns: repeat(7, var(--day-size, 32px));
27
+ grid-auto-rows: var(--day-size, 32px);
28
+ overflow: hidden;
29
+ padding: var(--m-space-sm);
30
+ border-radius: var(--m-radius-sm);
31
+ }
32
+
33
+ .dayLabel {
34
+ display: flex;
35
+ align-items: center;
36
+ justify-content: center;
37
+ font-size: var(--m-prose-ambient-size);
38
+ @apply --mx-fg(var(--m-color-neutral-heavy));
39
+ }
40
+
41
+ .calendarDay {
42
+ position: relative;
43
+ margin-bottom: --fn-literal(-1px);
44
+ margin-right: --fn-literal(-1px);
45
+
46
+ @apply --mx-fg(var(--m-color-neutral-ink));
47
+ @apply --mx-bg(var(--m-color-neutral-paper));
48
+ @apply --mx-borderColor(transparent);
49
+
50
+ display: flex;
51
+ cursor: pointer;
52
+ align-items: center;
53
+ justify-content: center;
54
+ transition: all var(--m-duration) var(--m-easing);
55
+
56
+ @apply --mx-shadow;
57
+ --mx-shadow-value: var(--m-shadow-sm);
58
+
59
+ &[data-highlighted] {
60
+ z-index: 1;
61
+ outline: none;
62
+ --mx-ring-value: --fn-ring(var(--m-color-main-heavy), 2px);
63
+ }
64
+
65
+ &[data-selected] {
66
+ z-index: 2;
67
+ @apply --mx-bg(var(--m-color-main));
68
+ border-radius: var(--m-radius-sm);
69
+ }
70
+
71
+ &[data-in-range] {
72
+ z-index: 1;
73
+ border-radius: 0;
74
+ @apply --mx-bg(var(--m-color-main-light));
75
+ --mx-shadow-value: 0 0 0 0 transparent;
76
+ }
77
+
78
+ &[data-disabled='true'] {
79
+ cursor: not-allowed;
80
+ opacity: 0.5;
81
+ }
82
+
83
+ /* Today indicator dot */
84
+ &[data-today]::before {
85
+ content: '';
86
+ position: absolute;
87
+ left: --fn-literal(1px);
88
+ top: --fn-literal(1px);
89
+ width: --fn-literal(6px);
90
+ height: --fn-literal(6px);
91
+ background-color: var(--m-color-palette-attention);
92
+ border-radius: var(--m-radius-lg);
93
+ border: 1px solid var(--m-color-neutral-ink);
94
+ }
95
+
96
+ /* Calendar grid edge borders */
97
+ &[data-top-edge] {
98
+ border-top-color: var(--m-color-neutral);
99
+ border-top-left-radius: 0;
100
+ border-top-right-radius: 0;
101
+ }
102
+ &[data-bottom-edge] {
103
+ border-bottom-color: var(--m-color-neutral);
104
+ border-bottom-left-radius: 0;
105
+ border-bottom-right-radius: 0;
106
+ }
107
+ &[data-first-column] {
108
+ border-left-color: var(--m-color-neutral);
109
+ border-top-left-radius: 0;
110
+ border-bottom-left-radius: 0;
111
+ }
112
+ &[data-last-column] {
113
+ border-right-color: var(--m-color-neutral);
114
+ border-top-right-radius: 0;
115
+ border-bottom-right-radius: 0;
116
+ }
117
+ &[data-day-first] {
118
+ border-left-color: var(--m-color-neutral);
119
+ border-top-left-radius: var(--m-radius-sm);
120
+ }
121
+ &[data-day-last] {
122
+ border-right-color: var(--m-color-neutral);
123
+ border-bottom-right-radius: var(--m-radius-sm);
124
+ border-top-right-radius: 0;
125
+ }
126
+ &[data-first-column][data-bottom-edge] {
127
+ border-bottom-left-radius: var(--m-radius-sm);
128
+ }
129
+ &[data-last-column][data-bottom-edge] {
130
+ border-bottom-right-radius: var(--m-radius-sm);
131
+ }
132
+ &[data-first-column][data-top-edge] {
133
+ border-top-left-radius: var(--m-radius-sm);
134
+ }
135
+ &[data-last-column][data-top-edge] {
136
+ border-top-right-radius: var(--m-radius-sm);
137
+ }
138
+
139
+ &[data-range-end] {
140
+ z-index: 1;
141
+ @apply --mx-bg(var(--m-color-main));
142
+ border-radius: 0 var(--m-radius-sm) var(--m-radius-sm) 0;
143
+ --mx-shadow-value: 0 0 0 0 transparent;
144
+ }
145
+
146
+ &[data-range-start] {
147
+ z-index: 1;
148
+ @apply --mx-bg(var(--m-color-main));
149
+ /* tl tr br bl */
150
+ border-radius: var(--m-radius-sm) 0 0 var(--m-radius-sm);
151
+ }
152
+
153
+ &[data-different-month] {
154
+ visibility: hidden;
155
+ }
156
+
157
+ &:hover {
158
+ z-index: 100;
159
+ outline: none;
160
+ --mx-ring-value: --fn-ring(var(--m-color-main-heavy), 2px);
161
+ }
162
+
163
+ &:active {
164
+ @apply --mx-bg(var(--m-color-main-light));
165
+ border-radius: var(--m-radius-sm);
166
+ }
167
+ }
@@ -0,0 +1,7 @@
1
+ .root {
2
+ width: --fn-literal(calc(var(--day-size, 32px) * 7));
3
+ display: flex;
4
+ flex-direction: column;
5
+ align-items: center;
6
+ justify-content: center;
7
+ }
@@ -0,0 +1,38 @@
1
+ .root {
2
+ display: flex;
3
+ justify-content: center;
4
+ }
5
+
6
+ .rangeLayout {
7
+ display: grid;
8
+ grid-template-columns: auto 1fr auto;
9
+ grid-template-areas:
10
+ 'prevMonth leftMonth nextMonth'
11
+ 'leftGrid leftGrid leftGrid';
12
+ grid-template-rows: auto 1fr;
13
+ gap: var(--m-space-sm);
14
+
15
+ @media (min-width: 640px) {
16
+ grid-template-columns: auto 1fr 1fr auto;
17
+ grid-template-areas:
18
+ 'prevMonth leftMonth rightMonth nextMonth'
19
+ 'leftGrid leftGrid rightGrid rightGrid';
20
+ }
21
+ }
22
+
23
+ /* Elements only visible at sm+ breakpoint */
24
+ .smOnly {
25
+ display: none;
26
+
27
+ @media (min-width: 640px) {
28
+ display: block;
29
+ }
30
+ }
31
+
32
+ .smOnlyGrid {
33
+ display: none;
34
+
35
+ @media (min-width: 640px) {
36
+ display: grid;
37
+ }
38
+ }